Ver código fonte

优化导入公表映射

wangfeng 6 anos atrás
pai
commit
4824725dd5

+ 4 - 2
icss-service/src/main/java/com/diagbot/dto/LisConfigDTO.java

@@ -12,8 +12,10 @@ import lombok.Setter;
 @Setter
 @Getter
 public class LisConfigDTO {
-	 private Long id;
-	 /**
+	private Long id;
+	 
+	private String assembly;
+	/**
      * 医院id
      */
     private String hospitalId;

+ 13 - 4
icss-service/src/main/java/com/diagbot/facade/LisExcelResFacade.java

@@ -44,11 +44,13 @@ public class LisExcelResFacade {
     @Autowired
     TranServiceClient tranServiceClient;
 
-    public RespDTO<LitAssayVO> lisExcelAnalysis(MultipartFile file, LisHospitalCodeVO lisHospitalCodeVO, HttpServletRequest request) {
+    @SuppressWarnings("null")
+	public RespDTO<LitAssayVO> lisExcelAnalysis(MultipartFile file, LisHospitalCodeVO lisHospitalCodeVO, HttpServletRequest request) {
 
         List<String> messages = new ArrayList<>();
         List<LisExcelWrapperVO> lisExcelWrapperList = new ArrayList<>();
         InputStream inputStream = null;
+        List<String> assemblys = new ArrayList<String>();
         Workbook wb = null;
         try {
             if (!file.isEmpty()) {
@@ -107,8 +109,11 @@ public class LisExcelResFacade {
                                     }
                                     LisExcelWrapperVO lisExcelWrapper = new LisExcelWrapperVO();
 
+                                    
                                     lisExcelWrapper.setMealName(mealName);
                                     lisExcelWrapper.setItemName(itemName);
+                                    String assembly = mealName+"--"+itemName;
+                                    assemblys.add(assembly);
                                     //  lisExcelWrapper.setUniqueName(uniqueName);
                                     lisExcelWrapper.setUnit(unit);
                                     lisExcelWrapper.setValue(value);
@@ -141,6 +146,7 @@ public class LisExcelResFacade {
                 messages.add("无文件上传!");
             }
             //匹配公表名
+            lisHospitalCodeVO.setAssemblys(assemblys);
             RespDTO<List<LisConfigDTO>> litDatas = tranServiceClient.getLisConfigByhospitalId(lisHospitalCodeVO);
             if (litDatas == null || !"0".equals(litDatas.code)) {
                 throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
@@ -153,7 +159,7 @@ public class LisExcelResFacade {
                 for (LisExcelWrapperVO lisExcelWrapperNew : lisExcelWrapperList) {
 
                     for (LisConfigDTO LisNew : litData) {
-                        if (LisNew.getItemName() != null) {
+                      /*  if (LisNew.getItemName() != null) {
                             if (LisNew.getMealName().equals(lisExcelWrapperNew.getMealName())
                                     && LisNew.getItemName().equals(lisExcelWrapperNew.getItemName())) {
                                 lisExcelWrapperNew.setUniqueName(LisNew.getUniqueName());
@@ -162,8 +168,11 @@ public class LisExcelResFacade {
                             if (LisNew.getMealName().equals(lisExcelWrapperNew.getMealName())) {
                                 lisExcelWrapperNew.setUniquemealName(LisNew.getUniqueName());
                             }
-                        }
-
+                        }*/
+                    	String newName = lisExcelWrapperNew.getMealName()+"--"+lisExcelWrapperNew.getItemName();
+                    	if(LisNew.getAssembly().equals(newName)){
+                    		lisExcelWrapperNew.setUniquemealName(LisNew.getUniqueName());
+                    	}
                     }
                     lisExcelWrapperListNew.add(lisExcelWrapperNew);
                 }

+ 4 - 0
icss-service/src/main/java/com/diagbot/vo/LisHospitalCodeVO.java

@@ -1,5 +1,7 @@
 package com.diagbot.vo;
 
+import java.util.List;
+
 import lombok.Getter;
 import lombok.Setter;
 
@@ -17,4 +19,6 @@ public class LisHospitalCodeVO {
 	 * 医院编码
 	 */
 	String hospitalCode;
+	
+	List<String> assemblys;
 }

+ 3 - 1
tran-service/src/main/java/com/diagbot/dto/LisConfigDTO.java

@@ -13,10 +13,12 @@ import lombok.Setter;
 @Getter
 public class LisConfigDTO {
 
-	 private Long id;
+	private Long id;
 	 /**
      * 医院id
      */
+	private String assembly;
+	 
     private String hospitalId;
 
     /**

+ 6 - 2
tran-service/src/main/java/com/diagbot/facade/TranLisConfigFacade.java

@@ -7,6 +7,8 @@ import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.service.impl.TranLisConfigServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.EntityUtil;
+import com.diagbot.vo.LisHospitalCodeVO;
+
 import org.springframework.stereotype.Component;
 
 import java.util.LinkedHashMap;
@@ -27,14 +29,16 @@ public class TranLisConfigFacade extends TranLisConfigServiceImpl{
 	 * @param hospitalCode
 	 * @return
 	 */
-	public List<LisConfigDTO> getLisConfigByhospitalIds(String hospitalCode) {
+	public List<LisConfigDTO> getLisConfigByhospitalIds(LisHospitalCodeVO lisHospitalCodeVO) {
 
-		QueryWrapper<TranLisConfig> lisConfig = new QueryWrapper<>();
+		/*QueryWrapper<TranLisConfig> lisConfig = new QueryWrapper<>();
 	    //System.out.println("hospitalCode==="+hospitalCode);
 		lisConfig.eq("is_deleted", IsDeleteEnum.N.getKey()).eq("hospital_code", hospitalCode);
 		List<TranLisConfig> data = list(lisConfig);
 		List<LisConfigDTO> datas = BeanUtil.listCopyTo(data, LisConfigDTO.class);
 		//System.out.println("json=="+GsonUtil.toJson(datas));
+		return datas;*/
+		List<LisConfigDTO> datas = getLisConfigByhospitalId(lisHospitalCodeVO);
 		return datas;
 	}
 

+ 7 - 0
tran-service/src/main/java/com/diagbot/mapper/TranLisConfigMapper.java

@@ -1,6 +1,11 @@
 package com.diagbot.mapper;
 
+import com.diagbot.dto.LisConfigDTO;
 import com.diagbot.entity.TranLisConfig;
+import com.diagbot.vo.LisHospitalCodeVO;
+
+import java.util.List;
+
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 
 /**
@@ -13,4 +18,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface TranLisConfigMapper extends BaseMapper<TranLisConfig> {
 
+	List<LisConfigDTO> getLisConfigByhospitalIds(LisHospitalCodeVO lisHospitalCodeVO);
+
 }

+ 7 - 0
tran-service/src/main/java/com/diagbot/service/TranLisConfigService.java

@@ -1,6 +1,11 @@
 package com.diagbot.service;
 
+import com.diagbot.dto.LisConfigDTO;
 import com.diagbot.entity.TranLisConfig;
+import com.diagbot.vo.LisHospitalCodeVO;
+
+import java.util.List;
+
 import com.baomidou.mybatisplus.extension.service.IService;
 
 /**
@@ -12,5 +17,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * @since 2019-02-13
  */
 public interface TranLisConfigService extends IService<TranLisConfig> {
+	
+	public List<LisConfigDTO> getLisConfigByhospitalId(LisHospitalCodeVO lisHospitalCodeVO);
 
 }

+ 10 - 0
tran-service/src/main/java/com/diagbot/service/impl/TranLisConfigServiceImpl.java

@@ -1,9 +1,14 @@
 package com.diagbot.service.impl;
 
+import com.diagbot.dto.LisConfigDTO;
 import com.diagbot.entity.TranLisConfig;
 import com.diagbot.mapper.TranLisConfigMapper;
 import com.diagbot.service.TranLisConfigService;
+import com.diagbot.vo.LisHospitalCodeVO;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+import java.util.List;
+
 import org.springframework.stereotype.Service;
 
 /**
@@ -17,4 +22,9 @@ import org.springframework.stereotype.Service;
 @Service
 public class TranLisConfigServiceImpl extends ServiceImpl<TranLisConfigMapper, TranLisConfig> implements TranLisConfigService {
 
+	@Override
+	public List<LisConfigDTO> getLisConfigByhospitalId(LisHospitalCodeVO lisHospitalCodeVO) {
+		return baseMapper.getLisConfigByhospitalIds(lisHospitalCodeVO);
+	}
+
 }

+ 4 - 0
tran-service/src/main/java/com/diagbot/vo/LisHospitalCodeVO.java

@@ -1,5 +1,7 @@
 package com.diagbot.vo;
 
+import java.util.List;
+
 import lombok.Getter;
 import lombok.Setter;
 
@@ -17,4 +19,6 @@ public class LisHospitalCodeVO {
 	 * 医院编码
 	 */
 	String hospitalCode;
+	
+	List<String> assemblys;
 }

+ 1 - 1
tran-service/src/main/java/com/diagbot/web/TranLisConfigController.java

@@ -38,7 +38,7 @@ public class TranLisConfigController {
 	@PostMapping("/getLisConfigByhospitalId")
 	@SysLogger("getLisConfigByhospitalId")
 	public RespDTO<List<LisConfigDTO>> getLisConfigByhospitalId(@RequestBody LisHospitalCodeVO lisHospitalCodeVO) {
-		return RespDTO.onSuc(tranLisConfigFacade.getLisConfigByhospitalIds(lisHospitalCodeVO.getHospitalCode()));
+		return RespDTO.onSuc(tranLisConfigFacade.getLisConfigByhospitalIds(lisHospitalCodeVO));
 	}
 
 	@ApiOperation(value = "根据医院编码获取化验公表映射关系-itemName不为空:[by:zhaops]",

+ 28 - 14
tran-service/src/main/resources/mapper/TranLisConfigMapper.xml

@@ -2,19 +2,33 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.diagbot.mapper.TranLisConfigMapper">
 
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.diagbot.entity.TranLisConfig">
-        <id column="id" property="id" />
-        <result column="is_deleted" property="isDeleted" />
-        <result column="gmt_create" property="gmtCreate" />
-        <result column="gmt_modified" property="gmtModified" />
-        <result column="creator" property="creator" />
-        <result column="modifier" property="modifier" />
-        <result column="hospital_code" property="hospitalCode" />
-        <result column="meal_name" property="mealName" />
-        <result column="item_name" property="itemName" />
-        <result column="unique_id" property="uniqueId" />
-        <result column="unique_name" property="uniqueName" />
-    </resultMap>
+	<!-- 通用查询映射结果 -->
+	<resultMap id="BaseResultMap" type="com.diagbot.entity.TranLisConfig">
+		<id column="id" property="id" />
+		<result column="is_deleted" property="isDeleted" />
+		<result column="gmt_create" property="gmtCreate" />
+		<result column="gmt_modified" property="gmtModified" />
+		<result column="creator" property="creator" />
+		<result column="modifier" property="modifier" />
+		<result column="hospital_code" property="hospitalCode" />
+		<result column="meal_name" property="mealName" />
+		<result column="item_name" property="itemName" />
+		<result column="unique_id" property="uniqueId" />
+		<result column="unique_name" property="uniqueName" />
+	</resultMap>
 
+	<select id="getLisConfigByhospitalIds" resultType="com.diagbot.dto.LisConfigDTO">
+		SELECT CONCAT(IFNULL(meal_name,""),"--",IFNULL(item_name,"")) AS
+		assembly ,a.*
+		FROM tran_lis_config a WHERE a.is_deleted = 'N'
+		<if test="hospitalCode!=null">
+			AND hospital_code = #{hospitalCode}
+		</if>
+		<if test="assemblys!=null">
+			AND CONCAT(IFNULL(meal_name,""),"--",IFNULL(item_name,"")) IN
+			<foreach collection="assemblys" item="assemblys"  open="(" close=")" separator=",">
+				#{assemblys}
+			</foreach>
+		</if>
+	</select>
 </mapper>