فهرست منبع

修改
1、小程序获取长者信息支持模糊匹配获取多个长者信息

liangwenxuan 1 هفته پیش
والد
کامیت
2a9b443322

+ 0 - 3
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/controller/admin/task/BpmProcessInstanceController.java

@@ -364,9 +364,6 @@ public class BpmProcessInstanceController {
 
         }
 
-        if (5 == pageReqVO.getQueryType()) {
-
-        }
         PageResult<BpmElderlyInfoVO> pageResult = processInstanceService.getMyBpmPage(getLoginUserId(), getLoginUserNickname(), pageReqVO);
         return success(pageResult);
     }

+ 15 - 12
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/biz/ElderlyInfoServiceImpl.java

@@ -2404,15 +2404,18 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
         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 (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);
+        // 多个长者匹配则全部返回,结果用 JSONArray 转成字符串
+        JSONArray array = new JSONArray();
+        for (ElderlyInfoDO elderlyInfo : elderlyInfoDOS) {
+            array.add(buildMiniElderInfo(elderlyInfo.getId()));
         }
-        ElderlyInfoDO elderlyInfo = elderlyInfoDOS.get(0);
-        Long elderId = elderlyInfo.getId();
+        return array.toJSONString();
+    }
+
+    private JSONObject buildMiniElderInfo(Long elderId) {
         JSONObject data = new JSONObject();
         ElderlyInfoDO detailById = findDetailById(elderId);
         ElderlyContractResVO contractByElderId = elderlyContractService.getContractByElderId(elderId);
@@ -2421,11 +2424,11 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
         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();
+        data.put("elderInfo", detailById);
+        data.put("contractInfo", contractByElderId);
+        data.put("expenseOrder", expenseOrderPageByElderId);
+        data.put("ExpenseOrderAmount", expenseOrderAmountByElderId);
+        return data;
     }
 
     ElderlySanChart getSexAndNcdSan(ElderlyInfoHomeDataReqVO reqVO) {