From f0a09ee996ab2605869844d6a3d812709e2bf0fa Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 16 十月 2026 16:07:25 +0800
Subject: [PATCH] 任务模块、电话模块
---
smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java | 239 +++++++++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 198 insertions(+), 41 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
index 7c39a28..b1395c7 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
@@ -1,5 +1,7 @@
package com.smartor.service.impl;
+import com.ruoyi.othervisit.api.OtherVisitFacade;
+import com.ruoyi.inhospvisit.api.InhospVisitFacade;
import cn.hutool.core.bean.BeanUtil;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
@@ -12,7 +14,6 @@
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.http.HttpUtils;
import com.smartor.domain.*;
-import com.smartor.domain.entity.ServiceSubtaskEntity;
import com.smartor.mapper.*;
import com.smartor.service.IPatMedOuthospService;
import com.smartor.service.IServiceExternalService;
@@ -35,6 +36,17 @@
import java.util.*;
import java.util.stream.Collectors;
+import com.ruoyi.outpatientvisit.domain.PatMedOuthospQueryReq;
+import com.ruoyi.othervisit.domain.PatMedOperationItem;
+import com.ruoyi.outpatientvisit.mapper.PatMedOuthospMapper;
+import com.ruoyi.othervisit.domain.PatMedOperation;
+import com.ruoyi.outpatientvisit.domain.PatMedOuthosp;
+import com.ruoyi.inhospvisit.domain.PatMedInhosp;
+import com.ruoyi.common.core.domain.entity.PatArchive;
+import com.ruoyi.common.core.domain.entity.PatArchivecontact;
+import com.ruoyi.task.domain.entity.ServiceSubtaskEntity;
+import com.ruoyi.task.domain.ServiceSubtask;
+import com.ruoyi.task.mapper.ServiceSubtaskMapper;
/**
* 涓婚敭Service涓氬姟灞傚鐞�
*
@@ -46,6 +58,12 @@
public class ServiceExternalServiceImpl implements IServiceExternalService {
@Autowired
private SysDept2Mapper sysDeptMapper;
+
+ /**
+ * 鎵嬫湳鏁版嵁涓�寰嬬粡 ruoyi-othervisit 鐨勯棬闈㈠彇鐢紙璺ㄦā鍧楁暟鎹闂師鍒欙級銆�
+ */
+ @Autowired
+ private OtherVisitFacade otherVisitFacade;
@Autowired
private SysUser2Mapper sysUserMapper;
@Autowired
@@ -57,11 +75,7 @@
@Autowired
private PatArchivecontactMapper patArchivecontactMapper;
@Autowired
- private PatMedInhospMapper patMedInhospMapper;
- @Autowired
- private PatMedOperationMapper patMedOperationMapper;
- @Autowired
- private PatMedOperationItemMapper patMedOperationItemMapper;
+ private InhospVisitFacade inhospVisitFacade;
@Autowired
private PatMedInspectionMapper patMedInspectionMapper;
@Autowired
@@ -483,9 +497,9 @@
PatMedInhosp patMedInhosp = new PatMedInhosp();
patMedInhosp.setInhospno(externalInHospPatientInfo.getBingAnHao());
patMedInhosp.setSerialnum(externalInHospPatientInfo.getJiuZhenYWID());
- List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp);
+ List<PatMedInhosp> patMedInhospList = inhospVisitFacade.selectPatMedInhospList(patMedInhosp);
for (PatMedInhosp patMedInhosp1 : patMedInhospList) {
- String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid());
+ String tagname = inhospVisitFacade.getTagnameBypatid(patMedInhosp1.getPatid());
patMedInhosp1.setTagname(tagname);
}
if (CollectionUtils.isNotEmpty(patMedInhospList)) {
@@ -498,7 +512,7 @@
patMedInhosp1.setOperatorId(ObjectUtils.isNotEmpty(JiuZhenXX.get("CaoZuoRID")) ? JiuZhenXX.get("CaoZuoRID").toString() : null);
}
patMedInhosp1.setUpdateTime(new Date());
- int i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
+ int i = inhospVisitFacade.updatePatMedInhosp(patMedInhosp1);
if (i != 1) return false;
}
return true;
@@ -577,9 +591,9 @@
PatMedInhosp patMedInhosp = new PatMedInhosp();
patMedInhosp.setInhospno(externalInHospPatientInfo.getBingAnHao());
patMedInhosp.setSerialnum(externalInHospPatientInfo.getJiuZhenYWID());
- List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp);
+ List<PatMedInhosp> patMedInhospList = inhospVisitFacade.selectPatMedInhospList(patMedInhosp);
for (PatMedInhosp patMedInhosp1 : patMedInhospList) {
- String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid());
+ String tagname = inhospVisitFacade.getTagnameBypatid(patMedInhosp1.getPatid());
patMedInhosp1.setTagname(tagname);
}
PatMedInhosp patMedInhosp1 = new PatMedInhosp();
@@ -647,6 +661,21 @@
}).collect(Collectors.toList());
patMedInhosp1.setLeaveicd10code(hospPatientDiagnoseInfos2.get(0).getIcd10());
patMedInhosp1.setLeavediagname(hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
+ //鍙湁璇婃柇鍚嶇О娌℃湁璇婃柇鐮佺殑鏁版嵁
+ if(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname())
+ && !StringUtils.isNotEmpty(patMedInhosp1.getLeaveicd10code())){
+ Icd10 icd10 = new Icd10();
+ icd10.setIcdname(patMedInhosp1.getLeavediagname());
+ icd10.setDelFlag("0");
+ icd10.setOrgid(ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGID")) ? BingRenXX.get("ZuZhiJGID").toString() : null);
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ icd10.setCampusid("1");
+ //閫氳繃icdCode鏌ヨ涓�涓嬶紝鏄惁瀛樺湪
+ List<Icd10> icd10s = icd10Mapper.exactQueryIcd10List(icd10);
+ if(CollectionUtils.isEmpty(icd10s)){
+ patMedInhosp1.setLeaveicd10code(icd10s.get(0).getIcdcode());
+ }
+ }
//patMedInhosp1.setDiagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() + "," + hospPatientDiagnoseInfos2.get(0).getZhenDuanMC() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
patMedInhosp1.setDiagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
}
@@ -679,7 +708,7 @@
//涓嶉渶瑕侀暱鏈熶换鍔¢殢璁�
patMedInhosp1.setFuflag("0");
}
- int i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
+ int i = inhospVisitFacade.updatePatMedInhosp(patMedInhosp1);
if (i != 1) return false;
} else {
if (ObjectUtils.isNotEmpty(BingRenXX)) {
@@ -703,7 +732,7 @@
patMedInhosp1.setFuflag("0");
}
- int i = patMedInhospMapper.insertPatMedInhosp(patMedInhosp1);
+ int i = inhospVisitFacade.insertPatMedInhosp(patMedInhosp1);
if (i != 1) return false;
}
return true;
@@ -761,9 +790,9 @@
PatMedInhosp patMedInhosp = new PatMedInhosp();
patMedInhosp.setInhospno(externalInHospPatientInfo.getBingAnHao());
patMedInhosp.setSerialnum(externalInHospPatientInfo.getJiuZhenYWID());
- List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp);
+ List<PatMedInhosp> patMedInhospList = inhospVisitFacade.selectPatMedInhospList(patMedInhosp);
for (PatMedInhosp patMedInhosp1 : patMedInhospList) {
- String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid());
+ String tagname = inhospVisitFacade.getTagnameBypatid(patMedInhosp1.getPatid());
patMedInhosp1.setTagname(tagname);
}
PatMedInhosp patMedInhosp1 = new PatMedInhosp();
@@ -812,19 +841,40 @@
}).collect(Collectors.toList());
patMedInhosp1.setLeaveicd10code(hospPatientDiagnoseInfos2.get(0).getIcd10());
patMedInhosp1.setLeavediagname(hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
+ //鍙湁璇婃柇鍚嶇О娌℃湁璇婃柇鐮佺殑鏁版嵁
+ if(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname())
+ && !StringUtils.isNotEmpty(patMedInhosp1.getLeaveicd10code())){
+ Icd10 icd10 = new Icd10();
+ icd10.setIcdname(patMedInhosp1.getLeavediagname());
+ icd10.setDelFlag("0");
+ icd10.setOrgid(ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGID")) ? BingRenXX.get("ZuZhiJGID").toString() : null);
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ icd10.setCampusid("1");
+ //閫氳繃icdCode鏌ヨ涓�涓嬶紝鏄惁瀛樺湪
+ List<Icd10> icd10s = icd10Mapper.exactQueryIcd10List(icd10);
+ if(CollectionUtils.isEmpty(icd10s)){
+ patMedInhosp1.setLeaveicd10code(icd10s.get(0).getIcdcode());
+ }
+ }
//patMedInhosp1.setDiagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() + "," + hospPatientDiagnoseInfos2.get(0).getZhenDuanMC() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
patMedInhosp1.setDiagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
}
- patMedInhosp1.setInhospstate("1");
+ String orgid = ObjectUtils.isNotEmpty(BingRenXX) && ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGID")) ? BingRenXX.get("ZuZhiJGID").toString() : null;
+// if(StringUtils.isNotEmpty(orgid) && orgid.equals("47246103233112211A1001")){
+// //缂欎簯浜岄櫌 浣忛櫌璁板綍涓嶆洿鏂扮姸鎬�
+// }else {
+// patMedInhosp1.setInhospstate("1");
+// }
+
if (CollectionUtils.isNotEmpty(patMedInhospList)) {
patMedInhosp1.setUpdateTime(new Date());
- patMedInhosp1.setOrgid(ObjectUtils.isNotEmpty(BingRenXX) && ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGID")) ? BingRenXX.get("ZuZhiJGID").toString() : null);
+ patMedInhosp1.setOrgid(orgid);
if (CollectionUtils.isNotEmpty(noLongTask) && noLongTask.contains(patMedInhosp1.getOrgid())) {
//涓嶉渶瑕侀暱鏈熶换鍔¢殢璁�
patMedInhosp1.setFuflag("0");
}
- int i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
+ int i = inhospVisitFacade.updatePatMedInhosp(patMedInhosp1);
if (i != 1) return false;
} else {
if (ObjectUtils.isNotEmpty(BingRenXX)) {
@@ -832,7 +882,7 @@
patMedInhosp1.setHospitalcode(ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGID")) ? BingRenXX.get("ZuZhiJGID").toString() : null);
patMedInhosp1.setLeavehospitaldistrictname(ObjectUtils.isNotEmpty(BingRenXX.get("DangQianBQMC")) ? BingRenXX.get("DangQianBQMC").toString() : null);
patMedInhosp1.setLeavehospitaldistrictcode(ObjectUtils.isNotEmpty(BingRenXX.get("DangQianBQID")) ? BingRenXX.get("DangQianBQID").toString() : null);
- patMedInhosp1.setOrgid(ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGID")) ? BingRenXX.get("ZuZhiJGID").toString() : null);
+ patMedInhosp1.setOrgid(orgid);
//涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
patMedInhosp1.setCampusid("1");
patMedInhosp1.setPatno(ObjectUtils.isNotEmpty(BingRenXX.get("BingRenID")) ? BingRenXX.get("BingRenID").toString() : null);
@@ -847,7 +897,7 @@
//涓嶉渶瑕侀暱鏈熶换鍔¢殢璁�
patMedInhosp1.setFuflag("0");
}
- int i = patMedInhospMapper.insertPatMedInhosp(patMedInhosp1);
+ int i = inhospVisitFacade.insertPatMedInhosp(patMedInhosp1);
if (i != 1) return false;
}
return true;
@@ -862,9 +912,9 @@
PatMedInhosp patMedInhosp = new PatMedInhosp();
patMedInhosp.setInhospno(externalInHospPatientInfo.getBingAnHao());
patMedInhosp.setSerialnum(externalInHospPatientInfo.getJiuZhenYWID());
- List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp);
+ List<PatMedInhosp> patMedInhospList = inhospVisitFacade.selectPatMedInhospList(patMedInhosp);
for (PatMedInhosp patMedInhosp1 : patMedInhospList) {
- String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid());
+ String tagname = inhospVisitFacade.getTagnameBypatid(patMedInhosp1.getPatid());
patMedInhosp1.setTagname(tagname);
}
if (CollectionUtils.isNotEmpty(patMedInhospList)) {
@@ -878,7 +928,7 @@
patMedInhosp1.setOperatorId(ObjectUtils.isNotEmpty(JiuZhenXX.get("CaoZuoRXM")) ? JiuZhenXX.get("CaoZuoRID").toString() : null);
}
patMedInhosp1.setUpdateTime(new Date());
- int i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
+ int i = inhospVisitFacade.updatePatMedInhosp(patMedInhosp1);
//鍙栨秷鍑洪櫌锛屽氨涓嶉渶瑕佹湇鍔′簡锛岄渶瑕侀�氳繃patid鍜宻endstate=2鎴栬�卻endstate=1鍘绘煡璇竴涓嬶紝service_subtask閲屾槸鍚︽湁姝e湪鎵ц鐨勪换鍔★紝鏈夌殑璇濓紝绔嬪嵆鍋滀簡
ServiceSubtaskEntity serviceSubtaskVO = new ServiceSubtaskEntity();
@@ -962,9 +1012,9 @@
PatMedInhosp patMedInhosp = new PatMedInhosp();
patMedInhosp.setInhospno(externalInHospPatientInfo.getBingAnHao());
patMedInhosp.setSerialnum(externalInHospPatientInfo.getJiuZhenYWID());
- List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp);
+ List<PatMedInhosp> patMedInhospList = inhospVisitFacade.selectPatMedInhospList(patMedInhosp);
for (PatMedInhosp patMedInhosp1 : patMedInhospList) {
- String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid());
+ String tagname = inhospVisitFacade.getTagnameBypatid(patMedInhosp1.getPatid());
patMedInhosp1.setTagname(tagname);
}
Map<String, Object> JiuZhenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("JiuZhenXX") : null;
@@ -1025,6 +1075,21 @@
}).collect(Collectors.toList());
patMedInhosp1.setLeaveicd10code(hospPatientDiagnoseInfos2.get(0).getIcd10());
patMedInhosp1.setLeavediagname(hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
+ //鍙湁璇婃柇鍚嶇О娌℃湁璇婃柇鐮佺殑鏁版嵁
+ if(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname())
+ && !StringUtils.isNotEmpty(patMedInhosp1.getLeaveicd10code())){
+ Icd10 icd10 = new Icd10();
+ icd10.setIcdname(patMedInhosp1.getLeavediagname());
+ icd10.setDelFlag("0");
+ icd10.setOrgid(ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGID")) ? BingRenXX.get("ZuZhiJGID").toString() : null);
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ icd10.setCampusid("1");
+ //閫氳繃icdCode鏌ヨ涓�涓嬶紝鏄惁瀛樺湪
+ List<Icd10> icd10s = icd10Mapper.exactQueryIcd10List(icd10);
+ if(CollectionUtils.isEmpty(icd10s)){
+ patMedInhosp1.setLeaveicd10code(icd10s.get(0).getIcdcode());
+ }
+ }
//patMedInhosp1.setDiagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() + "," + hospPatientDiagnoseInfos2.get(0).getZhenDuanMC() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
patMedInhosp1.setDiagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
}
@@ -1033,7 +1098,7 @@
if (CollectionUtils.isNotEmpty(patMedInhospList)) {
patMedInhosp1.setUpdateTime(new Date());
patMedInhosp1.setOrgid(ObjectUtils.isNotEmpty(BingRenXX) && ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGID")) ? BingRenXX.get("ZuZhiJGID").toString() : null);
- int i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
+ int i = inhospVisitFacade.updatePatMedInhosp(patMedInhosp1);
if (i != 1) return false;
} else {
if (ObjectUtils.isNotEmpty(BingRenXX)) {
@@ -1052,7 +1117,7 @@
patMedInhosp1.setPatname(patArchive.getName());
patMedInhosp1.setCreateTime(new Date());
- int i = patMedInhospMapper.insertPatMedInhosp(patMedInhosp1);
+ int i = inhospVisitFacade.insertPatMedInhosp(patMedInhosp1);
if (i != 1) return false;
}
@@ -1087,7 +1152,7 @@
PatMedInhosp patMedInhosp = new PatMedInhosp();
patMedInhosp.setInhospno(externalInHospPatientInfo.getBingAnHao());
patMedInhosp.setSerialnum(externalInHospPatientInfo.getJiuZhenYWID());
- List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp);
+ List<PatMedInhosp> patMedInhospList = inhospVisitFacade.selectPatMedInhospList(patMedInhosp);
PatMedInhosp patMedInhosp1 = null;
if (CollectionUtils.isNotEmpty(patMedInhospList)) patMedInhosp1 = patMedInhospList.get(0);
if (ObjectUtils.isNotEmpty(patMedInhosp1)) {
@@ -1098,7 +1163,7 @@
patMedInhosp1.setUpdateTime(new Date());
//鏇存柊鍑洪櫌鐘舵��
patMedInhosp1.setInhospstate("1");
- int i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
+ int i = inhospVisitFacade.updatePatMedInhosp(patMedInhosp1);
if (i != 1) return false;
} catch (ParseException e) {
e.printStackTrace();
@@ -1243,10 +1308,22 @@
i = patMedOuthospService.insertPatMedOuthosp(patMedOuthosp);
}
- Date adminDate = externalJZInfo.getJiuZhenRQ();
+ Date adminDate = patMedOuthosp.getAdmitdate();
//瀹屾垚鎺ヨ瘖 宸茬粡瀹屾垚浠诲姟鍐嶆闅忚
- if(ObjectUtils.isNotEmpty(visitTimeNum) && ObjectUtils.isNotEmpty(adminDate)){
- patMedOuthospService.followUpAgainByPatMedOuthosp(patMedOuthosp, adminDate, visitTimeNum);
+ if(ObjectUtils.isNotEmpty(visitTimeNum)
+ && ObjectUtils.isNotEmpty(adminDate)
+ && StringUtils.isNotEmpty(patMedOuthosp.getFuflag())
+ && patMedOuthosp.getFuflag().equals("1")){
+ if(visitTimeUnit.equals("澶�")){
+ visitTimeNum = visitTimeNum;
+ }else if(visitTimeUnit.equals("鍛�")){
+ visitTimeNum = visitTimeNum * 7;
+ }else if(visitTimeUnit.equals("鏈�")){
+ visitTimeNum = visitTimeNum * 30;
+ }else if(visitTimeUnit.equals("骞�")){
+ visitTimeNum = visitTimeNum * 365;
+ }
+ patMedOuthospService.dealPatMedOuthosp(patMedOuthosp, visitTimeNum);
}
if (i > 0) {
@@ -1355,7 +1432,7 @@
patMedOperation.setPatid(patArchive.getId());
patMedOperation.setOpreqcode(externalOperationInfo.getShenQingDID());
//鏌ヨ涓�涓嬶紝璇ユ偅鑰呮槸鍚﹀凡缁忔湁杩欎簺鏁版嵁
- List<PatMedOperation> patMedOperations = patMedOperationMapper.selectPatMedOperationList(patMedOperation);
+ List<PatMedOperation> patMedOperations = otherVisitFacade.selectOperationList(patMedOperation);
patMedOperation.setOpsstatus(null);
if (ObjectUtils.isNotEmpty(externalOperationInfo)) {
@@ -1432,10 +1509,10 @@
//鍚屾椂鍘绘煡璇紝鏄惁鍦╯ubtask涓敓鎴愪换鍔★紝濡傛灉鐢熸垚鍑哄緱绔嬮┈鍒犻櫎
}
patMedOperation.setUpdateTime(new Date());
- patMedOperationMapper.updatePatMedOperation(patMedOperation);
+ otherVisitFacade.updateOperation(patMedOperation);
} else {
patMedOperation.setCreateTime(new Date());
- patMedOperationMapper.insertPatMedOperation(patMedOperation);
+ otherVisitFacade.insertOperation(patMedOperation);
}
log.info("-----patMedOperation鐨勪富閿甶d涓猴細{}", patMedOperation.getId());
@@ -1459,7 +1536,7 @@
}).collect(Collectors.toList()) : null;
if(ObjectUtils.isNotEmpty(patMedOperation.getId())){
- patMedOperationItemMapper.deleteHardPatMedOperationItemByOpId(patMedOperation.getId().toString());
+ otherVisitFacade.deleteHardOperationItemByOpId(patMedOperation.getId().toString());
}
//addMianTableFalg鏄惁闇�瑕佸皢涓绘墜鏈殑淇℃伅鏀惧埌PatMedOperation琛ㄤ腑锛堝彧鏈夌涓�涓富鎵嬫湳淇℃伅闇�瑕佹斁锛屽悗闈㈢殑閮戒笉闇�瑕佹斁浜嗭紝涔熷氨鏄锛岀涓�涓斁瀹屽悗锛屽氨瑕佹妸杩欎釜flag鏀规垚false锛�
@@ -1491,12 +1568,87 @@
}
patMedOperation.setUpdateTime(new Date());
- patMedOperationMapper.updatePatMedOperation(patMedOperation);
+ otherVisitFacade.updateOperation(patMedOperation);
addMianTableFalg = false;
}
patMedOperationItem.setCreateTime(new Date());
patMedOperationItem.setUpdateTime(new Date());
- patMedOperationItemMapper.insertPatMedOperationItem(patMedOperationItem);
+ otherVisitFacade.insertOperationItem(patMedOperationItem);
+ }
+ }
+ return true;
+ }
+
+ @Override
+ public Boolean cancelOperationInfo(Map dataMap) {
+ log.info("ServiceExternalServiceImpl---cancelOperationInfo鐨勬挙閿�鐨勫�间负锛歿}", dataMap);
+
+ Map yeWuXX = (Map) dataMap.get("YeWuXX");
+ Map<String, Object> BingRenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("BingRenXX") : null;
+ ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true);
+ PatArchive patArchive = addPatArchive(externalInHospPatientInfo, null, null);
+ //鎵嬫湳鎾ら攢
+ Map<String, Object> sscx = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("ShouShuCX") : null;
+ ExternalOperationInfo externalOperationInfo = null;
+ if (ObjectUtils.isNotEmpty(sscx))
+ externalOperationInfo = BeanUtil.mapToBean(sscx, ExternalOperationInfo.class, true);
+ PatMedOperation patMedOperation = new PatMedOperation();
+ patMedOperation.setPatid(patArchive.getId());
+ patMedOperation.setOrgid(patArchive.getOrgid());
+ patMedOperation.setOpreqcode(externalOperationInfo.getShenQingDID());
+ //鏌ヨ涓�涓嬶紝璇ユ偅鑰呮槸鍚﹀凡缁忔湁杩欎簺鏁版嵁
+ List<PatMedOperation> patMedOperations = otherVisitFacade.selectOperationList(patMedOperation);
+ if (CollectionUtils.isNotEmpty(patMedOperations)) {
+ for(PatMedOperation operation : patMedOperations){
+ Long id = operation.getId();
+ //濡傛灉鎵嬫湳鎾ら攢锛岀洿鎺ュ垹闄よ鏉℃墜鏈俊鎭�
+ if (ObjectUtils.isNotEmpty(sscx)) {
+ operation.setId(id);
+ operation.setCheckFlag("1");
+ operation.setDelFlag("1");
+ //鍚屾椂鍘绘煡璇紝鏄惁鍦╯ubtask涓敓鎴愪换鍔★紝濡傛灉鐢熸垚鍑哄緱绔嬮┈鍒犻櫎
+ // 鎵嬫湳闅忚
+ PatMedOperationItem pmoi = new PatMedOperationItem();
+ //鑾峰彇闇�瑕佸嚭闄㈡墜鏈殢璁匡紝鏈鐞嗙殑鏁版嵁
+ pmoi.setOpid(operation.getId().toString());
+ List<PatMedOperationItem> patMedOperationItems
+ = otherVisitFacade.selectOperationItemListByCondition(pmoi);
+ List<Long> operationItemIds = patMedOperationItems.stream()
+ .map(PatMedOperationItem::getId)
+ .filter(Objects::nonNull)
+ .distinct()
+ .collect(Collectors.toList());
+
+
+ //涓嶉渶瑕佹湇鍔′簡锛岄渶瑕侀�氳繃patid鍜宻endstate=1,2,3,5,7鍘绘煡璇竴涓嬶紝service_subtask閲屾槸鍚︽湁姝e湪鎵ц鐨勪换鍔★紝
+ //鏈夌殑璇濓紝绔嬪嵆鍋滀簡
+ List<Long> sendstates = Arrays.asList(1L, 2L, 3L, 5L, 7L);
+ List<ServiceSubtask> serviceSubtaskList = new ArrayList<>();
+ ServiceSubtaskEntity serviceSubtaskVO = new ServiceSubtaskEntity();
+ serviceSubtaskVO.setOrgid(patArchive.getOrgid());
+ serviceSubtaskVO.setPatid(patArchive.getId());
+ serviceSubtaskVO.setSendstates(sendstates);
+ serviceSubtaskVO.setOperationItemIds(operationItemIds);
+ serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
+ //鍘籸edis涓紝鏌ヨ鏄惁鏈塻ubid锛屾湁鐨勮瘽绉婚櫎cache-exist
+ if (CollectionUtils.isNotEmpty(serviceSubtaskList)) {
+ for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
+ log.info("闇�瑕佺Щ闄ょ殑subId涓猴細{}", serviceSubtask.getId().toString());
+ serviceSubtask.setSendstate(4L);
+ serviceSubtask.setRemark("鎵嬫湳鎾ら攢");
+ serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
+ redisCache.removeElementFromList("cache-exist", serviceSubtask.getId().toString());
+ redisCache.removeElementFromList("cache-0", serviceSubtask.getId().toString());
+ redisCache.removeElementFromList("cache-1", serviceSubtask.getId().toString());
+ redisCache.removeElementFromList("cache-2", serviceSubtask.getId().toString());
+ redisCache.removeElementFromList("cache-3", serviceSubtask.getId().toString());
+ redisCache.removeElementFromList("cache-4", serviceSubtask.getId().toString());
+ }
+ }
+ operation.setUpdateTime(new Date());
+ otherVisitFacade.updateOperation(operation);
+ otherVisitFacade.deleteSoftOperationItemByOpId(operation.getOpid());
+ }
}
}
return true;
@@ -1614,7 +1766,7 @@
//鍖婚櫌閭h竟璇磋鐢ㄧ梾妗堝彿锛屼笉瑕佺敤浣忛櫌鍙�
patMedInhosp.setInhospno(externalInHospPatientInfo.getBingAnHao());
patMedInhosp.setSerialnum(externalInHospPatientInfo.getJiuZhenYWID());
- patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp);
+ patMedInhospList = inhospVisitFacade.selectPatMedInhospList(patMedInhosp);
patMedInhosp.setHospitalname(externalInHospPatientInfo.getZuZhiJGMC());
patMedInhosp.setHospitalcode(externalInHospPatientInfo.getZuZhiJGID());
patMedInhosp.setStarttime(externalInHospPatientInfo.getRuYuanSJ());
@@ -1665,10 +1817,10 @@
int i = 1;
if (CollectionUtils.isNotEmpty(patMedInhospList)) {
patMedInhosp.setInhospid(patMedInhospList.get(0).getInhospid());
- i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp);
+ i = inhospVisitFacade.updatePatMedInhosp(patMedInhosp);
} else {
patMedInhosp.setCreateTime(new Date());
- i = patMedInhospMapper.insertPatMedInhosp(patMedInhosp);
+ i = inhospVisitFacade.insertPatMedInhosp(patMedInhosp);
}
if (i == 1) return true;
return false;
@@ -1704,6 +1856,7 @@
Map yeWuXX = (Map) dataMap.get("YeWuXX");
Map<String, Object> BingRenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("BingRenXX") : null;
Map<String, Object> JianChaSQ = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("JianChaSQ") : null;
+ Map<String, Object> JianChaBG = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("JianChaBG") : null;
List<HashMap<String, Object>> JianChaBWList = ObjectUtils.isNotEmpty(JianChaSQ) ? (List<HashMap<String, Object>>) JianChaSQ.get("JianChaBWList") : null;
List<HashMap<String, Object>> ZhenDuanList = ObjectUtils.isNotEmpty(JianChaSQ) ? (List<HashMap<String, Object>>) JianChaSQ.get("ZhenDuanList") : null;
List<HashMap<String, Object>> epai = ObjectUtils.isNotEmpty(BingRenXX) ? (List<HashMap<String, Object>>) BingRenXX.get("DiZhiXXList") : null;
@@ -1797,6 +1950,9 @@
e.printStackTrace();
}
}
+ }
+ if (ObjectUtils.isNotEmpty(JianChaBG)) {
+ patMedInspection.setAppliyid(ObjectUtils.isNotEmpty(JianChaBG.get("ShenQingDID")) ? JianChaBG.get("ShenQingDID").toString() : null);
}
if (CollectionUtils.isNotEmpty(JianChaBWList)) {
List<ExternalInspectionJC> externalInspectionJC = JianChaBWList.stream().map(map -> {
@@ -1995,6 +2151,7 @@
return true;
case "SM_SQ_CheXiao":
log.info("鎵嬫湳鎾ら攢鍏ュ弬绫诲瀷涓猴細{}", type);
+ cancelOperationInfo(dataMap);
return true;
case "TJ_YW_BaoGaoXX":
log.info("浣撴鎶ュ憡鍏ュ弬绫诲瀷涓猴細{}", type);
--
Gitblit v1.9.3