diff --git a/nursing-unit-api/src/main/java/com/nu/modules/pad/care/api/CareApi.java b/nursing-unit-api/src/main/java/com/nu/modules/pad/care/api/CareApi.java index 33a52808..9620f719 100644 --- a/nursing-unit-api/src/main/java/com/nu/modules/pad/care/api/CareApi.java +++ b/nursing-unit-api/src/main/java/com/nu/modules/pad/care/api/CareApi.java @@ -86,4 +86,18 @@ public class CareApi { Map pddMap = carePadApi.editSubPicPath(careOrdersSubEntity); return Result.OK("操作成功!"); } + + + @ApiOperation(value = "服务指令工单-查询工单列表", notes = "服务指令工单-查询工单列表") + @GetMapping(value = "/queryWorkCareList") + public Result> queryWorkCareList(CareOrdersEntity careOrdersEntityDto, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + if(StringUtils.isBlank(careOrdersEntityDto.getNuId())){ + return Result.error("参数错误,请选择正确的护理单元"); + } + IPage pageList = carePadApi.queryWorkCareList(pageNo, pageSize, careOrdersEntityDto,req); + return Result.OK(pageList); + } } diff --git a/nursing-unit-common/src/main/java/com/nu/entity/CareOrdersEntity.java b/nursing-unit-common/src/main/java/com/nu/entity/CareOrdersEntity.java index 061db80e..d8ef8cb0 100644 --- a/nursing-unit-common/src/main/java/com/nu/entity/CareOrdersEntity.java +++ b/nursing-unit-common/src/main/java/com/nu/entity/CareOrdersEntity.java @@ -155,4 +155,7 @@ public class CareOrdersEntity implements Serializable { //空闲状态提高3级 指定护理员提高2级 @TableField(exist = false) private Integer level; + /**工单类型 1待执行 2已执行 3已完成 4已过期 5待执行或者已执行未完成 空是全部*/ + @TableField(exist = false) + private String workType; } diff --git a/nursing-unit-services/nu-services-api/nu-services-local-api/src/main/java/com/nu/modules/care/api/ICarePadApi.java b/nursing-unit-services/nu-services-api/nu-services-local-api/src/main/java/com/nu/modules/care/api/ICarePadApi.java index f6dfdd09..33a289a2 100644 --- a/nursing-unit-services/nu-services-api/nu-services-local-api/src/main/java/com/nu/modules/care/api/ICarePadApi.java +++ b/nursing-unit-services/nu-services-api/nu-services-local-api/src/main/java/com/nu/modules/care/api/ICarePadApi.java @@ -20,4 +20,6 @@ public interface ICarePadApi { Map startOrder(CareOrdersSubEntity careOrdersSubEntity); Map endOrder(CareOrdersSubEntity careOrdersSubEntity); + + IPage queryWorkCareList(Integer pageNo, Integer pageSize, CareOrdersEntity careOrdersEntityDto, HttpServletRequest req); } diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/care/order/service/impl/CarePadServiceImpl.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/care/order/service/impl/CarePadServiceImpl.java index d9f89d3c..350ca12c 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/care/order/service/impl/CarePadServiceImpl.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/care/order/service/impl/CarePadServiceImpl.java @@ -20,6 +20,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.servlet.http.HttpServletRequest; +import java.time.LocalDateTime; import java.util.*; /** @@ -105,6 +106,44 @@ public class CarePadServiceImpl extends ServiceImpl queryWorkCareList(Integer pageNo, Integer pageSize, CareOrdersEntity careOrdersEntityDto, HttpServletRequest req) { + CareOrders careOrders = new CareOrders(); + BeanUtils.copyProperties(careOrdersEntityDto,careOrders); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("nu_id",careOrdersEntityDto.getNuId()); + queryWrapper.eq(StringUtils.isNotBlank(careOrdersEntityDto.getEmployeeId()),"employee_id",careOrdersEntityDto.getEmployeeId()); + // 方法1: 使用between查询 + LocalDateTime todayStart = LocalDateTime.now().withHour(0).withMinute(0).withSecond(0); + LocalDateTime todayEnd = LocalDateTime.now().withHour(23).withMinute(59).withSecond(59); + queryWrapper.between("start_time", todayStart, todayEnd); + /**工单类型 1待执行 2已执行 3已完成 4已过期 5待执行或者已执行未完成 空是全部*/ + if(StringUtils.equals("1",careOrdersEntityDto.getWorkType())){ + queryWrapper.eq("iz_start","N"); + queryWrapper.eq("iz_finish","N"); + queryWrapper.apply("start_time > now()"); + queryWrapper.orderByAsc("start_time"); + }else if(StringUtils.equals("2",careOrdersEntityDto.getWorkType())){ + queryWrapper.eq("iz_start","Y"); + queryWrapper.eq("iz_finish","N"); + queryWrapper.orderByAsc("start_time"); + }else if(StringUtils.equals("3",careOrdersEntityDto.getWorkType())){ + queryWrapper.eq("iz_start","Y"); + queryWrapper.eq("iz_finish","Y"); + }else if(StringUtils.equals("4",careOrdersEntityDto.getWorkType())){ + queryWrapper.eq("iz_start","N"); + queryWrapper.eq("iz_finish","N"); + queryWrapper.apply("start_time < now()"); + }else if(StringUtils.equals("5",careOrdersEntityDto.getWorkType())){ + queryWrapper.apply("((iz_start = 'N' and iz_finish='N') or (iz_start='Y' and iz_finish='N'))"); + } + Page page = new Page<>(pageNo, pageSize); + List list = baseMapper.selectList(page,queryWrapper); + IPage entityPage = new Page<>(page.getCurrent(), page.getSize(), page.getTotal()); + entityPage.setRecords(BeanUtil.copyToList(list, CareOrdersEntity.class)); + return entityPage; + } + @Override public Map editSubMp4(CareOrdersSubEntity careOrdersSubEntity) { CareOrdersSub careOrdersSub = new CareOrdersSub();