|
@@ -1,13 +1,15 @@
|
|
|
package com.diagbot.facade;
|
|
|
|
|
|
-import com.diagbot.dto.LisConfigDTO;
|
|
|
-import com.diagbot.dto.RespDTO;
|
|
|
-import com.diagbot.exception.CommonErrorCode;
|
|
|
-import com.diagbot.exception.CommonException;
|
|
|
-import com.diagbot.util.StringUtil;
|
|
|
-import com.diagbot.vo.LisExcelResVO;
|
|
|
-import com.diagbot.vo.LisExcelWrapperVO;
|
|
|
-import com.diagbot.vo.LitAssayVO;
|
|
|
+import java.io.InputStream;
|
|
|
+import java.text.DecimalFormat;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
+import javax.servlet.http.HttpServletRequest;
|
|
|
+
|
|
|
import org.apache.commons.lang.time.DateFormatUtils;
|
|
|
import org.apache.poi.hssf.usermodel.HSSFDateUtil;
|
|
|
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
|
@@ -20,14 +22,16 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
-import javax.servlet.http.HttpServletRequest;
|
|
|
-import java.io.InputStream;
|
|
|
-import java.text.DecimalFormat;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.stream.Collectors;
|
|
|
+import com.diagbot.client.TranServiceClient;
|
|
|
+import com.diagbot.dto.LisConfigDTO;
|
|
|
+import com.diagbot.dto.RespDTO;
|
|
|
+import com.diagbot.exception.CommonErrorCode;
|
|
|
+import com.diagbot.exception.CommonException;
|
|
|
+import com.diagbot.util.StringUtil;
|
|
|
+import com.diagbot.vo.LisExcelResVO;
|
|
|
+import com.diagbot.vo.LisExcelWrapperVO;
|
|
|
+import com.diagbot.vo.LisHospitalCodeVO;
|
|
|
+import com.diagbot.vo.LitAssayVO;
|
|
|
|
|
|
/**
|
|
|
* @author wangfeng
|
|
@@ -37,10 +41,12 @@ import java.util.stream.Collectors;
|
|
|
@Component
|
|
|
public class LisExcelResFacade {
|
|
|
|
|
|
+ /*@Autowired
|
|
|
+ LisConfigFacade lisConfigFacade;*/
|
|
|
@Autowired
|
|
|
- LisConfigFacade lisConfigFacade;
|
|
|
+ TranServiceClient tranServiceClient;
|
|
|
|
|
|
- public RespDTO<LitAssayVO> lisExcelAnalysis(MultipartFile file, String hospitalCode, HttpServletRequest request) {
|
|
|
+ public RespDTO<LitAssayVO> lisExcelAnalysis(MultipartFile file, LisHospitalCodeVO lisHospitalCodeVO, HttpServletRequest request) {
|
|
|
|
|
|
List<String> messages = new ArrayList<>();
|
|
|
List<LisExcelWrapperVO> lisExcelWrapperList = new ArrayList<>();
|
|
@@ -105,7 +111,7 @@ public class LisExcelResFacade {
|
|
|
|
|
|
lisExcelWrapper.setMealName(mealName);
|
|
|
lisExcelWrapper.setItemName(itemName);
|
|
|
- // lisExcelWrapper.setUniqueName(uniqueName);
|
|
|
+ // lisExcelWrapper.setUniqueName(uniqueName);
|
|
|
lisExcelWrapper.setUnit(unit);
|
|
|
lisExcelWrapper.setValue(value);
|
|
|
lisExcelWrapper.setMax(max);
|
|
@@ -137,7 +143,13 @@ public class LisExcelResFacade {
|
|
|
messages.add("无文件上传!");
|
|
|
}
|
|
|
//匹配公表名
|
|
|
- List<LisConfigDTO> litData = lisConfigFacade.getLisConfigByhospitalId(hospitalCode);
|
|
|
+ RespDTO<List<LisConfigDTO>> litDatas = tranServiceClient.getLisConfigByhospitalId(lisHospitalCodeVO);
|
|
|
+ if (litDatas == null || !"0".equals(litDatas.code)) {
|
|
|
+ throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
|
|
|
+ "获取匹配公表名信息失败");
|
|
|
+ }
|
|
|
+ List<LisConfigDTO> litData = litDatas.data;
|
|
|
+ //导入的数据跟公表数据进行配对
|
|
|
if(litData.size()>0){
|
|
|
List<LisExcelWrapperVO> lisExcelWrapperListNew = new ArrayList<>();
|
|
|
for (LisExcelWrapperVO lisExcelWrapperNew : lisExcelWrapperList) {
|
|
@@ -154,7 +166,7 @@ public class LisExcelResFacade {
|
|
|
lisExcelWrapperList = lisExcelWrapperListNew;
|
|
|
}
|
|
|
|
|
|
-
|
|
|
+
|
|
|
Map<String, List<LisExcelWrapperVO>> lixExMap = lisExcelWrapperList.stream()
|
|
|
.collect(Collectors.groupingBy(LisExcelWrapperVO::getMealName));
|
|
|
List<LisExcelResVO> LisExcelReslist = new ArrayList<LisExcelResVO>();
|
|
@@ -162,6 +174,7 @@ public class LisExcelResFacade {
|
|
|
LisExcelResVO lisExcelResVO = new LisExcelResVO();
|
|
|
lisExcelResVO.setMenus(str);
|
|
|
lisExcelResVO.setLisExcelItem(lixExMap.get(str));
|
|
|
+
|
|
|
LisExcelReslist.add(lisExcelResVO);
|
|
|
}
|
|
|
|