Ver código fonte

修改
1、护理变更同步更新长者档案信息中的护理等级

liangwenxuan 1 mês atrás
pai
commit
cd9c729755

+ 17 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/api/bpm/BpmElderlyChangeApiImpl.java

@@ -40,6 +40,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import jodd.util.StringUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.core.parameters.P;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -127,6 +128,9 @@ public class BpmElderlyChangeApiImpl implements BpmElderlyChangeApi {
     @Resource
     private ExpenseOrderItemMapper expenseOrderItemMapper;
 
+    @Autowired
+    private NurseLevelMapper nurseLevelMapper;
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public Long addElderlyBedChangeRecord(ElderlyChangeRecordReqVO bedChangeRecordReqVO) {
@@ -265,6 +269,19 @@ public class BpmElderlyChangeApiImpl implements BpmElderlyChangeApi {
         ElderlyChangeRecordDO bedChangeRecordDO = changeRecordMapper.selectById(businessId);
         // 1. 获取当前费用的价格 TODO 不应该在这里查询,前端是能获取到的,应该在插入变更记录的时候就要录入
         Long elderlyId = bedChangeRecordDO.getElderlyId();
+        // 护理变更
+        if(identification == 2){
+            List<NurseLevelDO> nurseLevelDOS = nurseLevelMapper.selectList(new LambdaQueryWrapperX<NurseLevelDO>()
+                    .eq(NurseLevelDO::getNurseLevelName, bedChangeRecordDO.getExpectName()));
+            if(CollectionUtils.isNotEmpty(nurseLevelDOS)){
+                NurseLevelDO nurseLevelDO = nurseLevelDOS.get(0);
+                ElderlyInfoDO elderlyInfoDO = new ElderlyInfoDO();
+                elderlyInfoDO.setId(elderlyId);
+                elderlyInfoDO.setNurseLevelId(nurseLevelDO.getId());
+                elderlyInfoDO.setNurseLevelName(nurseLevelDO.getNurseLevelName());
+                elderlyInfoMapper.updateById(elderlyInfoDO);
+            }
+        }
         checkChangeStartDate(elderlyId,bedChangeRecordDO.getChangeDate());
         BedChangeCategoryVO chargeCategory =  expenseMapper.getChargeCategory(elderlyId, identification);