diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyService.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyService.java index dbf67d7..f31ba40 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyService.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyService.java @@ -974,27 +974,52 @@ public class LhxfyService { mongoTemplate.updateFirst(baseQuery1, update1, PreEugenicsBaseModel.class); LogUtil.taskInfo("孕前档案基本信息上传成功"); //上传孕前一般情况4.3 - String result3=HttpClientUtil.doWebServicePost((URL+"/m/antenatalUpload/uploadGeneralSituation") - ,lhxfyUploadingProvince.uploadingProvinceGeneral(preEugenicsBaseModel,KEY,documentId)); - if(StringUtils.isNotEmpty(result3)){ - List list3=JsonUtil.jsonToList(result3, UploadResult.class); - if("0000".equals(list3.get(0).getCode())){ - Query baseQuery3 = Query.query(Criteria.where("id").is(preEugenicsBaseModel.getId())); - Update update3 = new Update().set("isUploadingYn.general", 1);//成功 - mongoTemplate.updateFirst(baseQuery3, update3, PreEugenicsBaseModel.class); - LogUtil.taskInfo("孕前一般情况上传成功"); - }else { - Query baseQuery3 = Query.query(Criteria.where("id").is(preEugenicsBaseModel.getId())); - Update update3 = new Update().set("isUploadingYn.general", 0);//失败 - mongoTemplate.updateFirst(baseQuery3, update3, PreEugenicsBaseModel.class); - LogUtil.error("服务器返回:上传失败,list3。code:" - +list3.get(0).getCode()+";msg:"+list3.get(0).getMsg()+";type:"+list3.get(0).getType(),null); + if(null!=preEugenicsBaseModel.getHusbandBaseInfo()||null!=preEugenicsBaseModel.getWifeBaseInfo()) { + for (int i = 1; i <= 2; i++) {//男女分别上传 + if (i == 1) { + if(null!=preEugenicsBaseModel.getHusbandBaseInfo()) { + preEugenicsBaseModel.setHusbandBaseInfo(new HashMap() {{ + put("sex", "01"); + }}); + }else { + LogUtil.taskInfo("孕前一般情况4.3,(男)没有录入数据略过。"); + break; + } + } else { + if(null!=preEugenicsBaseModel.getWifeBaseInfo()) { + preEugenicsBaseModel.setWifeBaseInfo(new HashMap() {{ + put("sex", "02"); + }}); + }else { + LogUtil.taskInfo("孕前一般情况4.3,(女)没有录入数据略过。"); + break; + } + } + String result3 = HttpClientUtil.doWebServicePost((URL + "/m/antenatalUpload/uploadGeneralSituation") + , lhxfyUploadingProvince.uploadingProvinceGeneral((i == 1) ? preEugenicsBaseModel.getHusbandBaseInfo() : preEugenicsBaseModel.getWifeBaseInfo(), KEY, documentId)); + if (StringUtils.isNotEmpty(result3)) { + List list3 = JsonUtil.jsonToList(result3, UploadResult.class); + if ("0000".equals(list3.get(0).getCode())) { + Query baseQuery3 = Query.query(Criteria.where("id").is(preEugenicsBaseModel.getId())); + Update update3 = new Update().set("isUploadingYn.general" + i, 1);//成功。general1:男,general2:女 + mongoTemplate.updateFirst(baseQuery3, update3, PreEugenicsBaseModel.class); + LogUtil.taskInfo("孕前一般情况上传成功"); + } else { + Query baseQuery3 = Query.query(Criteria.where("id").is(preEugenicsBaseModel.getId())); + Update update3 = new Update().set("isUploadingYn.general" + i, 0);//失败。general1:男,general2:女 + mongoTemplate.updateFirst(baseQuery3, update3, PreEugenicsBaseModel.class); + LogUtil.error("服务器返回:上传失败,list3。code:" + + list3.get(0).getCode() + ";msg:" + list3.get(0).getMsg() + ";type:" + list3.get(0).getType(), null); + } + } else { + Query baseQuery3 = Query.query(Criteria.where("id").is(preEugenicsBaseModel.getId())); + Update update3 = new Update().set("isUploadingYn.general" + i, 0);//失败。general1:男,general2:女 + mongoTemplate.updateFirst(baseQuery3, update3, PreEugenicsBaseModel.class); + LogUtil.taskError("上传异常:result3=HttpClientUtil.doWebServicePost", null); + } } - }else { - Query baseQuery3 = Query.query(Criteria.where("id").is(preEugenicsBaseModel.getId())); - Update update3 = new Update().set("isUploadingYn.general", 0); - mongoTemplate.updateFirst(baseQuery3, update3, PreEugenicsBaseModel.class); - LogUtil.taskError("上传异常:result3=HttpClientUtil.doWebServicePost",null); + }else{ + LogUtil.taskInfo("孕前一般情况4.3,没有录入数据略过。"); } //上传孕前体格检查4.4 String result4=HttpClientUtil.doWebServicePost((URL+"/m/antenatalUpload/uploadPhysicalExamination") diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyUploadingProvince.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyUploadingProvince.java index afbb457..1db688a 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyUploadingProvince.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyUploadingProvince.java @@ -1,6 +1,7 @@ package com.lyms.hospitalapi.lhxfy; import com.lyms.hospitalapi.lhxfy.model.Archives; +import com.lyms.hospitalapi.lhxfy.model.General; import com.lyms.hospitalapi.lhxfy.model.UploadResult; import com.lyms.hospitalapi.lhxfy.model.enums.CardTypeEnums; import com.lyms.hospitalapi.lhxfy.model.enums.CareerEnums; @@ -13,12 +14,15 @@ import com.lyms.platform.common.utils.SystemConfig; import com.lyms.platform.operate.web.facade.AutoMatchFacade; import com.lyms.platform.operate.web.facade.BasicConfigFacade; import com.lyms.platform.operate.web.result.BasicConfigResult; +import com.lyms.platform.operate.web.utils.CollectionUtils; import com.lyms.platform.permission.model.Organization; import com.lyms.platform.permission.service.OrganizationService; import com.lyms.platform.pojo.PreEugenicsBaseModel; +import com.mchange.v2.lang.ObjectUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -171,15 +175,189 @@ public class LhxfyUploadingProvince { return JsonUtil.obj2Str(archives); } //上传孕前一般情况4.3 - public String uploadingProvinceGeneral(PreEugenicsBaseModel baseModel,String key,String documentId){ - Map data=new HashMap<>(); - String json=""; - if (StringUtils.isNotEmpty(json)) - { - List list =JsonUtil.jsonToList(json, UploadResult.class); - System.out.println(list); - } - return JsonUtil.obj2Str(data); + public String uploadingProvinceGeneral(Map baseInfo,String key,String documentId){ + General general = new General(); + general.setKey(key); // 上传密钥 + general.setAntenatalArchivesId(documentId); // 档案id(4.1接口上传成功后返回的档案id) + general.setSex(baseInfo.get("sex").toString()); // 性别 01:男 02: 女 + //没有患有或曾经患过以下疾病(贫血、高血压……精神心理疾患、其他)1:是(没患有) 2:否(患有) + String whether="1"; + if(CollectionUtils.isNotEmpty((List)baseInfo.get("jbs"))){ + whether=((List) baseInfo.get("jbs")).get(0).toString(); + } + general.setWhether(whether.equals("true")?"2":"1"); + general.setAnemia(null); // 疾病-贫血 1:是 2:否 + general.setHypertension(null); // 疾病-高血压 1:是 2:否 + general.setHeartDisease(null); // 疾病-心脏病 1:是 2:否 + general.setDiabetes(null); // 疾病-糖尿病 1:是 2:否 + general.setEpilepsy(null); // 疾病-癫痫 1:是 2:否 + general.setThyroidDisease(null); // 疾病-甲状腺疾病 1:是 2:否 + general.setChronicNephritis(null); // 疾病-慢性肾炎 1:是 2:否 + general.setTumour(null); // 疾病-肿瘤 1:是 2:否 + general.setTuberculosis(null); // 疾病-结核 1:是 2:否 + general.setHepatitisB(null); // 疾病-乙型肝炎 1:是 2:否 + general.setGonorrhea(null); // 疾病-淋病/梅毒/衣原体感染1:是 2:否 + general.setGonorrheaType(null); // 疾病-01:淋病 02:梅毒 03:衣原体感染 + general.setMental(null); // 疾病-精神心理疾患 1:是 2:否 + general.setOther(null); // 疾病-其他 1:是 2:否 + general.setContent(null); // 疾病-其他疾病的名称 + general.setMalformationNothing(null); // 没有患有出生缺陷,如先天畸形、遗传病等1:是(没患有) 2:否(患有) + general.setMalformationYes(null); // 患有出生缺陷,如先天畸形、遗传病等1 :是 2:否 + general.setMalformationContent(null); // 患有出生缺陷的具体内容 + general.setGynecologicalNothing(null); // 未患有以下妇科疾病(妇科疾病相关字段sex为01时不用传,为02时必须传)1:是(未患有) 2:否(患有) + general.setAdnexitis(null); // 妇科疾病-子宫附件炎症1:是 2:否 + general.setInfertile(null); // 妇科疾病-不孕不育症1:是 2:否 + general.setGynecologicalOther(null); // 妇科疾病-其他1:是 2:否 + general.setGynecologicalContent(null); // 其他妇科疾病 + general.setAndrologyNothing(null); // 未患有以下男科疾病(男科疾病相关字段sex为02时不用传,为01时必须传)1:是(未患有) 2:否(患有) + general.setOrchitis(null); // 男科疾病-睾丸炎、附睾炎1:是 2:否 + general.setVaricocele(null); // 男科疾病-精索静脉曲张1:是 2:否 + general.setInfertility(null); // 男科疾病-不育症1:是 2:否 + general.setMumps(null); // 男科疾病-腮腺炎1:是 2:否 + general.setAndrologyOther(null); // 男科疾病-其他1:是 2:否 + general.setAndrologyOtherContent(null); // 其他男性疾病 + general.setMedicationNothing(null); // 目前没有服药1:是(没有服药) 2:否(有服药) + general.setMedicationYes(null); // 目前有服药1:是 2:否 + general.setMedicationType(null); // 目前服药药物类型01:叶酸补充剂 02:维生素补充剂03:补钙药物 04:感冒药05:避孕药 06:抗过敏药07:抗生素 08:抗病毒药09:降压药 10:降糖药11:胰岛素 12:甲亢治疗药物13:甲减治疗药物 14:减肥药 + general.setMedicationContent(null); //目前服药药物名称 + general.setVaccineNothing(null); // 没有注射过疫苗1: 是(没有注射过)2:否(注射过) + general.setRubellaVaccine(null); // 疫苗注射-风疹疫苗1:是 2:否 + general.setHepatitisBVaccine(null); // 疫苗注射-乙肝疫苗1:是 2:否 + general.setVaccineOther(null); // 疫苗注射-其他1:是 2:否 + general.setVaccineContent(null); // 其他疫苗 + general.setContraceptionNothing(null); // 现用避孕措施或目前终止避孕者原避孕措施--从未采用(避孕措施为sex02的相关字段且必传,sex为01时不传这个字段)1:是(从未采用) 2:否(有采用) + general.setIntrauterineDevice(null); // 避孕措施- 宫内节育器1:是 2:否 + general.setSubcutaneousImplant(null); // 避孕措施-皮下埋植剂1:是 2:否 + general.setOralContraceptives(null); // 避孕措施-口服避孕药1:是 2:否 + general.setCondom(null); // 避孕措施-避孕套1:是 2:否 + general.setExternalMedication(null); // 避孕措施-外用药1:是 2:否 + general.setNaturalContraception(null); // 避孕措施-自然避孕1:是 2:否 + general.setContraceptionOther(null); // 避孕措施-其他1:是 2:否 + general.setContraceptionContent(null); // 其他避孕措施 + general.setContraceptionMonth(null); // 避孕措施持续使用时间 单位 月 + general.setTerminationYear(null); // 目前终止避孕者原避孕措施停用时间年份 + general.setTerminationMonth(null); // 目前终止避孕者原避孕措施停用时间月份 + general.setMenarcheAge(null); // 初潮年龄 + general.setLastMenstrual(null); // 末次月经 + general.setMenstrualNothing(null); // 月经周期不规律1:是 2:否 + general.setMenstrualYes(null); // 月经周期规律1:是 2:否 + general.setPeriod(null); // 经期范围开始天数 + general.setEndPeriod(null); // 经期范围结束天数 + general.setCycle(null); // 月经周期范围开始天数 + general.setEndCycle(null); // 月经周期单位结束天数 + general.setMenstrualMany(null); // 月经量多 1:是 2:否 + general.setMenstrualMiddle(null); // 月经量中 1:是 2:否 + general.setMenstrualLess(null); // 月经量少 1:是 2:否 + general.setDysmenorrheaNothing(null); // 痛经-无 1:是 2:否 + general.setDysmenorrheaLight(null); // 痛经-轻 1:是 2:否 + general.setDysmenorrheaHeavy(null); // 痛经-重 1:是 2:否 + general.setPregnantNothing(null); // 曾经没有怀孕1:是(没怀过) 2:否(怀过) + general.setPregnantYes(null); // 曾经有过怀孕 1:是 2:否 + general.setPregnantFrequency(null); // 怀孕次数 + general.setLiveBirth(null); // 活产次数 + general.setTermBirth(null); // 足月产次数 + general.setOverdueOutcome(null); // 过期妊娠次数 + general.setPrematureDelivery(null); // 早产次数 + general.setLastPregnancy(null); // 末次妊娠结局01:正常活产 02:早产03:低出生体重儿 04:出生缺陷儿05:自然流产 06:医学性人工流产07:治疗性引产 08:异位妊娠09:死胎死产 10:胎停育12:意外流产 11:其他 + general.setLastDate(null); // 末次妊娠结局日期 + general.setGestationNothing(null); // 没有以下不良妊娠结局1:是(没有不良妊娠)2:否(有不良妊娠) + general.setStillbirth(null); // 不良妊娠--死胎死产1:有 2:没有 + general.setStillbirthNumber(null); // 不良妊娠--死胎死产次数 + general.setSpontaneousAbortion(null); // 不良妊娠--自然流产1:有 2:没有 + general.setSpontaneousNumber(null); // 自然流产次数 + general.setArtificialAbortion(null); // 不良妊娠--人工流产1:有 2:没有 + general.setArtificialNumber(null); // 人工流产次数 + general.setGestationOther(null); // 不良妊娠--其他1:有 2:没有 + general.setGestationContent(null); // 不良妊娠--其他详细情况 + general.setGestationNumber(null); // 不良妊娠-其他次数 + general.setDefectNothing(null); // 是否有分娩过出生缺陷儿(如畸形儿、遗传病、唐氏综合症、先天智力低下)---无1:是(没有分娩过出生缺陷儿)2:否(分娩过出生缺陷儿) + general.setDefectYes(null); // 是否分娩过出生缺陷儿(如畸形儿、遗传病、唐氏综合症、先天智力低下)---是1:是 2:否 + general.setDiseasesType(null); // 出生缺陷儿--病种类型(具体见附表) + general.setDiseaseSpecies(null); // 出生缺陷儿--病种 + general.setDiseaseSpeciesContent(null); // 出生缺陷儿--病种详细情况 + general.setChildrenNumber(null); // 现在子女数 + general.setCloseRelativesNothing(null); // 夫妻是否有近亲结婚---无1:是(没有近亲结婚)2:否(有近亲结婚) + general.setCloseRelativesYes(null); // 夫妻是否近亲结婚--是1:是 2:否 + general.setSurface(null); // 近亲结婚-表1:是 + general.setHall(null); // 近亲结婚--堂1:是 + general.setRelativesOther(null); // 近亲结婚--其他1:是 + general.setCloseRelativesContent(null); // 近亲结婚--其他血缘关系具体 + general.setConsanguineousNothing(null); // 祖父母/外祖父母/父母两代家族内有无近亲结婚史---无1:是(家族内无近亲结婚史)2:否(家族内有近亲结婚史) + general.setConsanguineousYes(null); // 祖父母/外祖父母/父母两代家族内有近亲结婚史1:是 2:否 + general.setConsanguineousContent(null); // 家族近亲结婚史血缘关系(文字说明) + general.setParent(null); // 家族近亲结婚史血缘关系-父母1:是 2:否 + general.setGrandparent(null); // 家族近亲结婚史血缘关系-祖父母1:是 2:否 + general.setGrandparents(null); // 家族近亲结婚史血缘关系-外祖父母1:是 2:否 + general.setHistoryIllnessNothing(null); // 家族成员是否有人患有以下疾病--无1:是(无人患病)2:否(有人患病) + general.setThalassemia(null); // 家族成员是否有人患有以下疾病--地中海贫血1:是 2:否 + general.setAlbinism(null); // 家族成员是否有人患有以下疾病--白化病1:是 2:否 + general.setHemophilia(null); // 家族成员是否有人患有以下疾病--血友病1:是 2:否 + general.setDeficiency(null); // 家族成员是否有人患有以下疾病--蚕豆病(G6PD缺乏症)1:是 2:否 + general.setCongenital(null); // 家族成员是否有人患有以下疾病--先天性心脏病1:是 2:否 + general.setDownSyndrome(null); // 家族成员是否有人患有以下疾病--唐氏综合征1:是 2:否 + general.setHistoryDiabetes(null); // 家族成员是否有人患有以下疾病--糖尿病1:是 2:否 + general.setCongenitalRetardation(null); // 家族成员是否有人患有以下疾病--先天性智力低下1:是 2:否 + general.setHearingImpairment(null); // 家族成员是否有人患有以下疾病-- 听力障碍(10岁以内发生)1:是 2:否 + general.setVisualImpairment(null); // 家族成员是否有人患有以下疾病-- 视力障碍(10岁以内发生)1:是 2:否 + general.setNewbornDeath(null); // 家族成员是否有人患有以下疾病-- 新生儿或婴幼儿死亡1:是 2:否 + general.setHistoryOther(null); // 家族成员是否有人患有以下疾病-- 其他出生缺陷1:是 2:否 + general.setHistoryOtherContent(null); // 家族成员患有的其他出生缺陷具体 + general.setRelationship(null); // 患有疾病家族成员与本人的血缘关系 + general.setMeatNothing(null); // 是否进食肉、蛋类--否1:是(不进食) 2:否(进食) + general.setMeatYes(null); // 是否进食肉、蛋类--是1:是 2:否 + general.setVegetablesNothing(null); // 是否厌食蔬菜--否1:是(不厌食) 2:否(厌食) + general.setVegetablesYes(null); // 是否厌食蔬菜--是1:是(厌食) 2:否(不厌食) + general.setRawMeatNothing(null); // 是否有食用生肉嗜好--否1:是(不食用) 2:否(食用) + general.setRawMeatYes(null); // 是否有食用生肉嗜好--是1:是 2:否 + general.setSmokeNothing(null); // 是否吸烟--否1:是(不吸烟) 2:否(吸烟) + general.setSmokeYes(null); // 是否吸烟--是1:是 2:否 + general.setSmokeNumber(null); // 吸烟每天多少支 + general.setPassiveSmokeNothing(null); // 是否存在被动吸烟--否1:是(不存在) 2:否(存在) + general.setPassiveSmokeOccasionally(null); // 存在被动吸烟0:偶尔 1:经常 + general.setPassiveSmokeMinute(null); // 平均每天被动吸烟时间 (分钟) + general.setDrinkNothing(null); // 是否饮酒--否1:是(不饮酒) 2:否(饮酒) + general.setDrinkOccasionally(null); // 饮酒频率0:偶尔 1:经常 + general.setDrinkMany(null); // 饮酒每天多少ml + general.setCocaineNothing(null); // 是否使用可卡因等毒麻药品--否1:是(没有使用)2:否(有使用) + general.setCocaineYes(null); // 是否使用可卡因等毒麻药品--是1:是 2:否 + general.setHalitosisNothing(null); // 是否口臭--否1:是(不口臭) 2:否(口臭) + general.setHalitosisYes(null); // 是否口臭--是1:是 2:否 + general.setGumsNothing(null); // 是否牙龈出血--否1:是(不出血) 2:否(出血) + general.setGumsYes(null); // 是否牙龈出血--是1:是 2:否 + general.setFactorNothing(null); // 生活或工作环境是否接触以下因素--否1:是(没有接触)2:否(有接触) + general.setHyperthermia(null); // 接触因素--高温1:有接触 2:没有接触 + general.setNoise(null); // 接触因素--噪音1:有接触 2:没有接触 + general.setOrganicSolvents(null); // 接触因素--有机溶剂(如新装修、油漆)1:有接触 2:没有接触 + general.setRadiation(null); // 接触因素--放射线1:有接触 2:没有接触 + general.setLivestock(null); // 接触因素--密切接触猫狗等家畜、宠物1:有接触 2:没有接触 + general.setShock(null); // 接触因素--震动1:有接触 2:没有接触 + general.setHeavyMetal(null); // 接触因素--重金属(铅、汞等)1:有接触 2:没有接触 + general.setPesticides(null); // 接触因素--重金属(铅、汞等)1:有接触 2:没有接触 + general.setDietOther(null); // 接触因素--其他1:有接触 2:没有接触 + general.setDietOtherContent(null); // 其他接触因素 + general.setPressureNothing(null); // 是否感到生活/工作压力--否1:是(没有感到)2:否(感到压力) + general.setPressureVerySeldom(null); // 感到生活/工作压力0:很少 1:有一点2:比较大 3:很大 + general.setRelationshipNothing(null); // 与亲友、同事的关系是否紧张--否1:是(不紧张) 2:否(紧张) + general.setRelationshipVerySeldom(null); // 与亲友、同事的关系紧张0:很少 1:有一点2:比较大 3:很大 + general.setEconomicsNothing(null); // 是否感到经济压力--否1:是(没有感到)2:否(感到) + general.setEconomicsVerySeldom(null); // 感到经济压力0:很少 1:有一点2:比较大 3:很大 + general.setPregnancyNothing(null); // 是否做好怀孕准备--否1:是(没做好准备)2:否(做好了) + general.setPregnancyYes(null); // 是否做好怀孕准备--是1:是 2:否 + general.setOtherButton(null); // 其他 1:有 2:没有 + general.setOtherContent(null); // 其他描述 + general.setVisitTime(null); // 访问时间 + general.setDocName(null); // 医生签名 + general.setExamination(null); // 是否同步到婚检1:是 2:否 + general.setSurgeryHistoryType(null); // 手术史01:无 02:有 + general.setSurgeryHistory(null); // 手术史详情 + general.setPresentIllnessType(null); // 现病史01:无 02:有 + general.setPresentIllness(null); // 现病史详情 + general.setObstetricalHistoryType(null); // 婚育史01:有 02:无 + general.setDeathSpouse(null); // 丧偶 1:是 2:否 + general.setDivorced(null); // 离异 1:是 2:否 + general.setAbortion(null); // 流产 1:是 2:否 + general.setChildData(null); //子女健康情况(具体参数如下:子女健康情况请求参数) + return JsonUtil.obj2Str(general); } //上传孕前体格检查4.4 public String uploadingProvincePhysiqueCheck(PreEugenicsBaseModel baseModel,String key,String documentId){