소스 검색

队列添加手术 手术中队列数量统计值更新

wangzl 2 달 전
부모
커밋
2686726aba

+ 15 - 1
tr-modules/tr-module-smartFollowUp/src/main/java/cn/tr/module/smart/common/service/impl/BizReasearchQueueClinicServiceImpl.java

@@ -10,10 +10,13 @@ import cn.tr.module.smart.common.controller.vo.BizReasearchQueueQuestionAnswerVO
 import cn.tr.module.smart.common.dto.BizReasearchQueueAddClinicDTO;
 import cn.tr.module.smart.common.dto.BizReasearchQueueClinicQuestionAnswerRecordQueryDTO;
 import cn.tr.module.smart.common.mapper.BizQuestionAnswerMapper;
+import cn.tr.module.smart.common.po.BizClinicRoomPO;
 import cn.tr.module.smart.common.po.BizQuestionAnswerPO;
 import cn.tr.module.smart.common.po.BizReasearchQueuePO;
+import cn.tr.module.smart.common.repository.BizClinicRoomRepository;
 import cn.tr.module.smart.common.repository.BizQuestionAnswerRepository;
 import cn.tr.module.smart.common.repository.BizReasearchQueueRepository;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -40,7 +43,8 @@ public class BizReasearchQueueClinicServiceImpl extends ServiceImpl<BizReasearch
     private BizQuestionAnswerRepository questionAnswerRepository;
     @Autowired
     private BizReasearchQueueRepository reasearchQueueRepository;
-
+    @Autowired
+    private BizClinicRoomRepository clinicRoomRepository;
     /**
      * 根据条件查询队列-临床手术关联表
      * @param    query 查询参数
@@ -82,6 +86,10 @@ public class BizReasearchQueueClinicServiceImpl extends ServiceImpl<BizReasearch
                     return result;
                 })
                 .collect(Collectors.toList());
+        //手术表中队列数量统计加1
+        clinicRoomRepository.update(null,new LambdaUpdateWrapper<BizClinicRoomPO>()
+                .setSql("queue_count = queue_count + 1")
+                .in(BizClinicRoomPO::getId,clinicIds));
         this.saveBatch(insertBatch);
         //todo 运行任务
         return Boolean.TRUE;
@@ -99,6 +107,12 @@ public class BizReasearchQueueClinicServiceImpl extends ServiceImpl<BizReasearch
         if(CollectionUtil.isEmpty(ids)){
             throw new ServiceException(TRExcCode.SYSTEM_ERROR_B0001,"请选择要删除的数据");
         }
+        //手术表中队列数量统计减1
+        List<BizReasearchQueueClinicPO> bizReasearchQueueClinicPOS = baseMapper.selectBatchIds(ids);
+        List<String> clinicIds = bizReasearchQueueClinicPOS.stream().map(clinic -> clinic.getClinicRoomId()).collect(Collectors.toList());
+        clinicRoomRepository.update(null,new LambdaUpdateWrapper<BizClinicRoomPO>()
+                .setSql("queue_count = queue_count - 1")
+                .in(BizClinicRoomPO::getId,clinicIds));
         return baseMapper.deleteBatchIds(ids);
     }