From ff6e84a8f969e2196041c500af051e3e33c46009 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期六, 22 二月 2025 18:16:32 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java |  117 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 117 insertions(+), 0 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 3dae041..1f72652 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
@@ -3,6 +3,8 @@
 import java.lang.reflect.Field;
 
 import cn.hutool.core.bean.BeanUtil;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.annotation.Excel;
 import com.ruoyi.common.core.domain.entity.SysDept;
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.utils.StringUtils;
@@ -45,6 +47,10 @@
     private PatArchiveMapper patArchiveMapper;
     @Autowired
     private PatMedInhospMapper patMedInhospMapper;
+    @Autowired
+    private PatMedOperationMapper patMedOperationMapper;
+    @Autowired
+    private PatMedOperationItemMapper patMedOperationItemMapper;
     @Autowired
     private Icd10AssociationMapper icd10AssociationMapper;
 
@@ -381,6 +387,115 @@
         return true;
     }
 
+    @Override
+    public Boolean addOperationInfo(Map dataMap) {
+        log.error("ServiceExternalServiceImpl---addOperationInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
+
+        Map yeWuXX = (Map) dataMap.get("YeWuXX");
+        Map<String, Object> BingRenXX = (Map<String, Object>) yeWuXX.get("BingRenXX");
+        ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true);
+
+        //鎵嬫湳淇℃伅鏂板
+        Map<String, Object> ssxx = (Map<String, Object>) yeWuXX.get("ShouShuSQ");
+        //鎵嬫湳鏇存柊
+        Map<String, Object> ssgx = (Map<String, Object>) yeWuXX.get("ShouShuGX");
+        //鎵嬫湳鎾ら攢
+        Map<String, Object> sscx = (Map<String, Object>) yeWuXX.get("ShouShuCX");
+        ExternalOperationInfo externalOperationInfo = null;
+        if (ObjectUtils.isNotEmpty(ssxx))
+            externalOperationInfo = BeanUtil.mapToBean(ssxx, ExternalOperationInfo.class, true);
+        else if (ObjectUtils.isNotEmpty(ssgx))
+            externalOperationInfo = BeanUtil.mapToBean(ssgx, ExternalOperationInfo.class, true);
+        else if (ObjectUtils.isNotEmpty(sscx))
+            externalOperationInfo = BeanUtil.mapToBean(sscx, ExternalOperationInfo.class, true);
+        PatMedOperation patMedOperation = new PatMedOperation();
+        patMedOperation.setPatid(null);
+        patMedOperation.setPatcode(externalInHospPatientInfo.getBingRenID());
+        patMedOperation.setPaname(externalInHospPatientInfo.getXingMing());
+//        patMedOperation.setOpreqid(externalOperationInfo.getShenQingDID());
+        patMedOperation.setOpreqcode(externalOperationInfo.getShenQingDID());
+        //鏌ヨ涓�涓嬶紝璇ユ偅鑰呮槸鍚﹀凡缁忔湁杩欎簺鏁版嵁
+        List<PatMedOperation> patMedOperations = patMedOperationMapper.selectPatMedOperationList(patMedOperation);
+
+        patMedOperation.setOpsstatus(null);
+        patMedOperation.setOperationcode(externalOperationInfo.getShouShuLBDM());
+        patMedOperation.setOperationname(externalOperationInfo.getShouShuLBMC());
+        patMedOperation.setOperatortime(externalOperationInfo.getYaoQiuSJ());
+        patMedOperation.setOpreqtime(externalOperationInfo.getShenQingSJ());
+        patMedOperation.setReqdoccode(externalOperationInfo.getShenQingYSID());
+        patMedOperation.setReqdocname(externalOperationInfo.getShenQingYSXM());
+        patMedOperation.setReqdeptcode(externalOperationInfo.getShenQingKSID());
+        patMedOperation.setReqdeptname(externalOperationInfo.getShenQingKSMC());
+        patMedOperation.setReqloccode(externalOperationInfo.getShouShuKSID());
+        patMedOperation.setReqlocname(externalOperationInfo.getShouShuKSMC());
+        patMedOperation.setSurgeoncode(externalOperationInfo.getZhuDaoYSID());
+        patMedOperation.setSurgeonname(externalOperationInfo.getSanZhuYSXM());
+        patMedOperation.setFirasscode(externalOperationInfo.getYiZhuID());
+        patMedOperation.setFirassname(externalOperationInfo.getYiZhuMC());
+        patMedOperation.setSecasscode(externalOperationInfo.getErZhuYSID());
+        patMedOperation.setSecassname(externalOperationInfo.getErZhuYSXM());
+        patMedOperation.setThrasscode(externalOperationInfo.getSanZhuYSID());
+        patMedOperation.setThrassname(externalOperationInfo.getSanZhuYSXM());
+        patMedOperation.setCanceltime(null);
+        patMedOperation.setCancelreason(null);
+        patMedOperation.setCancelcode(null);
+        patMedOperation.setCancelname(null);
+        patMedOperation.setVisittype(null);
+        patMedOperation.setStatus(null);
+        patMedOperation.setSchemetime(null);
+        patMedOperation.setSchemestatus(null);
+        patMedOperation.setDelFlag("0");
+        patMedOperation.setIsupload(null);
+        patMedOperation.setUploadTime(null);
+        patMedOperation.setOrgid(externalInHospPatientInfo.getZuZhiJGID());
+        patMedOperation.setInhospstate(null);
+        patMedOperation.setPatno(externalInHospPatientInfo.getBingRenID());
+        patMedOperation.setPatname(externalInHospPatientInfo.getXingMing());
+        patMedOperation.setVisitid(null);
+        patMedOperation.setSerialnum(externalInHospPatientInfo.getZhuYuanHao());
+        patMedOperation.setInhospno(externalInHospPatientInfo.getZhuYuanHao());
+        patMedOperation.setHospitalname(externalInHospPatientInfo.getZuZhiJGMC());
+        patMedOperation.setHospitalcode(externalInHospPatientInfo.getZuZhiJGID());
+        patMedOperation.setDeptid(externalOperationInfo.getShouShuKSID());
+        patMedOperation.setDeptcode(externalOperationInfo.getShouShuKSID());
+        patMedOperation.setDeptname(externalOperationInfo.getShouShuKSMC());
+        patMedOperation.setHospitaldistrictcode(null);
+        patMedOperation.setHospitaldistrictname(null);
+        patMedOperation.setRoomno(null);
+        patMedOperation.setBedNo(null);
+        patMedOperation.setDrcode(externalOperationInfo.getZhuDaoYSID());
+        patMedOperation.setDrname(externalOperationInfo.getZhuDaoYSXM());
+        patMedOperation.setNurseId(null);
+        patMedOperation.setNurseName(null);
+        if (CollectionUtils.isNotEmpty(patMedOperations)) {
+            Long id = patMedOperations.get(0).getId();
+            patMedOperation.setId(id);
+            patMedOperationMapper.updatePatMedOperation(patMedOperation);
+        } else patMedOperationMapper.insertPatMedOperation(patMedOperation);
+        log.error("-----patMedOperation鐨勪富閿甶d涓猴細{}", patMedOperation.getId());
+
+        if (ObjectUtils.isNotEmpty(ssxx)) {
+            Map<String, Object> ShouShuMXList = (Map<String, Object>) ssxx.get("ShouShuMXList");
+            List<ExternalOperationDetail> externalOperationDetails = BeanUtil.mapToBean(ShouShuMXList, List.class, true);
+            for (ExternalOperationDetail externalOperationDetail : externalOperationDetails) {
+                PatMedOperationItem patMedOperationItem = new PatMedOperationItem();
+                patMedOperationItem.setOpid(patMedOperation.getId());
+                patMedOperationItem.setOpcode(externalOperationDetail.getShouShuMCID());
+                patMedOperationItem.setOpdesc(externalOperationDetail.getShouShuMC());
+                patMedOperationItem.setMainFlag(externalOperationDetail.getZhuShouSBZ());
+                patMedOperationItem.setIncitypecode(externalOperationDetail.getQieKouLBDM());
+                patMedOperationItem.setIncitypedesc(externalOperationDetail.getQieKouLBMC());
+                patMedOperationItem.setOplevelcode(externalOperationDetail.getShouShuJBDM());
+                patMedOperationItem.setOpleveldesc(externalOperationDetail.getShouShuJBMC());
+                patMedOperationItem.setOpposition(externalOperationDetail.getShouShuBW());
+                patMedOperationItem.setDelFlag("0");
+                patMedOperationItem.setOrgid(patMedOperation.getOrgid());
+                patMedOperationItemMapper.insertPatMedOperationItem(patMedOperationItem);
+            }
+        }
+        return true;
+    }
+
     //鏂板鎮h�呭熀鏈俊鎭�
     private PatArchive addPatArchive(ExternalInHospPatientInfo externalInHospPatientInfo, ExternalInHospPatientAddrInfo externalInHospPatientAddrInfo, ExternalInHospPatientLiaisonInfo externalInHospPatientLiaisonInfo) {
         PatArchive patArchive = new PatArchive();
@@ -404,6 +519,7 @@
         patArchive.setAgeUnit(externalInHospPatientInfo.getNianLingDW());
         patArchive.setTelcode(externalInHospPatientInfo.getLianXiDH());
         patArchive.setGuid(externalInHospPatientInfo.getZuZhiJGID());
+        patArchive.setOrgid(externalInHospPatientInfo.getZuZhiJGID());
         if (ObjectUtils.isNotEmpty(externalInHospPatientLiaisonInfo))
             patArchive.setRelativetelcode(externalInHospPatientLiaisonInfo.getLianXiRDH());
         patArchive.setInhospno(externalInHospPatientInfo.getZhuYuanHao());
@@ -544,6 +660,7 @@
                 return true;
             case "SM_SQ_ShenQing":
                 log.error("鎵嬫湳鐢宠鍏ュ弬绫诲瀷涓猴細{}", type);
+                addOperationInfo(dataMap);
                 return true;
             case "TJ_YW_BaoGaoXX":
                 log.error("浣撴鎶ュ憡鍏ュ弬绫诲瀷涓猴細{}", type);

--
Gitblit v1.9.3