Explorar o código

修改数据校验分为运行质控和终末质控

zhanghang %!s(int64=3) %!d(string=hai) anos
pai
achega
db59665162

+ 27 - 0
daqe-center/src/main/java/com/lantone/daqe/dto/GetColumnDTO.java

@@ -0,0 +1,27 @@
+package com.lantone.daqe.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ * @Description: 获取表字段信息
+ * @author: zhanghang
+ * @time: 2022/3/22 13:24
+ */
+@ApiModel(value = "获取表字段信息")
+@Getter
+@Setter
+public class GetColumnDTO implements Serializable {
+
+    private static final long serialVersionUID = -2189348212915891832L;
+    @ApiModelProperty(value = "字段名称(中文)")
+    private String columnName;
+
+    @ApiModelProperty(value = "字段注释")
+    private String columnComment;
+
+}

+ 10 - 1
daqe-center/src/main/java/com/lantone/daqe/facade/ColumnResultManagementFacade.java

@@ -267,6 +267,7 @@ public class ColumnResultManagementFacade {
                             getTableColumnInfoVO.setTableEname(columnInfo.getTableEname());
                             getTableColumnInfoVO.setBehospitalCode(columnResult.getBehospitalCode());
                             getTableColumnInfoVO.setHospitalId(dataCheckVO.getHospitalId());
+                            getTableColumnInfoVO.setIsPlacefile(dataCheckVO.getIsPlacefile());
                             String columnNumber = getColumnNumber(columnInfo.getTableCname());
                             getTableColumnInfoVO.setNumberColumnCname(columnNumber);
                             List<GetTableColumnInfoDTO> tableColumnVal = getTableColumnVal(getTableColumnInfoVO);
@@ -315,6 +316,7 @@ public class ColumnResultManagementFacade {
                             getTableColumnInfoVO.setTableEname(columnInfo.getTableEname());
                             getTableColumnInfoVO.setBehospitalCode(columnResult.getBehospitalCode());
                             getTableColumnInfoVO.setHospitalId(dataCheckVO.getHospitalId());
+                            getTableColumnInfoVO.setIsPlacefile(dataCheckVO.getIsPlacefile());
                             String columnNumber = getColumnNumber(columnInfo.getTableCname());
                             getTableColumnInfoVO.setNumberColumnCname(columnNumber);
                             List<GetTableColumnInfoDTO> tableColumnVal = getTableColumnVal(getTableColumnInfoVO);
@@ -356,6 +358,7 @@ public class ColumnResultManagementFacade {
                             getTableColumnInfoVO.setTableCname(columnInfo.getTableCname());
                             getTableColumnInfoVO.setTableEname(columnInfo.getTableEname());
                             getTableColumnInfoVO.setBehospitalCode(columnResult.getBehospitalCode());
+                            getTableColumnInfoVO.setIsPlacefile(dataCheckVO.getIsPlacefile());
                             getTableColumnInfoVO.setHospitalId(dataCheckVO.getHospitalId());
                             String columnNumber = getColumnNumber(columnInfo.getTableCname());
                             getTableColumnInfoVO.setNumberColumnCname(columnNumber);
@@ -389,7 +392,7 @@ public class ColumnResultManagementFacade {
             //再去除该时间段所有病历中去除病历中已通过的字段
             List<BehospitalInfo> behospitalInfos = behospitalInfoFacade.getBaseMapper().selectList(new QueryWrapper<BehospitalInfo>()
                     .eq("is_deleted", IsDeleteEnum.N.getKey())
-                    .eq("is_placefile", 1)
+                    .eq("is_placefile", dataCheckVO.getIsPlacefile())
                     .ge("behospital_date", dataCheckVO.getDateStart())
                     .le("behospital_date", dataCheckVO.getDateEnd())
             );
@@ -419,6 +422,7 @@ public class ColumnResultManagementFacade {
                         getTableColumnInfoVO.setTableEname(columnInfo.getTableEname());
                         getTableColumnInfoVO.setBehospitalCode(behospitalCode1);
                         getTableColumnInfoVO.setHospitalId(dataCheckVO.getHospitalId());
+                        getTableColumnInfoVO.setIsPlacefile(dataCheckVO.getIsPlacefile());
                         String columnNumber = getColumnNumber(columnInfo.getTableCname());
                         getTableColumnInfoVO.setNumberColumnCname(columnNumber);
                         List<GetTableColumnInfoDTO> tableColumnVal = getTableColumnVal(getTableColumnInfoVO);
@@ -483,6 +487,7 @@ public class ColumnResultManagementFacade {
                         getTableColumnInfoVO.setTableEname(columnInfo.getTableEname());
                         getTableColumnInfoVO.setBehospitalCode(behospitalCode1);
                         getTableColumnInfoVO.setHospitalId(dataCheckVO.getHospitalId());
+                        getTableColumnInfoVO.setIsPlacefile(dataCheckVO.getIsPlacefile());
                         String columnNumber = getColumnNumber(columnInfo.getTableCname());
                         getTableColumnInfoVO.setNumberColumnCname(columnNumber);
                         List<GetTableColumnInfoDTO> tableColumnVal = getTableColumnVal(getTableColumnInfoVO);
@@ -553,6 +558,7 @@ public class ColumnResultManagementFacade {
                         getTableColumnInfoVO.setTableEname(columnInfo.getTableEname());
                         getTableColumnInfoVO.setBehospitalCode(behospitalCode1);
                         getTableColumnInfoVO.setHospitalId(dataCheckVO.getHospitalId());
+                        getTableColumnInfoVO.setIsPlacefile(dataCheckVO.getIsPlacefile());
                         String columnNumber = getColumnNumber(columnInfo.getTableCname());
                         getTableColumnInfoVO.setNumberColumnCname(columnNumber);
                         List<GetTableColumnInfoDTO> tableColumnVal = getTableColumnVal(getTableColumnInfoVO);
@@ -647,6 +653,7 @@ public class ColumnResultManagementFacade {
                     getTableColumnInfoVO.setTableEname(columnInfo.getTableEname());
                     getTableColumnInfoVO.setBehospitalCode(dataCheckVO.getBehospitalCode());
                     getTableColumnInfoVO.setHospitalId(dataCheckVO.getHospitalId());
+                    getTableColumnInfoVO.setIsPlacefile(dataCheckVO.getIsPlacefile());
                     String columnNumber = getColumnNumber(columnInfo.getTableCname());
                     getTableColumnInfoVO.setNumberColumnCname(columnNumber);
                     List<GetTableColumnInfoDTO> tableColumnVal = getTableColumnVal(getTableColumnInfoVO);
@@ -727,6 +734,7 @@ public class ColumnResultManagementFacade {
                     getTableColumnInfoVO.setTableEname(columnInfo.getTableEname());
                     getTableColumnInfoVO.setBehospitalCode(dataCheckVO.getBehospitalCode());
                     getTableColumnInfoVO.setHospitalId(dataCheckVO.getHospitalId());
+                    getTableColumnInfoVO.setIsPlacefile(dataCheckVO.getIsPlacefile());
                     String columnNumber = getColumnNumber(columnInfo.getTableCname());
                     getTableColumnInfoVO.setNumberColumnCname(columnNumber);
                     List<GetTableColumnInfoDTO> tableColumnVal = getTableColumnVal(getTableColumnInfoVO);
@@ -802,6 +810,7 @@ public class ColumnResultManagementFacade {
                     getTableColumnInfoVO.setTableEname(columnInfo.getTableEname());
                     getTableColumnInfoVO.setBehospitalCode(dataCheckVO.getBehospitalCode());
                     getTableColumnInfoVO.setHospitalId(dataCheckVO.getHospitalId());
+                    getTableColumnInfoVO.setIsPlacefile(dataCheckVO.getIsPlacefile());
                     String columnNumber = getColumnNumber(columnInfo.getTableCname());
                     getTableColumnInfoVO.setNumberColumnCname(columnNumber);
                     List<GetTableColumnInfoDTO> tableColumnVal = getTableColumnVal(getTableColumnInfoVO);

+ 25 - 1
daqe-center/src/main/java/com/lantone/daqe/facade/ColumnVerifyManagementFacade.java

@@ -10,6 +10,7 @@ import com.lantone.common.util.ListUtil;
 import com.lantone.common.util.StringUtil;
 import com.lantone.common.util.SysUserUtils;
 import com.lantone.daqe.dto.GetByIdColumnVerifyDTO;
+import com.lantone.daqe.dto.GetColumnDTO;
 import com.lantone.daqe.dto.GetColumnInfoDTO;
 import com.lantone.daqe.dto.GetColumnNameDTO;
 import com.lantone.daqe.dto.GetColumnVerifyPageDTO;
@@ -29,6 +30,7 @@ import com.lantone.daqe.facade.base.NonnullInfoFacade;
 import com.lantone.daqe.facade.base.RegularInfoFacade;
 import com.lantone.daqe.facade.base.RegularMappingFacade;
 import com.lantone.daqe.facade.base.StandardvalueInfoFacade;
+import com.lantone.daqe.vo.AddColumnVO;
 import com.lantone.daqe.vo.AddColumnVerifyVO;
 import com.lantone.daqe.vo.ColumnInfoVO;
 import com.lantone.daqe.vo.DelColumnVerifyVO;
@@ -92,7 +94,7 @@ public class ColumnVerifyManagementFacade {
                 .eq("column_id", getByIdColumnVerifyVO.getColumnId())
         );
         GetByIdColumnVerifyDTO byIdColumnVerify = columnVerifyFacade.getBaseMapper().getByIdColumnVerify(getByIdColumnVerifyVO);
-        if(mappingFacadeOne!=null) {
+        if (mappingFacadeOne != null) {
             RegularInfo one = regularInfoFacade.getOne(new QueryWrapper<RegularInfo>()
                     .eq("is_deleted", IsDeleteEnum.N.getKey())
                     .eq("id", mappingFacadeOne.getRegularId())
@@ -574,4 +576,26 @@ public class ColumnVerifyManagementFacade {
         }
         return true;
     }
+
+    /**
+     * 根据表名新增字段信息
+     *
+     * @param addColumnVO
+     * @return:
+     */
+    public Boolean addColumn(AddColumnVO addColumnVO) {
+        //根据表名查出所有字段及其注释信息
+        List<GetColumnDTO> columnDTOS = columnVerifyFacade.getBaseMapper().getColumn(addColumnVO);
+        ColumnInfo columnInfo = new ColumnInfo();
+        columnInfo.setTableCname(addColumnVO.getTableCname());
+        columnInfo.setTableEname(addColumnVO.getTableEname());
+        columnInfo.setType("1");
+        for (GetColumnDTO columnDTO : columnDTOS) {
+            columnInfo.setGmtCreate(new Date());
+            columnInfo.setColumnCname(columnDTO.getColumnComment());
+            columnInfo.setColumnEname(columnDTO.getColumnName());
+            columnInfoFacade.getBaseMapper().insert(columnInfo);
+        }
+        return true;
+    }
 }

+ 4 - 1
daqe-center/src/main/java/com/lantone/daqe/mapper/ColumnVerifyMapper.java

@@ -3,9 +3,10 @@ package com.lantone.daqe.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.lantone.daqe.dto.GetByIdColumnVerifyDTO;
-import com.lantone.daqe.dto.GetColumnInfoDTO;
+import com.lantone.daqe.dto.GetColumnDTO;
 import com.lantone.daqe.dto.GetColumnVerifyPageDTO;
 import com.lantone.daqe.entity.ColumnVerify;
+import com.lantone.daqe.vo.AddColumnVO;
 import com.lantone.daqe.vo.GetByIdColumnVerifyVO;
 import com.lantone.daqe.vo.GetColumnVerifyPageVO;
 import org.apache.ibatis.annotations.Param;
@@ -22,4 +23,6 @@ public interface ColumnVerifyMapper extends BaseMapper<ColumnVerify> {
 
     GetByIdColumnVerifyDTO getByIdColumnVerify(@Param("getByIdColumnVerifyVO") GetByIdColumnVerifyVO getByIdColumnVerifyVO);
 
+    List<GetColumnDTO> getColumn(@Param("addColumnVO") AddColumnVO addColumnVO);
+
 }

+ 29 - 0
daqe-center/src/main/java/com/lantone/daqe/vo/AddColumnVO.java

@@ -0,0 +1,29 @@
+package com.lantone.daqe.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+import java.io.Serializable;
+
+/**
+ * @Description: 根据表明新增字段
+ * @author: zhanghang
+ * @time: 2022/3/22 10:17
+ */
+@ApiModel(value = "根据表明新增字段-接口入参")
+@Getter
+@Setter
+public class AddColumnVO implements Serializable {
+
+    private static final long serialVersionUID = -6651826171077372594L;
+
+    @ApiModelProperty(value = "表名称(中文)")
+    private String tableCname;
+
+    @ApiModelProperty(value = "表名称(英文)")
+    private String tableEname;
+
+    @ApiModelProperty(value = "所属数据库名称(英文)")
+    private String tableSchema;
+}

+ 3 - 0
daqe-center/src/main/java/com/lantone/daqe/vo/DataCheckVO.java

@@ -33,4 +33,7 @@ public class DataCheckVO implements Serializable {
 
     @ApiModelProperty(value = "组织机构ID",hidden = true)
     private Long hospitalId;
+
+    @ApiModelProperty(value = "是否为运行质控,0-运行质控,1-终末质控",required = true)
+    private String isPlacefile;
 }

+ 2 - 1
daqe-center/src/main/java/com/lantone/daqe/vo/GetTableColumnInfoVO.java

@@ -44,5 +44,6 @@ public class GetTableColumnInfoVO implements Serializable {
     @ApiModelProperty(value = "住院序号")
     private String behospitalCode;
 
-
+    @ApiModelProperty(value = "是否为运行质控,0-运行质控,1-终末质控",required = true)
+    private String isPlacefile;
 }

+ 8 - 0
daqe-center/src/main/java/com/lantone/daqe/web/ColumnVerifyManagementController.java

@@ -9,6 +9,7 @@ import com.lantone.daqe.dto.GetRegularDTO;
 import com.lantone.daqe.dto.GetTableColumnNameDTO;
 import com.lantone.daqe.dto.GetTableNameDTO;
 import com.lantone.daqe.facade.ColumnVerifyManagementFacade;
+import com.lantone.daqe.vo.AddColumnVO;
 import com.lantone.daqe.vo.AddColumnVerifyVO;
 import com.lantone.daqe.vo.DelColumnVerifyVO;
 import com.lantone.daqe.vo.GetByIdColumnVerifyVO;
@@ -100,4 +101,11 @@ public class ColumnVerifyManagementController {
     public CommonResult<Boolean> updateColumnVerify(@RequestBody UpdateColumnVerifyVO updateColumnVerifyVO) {
         return CommonResult.success(columnVerifyManagementFacade.updateColumnVerify(updateColumnVerifyVO));
     }
+
+    @ApiOperation(value = "根据表名新增字段信息 [by:zhanghang]")
+    @PostMapping("/addColumn")
+    @Transactional
+    public CommonResult<Boolean> addColumn(@RequestBody AddColumnVO addColumnVO) {
+        return CommonResult.success(columnVerifyManagementFacade.addColumn(addColumnVO));
+    }
 }

+ 1 - 1
daqe-center/src/main/resources/mapper/ColumnResultMapper.xml

@@ -45,7 +45,7 @@
 					behospital_code = #{getTableColumnInfoVO.behospitalCode}
 				AND is_deleted = 'N'
 				AND hospital_id = #{getTableColumnInfoVO.hospitalId}
-				AND is_placefile = 1
+				AND is_placefile = #{getTableColumnInfoVO.isPlacefile}
 			) a
 		LEFT JOIN ${getTableColumnInfoVO.tableEname} sdd ON sdd.behospital_code = a.behospital_code
 		AND sdd.is_deleted = 'N'

+ 11 - 0
daqe-center/src/main/resources/mapper/ColumnVerifyMapper.xml

@@ -96,4 +96,15 @@
         a.column_id
     </select>
 
+    <select id="getColumn" resultType="com.lantone.daqe.dto.GetColumnDTO">
+        SELECT
+            COLUMN_NAME columnName,
+            COLUMN_COMMENT columnComment
+        FROM
+            information_schema. COLUMNS
+        WHERE
+            table_name = #{addColumnVO.tableEname}
+        AND table_schema = #{addColumnVO.tableSchema}
+    </select>
+
 </mapper>