diff --git a/platform-common/src/main/java/com/lyms/platform/common/enums/FetalEnums.java b/platform-common/src/main/java/com/lyms/platform/common/enums/FetalEnums.java index 4c5e357..7c1218b 100644 --- a/platform-common/src/main/java/com/lyms/platform/common/enums/FetalEnums.java +++ b/platform-common/src/main/java/com/lyms/platform/common/enums/FetalEnums.java @@ -1,5 +1,7 @@ package com.lyms.platform.common.enums; +import org.apache.commons.lang.StringUtils; + /** * 胎先露 * @@ -10,6 +12,18 @@ public enum FetalEnums { B("臀","2"), C("足","3"), D("肩","4"); + + public static String getTitle(String id){ + if (StringUtils.isNotEmpty(id)){ + for (FetalEnums fetalEnums:FetalEnums.values()){ + if (fetalEnums.getId().equals(id)){ + return fetalEnums.getName(); + } + } + } + return null; + } + private FetalEnums(String name,String id){ this.name=name; this.id=id; diff --git a/platform-common/src/main/java/com/lyms/platform/common/enums/FetalPositionEnums.java b/platform-common/src/main/java/com/lyms/platform/common/enums/FetalPositionEnums.java index 961d99c..f69253f 100644 --- a/platform-common/src/main/java/com/lyms/platform/common/enums/FetalPositionEnums.java +++ b/platform-common/src/main/java/com/lyms/platform/common/enums/FetalPositionEnums.java @@ -1,5 +1,7 @@ package com.lyms.platform.common.enums; +import org.apache.commons.lang.StringUtils; + /** * * 胎方位枚举 @@ -32,6 +34,18 @@ public enum FetalPositionEnums { ONE22("右肩前","22"), ONE23("右肩后","23"); + public static String getTitle(String id){ + if (StringUtils.isNotEmpty(id)){ + for (FetalPositionEnums fetalPositionEnums:FetalPositionEnums.values()){ + if (fetalPositionEnums.getId().equals(id)){ + return fetalPositionEnums.getName(); + } + } + } + return null; + } + + private FetalPositionEnums(String name,String id){ this.name=name; this.id=id; diff --git a/platform-common/src/main/java/com/lyms/platform/common/enums/JoinEnums.java b/platform-common/src/main/java/com/lyms/platform/common/enums/JoinEnums.java index 69115ba..b77f88e 100644 --- a/platform-common/src/main/java/com/lyms/platform/common/enums/JoinEnums.java +++ b/platform-common/src/main/java/com/lyms/platform/common/enums/JoinEnums.java @@ -1,5 +1,7 @@ package com.lyms.platform.common.enums; +import org.apache.commons.lang.StringUtils; + /** * 衔接枚举 *

@@ -10,6 +12,17 @@ public enum JoinEnums { O1("未衔接", "2")/*, O2("衔接", "3")*/; + public static String getTitle(String id){ + if (StringUtils.isNotEmpty(id)){ + for (JoinEnums joinEnums:JoinEnums.values()){ + if (joinEnums.getId().equals(id)){ + return joinEnums.getName(); + } + } + } + return null; + } + private JoinEnums(String name, String id) { this.name = name; this.id = id; diff --git a/platform-common/src/main/java/com/lyms/platform/common/enums/TaiShuEnums.java b/platform-common/src/main/java/com/lyms/platform/common/enums/TaiShuEnums.java index e4ce0a2..dded4f2 100644 --- a/platform-common/src/main/java/com/lyms/platform/common/enums/TaiShuEnums.java +++ b/platform-common/src/main/java/com/lyms/platform/common/enums/TaiShuEnums.java @@ -16,9 +16,11 @@ public enum TaiShuEnums { O6("七胎","7"); public static String getTitle(String id){ - for(TaiShuEnums enums:values()){ - if(enums.getId().equals(id)){ - return enums.getName(); + if (StringUtils.isNotEmpty(id)){ + for(TaiShuEnums enums:values()){ + if(enums.getId().equals(id)){ + return enums.getName(); + } } } return null; diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/AntenatalExaminationController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/AntenatalExaminationController.java index 97b416d..e6253d1 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/AntenatalExaminationController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/AntenatalExaminationController.java @@ -18,10 +18,7 @@ import com.lyms.platform.operate.web.request.*; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -252,4 +249,20 @@ public class AntenatalExaminationController extends BaseController { } return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg(ErrorCodeConstants.SUCCESS_DESCRIPTION); } + + + //查询初诊接口 + + //查询复诊接口 + @RequestMapping(method = RequestMethod.GET, value = "/findAntenatalExamination") +// @TokenRequired + public BaseResponse findAntenatalExamination(@RequestParam("id")String id, + HttpServletRequest request){ + + return null; + } + + + + } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java index eac0bff..a7d0df9 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java @@ -2,11 +2,12 @@ package com.lyms.platform.operate.web.facade; import com.lyms.platform.biz.service.*; import com.lyms.platform.common.constants.ErrorCodeConstants; -import com.lyms.platform.common.enums.RiskDefaultTypeEnum; -import com.lyms.platform.common.enums.YnEnums; +import com.lyms.platform.common.enums.*; import com.lyms.platform.common.result.BaseListResponse; +import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.common.result.BaseResponse; import com.lyms.platform.common.utils.*; +import com.lyms.platform.common.utils.StringUtils; import com.lyms.platform.operate.web.request.AntExManagerQueryRequest; import com.lyms.platform.operate.web.request.CjStatisticsQueryRequest; import com.lyms.platform.operate.web.result.AntExManagerResult; @@ -14,6 +15,8 @@ import com.lyms.platform.operate.web.result.CjStatisticsListResult; import com.lyms.platform.operate.web.result.CjStatisticsResult; import com.lyms.platform.operate.web.result.HighScoreResult; import com.lyms.platform.operate.web.utils.CommonsHelper; +import com.lyms.platform.operate.web.utils.FunvCommonUtil; +import com.lyms.platform.operate.web.utils.UnitConstants; import com.lyms.platform.permission.model.Organization; import com.lyms.platform.permission.model.OrganizationQuery; import com.lyms.platform.permission.model.Users; @@ -22,6 +25,8 @@ import com.lyms.platform.permission.service.UsersService; import com.lyms.platform.pojo.*; import com.lyms.platform.query.*; import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.collections.MapUtils; +import org.apache.commons.lang.*; import org.apache.commons.lang.math.NumberUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Sort; @@ -567,4 +572,144 @@ public class AntExRecordFacade { } } + + + //查询复诊接口 + public BaseObjectResponse findAntenatalExamination(String id){ + + BaseObjectResponse br = new BaseObjectResponse(); + if (org.apache.commons.lang.StringUtils.isEmpty(id)){ + br.setErrorcode(ErrorCodeConstants.PARAMETER_ERROR); + br.setErrormsg("id为空"); + return br; + } + + AntenatalExaminationModel data = antExService.findOneById(id); + if (data==null || data.getYn()==YnEnums.NO.getId()){ + br.setErrorcode(ErrorCodeConstants.NO_DATA); + br.setErrormsg("没有查询到数据"); + return br; + } + + + if (org.apache.commons.lang.StringUtils.isEmpty(data.getParentId())){ + br.setErrorcode(ErrorCodeConstants.PARAMETER_ERROR); + br.setErrormsg("数据异常"); + return br; + } + + Patients patients = patientsService.findOnePatientById(data.getParentId()); + if (patients==null || patients.getYn()==YnEnums.NO.getId()){ + br.setErrorcode(ErrorCodeConstants.PARAMETER_ERROR); + br.setErrormsg("孕妇信息不存在"); + return br; + } + + Map map= new HashMap<>(); + /* 基本信息 */ + //孕妇基本信息 + map.put("id",data.getId()); + map.put("username",patients.getUsername()); + map.put("birth",DateUtil.getyyyy_MM_dd(patients.getBirth())); + map.put("age",DateUtil.getAge(patients.getBirth())); + map.put("phone",patients.getPhone()); + map.put("fmWeek",patients.getFmWeek()); + map.put("dueDate",DateUtil.getyyyy_MM_dd(patients.getDueDate())); + map.put("mremark",patients.getMremark()); + map.put("oRiskFactor",patients.getoRiskFactor()); + map.put("riskScore",patients.getRiskScore()); + //产检基本信息 + map.put("checkDate",DateUtil.getyyyy_MM_dd(data.getCheckDate())); + map.put("currentDueDate",data.getCurrentDueDate()); + map.put("checkDoctor", data.getCheckDoctor()); + String hospital = ""; + if (org.apache.commons.lang.StringUtils.isNotEmpty(data.getHospitalId())){ + Organization organization = organizationService.getOrganization(Integer.parseInt(data.getHospitalId())); + if (organization!=null && organization.getYn()==YnEnums.YES.getId()){ + hospital = organization.getName(); + } + } + map.put("hospital", hospital); + map.put("nextCheckTime",DateUtil.getyyyy_MM_dd(data.getNextCheckTime())); + map.put("cDueWeek", data.getcDueWeek()); + + /* 复诊信息 */ + map.put("chiefComplaint", data.getChiefComplaint()); + map.put("weight", unitSplice(data.getWeight(),UnitConstants.KG)); + // 血压 + String ssy = ""; + String szy = ""; + Map chBpMap = JsonUtil.getMap(data.getBp()); + if (MapUtils.isNotEmpty(chBpMap)) { + ssy = chBpMap.get("ssy"); + szy = chBpMap.get("szy"); + } + map.put("bp", unitSplice(ssy + "/" + szy , UnitConstants.MMHG)); + map.put("gongGao", unitSplice(data.getGongGao(),UnitConstants.CM)); + map.put("abdominalCircumference", unitSplice(data.getAbdominalCircumference(),UnitConstants.CM)); + map.put("edema",""); + map.put("tireNumber", TaiShuEnums.getTitle(data.getTireNumber())); + //胎儿情况 + List tireList = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(data.getTireData())){ + for (Object temp : data.getTireData()){ + Map tire = JsonUtil.getMap(temp.toString()); + String heartRate = tire.get("heartRate"); + String fetalPosition = tire.get("fetalPosition"); + String fetalPresentation = tire.get("fetalPresentation"); + String join = tire.get("join"); + + Map tireMap = new HashMap<>(); + tireMap.put("heartRate",unitSplice(heartRate,UnitConstants.CIFEN)); + tireMap.put("fetalPosition", FetalPositionEnums.getTitle(fetalPosition)); + tireMap.put("fetalPresentation", FetalEnums.getTitle(fetalPresentation)); + tireMap.put("join", JoinEnums.getTitle(join)); + tireList.add(tireMap); + } + } + map.put("tireData",tireList); + + /* 辅助信息 */ + map.put("hemoglobin",unitSplice(data.getHemoglobin(),UnitConstants.GL)); + map.put("urineProtein",data.getUrineProtein()); + map.put("bloodSugar",unitSplice(data.getUrineProtein(),UnitConstants.MMOLL)); + map.put("bChao",data.getbChao());//TODO ????? + + /* 诊断指导 */ + String diagnosis = ""; + if (org.apache.commons.lang.StringUtils.isNotEmpty(data.getDiagnosis())){ + List temp = JsonUtil.toList(data.getDiagnosis(), String.class); + if (CollectionUtils.isNotEmpty(temp)){ + + StringBuilder sb = new StringBuilder(); + + for (String sId : temp){ + sb.append(FunvCommonUtil.getBaseicConfigByid(sId, basicConfigService)).append(","); + } + if (sb.toString().endsWith(",")) { + diagnosis = sb.substring(0, sb.length() - 1); + }else { + diagnosis = sb.toString(); + } + } + } + map.put("diagnosis",diagnosis); + + + br.setErrorcode(ErrorCodeConstants.SUCCESS); + br.setErrormsg("成功"); + br.setData(map); + return br; + } + + //拼接单位 + public String unitSplice(Object data,String unit){ + if (data==null){ + return null; + } + return data.toString() + unit; + } + + + } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java index 17d56e7..099badb 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java @@ -1541,6 +1541,9 @@ public class MatDeliverFacade { return newBabyManagerResult; } + @Autowired + private CommonService commonService; + public BaseObjectResponse findMatDeliverData(String id){ BaseObjectResponse br = new BaseObjectResponse(); @@ -1582,7 +1585,20 @@ public class MatDeliverFacade { map.put("fmWeek",patients.getFmWeek()); map.put("dueDate",DateUtil.getyyyy_MM_dd(patients.getDueDate())); map.put("mremark",patients.getMremark()); - map.put("oRiskFactor",patients.getoRiskFactor()); + + String riskFactor = ""; + if (StringUtils.isNotEmpty(patients.getoRiskFactor())){ + riskFactor = patients.getoRiskFactor(); + } + + if (CollectionUtils.isNotEmpty(patients.getRiskFactorId())){ + if (StringUtils.isEmpty(riskFactor)){ + riskFactor = commonService.resloveFactor(patients.getRiskFactorId()); + }else { + riskFactor = riskFactor + "," + commonService.resloveFactor(patients.getRiskFactorId()); + } + } + map.put("oRiskFactor",riskFactor); map.put("riskLevel", FunvCommonUtil.getBaseicConfigByid(patients.getRiskLevelId(),basicConfigService)); map.put("riskScore",patients.getRiskScore()); @@ -1612,11 +1628,7 @@ public class MatDeliverFacade { map.put("deliverDoctor", deliverDoctor); /* 分娩信息 */ - String tireNumber = ""; - if (data.getTireNumber()!=null){ - - } - map.put("tireNumber", tireNumber);//胎数 + map.put("tireNumber", TaiShuEnums.getTitle(data.getTireNumber() + ""));//胎数 map.put("placenta", data.getPlacenta());//胎盘 List> placetaList = new ArrayList<>(); @@ -1789,7 +1801,7 @@ public class MatDeliverFacade { ExtPlacentaList.add(extMap); } } - map.put("ExtPlacentaList", ExtPlacentaList); + map.put("extPlacentas", ExtPlacentaList); //新生儿信息 @@ -1825,7 +1837,7 @@ public class MatDeliverFacade { } } - map.put("babyList", babyList); + map.put("baby", babyList); br.setErrorcode(ErrorCodeConstants.SUCCESS); br.setErrormsg("成功"); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/UnitConstants.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/UnitConstants.java new file mode 100644 index 0000000..e0d7b37 --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/UnitConstants.java @@ -0,0 +1,19 @@ +package com.lyms.platform.operate.web.utils; + +/** + * + * 单位常量,用以返回值拼接 + * + * Created by Administrator on 2017/1/11 0011. + */ +public class UnitConstants { + + public static final String CM = " cm"; + public static final String KG = " kg"; + public static final String MMHG = " mmHg"; + public static final String CIFEN = " 次/分"; + public static final String GL = " g/L"; + public static final String MMOLL = " mmol/L"; + + +}