diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/BabyEyePatient.java b/platform-dal/src/main/java/com/lyms/platform/pojo/BabyEyePatient.java index 71cd597..55cb489 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/BabyEyePatient.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/BabyEyePatient.java @@ -99,6 +99,16 @@ public class BabyEyePatient { /**===================== 父亲基本信息 ========================*/ private String fName; + /** + * 证件类型Id + */ + private String fcCardTypeId; + + /** + * 证件号 + */ + private String fCardNo; + private String fPhone; private Date fBirth; @@ -217,7 +227,7 @@ public class BabyEyePatient { /** * 新生儿出院诊断 */ - private String ddIds; + private List ddIds; /**=========================== 院内信息 =======================*/ /** @@ -255,6 +265,29 @@ public class BabyEyePatient { */ private String serviceStatus; + public String getFcCardTypeId() { + return fcCardTypeId; + } + + public void setFcCardTypeId(String fcCardTypeId) { + this.fcCardTypeId = fcCardTypeId; + } + + public String getfCardNo() { + return fCardNo; + } + + public void setfCardNo(String fCardNo) { + this.fCardNo = fCardNo; + } + + public String getDiagnosiId() { + return diagnosiId; + } + + public void setDiagnosiId(String diagnosiId) { + this.diagnosiId = diagnosiId; + } public String getmHighRiskFactorId() { return mHighRiskFactorId; @@ -664,11 +697,11 @@ public class BabyEyePatient { this.hospitalizationNum = hospitalizationNum; } - public String getDdIds() { + public List getDdIds() { return ddIds; } - public void setDdIds(String ddIds) { + public void setDdIds(List ddIds) { this.ddIds = ddIds; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyEyePatientServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyEyePatientServiceImpl.java index d3858e0..7a3f6ac 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyEyePatientServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyEyePatientServiceImpl.java @@ -13,8 +13,13 @@ 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.service.BabyEyePatientService; +import com.lyms.platform.operate.web.utils.CollectionUtils; import com.lyms.platform.operate.web.utils.MongoUtil; import com.lyms.platform.permission.dao.master.BabyEyePatientMapper; +import com.lyms.platform.permission.dao.master.CouponMapper; +import com.lyms.platform.permission.dao.slave.UsersMapper; +import com.lyms.platform.permission.model.Users; +import com.lyms.platform.permission.service.OrganizationService; import com.lyms.platform.pojo.BabyEyePatient; import com.lyms.platform.pojo.BabyModel; import com.lyms.platform.pojo.NewbornVisit; @@ -54,6 +59,12 @@ public class BabyEyePatientServiceImpl implements BabyEyePatientService { @Autowired private MongoUtil mongoUtil; + @Autowired + UsersMapper usersMapper; + + @Autowired + private CouponMapper couponMapper; + @Override public BaseObjectResponse init() { List> sex = EnumUtil.toJson(SexEnum.class, "id", "text"); @@ -68,12 +79,6 @@ public class BabyEyePatientServiceImpl implements BabyEyePatientService { "serviceStatus", serviceStatus, "nation", nation, "fmType", fmType); } - public static void main(String[] args) { - - List> sex = EnumUtil.toJson(SexEnum.class, "id", "text"); - System.out.println(sex); - } - @Override public BaseResponse addOrUpdate(Integer userId, BabyEyePatient babyEyePatient) { if(StringUtils.isEmpty(babyEyePatient.getId())) { @@ -99,16 +104,64 @@ public class BabyEyePatientServiceImpl implements BabyEyePatientService { BabyEyePatient babyEyePatient = mongoTemplate.findById(id, BabyEyePatient.class); Map restMap = new HashedMap(); if(babyEyePatient != null) { + /** 儿童基本信息 */ restMap.put("name", babyEyePatient.getName()); restMap.put("sex", StringUtils.isEmpty(babyEyePatient.getSex()) ? "" : SexEnum.getTextById(Integer.parseInt(babyEyePatient.getSex()))); restMap.put("cardNo", babyEyePatient.getCardNo()); restMap.put("nationId", mongoUtil.findName(babyEyePatient.getNationId())); - restMap.put("", babyEyePatient.getBirth()); -// restMap.put("", babyEyePatient.); -// restMap.put("", babyEyePatient.); -// restMap.put("", babyEyePatient.); -// restMap.put("", babyEyePatient.); -// restMap.put("", babyEyePatient.); + restMap.put("birth", DateUtil.getYyyyMmDd(babyEyePatient.getBirth())); + restMap.put("birthDesc", babyEyePatient.getBirthDesc()); + restMap.put("address", mongoUtil.getAddress(babyEyePatient.getProvinceId(), babyEyePatient.getCityId(), babyEyePatient.getAreaId(), babyEyePatient.getStreetId(), babyEyePatient.getAddress())); + restMap.put("zipCode", babyEyePatient.getZipCode()); + /** 母亲基本信息 */ + restMap.put("mName", babyEyePatient.getmName()); + restMap.put("mcCardTypeId", mongoUtil.findName(babyEyePatient.getMcCardTypeId())); /**证件类型*/ + restMap.put("mCardNo", babyEyePatient.getmCardNo()); + restMap.put("mBirth", DateUtil.getYyyyMmDd(babyEyePatient.getmBirth())); + restMap.put("mAge", babyEyePatient.getmAge()); + restMap.put("mPlevelTypeId", mongoUtil.findName(babyEyePatient.getmPlevelTypeId())); /** 文化程度 */ + restMap.put("mProfessionTypeId", mongoUtil.findName(babyEyePatient.getmProfessionTypeId())); /** 职业类别 */ + restMap.put("mPhone", babyEyePatient.getmPhone()); + /** 父亲基本信息 */ + restMap.put("fName", babyEyePatient.getfName()); + restMap.put("fcCardTypeId", mongoUtil.findName(babyEyePatient.getFcCardTypeId())); /**证件类型*/ + restMap.put("fCardNo", babyEyePatient.getfCardNo()); + restMap.put("fBirth", DateUtil.getYyyyMmDd(babyEyePatient.getfBirth())); + restMap.put("fAge", babyEyePatient.getfAge()); + restMap.put("fPlevelTypeId", mongoUtil.findName(babyEyePatient.getfPlevelTypeId())); /** 文化程度 */ + restMap.put("fProfessionTypeId", mongoUtil.findName(babyEyePatient.getfProfessionTypeId())); /** 职业类别 */ + restMap.put("fPhone", babyEyePatient.getfPhone()); + /** 分娩信息 */ + restMap.put("dueDateDesc", babyEyePatient.getDueDateDesc()); + restMap.put("deliveryType", babyEyePatient.getDeliveryType()); + restMap.put("deliveryType2", babyEyePatient.getDeliveryType2()); + if(babyEyePatient.getParityNum() != null && babyEyePatient.getProductNum() != null) { + restMap.put("number", "第" + babyEyePatient.getParityNum() + "胎/第" + babyEyePatient.getProductNum() + "产"); /** 胎产次 */ + + } + restMap.put("weight", babyEyePatient.getWeight()); + restMap.put("length", babyEyePatient.getLength()); + restMap.put("head", babyEyePatient.getHead()); + if(StringUtils.isNotEmpty(babyEyePatient.getApgarOneMin()) && StringUtils.isNotEmpty(babyEyePatient.getApgaFiveMin()) && StringUtils.isNotEmpty(babyEyePatient.getApgaTenMin())) { + restMap.put("apgar", babyEyePatient.getApgarOneMin() + "分-" + babyEyePatient.getApgaFiveMin() + "分-" + babyEyePatient.getApgaTenMin() + "分" ); + } + restMap.put("malformation", babyEyePatient.isMalformation() ? "是" : "否"); + restMap.put("fmHospitalId", couponMapper.getHospitalName(babyEyePatient.getFmHospitalId())); + restMap.put("mHighRiskFactorIds", mongoUtil.findNameList(babyEyePatient.getmHighRiskFactorIds())); + restMap.put("gesell", babyEyePatient.isGesell() ? "是" : "否"); + restMap.put("diagnosiIds", mongoUtil.findNames(babyEyePatient.getDiagnosiIds())); /** 诊断结果 */ + restMap.put("ddIds", mongoUtil.findNameList(babyEyePatient.getDdIds())); + if(StringUtils.isNotEmpty(babyEyePatient.getDoctor())) { + Users users = usersMapper.getUsers(Integer.parseInt(babyEyePatient.getDoctor())); + restMap.put("doctor", users == null ? null : users.getName()); + } + restMap.put("bookBuildingDate", DateUtil.getYyyyMmDd(babyEyePatient.getBookBuildingDate())); + restMap.put("vcCardNo", babyEyePatient.getVcCardNo()); + restMap.put("barCode", babyEyePatient.getBarCode()); + restMap.put("serviceType", mongoUtil.findName(babyEyePatient.getServiceType())); + restMap.put("serviceStatus", mongoUtil.findName(babyEyePatient.getServiceStatus())); + restMap.put("remark", babyEyePatient.getRemark()); + CollectionUtils.removeNullValue(restMap); } return RespBuilder.buildSuccess(restMap); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/CollectionUtils.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/CollectionUtils.java index 461cdf1..87c12ff 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/CollectionUtils.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/CollectionUtils.java @@ -1,5 +1,6 @@ package com.lyms.platform.operate.web.utils; +import org.apache.commons.collections.MapUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.util.Assert; @@ -28,6 +29,19 @@ public class CollectionUtils extends org.apache.commons.collections.CollectionUt return map; } + public static void removeNullValue(Map map) { + if(MapUtils.isNotEmpty(map)) { + Set> entries = map.entrySet(); + Iterator> iterator = entries.iterator(); + while (iterator.hasNext()) { + Map.Entry set = iterator.next(); + if(set.getValue() == null) { + iterator.remove(); + } + } + } + } + /** * 合并两个集合中 key 相同的数据 为一行 * 以第一个集合为主 diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MongoUtil.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MongoUtil.java index ffec819..e525d05 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MongoUtil.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MongoUtil.java @@ -6,6 +6,7 @@ import com.lyms.platform.pojo.BasicConfig; import com.lyms.platform.pojo.Patients; import com.mongodb.BasicDBObject; import com.mongodb.DBObject; +import org.apache.commons.collections.map.HashedMap; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.query.BasicQuery; @@ -45,6 +46,16 @@ public class MongoUtil { return list; } + public String getAddress(String provinceId, String cityId, String areaId, String streetId, String address) { + StringBuilder sb = new StringBuilder(); + sb.append(findName(provinceId)) + .append(findName(cityId)) + .append(findName(areaId)) + .append(findName(streetId)) + .append(address); + return sb.toString().replaceAll("null", ""); + } + /** * 按照月份、省市区统计总数 * 详见原型图建册人数统计 @@ -215,4 +226,21 @@ public class MongoUtil { } return names; } + + public List> findNameList(List ids) { + if(CollectionUtils.isNotEmpty(ids)) { + return null; + } + List> rest = new ArrayList<>(); + for (String id : ids) { + BasicConfig basicConfig = findBasicConfigById(id); + if(basicConfig != null) { + Map tempMap = new HashedMap(); + tempMap.put("id", basicConfig.getId()); + tempMap.put("name", basicConfig.getName()); + rest.add(tempMap); + } + } + return rest; + } }