Bladeren bron

病历核查接口

rengb 4 jaren geleden
bovenliggende
commit
879954fe7c

+ 1 - 1
src/main/java/com/diagbot/enums/CheckJobTypeEnum.java

@@ -5,7 +5,7 @@ import lombok.Setter;
 
 
 /**
 /**
  * @author wangfeng
  * @author wangfeng
- * @Description: TODO
+ * @Description: 核查任务类型
  * @date 2018年11月21日 下午2:31:42
  * @date 2018年11月21日 下午2:31:42
  */
  */
 public enum CheckJobTypeEnum implements KeyedNamed {
 public enum CheckJobTypeEnum implements KeyedNamed {

+ 51 - 0
src/main/java/com/diagbot/enums/CheckTypeEnum.java

@@ -0,0 +1,51 @@
+package com.diagbot.enums;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @author wangfeng
+ * @Description: 核查类型
+ * @date 2018年11月21日 下午2:31:42
+ */
+public enum CheckTypeEnum implements KeyedNamed {
+    COURSE(0, "病历"),
+    HOMEPAGE(1, "病案首页"),
+    ALL(2, "全部");
+
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    CheckTypeEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static CheckTypeEnum getEnum(int key) {
+        for (CheckTypeEnum item : CheckTypeEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        CheckTypeEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}
+

+ 27 - 0
src/main/java/com/diagbot/facade/RecordCheckFacade.java

@@ -3,15 +3,21 @@ package com.diagbot.facade;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.dto.CheckedRecordListDTO;
 import com.diagbot.dto.CheckedRecordListDTO;
+import com.diagbot.entity.MedCheckInfo;
 import com.diagbot.entity.MedQcresultDetail;
 import com.diagbot.entity.MedQcresultDetail;
 import com.diagbot.entity.SysUserDept;
 import com.diagbot.entity.SysUserDept;
 import com.diagbot.entity.SysUserRole;
 import com.diagbot.entity.SysUserRole;
 import com.diagbot.enums.CheckJobTypeEnum;
 import com.diagbot.enums.CheckJobTypeEnum;
+import com.diagbot.enums.CheckTypeEnum;
 import com.diagbot.enums.CheckerRoleEnum;
 import com.diagbot.enums.CheckerRoleEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
 import com.diagbot.service.MedQcresultDetailService;
 import com.diagbot.service.MedQcresultDetailService;
+import com.diagbot.util.DateUtil;
 import com.diagbot.util.ListUtil;
 import com.diagbot.util.ListUtil;
 import com.diagbot.util.SysUserUtils;
 import com.diagbot.util.SysUserUtils;
 import com.diagbot.vo.CheckedRecordListVO;
 import com.diagbot.vo.CheckedRecordListVO;
+import com.diagbot.vo.RecordCheckVO;
 import com.diagbot.vo.SysUserBaseVO;
 import com.diagbot.vo.SysUserBaseVO;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -96,4 +102,25 @@ public class RecordCheckFacade {
         return sysUserRoleFacade.list(sysUserRoleQueryWrapper).stream().map(i -> i.getUserId()).collect(Collectors.toList());
         return sysUserRoleFacade.list(sysUserRoleQueryWrapper).stream().map(i -> i.getUserId()).collect(Collectors.toList());
     }
     }
 
 
+    public boolean recordCheck(RecordCheckVO recordCheckVO) {
+        Long hospitalId = Long.parseLong(SysUserUtils.getCurrentHospitalID());
+        Long userId = Long.parseLong(SysUserUtils.getCurrentPrincipleID());
+
+        QueryWrapper<MedCheckInfo> medCheckInfoQueryWrapper = new QueryWrapper<>();
+        medCheckInfoQueryWrapper.eq("behospital_code", recordCheckVO.getBehospitalCode());
+        medCheckInfoQueryWrapper.eq("hospital_id", hospitalId);
+        medCheckInfoQueryWrapper.eq("check_id", userId);
+        medCheckInfoQueryWrapper.eq("check_type", CheckTypeEnum.ALL.getKey());
+        MedCheckInfo medCheckInfo = medCheckInfoFacade.getOne(medCheckInfoQueryWrapper);
+        if (medCheckInfo == null) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该数据您暂无核查权限!");
+        }
+
+        medCheckInfo.setStatus(1);
+        medCheckInfo.setCheckTime(DateUtil.now());
+        medCheckInfoFacade.updateById(medCheckInfo);
+        
+        return true;
+    }
+
 }
 }

+ 24 - 0
src/main/java/com/diagbot/vo/RecordCheckVO.java

@@ -0,0 +1,24 @@
+package com.diagbot.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: rengb
+ * @time: 2021/5/18 20:15
+ */
+@Getter
+@Setter
+@ApiModel("核查任务列表-病历核查-接口入参")
+public class RecordCheckVO {
+
+    /**
+     * 病人住院序号
+     */
+    @ApiModelProperty("病人住院序号")
+    private String behospitalCode;
+
+}

+ 11 - 0
src/main/java/com/diagbot/web/RecordCheckController.java

@@ -6,9 +6,11 @@ import com.diagbot.dto.CheckedRecordListDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.facade.RecordCheckFacade;
 import com.diagbot.facade.RecordCheckFacade;
 import com.diagbot.vo.CheckedRecordListVO;
 import com.diagbot.vo.CheckedRecordListVO;
+import com.diagbot.vo.RecordCheckVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -34,4 +36,13 @@ public class RecordCheckController {
         return RespDTO.onSuc(data);
         return RespDTO.onSuc(data);
     }
     }
 
 
+    @ApiOperation(value = "病历核查[by:rengb]")
+    @PostMapping("/recordCheck")
+    @SysLogger("recordCheck")
+    @Transactional
+    public RespDTO<Boolean> recordCheck(@RequestBody RecordCheckVO recordCheckVO) {
+        Boolean res = recordCheckFacade.recordCheck(recordCheckVO);
+        return RespDTO.onSuc(res);
+    }
+
 }
 }