diff --git a/platform-dal/src/main/java/com/lyms/platform/query/AntExChuQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/AntExChuQuery.java index d35045e..11d1bb0 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/AntExChuQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/AntExChuQuery.java @@ -30,6 +30,9 @@ public class AntExChuQuery extends BaseQuery implements IConvertToNativeQuery { private Date createdTimeStart; private Date createdTimeEnd; + private Date modifiedStart; + private Date modifiedEnd; + //大于修改时间 private Date gteModified; private Date gteCreated; @@ -43,6 +46,22 @@ public class AntExChuQuery extends BaseQuery implements IConvertToNativeQuery { private boolean isOpinion; + public Date getModifiedStart() { + return modifiedStart; + } + + public void setModifiedStart(Date modifiedStart) { + this.modifiedStart = modifiedStart; + } + + public Date getModifiedEnd() { + return modifiedEnd; + } + + public void setModifiedEnd(Date modifiedEnd) { + this.modifiedEnd = modifiedEnd; + } + public Date getCreatedTimeStart() { return createdTimeStart; } @@ -257,6 +276,13 @@ public class AntExChuQuery extends BaseQuery implements IConvertToNativeQuery { c = Criteria.where("created").gte(createdTimeStart).lte(createdTimeEnd); } } + if (null != modifiedStart && modifiedEnd != null) { + if (null != c) { + c = c.where("modified").gte(modifiedStart).lte(modifiedEnd); + } else { + c = Criteria.where("modified").gte(modifiedStart).lte(modifiedEnd); + } + } if (null != gteModified && null != gteCreated) { MongoCondition mongoCondition = new MongoCondition("modified", gteModified, MongoOper.GTE); diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdJbgwInterface.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdJbgwInterface.java index 2199c50..091f495 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdJbgwInterface.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdJbgwInterface.java @@ -1,16 +1,24 @@ package com.lyms.hospitalapi.qhdfy; +import com.lyms.platform.biz.service.AntenatalExaminationService; import com.lyms.platform.biz.service.BasicConfigService; import com.lyms.platform.biz.service.PatientsService; import com.lyms.platform.common.enums.YnEnums; import com.lyms.platform.common.utils.DateUtil; +import com.lyms.platform.common.utils.JsonUtil; import com.lyms.platform.operate.web.utils.CommonsHelper; +import com.lyms.platform.operate.web.utils.FunvCommonUtil; import com.lyms.platform.operate.web.utils.ResolveUtils; import com.lyms.platform.permission.model.Organization; +import com.lyms.platform.permission.model.Users; import com.lyms.platform.permission.service.OrganizationService; +import com.lyms.platform.permission.service.UsersService; +import com.lyms.platform.pojo.AntExChuModel; import com.lyms.platform.pojo.BasicConfig; import com.lyms.platform.pojo.Patients; +import com.lyms.platform.query.AntExChuQuery; import com.lyms.platform.query.PatientsQuery; +import org.apache.commons.collections.MapUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -33,9 +41,13 @@ public class QhdJbgwInterface { private BasicConfigService basicConfigService; @Autowired private OrganizationService organizationService; + @Autowired + private AntenatalExaminationService antExService; + @Autowired + private UsersService usersService; /** - * + *孕产登记 * @param startDate * @param endDate * @return @@ -97,6 +109,214 @@ public class QhdJbgwInterface { } + /** + * 初诊 + * @param startDate + * @param endDate + * @return + */ + public List> getChuZhen(String startDate,String endDate){ + List> mList = new ArrayList>(); + AntExChuQuery antExChuQuery = new AntExChuQuery(); + antExChuQuery.setModifiedStart(DateUtil.parseYMDHMS(startDate)); + antExChuQuery.setModifiedEnd(DateUtil.parseYMDHMS(endDate)); + List list = antExService.queryAntExChu(antExChuQuery); + if(list != null && list.size() > 0){ + Patients patients = patientsService.findOnePatientById(list.get(0).getParentId()); + for(AntExChuModel antExChuModel : list){ + try{ + String cDueWeek = ResolveUtils.getPregnancyWeek(patients.getLastMenses(), antExChuModel.getCheckTime()); + int week = Integer.parseInt(cDueWeek.substring(1, cDueWeek.indexOf("周"))); + int day = Integer.parseInt(cDueWeek.substring(cDueWeek.indexOf("+")+1, cDueWeek.indexOf("天"))); + Map map = new HashMap(); + map.put("MATERNALFIRSTFOLLOWUPID",antExChuModel.getId()); + map.put("MATERNALINFOID",patients.getId()); + map.put("NAME",patients.getUsername()); + map.put("FOLLOWUPDATE",DateUtil.getyyyy_MM_dd(antExChuModel.getCheckTime())); + map.put("GESTWEEKS",String.valueOf(week)); + map.put("GESTDAYS",String.valueOf(day)); + map.put("AGE",DateUtil.getAge(patients.getBirth()).toString()); + map.put("HUSBANDNAME",patients.getHusbandName()); + map.put("HUSBANDTELNO",patients.getHusbandPhone()); + if(patients.getHusbandBirth() != null){ + map.put("HUSBANDAGE",DateUtil.getAge(patients.getHusbandBirth()).toString()); + } + if(patients.getHusbandBirth() != null){ + map.put("HUSBANDBIRTHDAY",DateUtil.getyyyy_MM_dd(patients.getHusbandBirth())); + } + if(antExChuModel.getPregnancyTimes() != null){ + map.put("GRAVIDITY",antExChuModel.getPregnancyTimes().toString()); + } + if(antExChuModel.getDelivery() != null){ + map.put("VAGINALDELIVERYTIMES",antExChuModel.getDelivery().toString()); + } + if(antExChuModel.getPlanedProd() != null){ + map.put("CAESAREANDELIVERYTIMES",antExChuModel.getPlanedProd().toString()); + } + map.put("MENSESLASTDATE",DateUtil.getyyyy_MM_dd(patients.getLastMenses())); + map.put("EXPECTEDCHILDBIRTHDAY",DateUtil.getyyyy_MM_dd(patients.getDueDate())); + if(antExChuModel.getAbortion() != null){ + map.put("ABORTIONTIMES",antExChuModel.getAbortion().toString()); + } + if(antExChuModel.getStillChan() != null){ + map.put("STILLBIRTHNUM",antExChuModel.getStillChan().toString()); + } + if(antExChuModel.getStillbirth() != null){ + map.put("DEADFETUSNUM",antExChuModel.getStillbirth().toString()); + } + if(antExChuModel.getNeoDeath() != null){ + map.put("NEWBORNDEATHNUM",antExChuModel.getNeoDeath().toString()); + } + if(antExChuModel.getBirthDefect() != null){ + map.put("BIRTHDEFECTCOUNT",antExChuModel.getBirthDefect().toString()); + } + map.put("HEIGHT",antExChuModel.getHeight()); + map.put("WEIGHT",antExChuModel.getWeight()); + if(antExChuModel.getHeight() != null && antExChuModel.getWeight() != null){ + Double wh = Double.parseDouble(antExChuModel.getHeight()) / 100; + Double shen = wh * wh; + Double bmi = Double.parseDouble(antExChuModel.getWeight()) / shen; + map.put("BMI",bmi.toString()); + } + String ssy = ""; + String szy = ""; + Map chBpMap = JsonUtil.getMap(antExChuModel.getBp()); + if (MapUtils.isNotEmpty(chBpMap)) { + ssy = chBpMap.get("ssy"); + szy = chBpMap.get("szy"); + } + map.put("SBP",ssy); + map.put("DBP",szy); + if("未见异常".equals(antExChuModel.getLungs())){ + map.put("LUNGABNORMCODE","1"); + map.put("LUNGABNORMDESC",antExChuModel.getLungs()); + }else{ + map.put("LUNGABNORMCODE","2"); + map.put("LUNGABNORMDESC",antExChuModel.getLungs()); + } + if("未见异常".equals(antExChuModel.getHeart())){ + map.put("HEARTABNORMCODE","1"); + map.put("HEARTABNORMDESC",antExChuModel.getHeart()); + }else{ + map.put("HEARTABNORMCODE","2"); + map.put("HEARTABNORMDESC",antExChuModel.getHeart()); + } + if("未见异常".equals(antExChuModel.getVulva())){ + map.put("VULVAABNORMCODE","1"); + map.put("VULVAABNORMDESC",antExChuModel.getVulva()); + }else{ + map.put("VULVAABNORMCODE","2"); + map.put("VULVAABNORMDESC",antExChuModel.getVulva()); + } + if("未见异常".equals(antExChuModel.getVagina())){ + map.put("VAGINAABNORMCODE","1"); + map.put("VAGINAABNORMDESC",antExChuModel.getVagina()); + }else{ + map.put("VAGINAABNORMCODE","2"); + map.put("VAGINAABNORMDESC",antExChuModel.getVagina()); + } + if("未见异常".equals(antExChuModel.getCervical())){ + map.put("CERVIXABNORMCODE","1"); + map.put("CERVIXABNORMDESC",antExChuModel.getCervical()); + }else{ + map.put("CERVIXABNORMCODE","2"); + map.put("CERVIXABNORMDESC",antExChuModel.getCervical()); + } + if("未见异常".equals(antExChuModel.getUterus())){ + map.put("CORPUSUTERIABNORMDODE","1"); + map.put("CORPUSUTERIABNORMDESC",antExChuModel.getUterus()); + }else{ + map.put("CORPUSUTERIABNORMDODE","2"); + map.put("CORPUSUTERIABNORMDESC",antExChuModel.getUterus()); + } + if("未见异常".equals(antExChuModel.getFujian())){ + map.put("ADNEXAABNORMCODE","1"); + map.put("ADNEXAABNORMDESC",antExChuModel.getFujian()); + }else{ + map.put("ADNEXAABNORMCODE","2"); + map.put("ADNEXAABNORMDESC",antExChuModel.getFujian()); + } + map.put("HGB",antExChuModel.getXhdb()); + map.put("WBC",antExChuModel.getBxbjs()); + map.put("PLT",antExChuModel.getPlatelet()); + map.put("CBCOTHERS",antExChuModel.getChgOther()); + map.put("PROQUANTESTVALUE",antExChuModel.getNdb()); + map.put("GLUQUANTESTVALUE",antExChuModel.getNt()); + map.put("UOBTESTRESULTCODE",antExChuModel.getBld()); + map.put("URINEROUTINEOTHER",antExChuModel.getNcgOther()); + map.put("RHCODE",FunvCommonUtil.checkYiGan(antExChuModel.getRh())); + map.put("ABOCODE",FunvCommonUtil.getBaseicConfigByid(antExChuModel.getAbo(), basicConfigService)); + map.put("GLU",antExChuModel.getBloodSugar()); + map.put("SGPT",antExChuModel.getXqgbzam()); + map.put("AST",antExChuModel.getXqgczam()); + map.put("ALB",antExChuModel.getAlbumin()); + map.put("TBI",antExChuModel.getTotalBilirubin()); + if(antExChuModel.getJhBilirubin() != null && antExChuModel.getTotalBilirubin() != null){ + int jh = Integer.parseInt(antExChuModel.getTotalBilirubin()) - Integer.parseInt(antExChuModel.getJhBilirubin()); + map.put("DBIL",String.valueOf(jh)); + } + map.put("BUN",antExChuModel.getXnsd()); + map.put("SCR",antExChuModel.getXqjq()); + map.put("WVDCLEANCODE",null); + map.put("HBEABTESTRESULTCODE",antExChuModel.getYgekt()); + map.put("HBEAGTESTRESULTCODE",antExChuModel.getYgeky()); + map.put("HBSABTESTRESULTCODE",antExChuModel.getYgbmkt()); + map.put("HBSAGTESTRESULTCODE",antExChuModel.getYgbmky()); + map.put("HBCABTESTRESULTCODE",antExChuModel.getYghxkt()); + if("yin".equals(antExChuModel.getSyjg())){ + map.put("STSRESULTCODE","1"); + }else if("yang".equals(antExChuModel.getSyjg())){ + map.put("STSRESULTCODE","2"); + }else{ + map.put("STSRESULTCODE",null); + } + if("yin".equals(antExChuModel.getHivkt())){ + map.put("HIVANTIRESULTCODE","1"); + }else if("yang".equals(antExChuModel.getHivkt())){ + map.put("HIVANTIRESULTCODE","2"); + }else{ + map.put("HIVANTIRESULTCODE",null); + } + map.put("BSCANRESULTDESC",antExChuModel.getbChao()); + map.put("NEXTFOLLOWUPDATE",DateUtil.getyyyy_MM_dd(antExChuModel.getNextCheckTime())); + map.put("FOLLOWUPDOCTORID",antExChuModel.getProdDoctor()); + String checkDoctor = ""; + + if (org.apache.commons.lang.StringUtils.isNotEmpty(antExChuModel.getProdDoctor())) { + Users users = usersService.getUsers(Integer.parseInt(antExChuModel.getProdDoctor())); + if (users != null && users.getYn() == YnEnums.YES.getId()) { + checkDoctor = users.getName(); + } + } + map.put("FOLLOWUPDOCTORNAME",checkDoctor); + String ydfmw = ""; + if (org.apache.commons.lang.StringUtils.isNotEmpty(antExChuModel.getYdfmw())) + + { + Map ydfmwMap = JsonUtil.str2Obj(antExChuModel.getYdfmw(), Map.class); + ydfmw = ResolveUtils.replaceYDFMW(ydfmwMap, 1); + } + map.put("WVDEXAM",ydfmw); + map.put("ORGCODE",patients.getHospitalId()); + String hospital = ""; + if (org.apache.commons.lang.StringUtils.isNotEmpty(patients.getHospitalId())) { + Organization organization = organizationService.getOrganization(Integer.parseInt(patients.getHospitalId())); + if (organization != null && organization.getYn() == YnEnums.YES.getId()) { + hospital = organization.getName(); + } + } + map.put("ORGNAME",hospital); + mList.add(map); + }catch (Exception e){ + e.printStackTrace(); + continue; + } + } + } + + return mList; + } + //民族查询 diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/QhdJbgwController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/QhdJbgwController.java index fc3dd95..915f903 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/QhdJbgwController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/QhdJbgwController.java @@ -31,4 +31,18 @@ public class QhdJbgwController { return null; } + + + + @RequestMapping(method = RequestMethod.POST,value = "/qhd/cz") + @ResponseBody + public List> qhdChuZhen(@RequestBody Map map){ + if(StringUtils.isNotEmpty(map.get("startDate")) && StringUtils.isNotEmpty(map.get("endDate"))){ + return qhdJbgwInterface.getChuZhen(map.get("startDate"),map.get("endDate")); + } + return null; + } + + + } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java index 21e8a88..a2b05a6 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java @@ -2116,7 +2116,7 @@ public class TestController extends BaseController { /** - * 承德智业初诊测试(非第一次产前随访记录) + * 承德智业复诊测试(非第一次产前随访记录) * * @param id * @return