From 6e2d793c1811aa9dcb99aea6b6cb8157f0867cd6 Mon Sep 17 00:00:00 2001 From: "1378012178@qq.com" <1378012178@qq.com> Date: Mon, 12 Jan 2026 15:39:11 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0pad=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=EF=BC=9A=E6=9C=8D=E5=8A=A1=E6=8C=87=E4=BB=A4=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E8=BD=AC=E5=8D=95=E3=80=81=E5=8D=8F=E5=8A=A9=E6=89=A7=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../directiveorder/api/ServiceOrderApi.java | 17 +- .../modules/order/api/IDirectiveOrderApi.java | 3 + .../impl/DirectiveOrderPadServiceImpl.java | 145 ++++++++++++------ 3 files changed, 120 insertions(+), 45 deletions(-) diff --git a/nursing-unit-api/src/main/java/com/nu/modules/pad/directiveorder/api/ServiceOrderApi.java b/nursing-unit-api/src/main/java/com/nu/modules/pad/directiveorder/api/ServiceOrderApi.java index 2aa3b833..c3cc7ea7 100644 --- a/nursing-unit-api/src/main/java/com/nu/modules/pad/directiveorder/api/ServiceOrderApi.java +++ b/nursing-unit-api/src/main/java/com/nu/modules/pad/directiveorder/api/ServiceOrderApi.java @@ -110,7 +110,22 @@ public class ServiceOrderApi { @ApiOperation(value="服务指令工单-转单", notes="服务指令工单-转单") @AutoLog(value = "服务指令工单-转单",clientType="app", operateType = 3) @PostMapping(value = "/transferOrder") - public Result transferOrder(@RequestBody DirectiveOrderEntity directiveOrderEntity) { + public Result transferOrder(@RequestBody DirectiveOrderSubEntity dto) { + if(StringUtils.isBlank(dto.getMainId()) ){ + return Result.error("缺少参数"); + } + directiveOrderApi.transferOrder(dto); + return Result.OK("操作成功!"); + } + + @ApiOperation(value="服务指令工单-协助执行", notes="服务指令工单-协助执行") + @AutoLog(value = "服务指令工单-协助执行",clientType="app", operateType = 3) + @PostMapping(value = "/assistOrder") + public Result assistOrder(@RequestBody DirectiveOrderSubEntity dto) { + if(StringUtils.isBlank(dto.getMainId()) ){ + return Result.error("缺少参数"); + } + directiveOrderApi.assistOrder(dto); return Result.OK("操作成功!"); } } diff --git a/nursing-unit-services/nu-services-api/nu-services-local-api/src/main/java/com/nu/modules/order/api/IDirectiveOrderApi.java b/nursing-unit-services/nu-services-api/nu-services-local-api/src/main/java/com/nu/modules/order/api/IDirectiveOrderApi.java index 1f5650fd..7fa4980f 100644 --- a/nursing-unit-services/nu-services-api/nu-services-local-api/src/main/java/com/nu/modules/order/api/IDirectiveOrderApi.java +++ b/nursing-unit-services/nu-services-api/nu-services-local-api/src/main/java/com/nu/modules/order/api/IDirectiveOrderApi.java @@ -51,4 +51,7 @@ public interface IDirectiveOrderApi { Map generateOrdersInstant(DirectiveOrderEntity directiveOrderEntity); + void transferOrder(DirectiveOrderSubEntity dto); + + void assistOrder(DirectiveOrderSubEntity dto); } diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/order/service/impl/DirectiveOrderPadServiceImpl.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/order/service/impl/DirectiveOrderPadServiceImpl.java index fa8568c0..e6e46d6d 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/order/service/impl/DirectiveOrderPadServiceImpl.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/order/service/impl/DirectiveOrderPadServiceImpl.java @@ -3,6 +3,7 @@ package com.nu.modules.biz.order.service.impl; import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -29,7 +30,7 @@ import java.util.*; /** * @Description: 服务指令工单主表 * @Author: caolei - * @Date: 2025-11-18 + * @Date: 2025-11-18 * @Version: V1.0 */ @Service @@ -54,20 +55,20 @@ public class DirectiveOrderPadServiceImpl extends ServiceImpl queryOrderList(Integer pageNo, Integer pageSize, DirectiveOrderEntity directiveOrderEntity, HttpServletRequest req) { DirectiveOrder directiveOrder = new DirectiveOrder(); - BeanUtils.copyProperties(directiveOrderEntity,directiveOrder); + BeanUtils.copyProperties(directiveOrderEntity, directiveOrder); QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("nu_id",directiveOrderEntity.getNuId()); - queryWrapper.eq("iz_finish","N"); - queryWrapper.eq(StringUtils.isNotBlank(directiveOrderEntity.getEmployeeId()),"employee_id",directiveOrderEntity.getEmployeeId()); + queryWrapper.eq("nu_id", directiveOrderEntity.getNuId()); + queryWrapper.eq("iz_finish", "N"); + queryWrapper.eq(StringUtils.isNotBlank(directiveOrderEntity.getEmployeeId()), "employee_id", directiveOrderEntity.getEmployeeId()); Page page = new Page<>(pageNo, pageSize); - List list = baseMapper.selectList(page,queryWrapper); + List list = baseMapper.selectList(page, queryWrapper); IPage entityPage = new Page<>(page.getCurrent(), page.getSize(), page.getTotal()); entityPage.setRecords(BeanUtil.copyToList(list, DirectiveOrderEntity.class)); return entityPage; @@ -76,7 +77,7 @@ public class DirectiveOrderPadServiceImpl extends ServiceImpl queryOrderInfoList(DirectiveOrderSubEntity directiveOrderSubEntity, HttpServletRequest req) { DirectiveOrderSub directiveOrderSub = new DirectiveOrderSub(); - BeanUtils.copyProperties(directiveOrderSubEntity,directiveOrderSub); + BeanUtils.copyProperties(directiveOrderSubEntity, directiveOrderSub); QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(directiveOrderSub, req.getParameterMap()); List list = directiveOrderSubMapper.selectList(queryWrapper); List list1 = new ArrayList<>(); @@ -92,17 +93,17 @@ public class DirectiveOrderPadServiceImpl extends ServiceImpl map = new HashMap<>(); - map.put("success",true); - map.put("message","操作成功"); - map.put("directiveOrder",directiveOrder); - map.put("directiveOrderSub",directiveOrderSub); + map.put("success", true); + map.put("message", "操作成功"); + map.put("directiveOrder", directiveOrder); + map.put("directiveOrderSub", directiveOrderSub); return map; } @@ -117,8 +118,8 @@ public class DirectiveOrderPadServiceImpl extends ServiceImpl list = directiveOrderSubMapper.selectList(new QueryWrapper().eq("main_id",directiveOrder.getId()).ne("iz_finish","Y")); - if(list.size()==0){ + List list = directiveOrderSubMapper.selectList(new QueryWrapper().eq("main_id", directiveOrder.getId()).ne("iz_finish", "Y")); + if (list.size() == 0) { directiveOrder.setIzFinish("Y"); directiveOrder.setFinishTime(new Date()); DirectiveOrder directivePrice = baseMapper.getDirectivePrice(directiveOrder.getDirectiveId());//获取服务指令价格 @@ -129,54 +130,54 @@ public class DirectiveOrderPadServiceImpl extends ServiceImpl map = new HashMap<>(); - map.put("success",true); - map.put("message","操作成功"); - map.put("directiveOrder",directiveOrder); - map.put("directiveOrderSub",directiveOrderSub); + map.put("success", true); + map.put("message", "操作成功"); + map.put("directiveOrder", directiveOrder); + map.put("directiveOrderSub", directiveOrderSub); return map; } @Override public IPage queryWorkOrderList(Integer pageNo, Integer pageSize, DirectiveOrderEntity directiveOrderEntity, HttpServletRequest req) { DirectiveOrder directiveOrder = new DirectiveOrder(); - BeanUtils.copyProperties(directiveOrderEntity,directiveOrder); + BeanUtils.copyProperties(directiveOrderEntity, directiveOrder); QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("nu_id",directiveOrderEntity.getNuId()); - queryWrapper.eq(StringUtils.isNotBlank(directiveOrderEntity.getEmployeeId()),"employee_id",directiveOrderEntity.getEmployeeId()); + queryWrapper.eq("nu_id", directiveOrderEntity.getNuId()); + queryWrapper.eq(StringUtils.isNotBlank(directiveOrderEntity.getEmployeeId()), "employee_id", directiveOrderEntity.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",directiveOrderEntity.getWorkType())){ - queryWrapper.eq("iz_start","N"); - queryWrapper.eq("iz_finish","N"); + if (StringUtils.equals("1", directiveOrderEntity.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",directiveOrderEntity.getWorkType())){ - queryWrapper.eq("iz_start","Y"); - queryWrapper.eq("iz_finish","N"); + } else if (StringUtils.equals("2", directiveOrderEntity.getWorkType())) { + queryWrapper.eq("iz_start", "Y"); + queryWrapper.eq("iz_finish", "N"); queryWrapper.orderByAsc("start_time"); - }else if(StringUtils.equals("3",directiveOrderEntity.getWorkType())){ - queryWrapper.eq("iz_start","Y"); - queryWrapper.eq("iz_finish","Y"); - }else if(StringUtils.equals("4",directiveOrderEntity.getWorkType())){ - queryWrapper.eq("iz_start","N"); - queryWrapper.eq("iz_finish","N"); + } else if (StringUtils.equals("3", directiveOrderEntity.getWorkType())) { + queryWrapper.eq("iz_start", "Y"); + queryWrapper.eq("iz_finish", "Y"); + } else if (StringUtils.equals("4", directiveOrderEntity.getWorkType())) { + queryWrapper.eq("iz_start", "N"); + queryWrapper.eq("iz_finish", "N"); queryWrapper.apply("start_time < now()"); - }else if(StringUtils.equals("5",directiveOrderEntity.getWorkType())){ + } else if (StringUtils.equals("5", directiveOrderEntity.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); + List list = baseMapper.selectList(page, queryWrapper); IPage entityPage = new Page<>(page.getCurrent(), page.getSize(), page.getTotal()); entityPage.setRecords(BeanUtil.copyToList(list, DirectiveOrderEntity.class)); return entityPage; } @Override - public int queryTodayFinishedTotal(String type,String nuId, String elderId) { - return baseMapper.queryTodayFinishedTotal(type,nuId, elderId); + public int queryTodayFinishedTotal(String type, String nuId, String elderId) { + return baseMapper.queryTodayFinishedTotal(type, nuId, elderId); } @Override @@ -196,8 +197,8 @@ public class DirectiveOrderPadServiceImpl extends ServiceImpl map = new HashMap<>(); - map.put("success",true); - map.put("message","操作成功"); + map.put("success", true); + map.put("message", "操作成功"); return map; } @@ -208,21 +209,77 @@ public class DirectiveOrderPadServiceImpl extends ServiceImpl map = new HashMap<>(); - map.put("success",true); - map.put("message","操作成功"); + map.put("success", true); + map.put("message", "操作成功"); return map; } /** * 生成即时服务指令工单 + * * @param directiveOrderEntity * @return */ @Override - public Map generateOrdersInstant(DirectiveOrderEntity directiveOrderEntity){ + public Map generateOrdersInstant(DirectiveOrderEntity directiveOrderEntity) { DirectiveOrder directiveOrder = new DirectiveOrder(); - BeanUtils.copyProperties(directiveOrderEntity,directiveOrder); + BeanUtils.copyProperties(directiveOrderEntity, directiveOrder); return directiveOrderService.generateOrdersInstant(directiveOrder); } + @Override + public void transferOrder(DirectiveOrderSubEntity dto) { + DirectiveOrder main = new DirectiveOrder(); + DirectiveOrderSub sub = new DirectiveOrderSub(); + + String optType = "3";//转单 + + //执行类型 + main.setOptType(optType); + sub.setOptType(optType); + //主要执行人 + main.setEmployeeId(dto.getEmployeeId()); + main.setEmployeeName(dto.getEmployeeName()); + sub.setEmployeeId(dto.getEmployeeId()); + sub.setEmployeeName(dto.getEmployeeName()); + //实际执行人 + main.setOptIds(dto.getEmployeeId()); + main.setOptNames(dto.getEmployeeName()); + sub.setOptIds(dto.getEmployeeId()); + sub.setOptNames(dto.getEmployeeName()); + + //修改主表 + main.setId(dto.getMainId()); + directiveOrderService.updateById(main); + //修改子表 + UpdateWrapper subUW = new UpdateWrapper<>(); + subUW.eq("main_id",dto.getMainId()); + directiveOrderSubMapper.update(sub,subUW); + } + + + @Override + public void assistOrder(DirectiveOrderSubEntity dto) { + DirectiveOrder main = new DirectiveOrder(); + DirectiveOrderSub sub = new DirectiveOrderSub(); + + String optType = "2";//协助 + + //执行类型 + main.setOptType(optType); + sub.setOptType(optType); + //实际执行人 + main.setOptIds(dto.getOptIds()); + main.setOptNames(dto.getOptNames()); + sub.setOptIds(dto.getOptIds()); + sub.setOptNames(dto.getOptNames()); + + //修改主表 + main.setId(dto.getMainId()); + directiveOrderService.updateById(main); + //修改子表 + UpdateWrapper subUW = new UpdateWrapper<>(); + subUW.eq("main_id",dto.getMainId()); + directiveOrderSubMapper.update(sub,subUW); + } }