首先大的框架先创建科室类,医生类,预约类,医院管理系统类,时间表类,测试类
医院管理系统
首先创建科室类保存科室,再创建医生数组用于存医生。
allStart方法
首先让用户进入方法中选择身份进行业务处理
调用Scanner输入数字1,2对于两种方法
1,
peopleStart2.
start
start方法
进入医院管理系统中有1.科室管理2.医生管理3.坐诊信息管理4.全部坐诊信息展示5.退出
同理同过switch去实现5中部分
1.科室管理类2, departmentOperator方法
首先进入到科室管理系统中
分为四种方法,1,新增科室2.删除科室3.修改科室4.退出
新增科室
首先创建科室对象,进入循环中通过键盘输入科室 名。首先进行判断利用for循环遍历科室中有没有与输入的科室名重复。在其中取处科室名与键盘输入的科室名进行匹配若相同进继续重新输入。若不相同则将科室名填到科室集合中(利用equals方法)
删除科室
首先进行判断,取科室的长度,判断科室的长度是否为o若是0则重试。若有科室才能进操作。进入后首先进行通过键盘输入要删除的科室名。进行遍历科室的名。发现两个相同的科室名则进行删除。在这里首先进行判断,要删除的科室必须里面没有医生。其中还有判断删除科室里是否有医生。如果删除科室名相同且科室中没有医生就 删除成功
修改科室
首先同理,进行科室判断。若科室长度为0则重新输入。进入方法中输入要修改的科室名若科室类中有输入 的科室名则进入分支中。通过死循环让用户进行修改业务输入修改后的科室名。
用set方法取 塞进新的科室名
2.医生管理
首先进行判断科室是否为0,若为0,则退出方法。分为四个方法
1.录入医生信息2.删除医生信息3.修改医生信息4.退出
录入医生信息
首先通过死循环进行输出打印科室名字加序号。让用户输出要加入的医生名填入到要加入的科室中。在这里进行判断若输入要加入的科室序号不在就要重新输入。输入成功就加的科室中然后进行输入医生的名字,性别,年龄,擅长方向,入职时间 。
删除医生
同理首先判断,进入删除业务。遍历医生的名字,让用户选择要删除的医生序号。遍历要删除的医生科室,医生名字,医生编号,若都相同就进行删除业务
修改 医生信息
首先输入要修改医生所在的科室,进入后选择要修改要修改医生的信息性别,年龄,擅长方向,入职时间。利用get,set去实现
3.坐诊信息管理
首先在这里写了四个方法1.选择科室的方法 用于打印科室的信息让用户进行选择。2.选择医生的方法 用于打印医生的信息与选择医生。
3.更新医生坐诊时间方法。
如果当前医生没有坐诊时间信息现在为其进行填写
创建新的时间,利用plusdays方法为其添加。
如果当前有医生坐诊时间必须进行去除过期的时间
首先先遍历医生的时间表长度,取现在的时间若第一次遍历到现在的时间两者相同就是跳出方法。反之,取当前的坐诊时间比今天早,就删除时间。
现在进行删除完后的更新时间与补全时间
首先先取出删除完成的最后一天。去遍历(7-删除完后时间表)为其补全信息。在循环中
去在删除完后的最后一天上加上时间并将弄好的时间表加入
4.更新医生坐诊情况
首先进行排班安排让用户输入让医生是否在早上下午排班并且输入开始看诊与结束看诊的时间,可预约的人数。
最后利用四种方法去完成坐诊信息的完成
4.坐诊信息的展示
遍历科室的名字,打印医生的坐诊情况,医生的个人信息,排班情况
病人操作people系统
首先先分为四种方法。1.预约2.搜索3.查看预约情况4.退出
预约
利用之前写的遍历科室与医生的信息与选择科室与选择医生的方法。选择完成后,进入该医生的个人排班信息展示。选择要预约的时间进入后声明一个患者计数器与患者类。进入后输入患者的名字进入到患者类。
搜索
首先输出近7天来的时间让用户去选择某天,选择完打印某天有排班的医生
查询
患者输入要查询的科室与医生,用之前写好的两个方法直接打印未来7天在该时间段内坐诊医生的信息,并按照科室进行展示