| | |
| | | package com.smartor.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.json.JSON; |
| | | import cn.hutool.json.JSONUtil; |
| | | import com.google.gson.Gson; |
| | | import com.google.gson.reflect.TypeToken; |
| | | import com.ruoyi.common.core.domain.entity.SysDept; |
| | | import com.ruoyi.common.core.domain.entity.SysUser; |
| | | import com.ruoyi.common.core.domain.entity.SysUserDept; |
| | | import com.ruoyi.common.core.redis.RedisCache; |
| | | import com.ruoyi.common.exception.base.BaseException; |
| | | import com.ruoyi.common.utils.AesUtils; |
| | | import com.ruoyi.common.utils.DateUtils; |
| | | import com.ruoyi.common.utils.DtoConversionUtils; |
| | | 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; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import netscape.javascript.JSObject; |
| | | import org.apache.commons.collections4.CollectionUtils; |
| | | import org.apache.commons.lang3.ObjectUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.net.URLEncoder; |
| | | import java.text.ParseException; |
| | | import java.text.SimpleDateFormat; |
| | | import java.time.LocalDate; |
| | |
| | | sysUser.setCampusid("1"); |
| | | //根据userName判断一下,是不是之前有新增 |
| | | SysUser sysUser1 = null; |
| | | if(StringUtils.isEmpty(sysUser.getUserName()) || StringUtils.isEmpty(sysUser.getOrgid())){ |
| | | if (StringUtils.isEmpty(sysUser.getUserName()) || StringUtils.isEmpty(sysUser.getOrgid())) { |
| | | return false; |
| | | } |
| | | List<SysUser> sysUserList = sysUserMapper.selectUserList(sysUser); |
| | |
| | | Map yeWuXX = (Map) dataMap.get("YeWuXX"); |
| | | Map<String, Object> BingRenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("BingRenXX") : null; |
| | | Map<String, Object> RuKeXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("RuKeXX") : null; |
| | | Map<String, Object> JiuZhenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("JiuZhenXX") : null; |
| | | |
| | | List<HashMap<String, Object>> epai = ObjectUtils.isNotEmpty(yeWuXX) ? (List<HashMap<String, Object>>) BingRenXX.get("DiZhiXXList") : null; |
| | | |
| | | ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true); |
| | | ExternalInDeptPatientInfo externalInDeptPatientInfo = BeanUtil.mapToBean(RuKeXX, ExternalInDeptPatientInfo.class, true); |
| | | |
| | | ExternalInDeptPatientInfo externalJZInfo = BeanUtil.mapToBean(JiuZhenXX, ExternalInDeptPatientInfo.class, true); |
| | | if(ObjectUtils.isNotEmpty(externalJZInfo)){ |
| | | externalInHospPatientInfo.setJingGuanYSID(externalJZInfo.getJingGuanYSID()); |
| | | externalInHospPatientInfo.setJingGuanYSXM(externalJZInfo.getJingGuanYSXM()); |
| | | } |
| | | externalInHospPatientInfo.setZeRenHSID(externalInDeptPatientInfo.getZeRenHSID()); |
| | | externalInHospPatientInfo.setZeRenHSXM(externalInDeptPatientInfo.getZeRenHSXM()); |
| | | externalInHospPatientInfo.setZhuZhiYSID(externalInDeptPatientInfo.getZhuZhiYSID()); |
| | | externalInHospPatientInfo.setZhuZhiYSXM(externalInDeptPatientInfo.getZhuZhiYSXM()); |
| | | externalInHospPatientInfo.setRuYuanSJ(externalInDeptPatientInfo.getRuYuanSJ()); |
| | | externalInHospPatientInfo.setJingGuanYSID(externalInDeptPatientInfo.getJingGuanYSID()); |
| | | externalInHospPatientInfo.setJingGuanYSXM(externalInDeptPatientInfo.getJingGuanYSXM()); |
| | | externalInHospPatientInfo.setLianXiDH(ObjectUtils.isNotEmpty(BingRenXX.get("LianXiDH")) ? BingRenXX.get("LianXiDH").toString() : null); |
| | | externalInHospPatientInfo.setDangQianCWID(ObjectUtils.isNotEmpty(BingRenXX.get("DangQianCWID")) ? BingRenXX.get("DangQianCWID").toString() : null); |
| | | externalInHospPatientInfo.setDangQianCWMC(ObjectUtils.isNotEmpty(BingRenXX.get("DangQianCWMC")) ? BingRenXX.get("DangQianCWMC").toString() : null); |
| | |
| | | Map yeWuXX = (Map) dataMap.get("YeWuXX"); |
| | | Map<String, Object> BingRenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("BingRenXX") : null; |
| | | Map<String, Object> ChuYuanJL = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("ChuYuanJL") : null; |
| | | Map<String, Object> JiuZhenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("JiuZhenXX") : null; |
| | | List<HashMap<String, Object>> epai = ObjectUtils.isNotEmpty(BingRenXX) ? (List<HashMap<String, Object>>) BingRenXX.get("DiZhiXXList") : null; |
| | | List<HashMap<String, Object>> epli = ObjectUtils.isNotEmpty(yeWuXX) ? (List<HashMap<String, Object>>) yeWuXX.get("LianXiRList") : null; |
| | | Map<String, Object> SuiFangJH = ObjectUtils.isNotEmpty(ChuYuanJL) ? (Map<String, Object>) ChuYuanJL.get("SuiFangJH") : null; |
| | | |
| | | ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true); |
| | | ExternalInHospPatientAddrInfo externalInHospPatientAddrInfo = null; |
| | | ExternalInHospPatientLiaisonInfo externalInHospPatientLiaisonInfo = null; |
| | | |
| | | //就诊信息 |
| | | ExternalInDeptPatientInfo externalJZInfo = BeanUtil.mapToBean(JiuZhenXX, ExternalInDeptPatientInfo.class, true); |
| | | if(ObjectUtils.isNotEmpty(externalJZInfo)){ |
| | | externalInHospPatientInfo.setJingGuanYSID(externalJZInfo.getJingGuanYSID()); |
| | | externalInHospPatientInfo.setJingGuanYSXM(externalJZInfo.getJingGuanYSXM()); |
| | | } |
| | | List<ExternalInHospPatientAddrInfo> epai2 = null; |
| | | //死亡标记 |
| | | Boolean deathFlag = false; |
| | |
| | | if (CollectionUtils.isNotEmpty(epli)) externalInHospPatientLiaisonInfo = epli2.get(0); |
| | | List<HashMap<String, Object>> bingRenKZXXList = ObjectUtils.isNotEmpty(yeWuXX) ? (List<HashMap<String, Object>>) yeWuXX.get("BingRenKZXXList") : null; |
| | | if (CollectionUtils.isNotEmpty(bingRenKZXXList)) { |
| | | for(HashMap<String, Object> bingRenKZXX : bingRenKZXXList){ |
| | | for (HashMap<String, Object> bingRenKZXX : bingRenKZXXList) { |
| | | String XiangMuDM = ObjectUtils.isNotEmpty(bingRenKZXX.get("XiangMuDM")) ? bingRenKZXX.get("XiangMuDM").toString() : null; |
| | | if(StringUtils.isNotEmpty(XiangMuDM) && XiangMuDM.equals("DuanHaoXX")){ |
| | | if (StringUtils.isNotEmpty(XiangMuDM) && XiangMuDM.equals("DuanHaoXX")) { |
| | | externalInHospPatientInfo.setDuanHaoXX(ObjectUtils.isNotEmpty(bingRenKZXX.get("XiangMuZMC")) ? bingRenKZXX.get("XiangMuZMC").toString() : null); |
| | | break; |
| | | } |
| | |
| | | String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid()); |
| | | patMedInhosp1.setTagname(tagname); |
| | | } |
| | | Map<String, Object> JiuZhenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("JiuZhenXX") : null; |
| | | PatMedInhosp patMedInhosp1 = new PatMedInhosp(); |
| | | if (CollectionUtils.isNotEmpty(patMedInhospList)) patMedInhosp1 = patMedInhospList.get(0); |
| | | patMedInhosp1.setSchemestatus(2L); |
| | |
| | | patMedInhosp1.setNurseName(ObjectUtils.isNotEmpty(JiuZhenXX.get("ZeRenHSXM")) ? JiuZhenXX.get("ZeRenHSXM").toString() : null); |
| | | patMedInhosp1.setNurseId(ObjectUtils.isNotEmpty(JiuZhenXX.get("ZeRenHSID")) ? JiuZhenXX.get("ZeRenHSID").toString() : null); |
| | | patMedInhosp1.setBedNo(ObjectUtils.isNotEmpty(JiuZhenXX.get("DangQianCWMC")) ? JiuZhenXX.get("DangQianCWMC").toString() : null); |
| | | |
| | | patMedInhosp1.setManagementDoctorCode(ObjectUtils.isNotEmpty(JiuZhenXX.get("JingGuanYSID")) ? JiuZhenXX.get("JingGuanYSID").toString() : null); |
| | | patMedInhosp1.setManagementDoctor(ObjectUtils.isNotEmpty(JiuZhenXX.get("JingGuanYSXM")) ? JiuZhenXX.get("JingGuanYSXM").toString() : null); |
| | | |
| | | //离院方式代码 1-医瞩离院 2-医嘱转院 3-医嘱转社区卫生服务机构/乡镇卫生院 |
| | | // 4-非医嘱离院 5-死亡 9-其他 10-介入室 20-手术室 |
| | |
| | | patMedInhosp1.setDeptcode(externalInHospPatientInfo.getDangQianKSID()); |
| | | |
| | | if (ObjectUtils.isNotEmpty(SuiFangJH)) { |
| | | patMedInhosp1.setFuflag(ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangBS")) ? SuiFangJH.get("SuiFangBS").toString() : null); |
| | | patMedInhosp1.setFuflag(ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangBS")) ? SuiFangJH.get("SuiFangBS").toString() : "1"); |
| | | if (ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangRQ"))) { |
| | | try { |
| | | SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | |
| | | patMedInhosp1.setInhospstate("1"); |
| | | if (deathFlag) { |
| | | //病人死亡无须随访 |
| | | patMedInhosp1.setFuflag("1"); |
| | | patMedInhosp1.setFuflag("0"); |
| | | //更新病人 notrequiredFlag |
| | | patArchive.setNotrequiredFlag("1"); |
| | | patArchive.setNotrequiredreason("患者已离世"); |
| | | patArchiveMapper.updatePatArchive(patArchive); |
| | | //对已经生成的随访任务进行处理 |
| | | ServiceSubtaskEntity serviceSubtaskVO = new ServiceSubtaskEntity(); |
| | |
| | | serviceSubtaskVO.setSendstate(2L); |
| | | List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO); |
| | | for (ServiceSubtask serviceSubtask : serviceSubtaskList) { |
| | | serviceSubtask.setSendstate(6L); |
| | | serviceSubtask.setRemark(serviceSubtask.getRemark() + ";病人已死亡,不随访"); |
| | | serviceSubtask.setSendstate(4L); |
| | | serviceSubtask.setRemark(serviceSubtask.getRemark() + ";患者已离世,不随访"); |
| | | serviceSubtaskMapper.updateServiceSubtask(serviceSubtask); |
| | | } |
| | | } |
| | |
| | | patMedInhosp1.setCampusid("1"); |
| | | if (CollectionUtils.isNotEmpty(noLongTask) && noLongTask.contains(patMedInhosp1.getOrgid())) { |
| | | //不需要长期任务随访 |
| | | patMedInhosp1.setFuflag("1"); |
| | | patMedInhosp1.setFuflag("0"); |
| | | } |
| | | int i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp1); |
| | | if (i != 1) return false; |
| | |
| | | patMedInhosp1.setCreateTime(new Date()); |
| | | if (CollectionUtils.isNotEmpty(noLongTask) && noLongTask.contains(patMedInhosp1.getOrgid())) { |
| | | //不需要长期任务随访 |
| | | patMedInhosp1.setFuflag("1"); |
| | | patMedInhosp1.setFuflag("0"); |
| | | } |
| | | |
| | | int i = patMedInhospMapper.insertPatMedInhosp(patMedInhosp1); |
| | |
| | | patMedInhosp1.setDeptcode(externalInHospPatientInfo.getDangQianKSID()); |
| | | |
| | | if (ObjectUtils.isNotEmpty(SuiFangJH)) { |
| | | patMedInhosp1.setFuflag(ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangBS")) ? SuiFangJH.get("SuiFangBS").toString() : null); |
| | | patMedInhosp1.setFuflag(ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangBS")) ? SuiFangJH.get("SuiFangBS").toString() : "1"); |
| | | if (ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangRQ"))) { |
| | | try { |
| | | SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | |
| | | patMedInhosp1.setOrgid(ObjectUtils.isNotEmpty(BingRenXX) && ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGID")) ? BingRenXX.get("ZuZhiJGID").toString() : null); |
| | | if (CollectionUtils.isNotEmpty(noLongTask) && noLongTask.contains(patMedInhosp1.getOrgid())) { |
| | | //不需要长期任务随访 |
| | | patMedInhosp1.setFuflag("1"); |
| | | patMedInhosp1.setFuflag("0"); |
| | | } |
| | | int i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp1); |
| | | if (i != 1) return false; |
| | |
| | | patMedInhosp1.setCreateTime(new Date()); |
| | | if (CollectionUtils.isNotEmpty(noLongTask) && noLongTask.contains(patMedInhosp1.getOrgid())) { |
| | | //不需要长期任务随访 |
| | | patMedInhosp1.setFuflag("1"); |
| | | patMedInhosp1.setFuflag("0"); |
| | | } |
| | | int i = patMedInhospMapper.insertPatMedInhosp(patMedInhosp1); |
| | | if (i != 1) return false; |
| | |
| | | patMedInhosp1.setNurseName(ObjectUtils.isNotEmpty(JiuZhenXX.get("ZeRenHSXM")) ? JiuZhenXX.get("ZeRenHSXM").toString() : null); |
| | | patMedInhosp1.setNurseId(ObjectUtils.isNotEmpty(JiuZhenXX.get("ZeRenHSID")) ? JiuZhenXX.get("ZeRenHSID").toString() : null); |
| | | patMedInhosp1.setBedNo(ObjectUtils.isNotEmpty(JiuZhenXX.get("DangQianCWMC")) ? JiuZhenXX.get("DangQianCWMC").toString() : null); |
| | | |
| | | patMedInhosp1.setManagementDoctorCode(ObjectUtils.isNotEmpty(JiuZhenXX.get("JingGuanYSID")) ? JiuZhenXX.get("JingGuanYSID").toString() : null); |
| | | patMedInhosp1.setManagementDoctor(ObjectUtils.isNotEmpty(JiuZhenXX.get("JingGuanYSXM")) ? JiuZhenXX.get("JingGuanYSXM").toString() : null); |
| | | } |
| | | patMedInhosp1.setUpdateTime(new Date()); |
| | | patMedInhosp1.setTelcode(patArchive.getTelcode()); |
| | |
| | | patMedInhosp1.setDeptcode(externalInHospPatientInfo.getDangQianKSID()); |
| | | |
| | | if (ObjectUtils.isNotEmpty(SuiFangJH)) { |
| | | patMedInhosp1.setFuflag(ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangBS")) ? SuiFangJH.get("SuiFangBS").toString() : null); |
| | | patMedInhosp1.setFuflag(ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangBS")) ? SuiFangJH.get("SuiFangBS").toString() : "1"); |
| | | if (ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangRQ"))) { |
| | | try { |
| | | SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | |
| | | int i = patMedInhospMapper.insertPatMedInhosp(patMedInhosp1); |
| | | if (i != 1) return false; |
| | | } |
| | | |
| | | //离院方式代码 1-医瞩离院 2-医嘱转院 3-医嘱转社区卫生服务机构/乡镇卫生院 |
| | | // 4-非医嘱离院 5-死亡 9-其他 10-介入室 20-手术室 |
| | | String liYuanQxdm = ObjectUtils.isNotEmpty(JiuZhenXX.get("LiYuanQXDM")) ? JiuZhenXX.get("LiYuanQXDM").toString() : null; |
| | | if (ObjectUtils.isNotEmpty(liYuanQxdm) && ("5").equals(liYuanQxdm)) { |
| | | deathPatProcess(liYuanQxdm,patMedInhosp1); |
| | | } |
| | | return true; |
| | | } |
| | | |
| | |
| | | } catch (ParseException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | |
| | | //离院方式代码 1-医瞩离院 2-医嘱转院 3-医嘱转社区卫生服务机构/乡镇卫生院 |
| | | // 4-非医嘱离院 5-死亡 9-其他 10-介入室 20-手术室 |
| | | String liYuanQxdm = ObjectUtils.isNotEmpty(JiuZhenXX.get("LiYuanQXDM")) ? JiuZhenXX.get("LiYuanQXDM").toString() : null; |
| | | if (ObjectUtils.isNotEmpty(liYuanQxdm) && ("5").equals(liYuanQxdm)) { |
| | | deathPatProcess(liYuanQxdm,patMedInhosp1); |
| | | } |
| | | return true; |
| | | } else { |
| | |
| | | patMedOuthosp.setDrcode(externalDiagnosisInfo.getZhenDuanYSID()); |
| | | patMedOuthosp.setDrname(externalDiagnosisInfo.getZhenDuanYSXM()); |
| | | patMedOuthosp.setIcd10code(externalDiagnosisInfo.getIcd10()); |
| | | patMedOuthosp.setFuflag("0"); |
| | | patMedOuthosp.setFuflag("1"); |
| | | } |
| | | } |
| | | for (ExternalWZInfo externalWZInfo : ExternalWZInfoList) { |
| | |
| | | patMedOuthosp.setUpdateTime(new Date()); |
| | | if (CollectionUtils.isNotEmpty(noLongTask) && noLongTask.contains(patMedOuthosp.getOrgid())) { |
| | | //不需要长期任务随访,由医生自己去随访(丽水中医院首次提出) |
| | | patMedOuthosp.setFuflag("1"); |
| | | patMedOuthosp.setFuflag("0"); |
| | | } |
| | | i = patMedOuthospService.updatePatMedOuthosp(patMedOuthosp); |
| | | } else { |
| | |
| | | patMedOuthosp.setUpdateTime(new Date()); |
| | | if (CollectionUtils.isNotEmpty(noLongTask) && noLongTask.contains(patMedOuthosp.getOrgid())) { |
| | | //不需要长期任务随访 |
| | | patMedOuthosp.setFuflag("1"); |
| | | patMedOuthosp.setFuflag("0"); |
| | | } |
| | | i = patMedOuthospService.insertPatMedOuthosp(patMedOuthosp); |
| | | |
| | |
| | | Boolean addMianTableFalg = true; |
| | | for (ExternalOperationDetail externalOperationDetail : externalOperationDetails) { |
| | | PatMedOperationItem patMedOperationItem = new PatMedOperationItem(); |
| | | patMedOperationItem.setOpid(patMedOperation.getId()); |
| | | patMedOperationItem.setOpid(patMedOperation.getOpid()); |
| | | patMedOperationItem.setOpcode(externalOperationDetail.getShouShuMCID()); |
| | | patMedOperationItem.setOpdesc(externalOperationDetail.getShouShuMC()); |
| | | patMedOperationItem.setMainFlag(externalOperationDetail.getZhuShouSBZ()); |
| | |
| | | return true; |
| | | } |
| | | |
| | | @Override |
| | | public Map<String, Object> query360PatInfolwl(Long patid, SysUser sysUser) { |
| | | PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(patid); |
| | | Map<String, String> headers = buildRequestHeaders(); |
| | | Map<String, Object> requestParams = buildRequestParams(sysUser,patArchive); |
| | | String result = HttpUtils.sendPostByHeader("http://cfdata.nhyfy.cn/kapi/hbos-h360/open/getNoLoginUrl", new Gson().toJson(requestParams), headers); |
| | | log.info("============result的值为:{}",result); |
| | | Gson gson = new Gson(); |
| | | Map<String, Object> map = null; |
| | | if (result != null) { |
| | | map = gson.fromJson(result, new TypeToken<Map<String, Object>>() { |
| | | }.getType()); |
| | | } |
| | | return map; |
| | | } |
| | | |
| | | private Boolean getType(String type, Map dataMap) { |
| | | switch (type) { |
| | | case "BR_DA_DangAnJL": |
| | |
| | | return ageMap; |
| | | } |
| | | |
| | | |
| | | private Map<String, String> buildRequestHeaders() { |
| | | Map<String, String> headers = new HashMap<>(); |
| | | headers.put("Content-Type", "application/json"); |
| | | headers.put("app-key", "ak-0p5Qi0J1I4AL67ztEYQL1j9v"); |
| | | return headers; |
| | | } |
| | | |
| | | private Map<String, Object> buildRequestParams(SysUser sysUser,PatArchive patArchive) { |
| | | Map<String, Object> requestParams = new HashMap<>(); |
| | | requestParams.put("key", sysUser.getUserName()); |
| | | requestParams.put("windowOpen", false); |
| | | requestParams.put("isShowHeader", false); |
| | | requestParams.put("encode", 1); |
| | | |
| | | Map<String, Object> params = new HashMap<>(); |
| | | //病历号 |
| | | params.put("patientMainIndexNum", patArchive.getPatientno()); |
| | | params.put("sourceSystem", "pacs"); |
| | | params.put("workId", sysUser.getUserName()); |
| | | params.put("workName", sysUser.getNickName()); |
| | | params.put("hisDepName", sysUser.getDeptName()); |
| | | params.put("hisDepCode", sysUser.getDeptCode()); |
| | | params.put("hisOrgName", "南华大学附属第一医院"); |
| | | params.put("hisOrgCode", "20001001"); |
| | | params.put("hisHosName", "南华大学附属第一医院"); |
| | | params.put("hisHosCode", "30001002"); |
| | | requestParams.put("params", params); |
| | | return requestParams; |
| | | } |
| | | |
| | | /** |
| | | * 死亡患者处理 |
| | | * @param liYuanQxdm |
| | | * @param patMedInhosp |
| | | * @return |
| | | */ |
| | | private int deathPatProcess(String liYuanQxdm, PatMedInhosp patMedInhosp){ |
| | | //死亡标记 |
| | | Boolean deathFlag = false; |
| | | //判断病人是否死亡 |
| | | if (ObjectUtils.isNotEmpty(liYuanQxdm) && ("5").equals(liYuanQxdm)) { |
| | | deathFlag = true; |
| | | } |
| | | PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(patMedInhosp.getPatid()); |
| | | if(ObjectUtils.isNotEmpty(patArchive)) { |
| | | patMedInhosp.setInhospstate("1"); |
| | | if (deathFlag) { |
| | | //病人死亡无须随访 |
| | | patMedInhosp.setFuflag("0"); |
| | | //更新病人 notrequiredFlag |
| | | patArchive.setNotrequiredFlag("1"); |
| | | patArchive.setNotrequiredreason("患者已离世"); |
| | | patArchiveMapper.updatePatArchive(patArchive); |
| | | //对已经生成的随访任务进行处理 |
| | | ServiceSubtaskEntity serviceSubtaskVO = new ServiceSubtaskEntity(); |
| | | serviceSubtaskVO.setPatid(patArchive.getId()); |
| | | serviceSubtaskVO.setSendstate(2L); |
| | | List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO); |
| | | for (ServiceSubtask serviceSubtask : serviceSubtaskList) { |
| | | serviceSubtask.setSendstate(4L); |
| | | serviceSubtask.setRemark(serviceSubtask.getRemark() + ";患者已离世,不随访"); |
| | | serviceSubtaskMapper.updateServiceSubtask(serviceSubtask); |
| | | } |
| | | } else { |
| | | return 0; |
| | | } |
| | | }else { |
| | | return -1; |
| | | } |
| | | return 1; |
| | | } |
| | | } |