JAVA项目-------医院挂号系统
1,项目目的
1、科室管理:新增科室,删除科室(如果有医生在,则不能删除该科室),修改科室。
2、医生管理:录入医生信息,以及科室信息。修改医生信息(主要是修改个人信息和科室)
3、坐诊信息设置:可以设置医生当天和未来6天的坐诊情况,包括上午和下午的坐诊时间段和可预约数量,系统将自动保存到该医生的坐诊信息列表中。
4、全部信息展示:按照科室,展示每个医生七天的坐诊情况,需要按照科室归类展示
5、预约功能:用户可以选择要预约的科室,医生、日期和时间段,并输入患者的个人信息,系统将自动判断该时间段是否还有预约名额,并保存预约信息。
6.搜索功能:用户可以输入搜索日期和时间段,系统将自动搜索未来七天内在该时间段坐诊的医生信息,并按照科室分类展示。
7、可以查询某个医生未来七天,病人对它的预约情况。
2,建立一个部门类
package HostipalSystem;import java.util.ArrayList;public class department {private String name;ArrayList <doctor> doctors=new ArrayList<>();//医生列表public department() {}public department(String name, ArrayList<doctor> doctors) {this.name = name;this.doctors = doctors;}public String getName() {return name;}public void setName(String name) {this.name = name;}public ArrayList<doctor> getDoctors() {return doctors;}public void setDoctors(ArrayList<doctor> doctors) {this.doctors = doctors;}
}
3,医生类
package HostipalSystem;import java.time.LocalDate;
import java.util.ArrayList;public class doctor {private String name;private String sex;private int age;private String degree;private String advantage;private LocalDate jointime;private ArrayList<schedule> schedule;//一个医生7天的排版表private String department;private String id;public doctor() {}public String getDepartment() {return department;}public void setDepartment(String department) {this.department = department;}public doctor(String name, String sex, int age, String degree, String advantage, LocalDate jointime, ArrayList<HostipalSystem.schedule> schedule, String id, String department) {this.name = name;this.sex = sex;this.age = age;this.degree = degree;this.advantage = advantage;this.jointime = jointime;this.schedule = schedule;this.id = id;}public String getId() {return id;}public void setId(String id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getDegree() {return degree;}public void setDegree(String degree) {this.degree = degree;}public String getAdvantage() {return advantage;}public void setAdvantage(String advantage) {this.advantage = advantage;}public LocalDate getJointime() {return jointime;}public void setJointime(LocalDate jointime) {this.jointime = jointime;}public ArrayList<HostipalSystem.schedule> getSchedule() {return schedule;}public void setSchedule(ArrayList<HostipalSystem.schedule> schedule) {this.schedule = schedule;}
}
4,排班类
主要是排班的信息
package HostipalSystem;import java.time.LocalDate;
import java.time.LocalTime;public class schedule {private LocalDate date;private String morning="N";private LocalTime starttime;private LocalTime endtime;private int numjiezhen;private int numyuyue;private String afternoon="N";private LocalTime starttime1;private LocalTime endtime1;private int numjiezhen1;private int numyuyue1;private String night="N";private LocalTime starttime2;private LocalTime endtime2;private int numjiezhen2;private int numyuyue2;public schedule() {}public schedule(LocalDate date, String morning, LocalTime starttime, LocalTime endtime, int numjiezhen, int numyuyue, String afternoon, LocalTime starttime1, LocalTime endtime1, int numjiezhen1, int numyuyue1, String night, LocalTime starttime2, LocalTime endtime2, int numjiezhen2, int numyuyue2) {this.date = date;this.morning = morning;this.starttime = starttime;this.endtime = endtime;this.numjiezhen = numjiezhen;this.numyuyue = numyuyue;this.afternoon = afternoon;this.starttime1 = starttime1;this.endtime1 = endtime1;this.numjiezhen1 = numjiezhen1;this.numyuyue1 = numyuyue1;this.night = night;this.starttime2 = starttime2;this.endtime2 = endtime2;this.numjiezhen2 = numjiezhen2;this.numyuyue2 = numyuyue2;}public LocalDate getDate() {return date;}public void setDate(LocalDate date) {this.date = date;}public String getMorning() {return morning;}public void setMorning(String morning) {this.morning = morning;}public LocalTime getStarttime() {return starttime;}public void setStarttime(LocalTime starttime) {this.starttime = starttime;}public LocalTime getEndtime() {return endtime;}public void setEndtime(LocalTime endtime) {this.endtime = endtime;}public int getNumjiezhen() {return numjiezhen;}public void setNumjiezhen(int numjiezhen) {this.numjiezhen = numjiezhen;}public int getNumyuyue() {return numyuyue;}public void setNumyuyue(int numyuyue) {this.numyuyue = numyuyue;}public String getAfternoon() {return afternoon;}public void setAfternoon(String afternoon) {this.afternoon = afternoon;}public LocalTime getStarttime1() {return starttime1;}public void setStarttime1(LocalTime starttime1) {this.starttime1 = starttime1;}public LocalTime getEndtime1() {return endtime1;}public void setEndtime1(LocalTime endtime1) {this.endtime1 = endtime1;}public int getNumjiezhen1() {return numjiezhen1;}public void setNumjiezhen1(int numjiezhen1) {this.numjiezhen1 = numjiezhen1;}public int getNumyuyue1() {return numyuyue1;}public void setNumyuyue1(int numyuyue1) {this.numyuyue1 = numyuyue1;}public String getNight() {return night;}public void setNight(String night) {this.night = night;}public LocalTime getStarttime2() {return starttime2;}public void setStarttime2(LocalTime starttime2) {this.starttime2 = starttime2;}public LocalTime getEndtime2() {return endtime2;}public void setEndtime2(LocalTime endtime2) {this.endtime2 = endtime2;}public int getNumjiezhen2() {return numjiezhen2;}public void setNumjiezhen2(int numjiezhen2) {this.numjiezhen2 = numjiezhen2;}public int getNumyuyue2() {return numyuyue2;}public void setNumyuyue2(int numyuyue2) {this.numyuyue2 = numyuyue2;}
}
4,预约类
主要是病人的信息
package HostipalSystem;import java.time.LocalDateTime;public class oppintment {private int num=0;private String name;private String sex;private int age;private String desc;private String doctor;private String departmentname;private LocalDateTime date;public oppintment() {}public int getNum() {return num;}public void setNum(int num) {this.num = num;}public oppintment(String name, String sex, int age, String desc, String doctor, String departmentname, LocalDateTime date, int num) {this.name = name;this.sex = sex;this.age = age;this.desc = desc;this.doctor = doctor;this.departmentname = departmentname;this.date = date;this.num=num;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getDesc() {return desc;}public void setDesc(String desc) {this.desc = desc;}public String getDoctor() {return doctor;}public void setDoctor(String doctor) {this.doctor = doctor;}public String getDepartmentname() {return departmentname;}public void setDepartmentname(String departmentname) {this.departmentname = departmentname;}public LocalDateTime getDate() {return date;}public void setDate(LocalDateTime date) {this.date = date;}
}
6,医院操着系统
6.1界面
public void start(){Boolean flag=true;while(flag){Scanner sc= new Scanner(System.in);System.out.println("------------欢迎来到医院操作系统-------------");System.out.println("----------1,添加部门------------");System.out.println("----------2,添加医生------------");System.out.println("----------3,查询部门里的医生------------");System.out.println("----------4,查询医生的基本信息------------");System.out.println("----------5,查询可预约医生的时间------------");System.out.println("----------6,挂号------------");System.out.println("----------7,排班------------");System.out.println("----------8,退出操作系统------------");int command=sc.nextInt();switch (command){case 1:adddepasrtment();break;case 2:adddoctor();break;case 3:showdoctorindepartment();break;case 4:showdoctorinfo();break;case 5:showtimeofdoctor();break;case 6:booking();break;case 8:flag=false;break;case 7:operateschedule();break;default:System.out.println("输入有误,请重新输入");}}}
6.2设置部门
需要判断部门是否存在
public void adddepasrtment(){OUT:while(true){department d=new department();Scanner sc=new Scanner(System.in);System.out.println("请输入你要添加的部门的名称");String name=sc.next();d.setName(name);for(int i=0;i<alldepartment.size();i++){if(alldepartment.get(i).getName().equals(name)){System.out.println("该部门已存在");continue OUT;}}alldepartment.add(d);//将建好的部门添加进去break;}}
6.2.1遇到问题1
Scanner sc=new Scanner(System.in);
System.out.println("请输入你要添加的部门的名称");
String name=sc.next();
将以上输入语句放在外面,如果不合格将一直循环
错误代码如下:
public void adddepasrtment(){OUT:department d=new department();Scanner sc=new Scanner(System.in);System.out.println("请输入你要添加的部门的名称");String name=sc.next();while(true){Scanner sc=new Scanner(System.in);System.out.println("请输入你要添加的部门的名称");String name=sc.next();d.setName(name);for(int i=0;i<alldepartment.size();i++){if(alldepartment.get(i).getName().equals(name)){System.out.println("该部门已存在");continue OUT;}}alldepartment.add(d);break;}}
6.2.2遇到问题2
OUT:放在循环外面;
continue OUT放在循环里面结束一层循环
6.3建立一个存放部门的集合
ArrayList<department> alldepartment=new ArrayList<>();
7,医生的添加
public void adddoctor(){doctor d=new doctor();Scanner sc=new Scanner(System.in);System.out.println("请输入你要添加的医生的姓名");String name=sc.next();d.setName(name);System.out.println("请输入你要添加的医生的性别");String sex=sc.next();d.setSex(sex);System.out.println("请输入你要添加的医生的年龄");int age=sc.nextInt();d.setAge(age);System.out.println("请输入你要添加的医生的学历");String degree=sc.next();d.setDegree(degree);System.out.println("请输入你要添加的医生的擅长");String advantage=sc.next();d.setAdvantage(advantage);System.out.println("请输入你要添加的医生的入职时间");//LocalDate jointime=sc.nextLocalDate();d.setJointime(jointime());//调用方法存入医生的入职时间d.setId(UUID.randomUUID().toString());//生成随机数作为医生的编号System.out.println("您的编号是"+d.getId());System.out.println("请选择你的部门");for(int i=0;i<alldepartment.size();i++){System.out.println(i+1+"."+alldepartment.get(i).getName());}while(true){System.out.println("请输入部门的编号");int command=sc.nextInt();if(command>alldepartment.size()||command<1){System.out.println("输入有误,请重新输入");continue;}else{d.setDepartment(alldepartment.get(command-1).getName());alldepartment.get(command-1).getDoctors().add(d);alldoctor.add(d);//将医生添加到科室里System.out.println("录入完毕");break;}}}
7.1医生的加入时间
public LocalDate jointime(){Scanner sc=new Scanner(System.in);System.out.println("请输入医生入职时间格式为yyyy-mm-dd");String jointime=sc.next();LocalDate date=LocalDate.parse(jointime);return date;}
7.2写一个集合存放所有医生
ArrayList<doctor> alldoctor=new ArrayList<>();
8,查询部门里的医生
public void showdoctorindepartment(){for(int i=0;i<alldepartment.size();i++){System.out.println(i+1+"."+alldepartment.get(i).getName());}while(true){System.out.println("请输入你想了解的部门的编号");Scanner sc=new Scanner(System.in);int command=sc.nextInt();if(command>alldepartment.size()||command<1){System.out.println("输入有误,请重新输入");continue;}else{for (int i = 0; i < alldepartment.get(command-1).getDoctors().size(); i++){System.out.println(alldepartment.get(command-1).getDoctors().get(i).getName());}break;}}}
9,查询医生的全部信息
public void showdoctorinfo(){for (int i = 0; i < alldoctor.size(); i++){System.out.println(alldoctor.get(i).getName());System.out.println(alldoctor.get(i).getSex());System.out.println(alldoctor.get(i).getAge());System.out.println(alldoctor.get(i).getDegree());System.out.println(alldoctor.get(i).getAdvantage());System.out.println(alldoctor.get(i).getJointime());System.out.println(alldoctor.get(i).getId());System.out.println(alldoctor.get(i).getDepartment());System.out.println("---------------------------------------");}}
10,查找需要的医生
public doctor printfalldoctor (){for(int i=0;i<alldoctor.size();i++){System.out.println((i+1)+alldoctor.get(i).getName());}doctor d;while(true){System.out.println("请输入你想了解的医生的编号");Scanner sc=new Scanner(System.in);int command=sc.nextInt();if(command>alldoctor.size()||command<1){System.out.println("输入有误,请重新输入");continue;}else{d=alldoctor.get(command-1);break;}}return d;//返回医生}
11排班
public void operateschedule(){doctor d=printfalldoctor();for (int i = 0; i < 7; i++){schedule s=new schedule();s.setDate(LocalDate.now().plusDays(i));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"上午是否上班");//s.getDate().getDayOfWeek()取的是日对象的获得星期天的方法System.out.println("Y,上班");System.out.println("N,不上班");Scanner sc=new Scanner(System.in);String command=sc.next();s.setMorning(command);if(s.getMorning().equals("Y")){System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"的上午上班时间");System.out.println("格式为HH:mm:ss");String starttime=sc.next();s.setStarttime(LocalTime.parse(starttime));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"的上午下班时间");System.out.println("格式为HH:mm:ss");String endtime=sc.next();s.setEndtime(LocalTime.parse(endtime));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"的上午接诊人数");int numjiezhen=sc.nextInt();s.setNumjiezhen(numjiezhen);}System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"下午是否上班");System.out.println("Y,上班");System.out.println("N,不上班");String command1=sc.next();s.setAfternoon(command1);if(s.getAfternoon().equals("Y")){System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"下午上班时间");System.out.println("格式为HH:mm:ss");String starttime1=sc.next();s.setStarttime1(LocalTime.parse(starttime1));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"下午下班时间");System.out.println("格式为HH:mm:ss");String endtime1=sc.next();s.setEndtime1(LocalTime.parse(endtime1));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"下午接诊人数");int numjiezhen1=sc.nextInt();s.setNumjiezhen1(numjiezhen1);}System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"晚上是否上班");System.out.println("Y,上班");System.out.println("N,不上班");String command2=sc.next();s.setNight(command2);if(s.getNight().equals("Y")){System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"晚上上班时间");System.out.println("格式为HH:mm:ss");String starttime2=sc.next();s.setStarttime2(LocalTime.parse(starttime2));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"晚上下班时间");System.out.println("格式为HH:mm:ss");String endtime2=sc.next();s.setEndtime2(LocalTime.parse(endtime2));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"晚上接诊人数");int numjiezhen2=sc.nextInt();s.setNumjiezhen2(numjiezhen2);}d.getSchedule().add(s);//添加排班}}
12,查询信息医生排班
public void showtimeofdoctor(){doctor d=printfalldoctor();//调用方法获取输入的医生for (int i = 0; i < d.getSchedule().size(); i++){System.out.println(d.getSchedule().get(i).getDate());if(d.getSchedule().get(i).getMorning().equals("Y")){System.out.println("上午:"+d.getSchedule().get(i).getStarttime()+"-"+d.getSchedule().get(i).getEndtime());System.out.println("预约人数:"+d.getSchedule().get(i).getNumyuyue()+"接诊人数:"+d.getSchedule().get(i).getNumjiezhen());}else if(d.getSchedule().get(i).getMorning().equals("N")) System.out.println("上午不上班");if(d.getSchedule().get(i).getAfternoon().equals("Y")){System.out.println("下午:"+d.getSchedule().get(i).getStarttime1()+"-"+d.getSchedule().get(i).getEndtime1());System.out.println("预约人数:"+d.getSchedule().get(i).getNumyuyue1()+"接诊人数:"+d.getSchedule().get(i).getNumjiezhen1());}else if(d.getSchedule().get(i).getAfternoon().equals("N")) System.out.println("下午不上班");if(d.getSchedule().get(i).getNight().equals("Y")){System.out.println("晚上:"+d.getSchedule().get(i).getStarttime2()+"-"+d.getSchedule().get(i).getEndtime2());System.out.println("预约人数:"+d.getSchedule().get(i).getNumyuyue2()+"接诊人数:"+d.getSchedule().get(i).getNumjiezhen2());System.out.println("---------------------------------------");}}}
13,遇到问题字符串与时间对象的格式转换
如果你遇到 LocalTime.parse() 方法无法解析时间字符串的问题,通常有以下几个原因:
格式不匹配:
输入的时间字符串格式与 LocalTime.parse() 默认的格式(HH:mm:ss)不匹配。
解决方法:使用 DateTimeFormatter 指定正确的格式。
无效的时间值:
输入的时间字符串包含无效的时间值,例如小时数超过23,分钟数或秒数超过59。
解决方法:确保输入的时间字符串是有效的。
字符集问题:
输入的时间字符串包含非数字字符或特殊字符。
解决方法:检查并清理输入字符串,确保只有有效的时间字符。
时区问题:
如果时间字符串包含时区信息,而 LocalTime 不支持时区。
解决方法:使用 ZonedDateTime 或 OffsetTime 来处理带时区的时间字符串。
LocalDate.parse() 方法默认使用 ISO_LOCAL_DATE 格式,即 yyyy-MM-dd。如果你的输入时间字符串格式与此默认格式不匹配,你需要使用 DateTimeFormatter 来指定正确的格式。
14,病人预约
14.1预约成功后打印信息
public oppintment bookingsc(oppintment o,doctor d){System.out.println("请输入您的姓名");Scanner sc=new Scanner(System.in);String name=sc.next();o.setName(name);System.out.println("请输入您的性别");String sex=sc.next();o.setSex(sex);System.out.println("请输入您的年龄");int age=sc.nextInt();o.setAge(age);System.out.println("请输入您的手机号");String phone=sc.next();o.setDesc(phone);System.out.println("预约成功");System.out.println("预约科室:"+d.getDepartment());o.setDepartmentname(d.getDepartment());System.out.println("预约医生:"+d.getName());o.setDoctor(d.getName());System.out.println("预约号:"+o.getNum()+1);o.setNum(o.getNum()+1);return o;}}
14.2能否预约成功进行判断
public void booking(){doctor d=printfalldoctor();oppintment o=new oppintment();System.out.println("请输入预约日期");Scanner sc=new Scanner(System.in);String date=sc.next();LocalDate date1=LocalDate.parse(date);for(int i=0;i<d.getSchedule().size();i++){schedule s=d.getSchedule().get(i);if(s.equals(date1)){System.out.println("请选择1,上午。2,下午。3,晚上");int command=sc.nextInt();switch (command){case 1:if(s.getMorning().equals("Y")){System.out.println("请输入预约时间");String time=sc.next();LocalTime time1=LocalTime.parse(time);if(time1.isBefore(s.getEndtime())&&time1.isAfter(s.getStarttime())&&(s.getNumjiezhen()-s.getNumyuyue())>0)//判断是否在范围内,预约人数是否满了{oppintment o1=bookingsc(o,d);LocalDateTime date2=LocalDateTime.of(date1,time1);o1.setDate(date2);System.out.println("预约时间"+date2);allpaitent.add(o1);}}break;case 2:if(s.getAfternoon().equals("Y")){System.out.println("请输入预约时间");String time=sc.next();LocalTime time1=LocalTime.parse(time);if(time1.isBefore(s.getEndtime1())&&time1.isAfter(s.getStarttime1())&&(s.getNumjiezhen1()-s.getNumyuyue1())>0){oppintment o1=bookingsc(o,d);LocalDateTime date2=LocalDateTime.of(date1,time1);o1.setDate(date2);System.out.println("预约时间"+date2);allpaitent.add(o1);}}break;case 3:if(s.getNight().equals("Y")){System.out.println("请输入预约时间");String time=sc.next();LocalTime time1=LocalTime.parse(time);if(time1.isBefore(s.getEndtime2())&&time1.isAfter(s.getStarttime2())&&(s.getNumjiezhen2()-s.getNumyuyue2())>0){oppintment o1=bookingsc(o,d);//预约成功,打印基本信息LocalDateTime date2=LocalDateTime.of(date1,time1);o1.setDate(date2);System.out.println("预约时间"+date2);//最后打印时间allpaitent.add(o1);}}break;default:System.out.println("输入有误,请重新输入");continue;}}}}
14.3代码解释
这段代码实现了医院预约系统的预约功能。具体步骤如下:
选择医生:调用 printfalldoctor 方法显示所有医生,并让用户选择一个医生。
创建预约对象:创建一个新的 oppintment 对象。
输入预约日期:用户输入预约日期,并将其转换为 LocalDate 对象。
遍历医生的排班表:检查医生的排班表,找到与用户输入日期匹配的排班记录。
选择时间段:用户选择上午、下午或晚上的时间段。
输入预约时间:用户输入具体的预约时间,并进行验证。
验证预约时间:确保预约时间在医生的工作时间内,并且预约人数未满。
完成预约:调用 bookingsc 方法完成预约,并将预约信息添加到 allpaitent 列表中。
15,app 实现类
package HostipalSystem;import java.time.LocalDate;
import java.util.Scanner;public class app {public static void main(String[] args) {hospitalmanager h=new hospitalmanager();h.start();}
}
16超卓系统全部代码
package HostipalSystem;import javax.swing.text.DateFormatter;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Scanner;
import java.util.UUID;public class hospitalmanager
{ArrayList<department> alldepartment=new ArrayList<>();ArrayList<doctor> alldoctor=new ArrayList<>();ArrayList<oppintment> allpaitent=new ArrayList<>();public void start(){Boolean flag=true;while(flag){Scanner sc= new Scanner(System.in);System.out.println("------------欢迎来到医院操作系统-------------");System.out.println("----------1,添加部门------------");System.out.println("----------2,添加医生------------");System.out.println("----------3,查询部门里的医生------------");System.out.println("----------4,查询医生的基本信息------------");System.out.println("----------5,查询可预约医生的时间------------");System.out.println("----------6,挂号------------");System.out.println("----------7,排班------------");System.out.println("----------8,退出操作系统------------");int command=sc.nextInt();switch (command){case 1:adddepasrtment();break;case 2:adddoctor();break;case 3:showdoctorindepartment();break;case 4:showdoctorinfo();break;case 5:showtimeofdoctor();break;case 6:booking();break;case 8:flag=false;break;case 7:operateschedule();break;default:System.out.println("输入有误,请重新输入");}}}public void adddepasrtment(){OUT:while(true){department d=new department();Scanner sc=new Scanner(System.in);System.out.println("请输入你要添加的部门的名称");String name=sc.next();d.setName(name);for(int i=0;i<alldepartment.size();i++){if(alldepartment.get(i).getName().equals(name)){System.out.println("该部门已存在");continue OUT;}}alldepartment.add(d);//将建好的部门添加进去break;}}public void adddoctor(){doctor d=new doctor();Scanner sc=new Scanner(System.in);System.out.println("请输入你要添加的医生的姓名");String name=sc.next();d.setName(name);System.out.println("请输入你要添加的医生的性别");String sex=sc.next();d.setSex(sex);System.out.println("请输入你要添加的医生的年龄");int age=sc.nextInt();d.setAge(age);System.out.println("请输入你要添加的医生的学历");String degree=sc.next();d.setDegree(degree);System.out.println("请输入你要添加的医生的擅长");String advantage=sc.next();d.setAdvantage(advantage);System.out.println("请输入你要添加的医生的入职时间");//LocalDate jointime=sc.nextLocalDate();d.setJointime(jointime());//调用方法存入医生的入职时间d.setId(UUID.randomUUID().toString());//生成随机数作为医生的编号System.out.println("您的编号是"+d.getId());System.out.println("请选择你的部门");for(int i=0;i<alldepartment.size();i++){System.out.println(i+1+"."+alldepartment.get(i).getName());}while(true){System.out.println("请输入部门的编号");int command=sc.nextInt();if(command>alldepartment.size()||command<1){System.out.println("输入有误,请重新输入");continue;}else{d.setDepartment(alldepartment.get(command-1).getName());alldepartment.get(command-1).getDoctors().add(d);alldoctor.add(d);//将医生添加到科室里System.out.println("录入完毕");break;}}}public LocalDate jointime(){Scanner sc=new Scanner(System.in);System.out.println("请输入医生入职时间格式为yyyy-mm-dd");String jointime=sc.next();LocalDate date=LocalDate.parse(jointime);return date;}public void showdoctorindepartment(){for(int i=0;i<alldepartment.size();i++){System.out.println(i+1+"."+alldepartment.get(i).getName());}while(true){System.out.println("请输入你想了解的部门的编号");Scanner sc=new Scanner(System.in);int command=sc.nextInt();if(command>alldepartment.size()||command<1){System.out.println("输入有误,请重新输入");continue;}else{for (int i = 0; i < alldepartment.get(command-1).getDoctors().size(); i++){System.out.println(alldepartment.get(command-1).getDoctors().get(i).getName());}break;}}}public void showdoctorinfo(){for (int i = 0; i < alldoctor.size(); i++){System.out.println(alldoctor.get(i).getName());System.out.println(alldoctor.get(i).getSex());System.out.println(alldoctor.get(i).getAge());System.out.println(alldoctor.get(i).getDegree());System.out.println(alldoctor.get(i).getAdvantage());System.out.println(alldoctor.get(i).getJointime());System.out.println(alldoctor.get(i).getId());System.out.println(alldoctor.get(i).getDepartment());System.out.println("---------------------------------------");}}public void showtimeofdoctor(){doctor d=printfalldoctor();//调用方法获取输入的医生for (int i = 0; i < d.getSchedule().size(); i++){System.out.println(d.getSchedule().get(i).getDate());if(d.getSchedule().get(i).getMorning().equals("Y")){System.out.println("上午:"+d.getSchedule().get(i).getStarttime()+"-"+d.getSchedule().get(i).getEndtime());System.out.println("预约人数:"+d.getSchedule().get(i).getNumyuyue()+"接诊人数:"+d.getSchedule().get(i).getNumjiezhen());}else if(d.getSchedule().get(i).getMorning().equals("N")) System.out.println("上午不上班");if(d.getSchedule().get(i).getAfternoon().equals("Y")){System.out.println("下午:"+d.getSchedule().get(i).getStarttime1()+"-"+d.getSchedule().get(i).getEndtime1());System.out.println("预约人数:"+d.getSchedule().get(i).getNumyuyue1()+"接诊人数:"+d.getSchedule().get(i).getNumjiezhen1());}else if(d.getSchedule().get(i).getAfternoon().equals("N")) System.out.println("下午不上班");if(d.getSchedule().get(i).getNight().equals("Y")){System.out.println("晚上:"+d.getSchedule().get(i).getStarttime2()+"-"+d.getSchedule().get(i).getEndtime2());System.out.println("预约人数:"+d.getSchedule().get(i).getNumyuyue2()+"接诊人数:"+d.getSchedule().get(i).getNumjiezhen2());System.out.println("---------------------------------------");}}}//public doctor printfalldoctor (){for(int i=0;i<alldoctor.size();i++){System.out.println((i+1)+alldoctor.get(i).getName());}doctor d;while(true){System.out.println("请输入你想了解的医生的编号");Scanner sc=new Scanner(System.in);int command=sc.nextInt();if(command>alldoctor.size()||command<1){System.out.println("输入有误,请重新输入");continue;}else{d=alldoctor.get(command-1);break;}}return d;//返回医生}public void operateschedule(){doctor d=printfalldoctor();for (int i = 0; i < 7; i++){schedule s=new schedule();s.setDate(LocalDate.now().plusDays(i));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"上午是否上班");//s.getDate().getDayOfWeek()取的是日对象的获得星期天的方法System.out.println("Y,上班");System.out.println("N,不上班");Scanner sc=new Scanner(System.in);String command=sc.next();s.setMorning(command);if(s.getMorning().equals("Y")){System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"的上午上班时间");System.out.println("格式为HH:mm:ss");String starttime=sc.next();s.setStarttime(LocalTime.parse(starttime));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"的上午下班时间");System.out.println("格式为HH:mm:ss");String endtime=sc.next();s.setEndtime(LocalTime.parse(endtime));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"的上午接诊人数");int numjiezhen=sc.nextInt();s.setNumjiezhen(numjiezhen);}System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"下午是否上班");System.out.println("Y,上班");System.out.println("N,不上班");String command1=sc.next();s.setAfternoon(command1);if(s.getAfternoon().equals("Y")){System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"下午上班时间");System.out.println("格式为HH:mm:ss");String starttime1=sc.next();s.setStarttime1(LocalTime.parse(starttime1));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"下午下班时间");System.out.println("格式为HH:mm:ss");String endtime1=sc.next();s.setEndtime1(LocalTime.parse(endtime1));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"下午接诊人数");int numjiezhen1=sc.nextInt();s.setNumjiezhen1(numjiezhen1);}System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"晚上是否上班");System.out.println("Y,上班");System.out.println("N,不上班");String command2=sc.next();s.setNight(command2);if(s.getNight().equals("Y")){System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"晚上上班时间");System.out.println("格式为HH:mm:ss");String starttime2=sc.next();s.setStarttime2(LocalTime.parse(starttime2));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"晚上下班时间");System.out.println("格式为HH:mm:ss");String endtime2=sc.next();s.setEndtime2(LocalTime.parse(endtime2));System.out.println("请输入"+s.getDate()+"号星期"+s.getDate().getDayOfWeek()+"晚上接诊人数");int numjiezhen2=sc.nextInt();s.setNumjiezhen2(numjiezhen2);}d.getSchedule().add(s);//添加排班}}public void booking(){doctor d=printfalldoctor();oppintment o=new oppintment();System.out.println("请输入预约日期");Scanner sc=new Scanner(System.in);String date=sc.next();LocalDate date1=LocalDate.parse(date);for(int i=0;i<d.getSchedule().size();i++){schedule s=d.getSchedule().get(i);if(s.equals(date1)){System.out.println("请选择1,上午。2,下午。3,晚上");int command=sc.nextInt();switch (command){case 1:if(s.getMorning().equals("Y")){System.out.println("请输入预约时间");String time=sc.next();LocalTime time1=LocalTime.parse(time);if(time1.isBefore(s.getEndtime())&&time1.isAfter(s.getStarttime())&&(s.getNumjiezhen()-s.getNumyuyue())>0)//判断是否在范围内,预约人数是否满了{oppintment o1=bookingsc(o,d);LocalDateTime date2=LocalDateTime.of(date1,time1);o1.setDate(date2);System.out.println("预约时间"+date2);allpaitent.add(o1);}}break;case 2:if(s.getAfternoon().equals("Y")){System.out.println("请输入预约时间");String time=sc.next();LocalTime time1=LocalTime.parse(time);if(time1.isBefore(s.getEndtime1())&&time1.isAfter(s.getStarttime1())&&(s.getNumjiezhen1()-s.getNumyuyue1())>0){oppintment o1=bookingsc(o,d);LocalDateTime date2=LocalDateTime.of(date1,time1);o1.setDate(date2);System.out.println("预约时间"+date2);allpaitent.add(o1);}}break;case 3:if(s.getNight().equals("Y")){System.out.println("请输入预约时间");String time=sc.next();LocalTime time1=LocalTime.parse(time);if(time1.isBefore(s.getEndtime2())&&time1.isAfter(s.getStarttime2())&&(s.getNumjiezhen2()-s.getNumyuyue2())>0){oppintment o1=bookingsc(o,d);//预约成功,打印基本信息LocalDateTime date2=LocalDateTime.of(date1,time1);o1.setDate(date2);System.out.println("预约时间"+date2);//最后打印时间allpaitent.add(o1);}}break;default:System.out.println("输入有误,请重新输入");continue;}}}}public oppintment bookingsc(oppintment o,doctor d){System.out.println("请输入您的姓名");Scanner sc=new Scanner(System.in);String name=sc.next();o.setName(name);System.out.println("请输入您的性别");String sex=sc.next();o.setSex(sex);System.out.println("请输入您的年龄");int age=sc.nextInt();o.setAge(age);System.out.println("请输入您的手机号");String phone=sc.next();o.setDesc(phone);System.out.println("预约成功");System.out.println("预约科室:"+d.getDepartment());o.setDepartmentname(d.getDepartment());System.out.println("预约医生:"+d.getName());o.setDoctor(d.getName());System.out.println("预约号:"+o.getNum()+1);o.setNum(o.getNum()+1);return o;}}
相关文章:
JAVA项目-------医院挂号系统
1,项目目的 1、科室管理:新增科室,删除科室(如果有医生在,则不能删除该科室),修改科室。 2、医生管理:录入医生信息,以及科室信息。修改医生信息(主要是修改…...
《Learn Three.js》学习(3)光源
前言: WebGL本身不支持光源,不使用three.js,则需使用着色程序来模拟光源。 学习大纲: Three.js中的光源 特定光源的使用时机 如何调整和配置所有光源的行为 如何创建镜头光晕 光源表 基础光源:THRER.AmbientLight、THERE.Point…...
npm error code ETIMEDOUT 简单排查
今天突然没到一个仓库的ius问题。改完之后想发布npm包 出现下面的场景 npm addUser npm adduser npm notice Log in on https://registry.npmjs.org/ Create your account at: https://www.npmjs.com/login?next/login/cli/12596c8b-ba4a-4763-8a97-215087d380c4 Press ENTER…...
Flink高可用配置(HA)
从Flink架构中我们可以看到,JobManager这个组件非常重要,是中心协调器,负责任务调度和资源管理。默认情况下,每个Flink集群只有一个JobManager实例。这会产生单点故障(SPOF):如果JobManager崩溃,则无法提交新程序,正在运行的程序也会失败。通过JobManager的高可用性,…...
VITE+VUE3+TS环境搭建
前言(与搭建项目无关): 可以安装一个node管理工具,比如nvm,这样可以顺畅的切换vue2和vue3项目,以免出现项目跑不起来的窘境。我使用的nvm,当前node 22.11.0 目录 搭建项目 添加状态管理库&…...
windows上安装使用kubectl访问容器内服务
以云服务商提供的容器服务为例: 登录云服务,选择容器服务选择集群管理,选择集群概览点击kubeconfig按钮,进入说明页面官网下载kubectl 1、到 Kubernetes 版本变更 页面,查看 kubernetes 已发行版本,确认需要安装的 kubectl 版本。 2、kubectl 版本和集群的 kubernetes 版…...
软件工程第14章小测
单项选择题 第1题 定义类A和B Class A{ public B methodA(){...} } Class B{ public void methodB(){...} } 下面代码中的耦合是()。 Class Client{ public static void main(String args){ A oa new A(); a.methodA().methodB(); } } …...
HarmonyOS4+NEXT星河版入门与项目实战(23)------组件转场动画
文章目录 1、控件图解2、案例实现1、代码实现2、代码解释3、实现效果4、总结1、控件图解 这里我们用一张完整的图来汇整 组件转场动画的用法格式、属性和事件,如下所示: 2、案例实现 这里我们对上一节小鱼游戏进行改造,让小鱼在游戏开始的时候增加一个转场动画,让小鱼自…...
word转pdf
在线xml格式化: 在线 XML 格式化 | 菜鸟工具 Java使用FreeMarker自动生成Word文档(带图片和表单) Java使用FreeMarker自动生成Word文档(带图片和表单)_freemarker word模板-CSDN博客 将word转pdf JAVA 使用aspose…...
@bytemd/vue掘金markdown插件预览内容有误
vue项目使用bytemd/vue 来预览字符串格式的markdown内容,总会多出如图的一段代码, 请问有没有大佬知道为什么? 很急,求教!!!!!...
产品知识培训全面指南
在当今竞争激烈的市场环境中,产品知识已成为企业成功的关键因素。特别是对于软件即服务(SaaS)公司而言,产品的复杂性要求团队对产品有深入的了解,以便有效地与潜在客户沟通并促成交易。本指南将深入探讨产品知识培训的…...
VSCode修改资源管理器文件目录树缩进(VSCode目录结构、目录缩进、文件目录外观)workbench.tree.indent
文章目录 方法点击左下角小齿轮点击设置点击工作台,点击外观,找到Tree: Indent设置目录树的缩进 方法 点击左下角小齿轮 点击设置 点击工作台,点击外观,找到Tree: Indent设置目录树的缩进 "workbench.tree.indent"默认…...
周鸿祎再次“创业”,盯上百度
周鸿祎特地拍了部短剧来推广的新产品,终于上线了。 11月27日晚间,360正式发布多模态内容创作引擎“纳米搜索”。 作为当前AI应用最红的赛道之一,AI搜索已经有腾讯、秘塔、商汤、抖音等公司入局。传统搜索老大百度也在发力。竞争不妨碍有搜索…...
夜神模拟器+安卓7安装burpsuite系统证书
夜神模拟器安卓7安装burpsuite系统证书 安卓 7.0 以上安装 CA 证书: 安卓 5 所安装的 burp 证书是安装到系统根目录下的,从 Android 7.0 开始,系统不再信任用户 CA 证书,所以需要把 CA 证书安装到系统 CA 证书目录。 效果: 导出…...
TavilySearchResults报错
报错 pydantic_core._pydantic_core.ValidationError: 1 validation error for TavilySearchAPIWrapper Value error, Did not find tavily_api_key, please add an environment variable TAVILY_API_KEY which contains it, or pass tavily_api_key as a named parameter. …...
avcodec_alloc_context3,avcodec_open2,avcodec_free_context,avcodec_close
avcodec_alloc_context3 是创建编解码器上下文,需要使用 avcodec_free_context释放 需要使用avcodec_free_context 释放 /** * Allocate an AVCodecContext and set its fields to default values. The * resulting struct should be freed with avcodec_free_co…...
HttpClient
是apache旗下的项目 可以用来提供高效的 最新的 功能丰富的 支持HTTP协议的客户端编程工具包,并且支持HTTP协议最新的版本和建议 核心API HttpClient HttpClientsCloseableHttpClientHttpGetHttpPost 发送请求步骤 创建HttpClient对象创建Http请求对象调用H…...
Flink解决延迟数据问题
总结: 水印:对于迟到数据不长 allowedLateness: 迟到时间很长 侧道输出:对于迟到时间特别长 对于延迟数据的理解: 水印机制(水位线、watermark)机制可以帮助我们在短期延迟下,允许乱序数据的到来。 这个机制很好的…...
基于matlab程序实现人脸识别
1.人脸识别流程 1.1.1基本原理 基于YCbCr颜色空间的肤色模型进行肤色分割。在YCbCr色彩空间内对肤色进行了建模发现,肤色聚类区域在Cb—Cr子平面上的投影将缩减,与中心区域显著不同。采用这种方法的图像分割已经能够较为精确的将人脸和非人脸分割开来。…...
ESP32 wifi smartConfig 配网时密码错误导致一直死循环问题解决
项目场景 硬件:ESP32-LyraT-Mini V1.2开发板,使用的是ESP32-WROVER-E 模组。 程序:基于smart_config示例程序测试 问题描述 烧录程序后,debug打印“smartconfig_example: Scan done”信息后,打开手机app“EspTouch”进行配网,如果密码输入正确,正常的debug信息如下:…...
串口通讯介绍
详情学习 12. 串口通讯与终端设备 — [野火]嵌入式Linux基础与应用开发实战指南——基于i.MX6ULL开发板 文档 (embedfire.com) 问题 DB9接口 RS232,RS485 标准DB9接口(串口通信线标准接口)_485接口接线方法9针-CSDN博客 DB9 各引脚定义 1 DCD 载波检测 2 RX 接收数据…...
出于安全考虑,你的平板电脑已设置为禁止安装来源不明的应用,对于这种工业的安卓平板,应该怎么解决问题呢
在一些工业安卓平板上,出于安全考虑,通常会禁止安装来自未知来源的应用程序。这是为了防止恶意软件或不可信的应用程序被安装到设备上。为了绕过这个限制并安装来自未知来源的应用程序,你可以按照以下步骤进行操作: 1. 启用“未知…...
Java技术复习提升 15IO流
先给各位读者致歉 笔者因身体抱恙 未能及时更新 以后会按时更新 和大家一起学习探究~ 第15章 IO流 15.1 文件 文件就是保存数据的地方 文件流 15.2 常用文件操作 创建文件对象构造器和方法 import org.junit.Test;import java.io.File; import java.io.IOException;publ…...
Oracle 19C Data Guard 单实例1+1部署(Duplicate方式)
环境描述 项目主库备库操作系统CentOS 7.9CentOS 7.9数据库版本Oracle 19.3.0.0Oracle 19.3.0.0ORACLE_UNQNAMEhishisdgIP地址10.172.1.10110.172.1.102Hostnamehisdb01hisdb02SIDhishisdb_namehishisdb_unique_namehishisdg 说明 主库和备库建议采用相同服务器配置。主库和…...
网安小白的端口关闭实践
proceeding 扫描 $ nmap --top-ports 10000 10.162.8.227 Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-11-29 17:07 CST Nmap scan report for star (10.162.8.227) Host is up (0.00023s latency). Not shown: 8367 closed tcp ports (conn-refused) PORT ST…...
微软要求 Windows Insider 用户试用备受争议的召回功能
拥有搭载 Qualcomm Snapdragon 处理器的 Copilot PC 的 Windows Insider 计划参与者现在可以试用 Recall,这是一项臭名昭著的快照拍摄 AI 功能,在今年早些时候推出时受到了很多批评。 Windows 营销高级总监 Melissa Grant 上周表示:“我们听…...
nginx反向代理、负载均衡
nginx反向代理、负载均衡 一、反向代理 proxy模块1、作用2、语法3、配置后端服务器记录真实的客户端地址 二、负载均衡 upstream模块2.1 负载均衡作用2.2 调度算法/策略2.3 配置语法 一、反向代理 proxy模块 1、作用 提升业务的性能、并发能力 隐藏后端真实业务服务器的信息&…...
mysql集群NDB方式部署
1. 基本信息 部署机器角色部署路径192.168.0.1管理节点部署目录: /alidata1/mysql-cluster-8.4.3192.168.0.2管理节点192.168.0.3数据/SQL节点数据目录:192.168.0.4数据/SQL节点/alidata1/mysql-cluster-8.4.3/data/ndb-mgmd192.168.0.5数据节点 – 新增/alidata1/mysql-clust…...
Fabric.js 中文文档
Fabric.js 中文文档 基于canvas画布的实用类Fabric.js的使用 4、Fabric.js 常用的方法&事件 Fabric.js 画布 defaultCursor 属性(1) 官网文档地址:http://fabricjs.com/docs/github 地址:https://github.com/fabricjs/fabric.js Demo地址&#x…...
【面试重难点问题】c++中为什么可以函数重载,但是c语言中不可以
本文章是对于“c中为什么可以函数重载,但是c语言中不可以”这个问题的探究: 当然这是一个值得深入探讨的问题。在面对难题时,我们常常会竭尽全力寻找答案,不惜挖掘三尺以探究竟。面对上面这个问题时,理解计算机系统的…...
Elasticsearch优化汇总
文章目录 引言硬件设置优化禁用swap给系统留足够的内存JVM配置使用更快的硬件,使用 SSD 参数优化分片设计增加Buffer大小(增加吞吐量)预热文件系统 cache es查询设计优化预索引数据使用filter代替query字段映射避免使用脚本优化日期搜索为只读索引执行 force-merge预热全局序号…...
【落羽的落羽 C语言篇】指针·之其四
文章目录 一、字符指针变量二、数组指针变量1. 创建2. 数组指针类型3. 二维数组传参的本质 三、函数指针变量1. 创建2. 函数指针类型3. 函数指针的使用4. 分析两句“有趣”的代码(doge)5. typedef关键字 四、函数指针数组1. 创建2. 函数指针数组的用途—…...
十二、正则表达式、元字符、替换修饰符、手势和对话框插件、字符串截取
1. 正则表达式 1.1 基本使用 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title&g…...
嵌入式的应用领域有哪些
首先给大家介绍一下,STM32是意法半导体(STMicroelectronics)生产的32位微控制器(MCU)系列,采用ARM Cortex-M内核设计,以其高性能、低功耗和广泛的应用而闻名。 那么意法半导体是在…...
git merge :开发分支与主分支的交互
一、开发分支(dev)上的代码达到上线的标准后,要合并到 master 分支 git checkout dev git pull git checkout master git merge dev git push -u origin master 二、当master代码改动了,需要更新开发分支(dev&#x…...
OGRE 3D----4. OGRE和QML共享opengl上下文
在现代图形应用开发中,OGRE(Object-Oriented Graphics Rendering Engine)和QML(Qt Modeling Language)都是非常流行的工具。OGRE提供了强大的3D渲染能力,而QML则用于构建灵活的用户界面。在某些应用场景中,我们需要在同一个应用程序中同时使用OGRE和QML,并且共享OpenGL…...
ArcGIS 软件中路网数据的制作
内容导读 路网数据是进行网络分析的基础,它是建立网络数据集的数据来源。 本文我们以OSM路网数据为例,详细介绍OSM路网数据从下载,到数据处理,添加属性,完成符合网络分析的网络数据集的全部过程。 01 数据获取 比较…...
Milvus 2.5:全文检索上线,标量过滤提速,易用性再突破!
01. 概览 我们很高兴为大家带来 Milvus 2.5 最新版本的介绍。 在 Milvus 2.5 里,最重要的一个更新是我们带来了“全新”的全文检索能力,之所以说“全新”主要是基于以下两点: 第一,对于全文检索基于的 BM25 算法,我们采…...
Windows常用DOS指令(附案例)
文章目录 1.dir 查看当前目录2.cd 进入指定目录3.md 创建指定目录4.cd> 创建指定文件5.rd 删除指定空目录6.del 删除指定文件7.copy 复制文件8.xcopy 批量复制9.ren 改名10.type 在命令行空窗口打开文件11.cls 清空DOS命令窗口12.chkdsk 检查磁盘使用情况13.time 显示和设置…...
搜索二维矩阵 II(java)
题目描述 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。每列的元素从上到下升序排列。 代码思路: 用暴力算法: class Solution {public boolean searchMatrix(…...
Webpack 的构建流程
Webpack 的构建流程可以概括为以下几个步骤: 1. 初始化: Webpack 读取配置文件(webpack.config.js),合并默认配置和命令行参数,初始化Compiler对象。 2. 构建依赖图: 从入口文件开始递归地分…...
Kylin Server V10 下 RocketMQ 主备自动切换模式部署
一、NameServer简介 NameServer 是一个注册中心,提供服务注册和服务发现的功能。NameServer 可以集群部署,集群中每个节点都是对等的关系,节点之间互不通信。 服务注册 Broker 启动的时候会向所有的 NameServer 节点进行注册,注意这里是向集群中所有的 NameServer 节点注册…...
Linux启动中出现“psi: inconsistent task state!”错误可能原因
在Linux系统中,psi: inconsistent task state! 异常日志通常与 PSI(Pressure Stall Information)相关。PSI 是 Linux 内核中的一个特性,用于监控系统资源的压力情况,如 CPU、内存和 I/O 等。该日志信息表明在处理任务状…...
FCBP 认证考试要点摘要
理论知识 数据处理与分析:包括数据的收集、清洗、转换、存储等基础操作,以及数据分析方法,如描述性统计分析、相关性分析、数据挖掘算法等的理解和应用 。数据可视化:涉及图表类型的选择与应用,如柱状图、折线图、饼图…...
ubuntu防火墙入门(一)——设置服务、关闭端口
本机想通过git clone gitgithub.com:skumra/robotic-grasping.git下载代码,firewall-config中需要为当前区域的防火墙开启SSH服务吗 是的,如果你想通过 git clone gitgithub.com:skumra/robotic-grasping.git 使用 SSH 协议从 GitHub 下载代码࿰…...
yt6801 ubuntu有线连接驱动安装
耀世16pro的有线网卡驱动安装 下载地址: YT6801 千兆PCIE以太网控制器芯片 1. 创建安装目录 mkdir yt68012. 解压驱动文件 unzip yt6801-linux-driver-1.0.27.zip -d yt68013. 进入驱动目录 cd yt68014. 安装驱动 以 root 权限运行安装脚本: sudo su ./yt_ni…...
ASP.NET Core Web API 控制器
文章目录 一、基类:ControllerBase二、API 控制器类属性三、使用 Get() 方法提供天气预报结果 在深入探讨如何编写自己的 PizzaController 类之前,让我们先看一下 WeatherController 示例中的代码,了解它的工作原理。 在本单元中,…...
【论文笔记】Tool Learning with Foundation Models 论文笔记
Tool Learning with Foundation Models 论文笔记 文章目录 Tool Learning with Foundation Models 论文笔记摘要背景:工作: 引言工具学习的发展本文工作(大纲&目录) 背景2.1 工具使用的认知起源2.2 工具分类:用户界…...
STM32 + CubeMX + 串口 + IAP升级
这篇文章分享一个简单的串口IAP Demo,实现使用串口更新我们自己的App程序。 目录 一、IAP简介二、Stm32CubeMx配置三、Boot代码及配置1、代码2、配置 四、App代码及配置1、代码2、配置 五、效果展示 一、IAP简介 IAP介绍可以在网上找找,相关资料很多&am…...
Oracle-—系统包使用
文章目录 系统包dbms_redefinition 系统包 dbms_redefinition 功能介绍:该包体可以实现将Oracle库下的表在线改为分区结构或者重新定义; 说明:在检查表是否可以重定义和开始重定义的过程中,按照表是否存在主键,参数 o…...