|
|
@@ -38,28 +38,29 @@ public class HandleData {
|
|
|
long sequenceCounter = 0;
|
|
|
for (Map<String, Object> lisReagent : lisReagentList) {
|
|
|
List<String> pushUserList = new ArrayList<>();
|
|
|
- String GroupCode = lisReagent.get("GroupCode").toString();
|
|
|
+ String GroupCode = String.valueOf(lisReagent.get("GroupCode"));
|
|
|
pushUserList = ibpsRepository.getPushList(GroupCode);
|
|
|
String PosID = ibpsRepository.getPosiByField(GroupCode,"DESC_","id_");
|
|
|
- String reagentCode = lisReagent.get("ReagentNumber").toString();
|
|
|
- String reagentID = ibpsRepository.getReagentByField(reagentCode,"bian_ma_","id_");
|
|
|
+ String reagentCode = String.valueOf(lisReagent.get("ReagentNumber"));
|
|
|
+ String reagentID = ibpsRepository.getReagentByField(reagentCode, "bian_ma_", "id_").orElse("");
|
|
|
// 生成有序ID:时间戳+自增序列号
|
|
|
String orderedId = String.format("%d-%06d",
|
|
|
currentTimestamp.getTime(), // 使用时间戳
|
|
|
sequenceCounter++ // 自增序列号
|
|
|
);
|
|
|
String diDian = ibpsRepository.getPosiByField("院本部","NAME_","id_");
|
|
|
- String reagentName = lisReagent.get("ReagentName").toString();
|
|
|
- String newBatchNumber = lisReagent.get("NewBatchNumber").toString();
|
|
|
- String newExpiredDate = lisReagent.get("ExpiredDate").toString();
|
|
|
+ String reagentName = String.valueOf(lisReagent.get("ReagentName"));
|
|
|
+ String newBatchNumber = String.valueOf(lisReagent.get("NewBatchNumber"));
|
|
|
+ String newExpiredDate = String.valueOf(lisReagent.get("ExpiredDate"));
|
|
|
Map<String, String> oldReagentMap = ibpsRepository.getOldReagent(reagentCode);
|
|
|
String oldBatchNumber = String.valueOf(oldReagentMap.get("oldBatchNumber") == null ? "" : oldReagentMap.get("oldBatchNumber"));
|
|
|
String oldExpiredDate = String.valueOf(oldReagentMap.get("oldExpiredDate") == null ? "" : oldReagentMap.get("oldExpiredDate"));
|
|
|
- String reagentType = ibpsRepository.getReagentByField(reagentCode,"bian_ma_","shi_ji_lei_bie_");
|
|
|
- String deviceID = ibpsRepository.getReagentByField(reagentCode,"bian_ma_","yi_qi_she_bei_");
|
|
|
- String deviceCode = ibpsRepository.getReagentByField(reagentCode,"bian_ma_","she_bei_bian_hao_");
|
|
|
+ String reagentType = ibpsRepository.getReagentByField(reagentCode, "bian_ma_", "shi_ji_lei_xing_").orElse("");
|
|
|
+ String deviceID = ibpsRepository.getReagentByField(reagentCode, "bian_ma_", "yi_qi_she_bei_").orElse("");
|
|
|
+ String deviceCode = ibpsRepository.getReagentByField(reagentCode, "bian_ma_", "she_bei_bian_hao_").orElse("");
|
|
|
// String reagentType = "定性";
|
|
|
- String Status = reagentType == "定量" ? "定量待推送" : "定性待推送";
|
|
|
+
|
|
|
+ String Status = "定量".equals(reagentType) ? "定量待推送" : "定性待推送";
|
|
|
//组装主表数据数组
|
|
|
Map<String, Object> reagentMainMap = new HashMap<>();
|
|
|
reagentMainMap.put("id_", orderedId);
|
|
|
@@ -96,7 +97,9 @@ public class HandleData {
|
|
|
reagentSubMap.put("xin_you_xiao_qi_", newExpiredDate);
|
|
|
reagentSubMap.put("shi_ji_hao_cai_id", reagentID);
|
|
|
reagentSubMap.put("shi_ji_bian_ma_", reagentCode);
|
|
|
- reagentSubList.add(reagentSubMap);
|
|
|
+ if(pushUserList!=null && pushUserList.size()>0){
|
|
|
+ reagentSubList.add(reagentSubMap);
|
|
|
+ }
|
|
|
}
|
|
|
String res = ibpsRepository.saveToTable(reagentMainList, "t_sjghyzjlb", "1");
|
|
|
if(res.equals("success")){
|
|
|
@@ -131,10 +134,10 @@ public class HandleData {
|
|
|
// 3. 将 LIS 试剂列表转为 Map,Key 为旧编码 (ReagentNumbeOld)
|
|
|
Map<String, String> lisOldToNewCodeMap = lisReagentList.stream()
|
|
|
.filter(lis -> lis.get("ReagentNumbeOld") != null && lis.get("ReagentNumber") != null)
|
|
|
- .filter(lis -> !lis.get("ReagentNumbeOld").toString().trim().isEmpty() && !lis.get("ReagentNumber").toString().trim().isEmpty())
|
|
|
+ .filter(lis -> !String.valueOf(lis.get("ReagentNumbeOld")).trim().isEmpty() && !String.valueOf(lis.get("ReagentNumber")).isEmpty())
|
|
|
.collect(Collectors.toMap(
|
|
|
- lis -> lis.get("ReagentNumbeOld").toString().trim(),
|
|
|
- lis -> lis.get("ReagentNumber").toString().trim(),
|
|
|
+ lis -> String.valueOf(lis.get("ReagentNumbeOld")).trim(),
|
|
|
+ lis -> String.valueOf(lis.get("ReagentNumber")).trim(),
|
|
|
(existing, replacement) -> existing // 如果有重复的旧编码,保留第一个
|
|
|
));
|
|
|
|
|
|
@@ -191,9 +194,9 @@ public class HandleData {
|
|
|
|
|
|
// 3. 将 LIS 试剂列表转为 Map,Key 为新编码 (ReagentNumber)
|
|
|
Map<String, Map<String, Object>> lisNewCodeMap = lisReagentList.stream()
|
|
|
- .filter(lis -> lis.get("ReagentNumber") != null && !lis.get("ReagentNumber").toString().trim().isEmpty())
|
|
|
+ .filter(lis -> lis.get("ReagentNumber") != null && !String.valueOf(lis.get("ReagentNumber")).trim().isEmpty())
|
|
|
.collect(Collectors.toMap(
|
|
|
- lis -> lis.get("ReagentNumber").toString().trim(),
|
|
|
+ lis -> String.valueOf(lis.get("ReagentNumber")).trim(),
|
|
|
lis -> lis,
|
|
|
(existing, replacement) -> existing
|
|
|
));
|
|
|
@@ -268,7 +271,10 @@ public class HandleData {
|
|
|
insertData.put("dan_wei_", safeTrim(lisReagent.get("Unit")));
|
|
|
insertData.put("chang_jia_", safeTrim(lisReagent.get("Manufacturer")));
|
|
|
insertData.put("gong_ying_shang_", safeTrim(lisReagent.get("Supplyer")));
|
|
|
- insertData.put("ji_lu_lei_xing_", "定量");
|
|
|
+ insertData.put("shi_ji_lei_xing_", "定量");
|
|
|
+ insertData.put("lei_bie_", "试剂");
|
|
|
+ insertData.put("di_dian_", "1409907013076385792");
|
|
|
+
|
|
|
|
|
|
needInsertIbpsReagents.add(insertData);
|
|
|
}
|