diff --git a/nursing-unit-api/src/main/java/com/nu/modules/wechat/elder/api/ElderApi.java b/nursing-unit-api/src/main/java/com/nu/modules/wechat/elder/api/ElderApi.java index c28b5c5..35f4283 100644 --- a/nursing-unit-api/src/main/java/com/nu/modules/wechat/elder/api/ElderApi.java +++ b/nursing-unit-api/src/main/java/com/nu/modules/wechat/elder/api/ElderApi.java @@ -101,6 +101,48 @@ public class ElderApi { @RequestMapping(value = "/editNuBizAdvisoryInfo", method = {RequestMethod.PUT, RequestMethod.POST}) public Result editNuBizAdvisoryInfo(@RequestBody NuBizAdvisoryInfoEntity nuBizAdvisoryInfo) { advisoryInfoApi.editNuBizAdvisoryInfo(nuBizAdvisoryInfo); + //通知对应机构修改老人家属信息 + //护理单元信息 + List nuElderList = nuBaseElderApi.queryByOpenId(nuBizAdvisoryInfo.getOpenId()); + if (nuElderList != null && nuElderList.size() > 0) { + //查询出机构编码 - 机构名称对应关系 + List jsonObjects = sysBaseAPI.queryOpeDept(); + Map codeNameMap = new HashMap<>(); + if (jsonObjects != null && !jsonObjects.isEmpty()) { + for (JSONObject obj : jsonObjects) { + String code = obj.getString("code"); + String name = obj.getString("name"); + if (code != null && name != null) { + codeNameMap.put(code, name); + } + } + } + + //key:orgCode value:nuid逗号拼接的字符串 + Map orgCodeToNuIdMap = nuElderList.stream() + .filter(entity -> entity.getOrgCode() != null && entity.getNuId() != null) + .collect(Collectors.groupingBy( + NuBaseElderEntity::getOrgCode, + Collectors.mapping(NuBaseElderEntity::getNuId, Collectors.joining(",")) + )); + + for (Map.Entry entry : orgCodeToNuIdMap.entrySet()) { + String orgCode = entry.getKey(); + + //切换数据源整理好数据放到返回结果中 + DynamicDataSourceContextHolder.push(orgCode); + ElderInfoMQDto mqdto = new ElderInfoMQDto(); + mqdto.setGuardianOpenId(nuBizAdvisoryInfo.getOpenId());//联系人openId + mqdto.setGuardianName(nuBizAdvisoryInfo.getName());//联系人姓名 + mqdto.setGuardianPhone(nuBizAdvisoryInfo.getTel());//联系人电话 + mqdto.setGuardianIdCard(nuBizAdvisoryInfo.getIdCard());//联系人身份证号 + mqdto.setGuardianHomeAddress(nuBizAdvisoryInfo.getHomeAddress());//联系人家庭住址 + mqdto.setGuardianWorkUnit(nuBizAdvisoryInfo.getWorkUnit());//联系人工作单位 + rabbitMQUtil.sendToExchange("hldy.elder", orgCode+".elder.updateguardianinfo", mqdto); + DynamicDataSourceContextHolder.clear(); + } + } + return Result.OK("编辑成功!"); }