【开源分享】使用Java、Vue和SpringBoot搭建的医疗保险管理系统的重点代码实现(第四部分)
最编程
2024-02-17 18:40:17
...
4.1 用户查询全部医生
@RequestMapping(value = "/getAllByDepartmentId", method = RequestMethod.GET)
@ApiOperation(value = "用户查询全部医生")
public Result<List<Doctor>> getAllByDepartmentId(@RequestParam String departmentId){
QueryWrapper<Doctor> qw = new QueryWrapper<>();
qw.eq("department_id",departmentId);
List<Doctor> doctorList = iDoctorService.list(qw);
for (Doctor doctor : doctorList) {
QueryWrapper<DoctorNumber> numberQw = new QueryWrapper<>();
numberQw.eq("doctor_id",doctor.getId());
numberQw.eq("date", DateUtil.today());
numberQw.eq("order_flag",false);
long count = iDoctorNumberService.count(numberQw);
doctor.setNumberStr(count);
}
return new ResultUtil<List<Doctor>>().setData(doctorList);
}
4.2 新增医生
@RequestMapping(value = "/insert", method = RequestMethod.POST)
@ApiOperation(value = "新增医生")
public Result<Doctor> insert(Doctor doctor){
if(ZwzNullUtils.isNull(doctor.getDepartmentId())) {
return ResultUtil.error("科室不能为空");
}
HospitalDepartment hd = iHospitalDepartmentService.getById(doctor.getDepartmentId());
if(hd == null) {
return ResultUtil.error("科室不存在");
}
iDoctorService.saveOrUpdate(doctor);
return new ResultUtil<Doctor>().setData(doctor);
}
4.3 查询科室
@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查询科室")
public Result<IPage<HospitalDepartment>> getByPage(@ModelAttribute HospitalDepartment hospitalDepartment ,@ModelAttribute PageVo page){
QueryWrapper<HospitalDepartment> qw = new QueryWrapper<>();
if(!ZwzNullUtils.isNull(hospitalDepartment.getTitle())) {
qw.like("title",hospitalDepartment.getTitle());
}
IPage<HospitalDepartment> data = iHospitalDepartmentService.page(PageUtil.initMpPage(page),qw);
for (HospitalDepartment hd : data.getRecords()) {
QueryWrapper<Doctor> doQw = new QueryWrapper<>();
doQw.eq("department_id",hd.getId());
hd.setUserNumber(iDoctorService.count(doQw));
}
return new ResultUtil<IPage<HospitalDepartment>>().setData(data);
}
4.4 新增号源
@RequestMapping(value = "/add", method = RequestMethod.GET)
@ApiOperation(value = "新增号源")
public Result<Object> add(@RequestParam String doctorId){
Doctor doctor = iDoctorService.getById(doctorId);
if(doctor == null) {
return ResultUtil.error("医生不存在");
}
DoctorNumber d = new DoctorNumber();
d.setDoctorId(doctorId);
d.setDoctorName(doctor.getName());
d.setDate(DateUtil.today());
d.setDepartmentId(doctor.getDepartmentId());
d.setDepartmentName(doctor.getDepartmentName());
d.setOrderFlag(false);
d.setOrderId("");
d.setOrderName("");
d.setOrderTime("");
d.setPayFlag(false);
d.setPayTime("");
iDoctorNumberService.saveOrUpdate(d);
return ResultUtil.success();
}
4.5 预约号源
@RequestMapping(value = "/addOrder", method = RequestMethod.POST)
@ApiOperation(value = "预约号源")
public Result<Object> addOrder(@RequestParam String doctorId){
QueryWrapper<DoctorNumber> qw = new QueryWrapper<>();
qw.eq("doctor_id",doctorId);
qw.eq("date", DateUtil.today());
List<DoctorNumber> numberList = iDoctorNumberService.list(qw);
if(numberList.size() < 1) {
return ResultUtil.error("您手速慢啦,号源没有了");
}
User currUser = securityUtil.getCurrUser();
DoctorNumber dn = numberList.get(0);
dn.setOrderFlag(true);
dn.setOrderId(currUser.getId());
dn.setOrderName(currUser.getNickname());
dn.setOrderTime(DateUtil.now());
iDoctorNumberService.saveOrUpdate(dn);
return ResultUtil.success();
}