From e00ef99886b9ab84f39c81432f8c7640e93026f9 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期四, 27 二月 2025 15:54:30 +0800 Subject: [PATCH] 代码提交 --- smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java | 191 +++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 166 insertions(+), 25 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 c578dbc..744839d 100644 --- a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java @@ -1,7 +1,5 @@ package com.smartor.service.impl; -import java.lang.reflect.Field; - import cn.hutool.core.bean.BeanUtil; import com.ruoyi.common.core.domain.entity.SysDept; import com.ruoyi.common.core.domain.entity.SysUser; @@ -9,21 +7,22 @@ import com.smartor.domain.*; import com.smartor.mapper.*; import com.smartor.service.IServiceExternalService; -import com.smartor.service.IServiceSubtaskRecordService; import com.smartor.service.IServiceSubtaskService; -import io.swagger.annotations.ApiModelProperty; +import org.springframework.beans.factory.annotation.Value; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; -import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import javax.security.auth.login.CredentialNotFoundException; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.util.*; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; import java.util.stream.Collectors; /** @@ -46,11 +45,14 @@ @Autowired private PatMedInhospMapper patMedInhospMapper; @Autowired - private Icd10AssociationMapper icd10AssociationMapper; - + private PatMedOperationMapper patMedOperationMapper; @Autowired - private IServiceSubtaskService iServiceSubtaskService; + private PatMedOperationItemMapper patMedOperationItemMapper; + @Autowired + private Icd10Mapper icd10Mapper; + @Value("${defaultPwd}") + private String defaultPwd; public Boolean generalInterface(Map dataMap) { Map XiaoXiTou = (Map) dataMap.get("XiaoXiTou"); @@ -111,11 +113,15 @@ ExternalUserInfo externalUserInfo = BeanUtil.mapToBean(yongHuXX, ExternalUserInfo.class, true); SysUser sysUser = new SysUser(); sysUser.setGuid(externalUserInfo.getZuZhiJGID()); - sysUser.setUserName(externalUserInfo.getYongHuID()); + sysUser.setUserName(externalUserInfo.getYongHuDLM()); sysUser.setNickName(externalUserInfo.getYongHuXM()); sysUser.setUserType(""); sysUser.setDeptId(null); sysUser.setTitle(null); + + BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder(); + sysUser.setPassword(passwordEncoder.encode(defaultPwd)); + sysUser.setHisUserId(externalUserInfo.getYongHuID()); sysUser.setPhonenumber(externalUserInfo.getLianXiDH()); sysUser.setJobPhone(externalUserInfo.getGongZuoDH()); @@ -331,20 +337,20 @@ Map yeWuXX = (Map) dataMap.get("YeWuXX"); Map<String, Object> JiBing = (Map<String, Object>) yeWuXX.get("JiBing"); ExternalDiseaseInfo externalDiseaseInfo = BeanUtil.mapToBean(JiBing, ExternalDiseaseInfo.class, true); - Icd10Association icd10Association = new Icd10Association(); - icd10Association.setIcd10code(externalDiseaseInfo.getJiBingID()); - icd10Association.setIcd10name(externalDiseaseInfo.getJiBingMC()); - icd10Association.setGuid(externalDiseaseInfo.getZuZhiJGID()); - icd10Association.setOrgid(externalDiseaseInfo.getZuZhiJGID()); - icd10Association.setPid(externalDiseaseInfo.getFUJIBID()); - icd10Association.setIcd10AssortCode(externalDiseaseInfo.getJiBingFLDM()); - icd10Association.setIcd10AssortName(externalDiseaseInfo.getJiBingFLMC()); - icd10Association.setChineseMedicineDiagnoseSign(externalDiseaseInfo.getZhongYiZDBZ()); - icd10Association.setChineseMedicineDiagnoseAssortCode(externalDiseaseInfo.getZhongYiZDFLDM()); - icd10Association.setChineseMedicineDiagnoseAssortName(externalDiseaseInfo.getZhongYiZDFLMC()); - icd10Association.setOutpatientUseAssort(externalDiseaseInfo.getMenZhenSYBZ()); - icd10Association.setInpatientUseAssort(externalDiseaseInfo.getZhuYuanSYBZ()); - icd10AssociationMapper.insertIcd10Association(icd10Association); + Icd10 icd10 = new Icd10(); + icd10.setIcdcode(externalDiseaseInfo.getJiBingID()); + icd10.setIcdname(externalDiseaseInfo.getJiBingMC()); + icd10.setGuid(externalDiseaseInfo.getZuZhiJGID()); + icd10.setOrgid(externalDiseaseInfo.getZuZhiJGID()); + icd10.setLastflag(externalDiseaseInfo.getMOJIBZ()); + icd10.setChimedflag("" + externalDiseaseInfo.getZhongYiZDBZ()); +// icd10Association.setIcd10AssortName(externalDiseaseInfo.getJiBingFLMC()); +// icd10Association.setChineseMedicineDiagnoseSign(externalDiseaseInfo.getZhongYiZDBZ()); +// icd10Association.setChineseMedicineDiagnoseAssortCode(externalDiseaseInfo.getZhongYiZDFLDM()); +// icd10Association.setChineseMedicineDiagnoseAssortName(externalDiseaseInfo.getZhongYiZDFLMC()); +// icd10Association.setOutpatientUseAssort(externalDiseaseInfo.getMenZhenSYBZ()); +// icd10Association.setInpatientUseAssort(externalDiseaseInfo.getZhuYuanSYBZ()); + icd10Mapper.insertIcd10(icd10); return true; } @@ -381,6 +387,134 @@ 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); + + PatArchive patArchive = addPatArchive(externalInHospPatientInfo, null, null); + + + //鎵嬫湳淇℃伅鏂板 + 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(patArchive.getId()); + 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.setOptypecode(externalOperationInfo.getShouShuLBDM()); + patMedOperation.setOptypename(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); + patMedOperation.setCheckFlag(patMedOperations.get(0).getCheckFlag()); + //濡傛灉鎵嬫湳鎾ら攢锛岀洿鎺ュ垹闄よ鏉℃墜鏈俊鎭� + if (ObjectUtils.isNotEmpty(sscx)) { + patMedOperation.setDelFlag("1"); + //鍚屾椂鍘绘煡璇紝鏄惁鍦╯ubtask涓敓鎴愪换鍔★紝濡傛灉鐢熸垚鍑哄緱绔嬮┈鍒犻櫎 + } + 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); + //addMianTableFalg鏄惁闇�瑕佸皢涓绘墜鏈殑淇℃伅鏀惧埌PatMedOperation琛ㄤ腑锛堝彧鏈夌涓�涓富鎵嬫湳淇℃伅闇�瑕佹斁锛屽悗闈㈢殑閮戒笉闇�瑕佹斁浜嗭紝涔熷氨鏄锛岀涓�涓斁瀹屽悗锛屽氨瑕佹妸杩欎釜flag鏀规垚false锛� + Boolean addMianTableFalg = 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()); + if (externalOperationDetail.getZhuShouSBZ().equals("1") && addMianTableFalg == true) { + patMedOperation.setOpcode(externalOperationDetail.getShouShuMCID()); + patMedOperation.setOpdesc(externalOperationDetail.getShouShuMC()); +// patMedOperation.setOpid(externalOperationDetail.getShouShuJBDM()); + patMedOperationMapper.updatePatMedOperation(patMedOperation); + addMianTableFalg = false; + } + + patMedOperationItemMapper.insertPatMedOperationItem(patMedOperationItem); + } + } + return true; + } + //鏂板鎮h�呭熀鏈俊鎭� private PatArchive addPatArchive(ExternalInHospPatientInfo externalInHospPatientInfo, ExternalInHospPatientAddrInfo externalInHospPatientAddrInfo, ExternalInHospPatientLiaisonInfo externalInHospPatientLiaisonInfo) { PatArchive patArchive = new PatArchive(); @@ -403,7 +537,9 @@ patArchive.setAge(externalInHospPatientInfo.getNianLing()); patArchive.setAgeUnit(externalInHospPatientInfo.getNianLingDW()); patArchive.setTelcode(externalInHospPatientInfo.getLianXiDH()); + patArchive.setRelativetelcode(externalInHospPatientInfo.getLianXiRDH()); patArchive.setGuid(externalInHospPatientInfo.getZuZhiJGID()); + patArchive.setOrgid(externalInHospPatientInfo.getZuZhiJGID()); if (ObjectUtils.isNotEmpty(externalInHospPatientLiaisonInfo)) patArchive.setRelativetelcode(externalInHospPatientLiaisonInfo.getLianXiRDH()); patArchive.setInhospno(externalInHospPatientInfo.getZhuYuanHao()); @@ -434,7 +570,9 @@ patMedInhosp.setHospitalcode(externalInHospPatientInfo.getZuZhiJGID()); patMedInhosp.setStarttime(externalInHospPatientInfo.getRuYuanSJ()); patMedInhosp.setDeptcode(externalInHospPatientInfo.getDangQianKSID()); + patMedInhosp.setLeaveldeptcode(externalInHospPatientInfo.getDangQianKSID()); patMedInhosp.setDeptname(externalInHospPatientInfo.getDangQianKSMC()); + patMedInhosp.setLeaveldeptname(externalInHospPatientInfo.getDangQianKSMC()); patMedInhosp.setBedNo(externalInHospPatientInfo.getDangQianCWID()); patMedInhosp.setOrgid(externalInHospPatientInfo.getZuZhiJGID()); patMedInhosp.setHospitaldistrictid(externalInHospPatientInfo.getDangQianBQID()); @@ -443,7 +581,9 @@ patMedInhosp.setOperator(externalInHospPatientInfo.getCaoZuoRXM()); patMedInhosp.setOperatorId(externalInHospPatientInfo.getCaoZuoRID()); patMedInhosp.setHospitaldistrictcode(externalInHospPatientInfo.getDangQianBQID()); + patMedInhosp.setLeavehospitaldistrictcode(externalInHospPatientInfo.getDangQianBQID()); patMedInhosp.setHospitaldistrictname(externalInHospPatientInfo.getDangQianBQMC()); + patMedInhosp.setLeavehospitaldistrictname(externalInHospPatientInfo.getDangQianBQMC()); } if (ObjectUtils.isNotEmpty(externalInHospPatientDiagnoseInfo)) { patMedInhosp.setIcd10code(StringUtils.isNotEmpty(patMedInhosp.getIcd10code()) ? patMedInhosp.getIcd10code() + "," + externalInHospPatientDiagnoseInfo.getZhenDuanID() : externalInHospPatientDiagnoseInfo.getZhenDuanID()); @@ -540,6 +680,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