diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/CommonRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/CommonRequest.java index d96ff23..5ddc17b 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/CommonRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/CommonRequest.java @@ -28,6 +28,19 @@ public class CommonRequest implements Serializable, Cloneable { */ private String mataFollowId; + /** + * 1 孕妇建档 2 妇女建档 3 叶酸建档 + */ + private String type; + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + public CommonRequest clone() throws CloneNotSupportedException { CommonRequest clone = (CommonRequest) super.clone(); String cardNo = clone.getCardNo(); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/CommonServerImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/CommonServerImpl.java index d92744a..a7d967f 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/CommonServerImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/CommonServerImpl.java @@ -22,7 +22,13 @@ import com.lyms.platform.operate.web.request.PatientBaseInfoRequest; import com.lyms.platform.operate.web.service.ICommonServer; import com.lyms.platform.operate.web.utils.CollectionUtils; import com.lyms.platform.operate.web.utils.CommonsHelper; +import com.lyms.platform.permission.dao.master.FolviteMapper; +import com.lyms.platform.permission.dao.master.FolviteReceiveMapper; +import com.lyms.platform.permission.model.FolviteQuery; +import com.lyms.platform.permission.model.FolviteRecordQuery; import com.lyms.platform.pojo.BasicConfig; +import com.lyms.platform.pojo.FolviteReceiveRecordModel; +import com.lyms.platform.pojo.FolviteRecordModel; import com.lyms.platform.pojo.MaternalDeliverModel; import com.lyms.platform.pojo.Patients; import com.lyms.platform.pojo.PersonModel; @@ -42,6 +48,9 @@ public class CommonServerImpl implements ICommonServer { @Autowired private BasicConfigService basicConfigService; + @Autowired + private FolviteMapper folviteMapper; + private static final Logger log = LoggerFactory.getLogger(CommonServerImpl.class); /** @@ -135,10 +144,11 @@ public class CommonServerImpl implements ICommonServer { public BaseResponse baseInfoByKeyword(CommonRequest param) { PatientBaseInfoRequest result = new PatientBaseInfoRequest(); String cardNo = param.getCardNo(); + String type = param.getType(); + // 身份证号 if (StringUtils.isNotEmpty(cardNo)) { - getResultByCardNo(result, cardNo); - + getResultByCardNo(result, cardNo, type); } @@ -147,7 +157,7 @@ public class CommonServerImpl implements ICommonServer { if (StringUtils.isNotEmpty(pid)) { PersonModel personModel = mongoTemplate.findOne(Query.query(Criteria.where("id").is(pid)), PersonModel.class); if (personModel != null) { - getResultByCardNo(result, personModel.getCardNo()); + getResultByCardNo(result, personModel.getCardNo(), type); } } @@ -156,7 +166,7 @@ public class CommonServerImpl implements ICommonServer { if (StringUtils.isNotEmpty(womenId)) { ResidentsArchiveModel archiveModel = mongoTemplate.findOne(Query.query(Criteria.where("id").is(womenId)), ResidentsArchiveModel.class); if (archiveModel != null) { - getResultByCardNo(result, archiveModel.getCertificateNum()); + getResultByCardNo(result, archiveModel.getCertificateNum(), type); } } BaseResponse baseResponse = new BaseResponse(); @@ -170,41 +180,69 @@ public class CommonServerImpl implements ICommonServer { * @param result * @param cardNo */ - private void getResultByCardNo(PatientBaseInfoRequest result, String cardNo) { + private void getResultByCardNo(PatientBaseInfoRequest result, String cardNo, String type) { // 孕妇 - PersonModel personModel = mongoTemplate.findOne(Query.query(Criteria.where("cardNo").is(cardNo)), PersonModel.class); - if (personModel != null) { - result.setName(personModel.getName()); - result.setPhone(personModel.getPhone()); - Date birth = personModel.getBirth(); - if (birth != null) { - result.setBirth(DateUtil.getyyyy_MM_dd(personModel.getBirth())); - result.setAge(DateUtil.getAge(birth).toString()); + if ("1".equals(type)) { + PersonModel personModel = mongoTemplate.findOne(Query.query(Criteria.where("cardNo").is(cardNo)), PersonModel.class); + if (personModel != null) { + result.setName(personModel.getName()); + result.setPhone(personModel.getPhone()); + Date birth = personModel.getBirth(); + if (birth != null) { + result.setBirth(DateUtil.getyyyy_MM_dd(personModel.getBirth())); + result.setAge(DateUtil.getAge(birth).toString()); + } + result.setCardNo(cardNo); + List patients = mongoTemplate.find(Query.query(Criteria.where("pid").is(personModel.getId())).with(new Sort(Sort.Direction.DESC, "created")), Patients.class); + if (CollectionUtils.isNotEmpty(patients)) { + Patients patient = patients.get(0); + String addressStr = CommonsHelper.getResidence(patient.getAddressRegister(), patient.getProvinceRegisterId(), patient.getCityRegisterId(), + patient.getAreaRegisterId(), patient.getStreetRegisterId(), basicConfigService); + result.setAddressStr(addressStr); + } } - result.setCardNo(cardNo); - List patients = mongoTemplate.find(Query.query(Criteria.where("pid").is(personModel.getId())).with(new Sort(Sort.Direction.DESC, "created")), Patients.class); - if (CollectionUtils.isNotEmpty(patients)) { - Patients patient = patients.get(0); - String addressStr = CommonsHelper.getResidence(patient.getAddressRegister(), patient.getProvinceRegisterId(), patient.getCityRegisterId(), - patient.getAreaRegisterId(), patient.getStreetRegisterId(), basicConfigService); + } + + + // 妇女 + if ("2".equals(type)) { + ResidentsArchiveModel certificateNumModel = mongoTemplate.findOne(Query.query(Criteria.where("certificateNum").is(cardNo)), ResidentsArchiveModel.class); + if (certificateNumModel != null) { + result.setName(certificateNumModel.getUsername()); + result.setPhone(certificateNumModel.getPhone()); + Date birthday = certificateNumModel.getBirthday(); + if (birthday != null) { + result.setBirth(DateUtil.getyyyy_MM_dd(birthday)); + result.setAge(DateUtil.getAge(birthday).toString()); + } + result.setCardNo(cardNo); + String addressStr = CommonsHelper.getResidence(certificateNumModel.getProvinceId(), certificateNumModel.getCityId(), certificateNumModel.getAreaId(), + certificateNumModel.getStreetId(), certificateNumModel.getAddress(),basicConfigService); result.setAddressStr(addressStr); } } - // 妇女 - ResidentsArchiveModel certificateNumModel = mongoTemplate.findOne(Query.query(Criteria.where("certificateNum").is(cardNo)), ResidentsArchiveModel.class); - if (certificateNumModel != null) { - result.setName(certificateNumModel.getUsername()); - result.setPhone(certificateNumModel.getPhone()); - Date birthday = certificateNumModel.getBirthday(); - if (birthday != null) { - result.setBirth(DateUtil.getyyyy_MM_dd(birthday)); - result.setAge(DateUtil.getAge(birthday).toString()); + // 叶酸建档 + if ("3".equals(type)) { + FolviteQuery query = new FolviteQuery(); + query.setCardNo(cardNo); + query.setSort("created desc"); + List folviteRecordModels = folviteMapper.queryList(query); + if (CollectionUtils.isNotEmpty(folviteRecordModels)) { + FolviteRecordModel folviteRecordModel = folviteRecordModels.get(0); + result.setName(folviteRecordModel.getName()); + Date birthday = folviteRecordModel.getBirthday(); + if (birthday != null) { + result.setBirth(DateUtil.getyyyy_MM_dd(birthday)); + result.setAge(DateUtil.getAge(birthday).toString()); + } + result.setCardNo(cardNo); + String addressStr = CommonsHelper.getResidence(folviteRecordModel.getHabitationProvince(), folviteRecordModel.getHabitationCity(), + folviteRecordModel.getHabitationArea(), folviteRecordModel.getHabitationCountry(), folviteRecordModel.getHabitationAddress(), basicConfigService); + result.setAddressStr(addressStr); } - result.setCardNo(cardNo); - String addressStr = CommonsHelper.getResidence(certificateNumModel.getProvinceId(), certificateNumModel.getCityId(), certificateNumModel.getAreaId(), - certificateNumModel.getStreetId(), certificateNumModel.getAddress(),basicConfigService); - result.setAddressStr(addressStr); + } + } }