Parcourir la source

新增
1、导出长者血糖记录增加检测人
2、床位变更按照生效日期降序排序
3、增加小程序获取长者信息接口
4、增加巡检模块相关接口

liangwenxuan il y a 2 mois
Parent
commit
a437797195

+ 1 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/ElderlyBloodSugarRecordController.java

@@ -103,6 +103,7 @@ public class ElderlyBloodSugarRecordController {
             excelVO.setElderSexDisplay(vo.getElderSex() == null ? "" : (vo.getElderSex() == 1 ? "男" : "女"));
             excelVO.setRecordDate(vo.getRecordDate());
             excelVO.setBloodSugar(vo.getBloodSugar());
+            excelVO.setCreator(vo.getCreator());
             excelVO.setRemark(vo.getRemark());
             return excelVO;
         }).collect(Collectors.toList());

+ 9 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/ElderlyInfoController.java

@@ -423,4 +423,13 @@ public class ElderlyInfoController {
         List<ElderlyDepositImportVO> list = ExcelUtils.read(file, ElderlyDepositImportVO.class);
         return success(elderlyInfoService.importDeposit(list));
     }
+
+    @GetMapping("/miniGetElderInfo")
+    @Operation(summary = "小程序获取长者信息")
+    @TenantIgnore
+    @PermitAll
+    public CommonResult<String> miniGetElderInfo(@RequestParam("elderName") String elderName,
+                                                 @RequestParam("tenantId") Long tenantId){
+        return success(elderlyInfoService.miniGetElderInfo(elderName,tenantId));
+    }
 }

+ 2 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/WardRoundRecordController.java

@@ -12,6 +12,7 @@ import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.Operation;
 
 
+import javax.annotation.security.PermitAll;
 import javax.validation.*;
 
 
@@ -35,6 +36,7 @@ public class WardRoundRecordController {
     @PostMapping("/create")
     @Operation(summary = "创建查房记录")
     @TenantIgnore
+    @PermitAll
     public CommonResult<Boolean> createRoundRecord(@RequestBody WardRoundRecordDO createReqVO) {
         roundRecordService.createRoundRecord(createReqVO);
         return success(true);

+ 3 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/elderlybloodsugarrecord/ElderlyBloodSugarRecordExportExcelVO.java

@@ -32,4 +32,7 @@ public class ElderlyBloodSugarRecordExportExcelVO {
 
     @ExcelProperty("备注")
     private String remark;
+
+    @ExcelProperty("检测人")
+    private String creator;
 }

+ 2 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/biz/ElderlyInfoService.java

@@ -6,6 +6,7 @@ import cn.iocoder.yudao.module.system.controller.admin.biz.vo.excel.*;
 import cn.iocoder.yudao.module.system.dal.dataobject.biz.ElderlyCheckInRecordDO;
 import cn.iocoder.yudao.module.system.dal.dataobject.biz.ElderlyInfoDO;
 import cn.iocoder.yudao.module.system.dal.dataobject.biz.MbtiRecordBO;
+import org.springframework.web.bind.annotation.RequestParam;
 
 import java.util.List;
 import java.util.Map;
@@ -95,5 +96,6 @@ public interface ElderlyInfoService {
 
     String importCheckIn(List<ElderlyCheckInImportVO> list);
     String importDeposit(List<ElderlyDepositImportVO> list);
+    String miniGetElderInfo(String elderName,Long tenantId);
 }
 

+ 38 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/biz/ElderlyInfoServiceImpl.java

@@ -1,5 +1,6 @@
 package cn.iocoder.yudao.module.system.service.biz;
 
+import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.date.ChineseDate;
 import cn.hutool.core.util.RandomUtil;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
@@ -60,6 +61,8 @@ import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
 
+import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exceptionCustomMsg;
+import static cn.iocoder.yudao.module.system.enums.ErrorCodeConstants.COMMON_ERROR;
 import static cn.iocoder.yudao.module.system.enums.LogRecordConstants.*;
 
 import java.lang.reflect.Field;
@@ -200,6 +203,12 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
     @Autowired
     private DepositService depositService;
 
+    @Autowired
+    private ElderlyContractService elderlyContractService;
+
+    @Autowired
+    private ExpenseOrderService expenseOrderService;
+
     // 定义一个静态的线程池
     private static final ExecutorService executorService = Executors.newFixedThreadPool(10);
     private static final ScheduledExecutorService timeoutExecutor = Executors.newScheduledThreadPool(10);
@@ -2314,6 +2323,35 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
         return "success";
     }
 
+    @Override
+    public String miniGetElderInfo(String elderName, Long tenantId) {
+        List<ElderlyInfoDO> elderlyInfoDOS = elderlyInfoMapper.selectList(new LambdaQueryWrapperX<ElderlyInfoDO>()
+                .like(ElderlyInfoDO::getElderName, elderName)
+                .eq(ElderlyInfoDO::getTenantId, tenantId));
+        if(CollectionUtil.isEmpty(elderlyInfoDOS)){
+            throw exceptionCustomMsg(COMMON_ERROR,"不存在该长者:" + elderName);
+        }
+        if(elderlyInfoDOS.size() > 1){
+            String multiName = elderlyInfoDOS.stream().map(e -> e.getElderName()).collect(Collectors.joining(","));
+            throw exceptionCustomMsg(COMMON_ERROR,"该长者名称存在多个:" + multiName);
+        }
+        ElderlyInfoDO elderlyInfo = elderlyInfoDOS.get(0);
+        Long elderId = elderlyInfo.getId();
+        JSONObject data = new JSONObject();
+        ElderlyInfoDO detailById = findDetailById(elderId);
+        ElderlyContractResVO contractByElderId = elderlyContractService.getContractByElderId(elderId);
+        ExpenseBillPageReqVO expenseBillPageReqVO = new ExpenseBillPageReqVO();
+        expenseBillPageReqVO.setPageSize(1000);
+        expenseBillPageReqVO.setElderId(elderId);
+        PageResult<ExpenseOrderDO> expenseOrderPageByElderId = expenseOrderService.getExpenseOrderPageByElderId(expenseBillPageReqVO);
+        Map<String, Object> expenseOrderAmountByElderId = expenseOrderService.getExpenseOrderAmountByElderId(elderId);
+        data.put("elderInfo",detailById);
+        data.put("contractInfo",contractByElderId);
+        data.put("expenseOrder",expenseOrderPageByElderId);
+        data.put("ExpenseOrderAmount",expenseOrderAmountByElderId);
+        return data.toString();
+    }
+
     ElderlySanChart getSexAndNcdSan(ElderlyInfoHomeDataReqVO reqVO) {
 
         ElderlySanChart elderlySanChart = new ElderlySanChart();

+ 1 - 1
yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/ElderlyBloodSugarRecordMapper.xml

@@ -32,7 +32,7 @@
     </select>
 
     <select id="selectListWithElderInfo" resultType="cn.iocoder.yudao.module.system.controller.admin.biz.vo.elderlybloodsugarrecord.ElderlyBloodSugarRecordRespVO">
-        select ebsr.id, ebsr.elder_id, ebsr.record_date, ebsr.blood_sugar, ebsr.remark, ebsr.tenant_id,
+        select ebsr.id, ebsr.elder_id, ebsr.record_date, ebsr.blood_sugar, ebsr.remark, ebsr.creator,ebsr.tenant_id,
                ei.elder_name as elderName, ei.elder_sex as elderSex,
                br.room_name as roomName, bb.bed_name as bedName
         from elderly_blood_sugar_record ebsr

+ 1 - 1
yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/ElderlyChangeRecordMapper.xml

@@ -72,7 +72,7 @@
                     #{id}
                 </foreach>
             </if>
-        ORDER BY ecr.create_time DESC , ecr.update_time DESC
+        ORDER BY ecr.change_date DESC ,ecr.create_time DESC , ecr.update_time DESC
     </select>
 
     <select id="getBedDetail" resultType="cn.iocoder.yudao.module.system.controller.admin.biz.vo.BedChangeRecordRespVO">

+ 2 - 0
yudao-server/src/main/resources/application.yaml

@@ -236,6 +236,8 @@ yudao:
       - /admin-api/elderly-nursing-log/create
       - /admin-api/elderly-nursing-log/detail
       - /admin-api/elderly-nursing-log/list
+      - /admin-api/elderlyInfo/miniGetElderInfo
+      - /admin-api/ward/roundRecord/create
     ignore-tables:
       - system_tenant
       - system_groups