zjh
2024-08-01 af6f1f6ad2f3fffeeed75f1a742a5bb63141db60
ltkj-admin/src/main/java/com/ltkj/web/controller/system/StjSchedulingTimeController.java
@@ -15,9 +15,8 @@
import com.ltkj.hosp.service.IDictUserInfoService;
import com.ltkj.hosp.vodomain.DoctorUserVo;
import com.ltkj.mall.service.IMallSchedulingTimeService;
import com.ltkj.system.service.ISysDeptService;
import com.ltkj.system.service.ISysDictDataService;
import com.ltkj.system.service.ISysUserService;
import com.ltkj.system.domain.SysUserRole;
import com.ltkj.system.service.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@@ -27,6 +26,7 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.util.*;
import java.util.stream.Collectors;
/**
 * 排班时间Controller
@@ -48,7 +48,7 @@
    private ISysDeptService deptService;
    @Autowired
    private ISysDictDataService dictDataService;
    private SysUserRoleService userRoleService;
    /**
@@ -221,83 +221,88 @@
     */
    @PostMapping("/getSchedulingInformation")
    @ApiOperation(value = "获取排班信息临时数据接口")
    public AjaxResult getSchedulingInformation(@RequestBody MallSchedulingTimeDto dto) {
    public AjaxResult getSchedulingInformation(@RequestBody List<MallSchedulingTimeDto> dtos) {
        List<MallSchedulingTime> list=new ArrayList<>();
        if(null !=dto){
            if(null !=dto.getStartTime() && null !=dto.getEndTime()){
                List<Date> dateList = mallSchedulingTimeService.getDateListByBetweenTime(dto.getStartTime(), dto.getEndTime());
                if(null !=dateList && dateList.size()>0){
                    if (dto.getMOrA()==1){
                        for (Date date : dateList) {
                            MallSchedulingTime schedulingTime =new MallSchedulingTime();
                            schedulingTime.setTime(DateUtil.parse(DateUtil.format(date,"yyyy-MM-dd")));
                            schedulingTime.setAllNum(Long.valueOf(dto.getAllNum()));
                            schedulingTime.setNowNum(Long.valueOf(dto.getAllNum()));
                            schedulingTime.setWeek(DateUtils.dateToWeek(date));
                            schedulingTime.setMOrA("上午");
                            schedulingTime.setUserId(dto.getUserId());
                            schedulingTime.setUserName(dto.getUserName());
                            schedulingTime.setIsClose("N");
        if (dtos!=null){
            for (MallSchedulingTimeDto dto : dtos) {
                if(null !=dto){
                    if(null !=dto.getStartTime() && null !=dto.getEndTime()){
                        List<Date> dateList = mallSchedulingTimeService.getDateListByBetweenTime(dto.getStartTime(), dto.getEndTime());
                        if(null !=dateList && dateList.size()>0){
                            if (dto.getMOrA()==1){
                                for (Date date : dateList) {
                                    MallSchedulingTime schedulingTime =new MallSchedulingTime();
                                    schedulingTime.setTime(DateUtil.parse(DateUtil.format(date,"yyyy-MM-dd")));
                                    schedulingTime.setAllNum(Long.valueOf(dto.getAllNum()));
                                    schedulingTime.setNowNum(Long.valueOf(dto.getAllNum()));
                                    schedulingTime.setWeek(DateUtils.dateToWeek(date));
                                    schedulingTime.setMOrA("上午");
                                    schedulingTime.setUserId(dto.getUserId());
                                    schedulingTime.setUserName(dto.getUserName());
                                    schedulingTime.setIsClose("N");
//                              schedulingTime.setTimeSlot(s);
                            schedulingTime.setNumType(dto.getNumType());
                            schedulingTime.setDeptId(dto.getDeptId());
                            schedulingTime.setDeptName(dto.getDeptName());
                            list.add(schedulingTime);
                        }
                    }else if (dto.getMOrA()==2){
                        for (Date date : dateList) {
                            MallSchedulingTime schedulingTime =new MallSchedulingTime();
                            schedulingTime.setTime(DateUtil.parse(DateUtil.format(date,"yyyy-MM-dd")));
                            schedulingTime.setAllNum(Long.valueOf(dto.getAllNum()));
                            schedulingTime.setNowNum(Long.valueOf(dto.getAllNum()));
                            schedulingTime.setWeek(DateUtils.dateToWeek(date));
                            schedulingTime.setMOrA("下午");
                            schedulingTime.setUserId(dto.getUserId());
                            schedulingTime.setUserName(dto.getUserName());
                            schedulingTime.setIsClose("N");
                                    schedulingTime.setNumType(dto.getNumType());
                                    schedulingTime.setDeptId(dto.getDeptId());
                                    schedulingTime.setDeptName(dto.getDeptName());
                                    list.add(schedulingTime);
                                }
                            }else if (dto.getMOrA()==2){
                                for (Date date : dateList) {
                                    MallSchedulingTime schedulingTime =new MallSchedulingTime();
                                    schedulingTime.setTime(DateUtil.parse(DateUtil.format(date,"yyyy-MM-dd")));
                                    schedulingTime.setAllNum(Long.valueOf(dto.getAllNum()));
                                    schedulingTime.setNowNum(Long.valueOf(dto.getAllNum()));
                                    schedulingTime.setWeek(DateUtils.dateToWeek(date));
                                    schedulingTime.setMOrA("下午");
                                    schedulingTime.setUserId(dto.getUserId());
                                    schedulingTime.setUserName(dto.getUserName());
                                    schedulingTime.setIsClose("N");
//                              schedulingTime.setTimeSlot(s);
                            schedulingTime.setNumType(dto.getNumType());
                            schedulingTime.setDeptId(dto.getDeptId());
                            schedulingTime.setDeptName(dto.getDeptName());
                            list.add(schedulingTime);
                        }
                    }else if (dto.getMOrA()==3){
                        for (Date date : dateList) {
                            MallSchedulingTime schedulingTime =new MallSchedulingTime();
                            schedulingTime.setTime(DateUtil.parse(DateUtil.format(date,"yyyy-MM-dd")));
                            schedulingTime.setAllNum(Long.valueOf(dto.getAllNum()));
                            schedulingTime.setNowNum(Long.valueOf(dto.getAllNum()));
                            schedulingTime.setWeek(DateUtils.dateToWeek(date));
                            schedulingTime.setMOrA("上午");
                            schedulingTime.setUserId(dto.getUserId());
                            schedulingTime.setUserName(dto.getUserName());
                            schedulingTime.setIsClose("N");
                                    schedulingTime.setNumType(dto.getNumType());
                                    schedulingTime.setDeptId(dto.getDeptId());
                                    schedulingTime.setDeptName(dto.getDeptName());
                                    list.add(schedulingTime);
                                }
                            }else if (dto.getMOrA()==3){
                                for (Date date : dateList) {
                                    MallSchedulingTime schedulingTime =new MallSchedulingTime();
                                    schedulingTime.setTime(DateUtil.parse(DateUtil.format(date,"yyyy-MM-dd")));
                                    schedulingTime.setAllNum(Long.valueOf(dto.getAllNum()));
                                    schedulingTime.setNowNum(Long.valueOf(dto.getAllNum()));
                                    schedulingTime.setWeek(DateUtils.dateToWeek(date));
                                    schedulingTime.setMOrA("上午");
                                    schedulingTime.setUserId(dto.getUserId());
                                    schedulingTime.setUserName(dto.getUserName());
                                    schedulingTime.setIsClose("N");
//                              schedulingTime.setTimeSlot(s);
                            schedulingTime.setNumType(dto.getNumType());
                            schedulingTime.setDeptId(dto.getDeptId());
                            schedulingTime.setDeptName(dto.getDeptName());
                            list.add(schedulingTime);
                                    schedulingTime.setNumType(dto.getNumType());
                                    schedulingTime.setDeptId(dto.getDeptId());
                                    schedulingTime.setDeptName(dto.getDeptName());
                                    list.add(schedulingTime);
                            MallSchedulingTime schedulingTime1 =new MallSchedulingTime();
                            schedulingTime1.setTime(DateUtil.parse(DateUtil.format(date,"yyyy-MM-dd")));
                            schedulingTime1.setAllNum(Long.valueOf(dto.getAllNum()));
                            schedulingTime1.setNowNum(Long.valueOf(dto.getAllNum()));
                            schedulingTime1.setWeek(DateUtils.dateToWeek(date));
                            schedulingTime1.setMOrA("下午");
                            schedulingTime1.setUserId(dto.getUserId());
                            schedulingTime1.setUserName(dto.getUserName());
                            schedulingTime1.setIsClose("N");
                                    MallSchedulingTime schedulingTime1 =new MallSchedulingTime();
                                    schedulingTime1.setTime(DateUtil.parse(DateUtil.format(date,"yyyy-MM-dd")));
                                    schedulingTime1.setAllNum(Long.valueOf(dto.getAllNum()));
                                    schedulingTime1.setNowNum(Long.valueOf(dto.getAllNum()));
                                    schedulingTime1.setWeek(DateUtils.dateToWeek(date));
                                    schedulingTime1.setMOrA("下午");
                                    schedulingTime1.setUserId(dto.getUserId());
                                    schedulingTime1.setUserName(dto.getUserName());
                                    schedulingTime1.setIsClose("N");
//                              schedulingTime.setTimeSlot(s);
                            schedulingTime1.setNumType(dto.getNumType());
                            schedulingTime1.setDeptId(dto.getDeptId());
                            schedulingTime1.setDeptName(dto.getDeptName());
                            list.add(schedulingTime1);
                                    schedulingTime1.setNumType(dto.getNumType());
                                    schedulingTime1.setDeptId(dto.getDeptId());
                                    schedulingTime1.setDeptName(dto.getDeptName());
                                    list.add(schedulingTime1);
                                }
                            }
                        }
                    }
                }
            }
        }
        return AjaxResult.success(list);
    }
@@ -311,9 +316,17 @@
    public AjaxResult getUserListBySchedulingTimt(@RequestParam(required = false) @ApiParam(value = "医生姓名") String userName,
                                                  @RequestParam(required = false) @ApiParam(value = "科室") String deptName,
                                                  @RequestParam(defaultValue = "1") @ApiParam(value = "分页") Integer pageNum,
                                                  @RequestParam(defaultValue = "10") @ApiParam(value = "一页展示条数") Integer pageSize) {
                                                  @RequestParam(defaultValue = "10") @ApiParam(value = "一页展示条数") Integer pageSize,
                                                  @RequestParam(required = false) @ApiParam(value = "角色id") Long roleId) {
        Page<SysUser> page=new Page<>(pageNum,pageSize);
        LambdaQueryWrapper<SysUser> wq=new LambdaQueryWrapper<>();
        if (roleId!=null){
            LambdaQueryWrapper<SysUserRole> wq111=new LambdaQueryWrapper<>();
            wq111.eq(SysUserRole::getRoleId,roleId);
            final List<SysUserRole> list1 = userRoleService.list(wq111);
            final List<Long> collect = list1.stream().map(SysUserRole::getUserId).collect(Collectors.toList());
            wq.in(SysUser::getUserId,collect);
        }
        if(null !=userName){
            wq.like(SysUser::getNickName,userName);
        }
@@ -341,6 +354,7 @@
                        vo.setTime(timeList.get(0).getTime());
                    }
                }
                voList.add(vo);
            }
        }