Ver código fonte

Merge remote-tracking branch 'origin/20210512_yw_check' into debug

wangsy 4 anos atrás
pai
commit
e24cd4ddbd

+ 4 - 3
src/main/java/com/diagbot/config/ResourceServerConfigurer.java

@@ -238,8 +238,10 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                 .antMatchers("/qc/behospitalInfo/logicDelCase").permitAll()
                 .antMatchers("/qc/medCheckInfo/getCheckUserMap").permitAll()
                 .antMatchers("/qc/medCheckInfo/getCheckList").permitAll()
-                .antMatchers("/qc/medCheckInfo//updateDistributionCheck").permitAll()
-                .antMatchers("/qc/medCheckInfo//getCheckListByUserId").permitAll()
+                .antMatchers("/qc/medCheckInfo/updateDistributionCheck").permitAll()
+                .antMatchers("/qc/medCheckInfo/getCheckListByUserId").permitAll()
+                .antMatchers("/qc/medCheckWork//addCheckWork").permitAll()
+                .antMatchers("/qc/medCheckWork//getUserList").permitAll()
                 .antMatchers("/**").authenticated();
         //                .antMatchers("/**").permitAll();
     }
@@ -248,7 +250,6 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
         log.info("Configuring ResourceServerSecurityConfigurer");
         resources.resourceId("user-service").tokenStore(new JwtTokenStore(jwtTokenEnhancerClient()));
     }
-
     @Autowired
     private CustomAccessTokenConverter customAccessTokenConverter;
 

+ 4 - 2
src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java

@@ -282,8 +282,10 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/qc/behospitalInfo/logicDelCase", request)
                 || matchers("/qc/medCheckInfo/getCheckUserMap", request)
                 || matchers("/qc/medCheckInfo/getCheckList", request)
-                || matchers("/qc/medCheckInfo//updateDistributionCheck", request)
-                || matchers("/qc/medCheckInfo//getCheckListByUserId", request)
+                || matchers("/qc/medCheckInfo/updateDistributionCheck", request)
+                || matchers("/qc/medCheckInfo/getCheckListByUserId", request)
+                || matchers("/qc/medCheckWork/addCheckWork", request)
+                || matchers("/qc/medCheckWork/getUserList", request)
                 || matchers("/", request)) {
             return true;
         }

+ 45 - 42
src/main/java/com/diagbot/facade/MedCheckWorkFacade.java

@@ -10,6 +10,7 @@ import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.service.impl.MedBehospitalTypeServiceImpl;
+import com.diagbot.service.impl.MedCheckInfoServiceImpl;
 import com.diagbot.service.impl.MedicalRecordServiceImpl;
 import com.diagbot.util.DateUtil;
 import com.diagbot.util.ListUtil;
@@ -30,6 +31,8 @@ public class MedCheckWorkFacade {
     @Autowired
     SysUserFacade sysUserFacade;
     @Autowired
+    private MedCheckInfoServiceImpl medCheckInfoServiceImpl;
+    @Autowired
     private MedCheckInfoFacade medCheckInfoFacade;
     @Autowired
     private MedBehospitalTypeServiceImpl medBehospitalTypeServiceImpl;
@@ -46,64 +49,64 @@ public class MedCheckWorkFacade {
      */
     public Boolean addCheckWork(MedCheckWorkAddVO medCheckWorkVO) {
 
+        boolean flag = false;
         Date now = DateUtil.now();
+        //获取核查任务类型(0-科室任务 1-院级 2-质控科)
+        Integer workType = medCheckWorkVO.getWorkType();
+        //获取操作类型(0-取消,1-添加)
+        Integer checkStatus = medCheckWorkVO.getCheckStatus();
         Long hospitalId = Long.parseLong(SysUserUtils.getCurrentHospitalID());
         Long principleId = Long.valueOf(SysUserUtils.getCurrentPrincipleID());
-        QueryWrapper<SysUser> userQuer = new QueryWrapper<>();
-        userQuer.eq("is_deleted", IsDeleteEnum.N.getKey())
+        SysUser user = sysUserFacade.getOne(new QueryWrapper<SysUser>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
                 .eq("id", principleId)
-                .eq("status", 1);
-        SysUser user = sysUserFacade.getOne(userQuer);
+                .eq("status", 1));
         String principleName = user.getLinkman();
-        //操作类型(0-取消,1-添加)
-        if (medCheckWorkVO.getCheckType() == 0) {
+        //取消核查任务【操作类型(0-取消,1-添加)】
+        if (checkStatus != null && checkStatus == 0) {
+            //判断核查任务是否生成
             QueryWrapper<MedCheckInfo> medicalRecordQe = new QueryWrapper<>();
-            medicalRecordQe.eq("hospital_id", medCheckWorkVO.getHospitalId());
+            medicalRecordQe.eq("hospital_id", hospitalId);
             medicalRecordQe.eq("is_deleted", IsDeleteEnum.N.getKey());
             if (medCheckWorkVO.getBehospitalCodeList().size() > 0) {
                 medicalRecordQe.in("behospital_code", medCheckWorkVO.getBehospitalCodeList());
             }
-//            List<MedCheckInfo> medCheckInfoList = medCheckInfoFacade.list(medicalRecordQe);
             List<MedCheckInfo> list = medCheckInfoFacade.list(medicalRecordQe);
             if (ListUtil.isEmpty(list)) {
-                throw new CommonException(CommonErrorCode.UPDATE_INFO_FAIL, "存在未生成数据!");
+                throw new CommonException(CommonErrorCode.UPDATE_INFO_FAIL, "存在未生成核查任务!");
             }
 
-            medCheckInfoFacade.getBaseMapper().getUpdateBatch(medCheckWorkVO.getBehospitalCodeList());
-        } else {
-            //获取核查任务类型(0-科室任务 1-院级 2-质控科)
-            switch (medCheckWorkVO.getWorkType()) {
-                case 0:
-                    //该病历没有核查的时候, 就添加核查记录
-                    List<MedCheckInfo> medCheckInfoList = new ArrayList<>();
-                    for (String behospitalCode : medCheckWorkVO.getBehospitalCodeList()) {
-                        MedCheckInfo medCheckInfo = new MedCheckInfo();
-                        medCheckInfo.setBehospitalCode(behospitalCode);
-                        medCheckInfo.setGmtCreate(now);
-                        medCheckInfo.setGmtModified(now);
-                        medCheckInfo.setHospitalId(hospitalId);
-                        medCheckInfo.setCheckType(medCheckWorkVO.getCheckType());
-                        medCheckInfo.setJobCreator(principleId);
-                        medCheckInfo.setJobCreatorName(principleName);
-                        medCheckInfo.setJobCreateTime(now);
-                        medCheckInfo.setJobType(medCheckWorkVO.getWorkType());
-                        medCheckInfo.setJobDistributionTime(now);
-                        medCheckInfoList.add(medCheckInfo);
-                    }
-                    medCheckInfoFacade.saveBatch(medCheckInfoList);
-                    break;
-                case 1:
-                    break;
-                default:
-                    break;
+            int i = medCheckInfoFacade.getBaseMapper().deleteBatchCodes(medCheckWorkVO.getBehospitalCodeList());
+        } else if (checkStatus != null && checkStatus == 1) {
+            //生成核查任务
+            MedCheckInfo data = medCheckInfoFacade.getOne(new QueryWrapper<MedCheckInfo>()
+                    .eq("is_deleted", IsDeleteEnum.N.getKey())
+                    .eq("hospital_id", hospitalId)
+                    .in("behospital_code", medCheckWorkVO.getBehospitalCodeList())
+            );
+            //任务是否存在
+            if (data != null) {
+                throw new CommonException(CommonErrorCode.UPDATE_INFO_FAIL, "核查任务已存在!");
             }
-        }
-
 
-//        List<MedCheckWork> checkWorkList = new ArrayList<>();
-
-//        return medCheckWorkServiceImpl.saveBatch(checkWorkList, 10);
-        return null;
+            //该病历没有核查的时候, 就添加核查记录
+            List<MedCheckInfo> medCheckInfoList = new ArrayList<>();
+            for (String behospitalCode : medCheckWorkVO.getBehospitalCodeList()) {
+                MedCheckInfo medCheckInfo = new MedCheckInfo();
+                medCheckInfo.setIsDeleted(IsDeleteEnum.N.getKey());
+                medCheckInfo.setGmtCreate(now);
+                medCheckInfo.setBehospitalCode(behospitalCode);
+                medCheckInfo.setHospitalId(hospitalId);
+                medCheckInfo.setCheckType(medCheckWorkVO.getCheckType());
+                medCheckInfo.setJobCreator(principleId);
+                medCheckInfo.setJobCreatorName(principleName);
+                medCheckInfo.setJobCreateTime(now);
+                medCheckInfo.setJobType(medCheckWorkVO.getWorkType());
+                medCheckInfoList.add(medCheckInfo);
+            }
+            flag = medCheckInfoServiceImpl.saveBatch(medCheckInfoList);
+        }
+        return flag;
     }
 
     /**

+ 3 - 7
src/main/java/com/diagbot/mapper/MedCheckInfoMapper.java

@@ -25,14 +25,10 @@ public interface MedCheckInfoMapper extends BaseMapper<MedCheckInfo> {
     List<DeptCheckUserDTO> getJobNumByUserId(CheckUserVO checkUserVO);
     //获取未分配的核查任务
     List<CheckJobDTO> getCheckList(CheckJobVO checkJobVO);
-    /**
-     * 核查任务列表
-     *
-     * @param checkWorkPageVO
-     * @return
-     */
+    //核查任务列表
     IPage<CheckWorkDTO> getCheckWorkPage(CheckWorkPageVO checkWorkPageVO);
     //获取指定核查人员的核查任务
     List<CheckJobDTO> getCheckListByUserId(CheckJobVO checkJobVO);
-    void getUpdateBatch(List<String> list);
+    //取消核查任务
+    int deleteBatchCodes(List<String> list);
 }

+ 2 - 6
src/main/java/com/diagbot/service/impl/MedCheckInfoServiceImpl.java

@@ -1,15 +1,11 @@
 package com.diagbot.service.impl;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.diagbot.dto.CheckJobDTO;
 import com.diagbot.dto.CheckWorkDTO;
-import com.diagbot.dto.DeptCheckUserDTO;
 import com.diagbot.entity.MedCheckInfo;
 import com.diagbot.mapper.MedCheckInfoMapper;
 import com.diagbot.service.MedCheckInfoService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.diagbot.vo.CheckJobVO;
-import com.diagbot.vo.CheckUserVO;
 import com.diagbot.vo.CheckWorkPageVO;
 import org.springframework.stereotype.Service;
 
@@ -30,7 +26,7 @@ public class MedCheckInfoServiceImpl extends ServiceImpl<MedCheckInfoMapper, Med
         return baseMapper.getCheckWorkPage(checkWorkPageVO);
     }
 
-    public void getUpdateBatch(List<String> list) {
-        baseMapper.getUpdateBatch(list);
+    public int deleteBatchCodes(List<String> list){
+        return baseMapper.deleteBatchCodes(list);
     }
 }

+ 1 - 1
src/main/java/com/diagbot/web/MedCheckWorkController.java

@@ -23,7 +23,7 @@ import org.springframework.web.bind.annotation.RestController;
  * @since 2021-05-11
  */
 @RestController
-@RequestMapping("/check")
+@RequestMapping("/qc/medCheckWork")
 @Api(value = "生成核查任务--相关接口API", tags = { "生成核查任务--相关接口API" })
 public class MedCheckWorkController {
     @Autowired

+ 4 - 6
src/main/resources/mapper/MedCheckInfoMapper.xml

@@ -182,13 +182,11 @@
     </select>
 
     <!--通过住院号,取消核查任务-->
-    <update id="getUpdateBatch">
+    <update id="deleteBatchCodes">
         <foreach collection="list" item="item"  separator=";">
-            update med_check_info
-            <set>
-                is_deleted = 'Y'
-            </set>
-            where behospital_code = #{item.behospitalCode} and is_deleted = 'N'
+            delete from
+            med_check_info
+            where behospital_code = #{item} and is_deleted = 'N'
         </foreach>
     </update>