diff --git a/platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java b/platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java index 0df1578..a79d69a 100644 --- a/platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java +++ b/platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java @@ -12,6 +12,7 @@ public class DateUtil { private static Lock lock = new ReentrantLock(); public static SimpleDateFormat dd = new SimpleDateFormat("dd"); public static SimpleDateFormat yyyy = new SimpleDateFormat("yyyy"); + public static SimpleDateFormat yyyyMM = new SimpleDateFormat("yyyyMM"); public static SimpleDateFormat ymd = new SimpleDateFormat("yyyyMMdd"); public static SimpleDateFormat y_m_d = new SimpleDateFormat("yyyy-MM-dd"); public static SimpleDateFormat y_m = new SimpleDateFormat("yyyy年MM月"); @@ -541,6 +542,16 @@ public class DateUtil { return null; } } + public static String getYyyyMM(Date d) { + if (d == null) { + return null; + } + try { + return yyyyMM.format(d); + } catch (Exception e) { + return null; + } + } public static String getyyyy_MM_dd1(Date d) { if (d == null) { diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/BoneModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/BoneModel.java index a9f9c52..417db28 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/BoneModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/BoneModel.java @@ -58,13 +58,22 @@ public class BoneModel extends BaseModel { //骨生理年龄 private Double age; - //0 孕前 1 儿童 private Integer type; + //0正常 1骨质减少 2 骨质疏松 + private Integer result; private String cardNo; + public Integer getResult() { + return result; + } + + public void setResult(Integer result) { + this.result = result; + } + public String getId() { return id; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java index a022dfc..fb8f243 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java @@ -188,6 +188,16 @@ public class ResidentsArchiveModel extends BaseModel { private String trackHospitalId; + private Long code; + + public Long getCode() { + return code; + } + + public void setCode(Long code) { + this.code = code; + } + public String getTrackHospitalId() { return trackHospitalId; } diff --git a/platform-dal/src/main/java/com/lyms/platform/query/BabyModelQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/BabyModelQuery.java index 42a7862..26f88f7 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/BabyModelQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/BabyModelQuery.java @@ -106,6 +106,7 @@ public class BabyModelQuery extends BaseQuery implements IConvertToNativeQuery { //母亲证件号 private String mcertNo; + private String mcertNoEnd; //就诊卡号 private String vcCardNo; @@ -968,6 +969,9 @@ public class BabyModelQuery extends BaseQuery implements IConvertToNativeQuery { if (!StringUtils.isEmpty(mcertNo)) { condition = condition.and("mcertNo", mcertNo, MongoOper.IS); } + if (!StringUtils.isEmpty(mcertNoEnd)) { + condition = condition.and("mcertNo", "^"+mcertNoEnd, MongoOper.LIKE); + } if (!StringUtils.isEmpty(cardNo)) { condition = condition.and("cardNo", cardNo, MongoOper.IS); } diff --git a/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java index 8958fb9..6ced10e 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java @@ -183,6 +183,7 @@ public class PatientsQuery extends BaseQuery implements IConvertToNativeQuery { * 身份证号码 */ private String cardNo; + private String cardNoEnd; private Date birth; @@ -370,6 +371,14 @@ public class PatientsQuery extends BaseQuery implements IConvertToNativeQuery { private String trackHospitalId; + public String getCardNoEnd() { + return cardNoEnd; + } + + public void setCardNoEnd(String cardNoEnd) { + this.cardNoEnd = cardNoEnd; + } + public String getTrackHospitalId() { return trackHospitalId; } @@ -671,6 +680,10 @@ public class PatientsQuery extends BaseQuery implements IConvertToNativeQuery { condition = condition.and("cardNo", cardNo, MongoOper.IS); } + if (StringUtils.isNotEmpty(cardNoEnd)) { + condition = condition.and("cardNo", "^" + cardNoEnd, MongoOper.LIKE); + + } if (null != vcCardNos) { condition = condition.and("vcCardNo", vcCardNos, MongoOper.IN); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BoneController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BoneController.java index 3459f79..55b0526 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BoneController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BoneController.java @@ -28,7 +28,7 @@ public class BoneController extends BaseController { /** * 添加骨密度 * @param request - * @param BoneModel + * @param BoneModel type 0孕妇 1儿童 * @return */ @ResponseBody @@ -43,7 +43,7 @@ public class BoneController extends BaseController { * 骨密度报告 * @param request * @param httpServletResponse - * @param type + * @param type 0孕妇 1儿童 * @param id * @return */ @@ -62,6 +62,7 @@ public class BoneController extends BaseController { /** * 骨密度测量列表 * @param request + * @param type 0孕妇 1儿童 * @return */ @TokenRequired @@ -69,15 +70,15 @@ public class BoneController extends BaseController { @RequestMapping(value = "/queryBoneList", method = RequestMethod.GET) public BaseResponse queryAmniocentesisList(HttpServletRequest request, @RequestParam(required = false) String queryNo, - @RequestParam(required = false) Integer weekStart, - @RequestParam(required = false) Integer weekEnd, + @RequestParam(required = false) Integer start, + @RequestParam(required = false) Integer end, @RequestParam(required = false) Integer age, @RequestParam(required = false) Integer type, @RequestParam(required = true) Integer page, @RequestParam(required = true) Integer limit, @RequestParam(required = false) String vcCardNo) { - return BoneFacade.queryBoneList(queryNo, weekStart, weekEnd, age, vcCardNo, type, page, limit, getUserId(request)); + return BoneFacade.queryBoneList(queryNo, start, end, age, vcCardNo, type, page, limit, getUserId(request)); } } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BoneFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BoneFacade.java index 018bce7..6db5be3 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BoneFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BoneFacade.java @@ -1,19 +1,24 @@ package com.lyms.platform.operate.web.facade; +import com.lyms.platform.biz.service.BabyBookbuildingService; import com.lyms.platform.biz.service.BasicConfigService; import com.lyms.platform.biz.service.BoneService; import com.lyms.platform.biz.service.PatientsService; import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.dao.BaseQuery; +import com.lyms.platform.common.enums.SexEnum; import com.lyms.platform.common.enums.YnEnums; 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.DateUtil; import com.lyms.platform.operate.web.utils.FunvCommonUtil; +import com.lyms.platform.pojo.BabyModel; import com.lyms.platform.pojo.BoneModel; +import com.lyms.platform.pojo.MicroelementModel; import com.lyms.platform.pojo.Patients; +import com.lyms.platform.query.BabyModelQuery; import com.lyms.platform.query.BoneQuery; import com.lyms.platform.query.PatientsQuery; import org.apache.commons.collections.CollectionUtils; @@ -47,77 +52,141 @@ public class BoneFacade { private PatientsService patientsService; @Autowired - private MongoTemplate mongoTemplate; + private BabyBookbuildingService babyBookbuildingService; - public BaseResponse queryBoneList(String queryNo, Integer weekStart, Integer weekEnd, Integer age, String vcCardNo,Integer type ,Integer page, Integer limit, Integer userId) { + public BaseResponse queryBoneList(String queryNo, Integer start, Integer end, Integer age, String vcCardNo,Integer type ,Integer page, Integer limit, Integer userId) { List dataList = new ArrayList(); String hospitalId = autoMatchFacade.getHospitalId(userId); - PatientsQuery patientsQuery = new PatientsQuery(); - List patientses = null; - List patientIds = new ArrayList<>(); - if (StringUtils.isNotEmpty(queryNo) ||StringUtils.isNotEmpty(vcCardNo) ) { - patientsQuery.setQueryNo(queryNo); - patientsQuery.setHospitalId(hospitalId); - patientsQuery.setVcCardNo(vcCardNo); - patientses = patientsService.queryPatient1(patientsQuery, "created"); - if (CollectionUtils.isEmpty(patientses)) + BoneQuery query = new BoneQuery(); + //孕妇骨密度 + if (type == 0) + { + PatientsQuery patientsQuery = new PatientsQuery(); + List patientses = null; + List patientIds = new ArrayList<>(); + if (StringUtils.isNotEmpty(queryNo) ||StringUtils.isNotEmpty(vcCardNo) ) { + patientsQuery.setQueryNo(queryNo); + patientsQuery.setHospitalId(hospitalId); + patientsQuery.setVcCardNo(vcCardNo); + patientses = patientsService.queryPatient1(patientsQuery, "created"); + if (CollectionUtils.isEmpty(patientses)) + { + return new BaseListResponse().setData(dataList). + setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setPageInfo(new BaseQuery().getPageInfo()); + } + else + { + for (Patients pat : patientses) + { + patientIds.add(pat.getId()); + } + } + } + + query.setLimit(limit); + query.setPage(page); + query.setHospitalId(hospitalId); + query.setPatientIds(patientIds); + query.setType(0); + query.setSort(" created "); + + if (age != null) { - return new BaseListResponse().setData(dataList). - setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setPageInfo(new BaseQuery().getPageInfo()); + Date start1 = DateUtil.getBeforeAge(age); + Date end1 = DateUtil.getBeforeAge(age + 1); + query.setBirthStart(start1); + query.setBirthEnd(end1); } - else + + if (start != null && end != null) { + Date start1 = DateUtil.getWeekStart(start); + Date end1 = DateUtil.getWeekEnd(end); + query.setLastMensesStart(start1); + query.setLastMensesEnd(end1); + } + + + List models = BoneService.queryBoneList(query); + if (CollectionUtils.isNotEmpty(models)) { - for (Patients pat : patientses) + for (BoneModel model : models) { - patientIds.add(pat.getId()); + Map data = new HashMap(); + Patients patients = patientsService.findOnePatientById(model.getPatientId()); + data.put("id",model.getId()); + data.put("userName",patients.getUsername()); + data.put("phone",patients.getPhone()); + data.put("vcCardNo",patients.getVcCardNo()); + data.put("cardNo",patients.getCardNo()); + data.put("age", DateUtil.getAge(patients.getBirth(), model.getCreated())); + data.put("week", DateUtil.getWeekDesc(patients.getLastMenses(), model.getCreated())); + data.put("created", DateUtil.getyyyy_MM_dd(model.getCreated())); + dataList.add(data); + } } } - BoneQuery query = new BoneQuery(); - query.setLimit(limit); - query.setPage(page); - query.setHospitalId(hospitalId); - query.setPatientIds(patientIds); - query.setType(0); - query.setSort(" created "); - - if (age != null) + else { - Date start = DateUtil.getBeforeAge(age); - Date end = DateUtil.getBeforeAge(age + 1); - query.setBirthStart(start); - query.setBirthEnd(end); - } - - if (weekStart != null && weekEnd != null) { - Date start = DateUtil.getWeekStart(weekStart); - Date end = DateUtil.getWeekEnd(weekEnd); - query.setLastMensesStart(start); - query.setLastMensesEnd(end); - } + BabyModelQuery babyModelQuery = new BabyModelQuery(); + List babayIds = new ArrayList<>(); + if (StringUtils.isNotEmpty(queryNo) ||StringUtils.isNotEmpty(vcCardNo) ) { + babyModelQuery.setQueryNo(queryNo); + babyModelQuery.setHospitalId(hospitalId); + babyModelQuery.setVcCardNo(vcCardNo); + List babyModels = babyBookbuildingService.queryBabyBuildByCond(babyModelQuery); + if (CollectionUtils.isEmpty(babyModels)) + { + return new BaseListResponse().setData(dataList). + setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setPageInfo(new BaseQuery().getPageInfo()); + } + else + { + for (BabyModel model : babyModels) + { + babayIds.add(model.getId()); + } + } + } + query.setLimit(limit); + query.setPage(page); + query.setHospitalId(hospitalId); + query.setPatientIds(babayIds); + query.setType(1); + query.setSort(" created "); + if (start != null && end != null) + { + Date currentDate = new Date(); + Date start1 = DateUtil.addMonth(currentDate, -start); + Date end2 = DateUtil.addDay(DateUtil.addMonth(currentDate, -end - 1), 1); + query.setBirthStart(start1); + query.setBirthEnd(end2); + } - List models = BoneService.queryBoneList(query); - if (CollectionUtils.isNotEmpty(models)) - { - for (BoneModel model : models) + List models = BoneService.queryBoneList(query); + if (CollectionUtils.isNotEmpty(models)) { - Map data = new HashMap(); - Patients patients = patientsService.findOnePatientById(model.getPatientId()); - data.put("id",model.getId()); - data.put("userName",patients.getUsername()); - data.put("phone",patients.getPhone()); - data.put("vcCardNo",patients.getVcCardNo()); - data.put("cardNo",patients.getCardNo()); - data.put("age", DateUtil.getAge(patients.getBirth(), model.getCreated())); - data.put("week", DateUtil.getWeekDesc(patients.getLastMenses(), model.getCreated())); - data.put("created", DateUtil.getyyyy_MM_dd(model.getCreated())); - dataList.add(data); + for (BoneModel model : models) + { + Map data = new HashMap(); + BabyModel babyModel = babyBookbuildingService.queryBabyBuildById(model.getPatientId()); + data.put("id",model.getId()); + data.put("userName",babyModel.getName()); + data.put("phone",babyModel.getMphone()); + data.put("vcCardNo",babyModel.getVcCardNo()); + data.put("mcardNo",babyModel.getMcertNo()); + data.put("age", DateUtil.getBabyMonthAge(babyModel.getBirth(), model.getCreated())); + data.put("mname", babyModel.getMname()); + data.put("created", DateUtil.getyyyy_MM_dd(model.getCreated())); + dataList.add(data); + } } } + return new BaseListResponse().setData(dataList). setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setPageInfo(query.getPageInfo()); } @@ -132,17 +201,51 @@ public class BoneFacade { BoneModel model = BoneService.queryOneBone(query); if (model != null) { - Patients pat = patientsService.findOnePatientById(model.getPatientId()); - data.put("city", FunvCommonUtil.getBaseicConfigByid(pat.getCityRegisterId(), basicConfigService)); - data.put("area", FunvCommonUtil.getBaseicConfigByid(pat.getAreaRegisterId(), basicConfigService)); - data.put("userName",pat.getUsername()); - data.put("age", DateUtil.getAge(pat.getBirth(), model.getCreated())); - data.put("week", DateUtil.getWeekDesc(pat.getLastMenses(), model.getCreated())); - data.put("zvalue", model.getZvalue()); - data.put("tvalue", model.getTvalue()); - data.put("created", DateUtil.getyyyy_MM_dd(model.getCreated())); - Date lastMenses = DateUtil.addDay(pat.getLastMenses(),1); - int week = DateUtil.getWeek(lastMenses,model.getCreated()); + if (type == 0) + { + Patients pat = patientsService.findOnePatientById(model.getPatientId()); + data.put("city", FunvCommonUtil.getBaseicConfigByid(pat.getCityRegisterId(), basicConfigService)); + data.put("area", FunvCommonUtil.getBaseicConfigByid(pat.getAreaRegisterId(), basicConfigService)); + data.put("userName",pat.getUsername()); + data.put("age", DateUtil.getAge(pat.getBirth(), model.getCreated())); + data.put("week", DateUtil.getWeekDesc(pat.getLastMenses(), model.getCreated())); + data.put("position",model.getPosition()); + data.put("sos",model.getSos()); + data.put("tvalue",model.getTvalue()); + data.put("zvalue",model.getZvalue()); + data.put("bqi",model.getBqi()); + data.put("rrf",model.getRrf()); + data.put("eoa",model.getEoa()); + data.put("adultPercent",model.getAdultPercent()); + data.put("agePercent",model.getAgePercent()); + data.put("slAge",model.getAge()); + data.put("created", DateUtil.getyyyy_MM_dd(model.getCreated())); + Date lastMenses = DateUtil.addDay(pat.getLastMenses(),1); + int week = DateUtil.getWeek(lastMenses,model.getCreated()); + + } + else + { + BabyModel babyModel = babyBookbuildingService.queryBabyBuildById(model.getPatientId()); + data.put("city", FunvCommonUtil.getBaseicConfigByid(babyModel.getCityId(), basicConfigService)); + data.put("area", FunvCommonUtil.getBaseicConfigByid(babyModel.getAreaId(), basicConfigService)); + data.put("userName",babyModel.getName()); + data.put("age", DateUtil.getBabyMonthAge(babyModel.getBirth(), model.getCreated())); + data.put("position",model.getPosition()); + data.put("sos",model.getSos()); + data.put("tvalue",model.getTvalue()); + data.put("zvalue",model.getZvalue()); + data.put("bqi",model.getBqi()); + data.put("rrf",model.getRrf()); + data.put("eoa",model.getEoa()); + data.put("adultPercent",model.getAdultPercent()); + data.put("agePercent",model.getAgePercent()); + data.put("slAge",model.getAge()); + data.put("sex", babyModel.getSex() == null ? "" : SexEnum.getTextById(babyModel.getSex())); + data.put("created", DateUtil.getyyyy_MM_dd(model.getCreated())); + int month = DateUtil.getBabyAgeMonth(babyModel.getBirth(),model.getCreated()); + } + } @@ -153,25 +256,51 @@ public class BoneFacade { public BaseResponse saveBone(BoneModel boneModel) { - PatientsQuery patientsQuery = new PatientsQuery(); - patientsQuery.setYn(YnEnums.YES.getId()); - patientsQuery.setType(1); - patientsQuery.setCardNo(boneModel.getCardNo()); - List patients = patientsService.queryPatient(patientsQuery); - if (CollectionUtils.isNotEmpty(patients)) + + //孕妇骨密度 + if (boneModel.getType() == 0) + { + PatientsQuery patientsQuery = new PatientsQuery(); + patientsQuery.setYn(YnEnums.YES.getId()); + patientsQuery.setType(1); + patientsQuery.setCardNo(boneModel.getCardNo()); + List patients = patientsService.queryPatient(patientsQuery); + if (CollectionUtils.isNotEmpty(patients)) + { + Patients pat = patients.get(0); + boneModel.setHospitalId(pat.getHospitalId()); + boneModel.setPatientId(pat.getId()); + boneModel.setPid(pat.getPid()); + boneModel.setBirthday(pat.getBirth()); + boneModel.setLastMenses(pat.getLastMenses()); + boneModel.setType(0); + boneModel.setCreated(new Date()); + boneModel.setModified(new Date()); + BoneService.add(boneModel); + } + } + //儿童骨密度 + else { - Patients pat = patients.get(0); - boneModel.setHospitalId(pat.getHospitalId()); - boneModel.setPatientId(pat.getId()); - boneModel.setPid(pat.getPid()); - boneModel.setBirthday(pat.getBirth()); - boneModel.setLastMenses(pat.getLastMenses()); - boneModel.setType(0); - boneModel.setCreated(new Date()); - boneModel.setModified(new Date()); - BoneService.add(boneModel); + BabyModelQuery babyModelQuery = new BabyModelQuery(); + babyModelQuery.setYn(YnEnums.YES.getId()); + babyModelQuery.setMcertNo(boneModel.getCardNo()); + List babyModels = babyBookbuildingService.queryBabyBuildByCond(babyModelQuery); + + if (CollectionUtils.isNotEmpty(babyModels)) { + BabyModel babyModel = babyModels.get(0); + boneModel.setHospitalId(babyModel.getHospitalId()); + boneModel.setPatientId(babyModel.getId()); + boneModel.setPid(babyModel.getPid()); + boneModel.setBirthday(babyModel.getBirth()); + boneModel.setType(1); + boneModel.setCreated(new Date()); + boneModel.setModified(new Date()); + BoneService.add(boneModel); + } } + return new BaseResponse(). setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java index 7d6081d..57048e1 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java @@ -188,6 +188,24 @@ public class PremaritalCheckupFacade { archiveMap.put("hjXiang", hjXiang); archiveMap.put("photo", archiveModel.getPhoto()); + archiveMap.put("code", archiveModel.getCode()); + + String spouseCode = ""; + //当婚检ID为空,用证件号或者就诊卡去查询居民建档的信息 + if (StringUtils.isNotEmpty(archiveModel.getSpouseCardNo())) { + ResidentsArchiveQuery archiveQuery = new ResidentsArchiveQuery(); + archiveQuery.setYn(YnEnums.YES.getId()); + archiveQuery.setHospitalId(requestParam.getHospitalId()); + archiveQuery.setCertificateNum(archiveModel.getSpouseCardNo()); + List modelList = residentsArchiveService.queryResident(archiveQuery); + if (CollectionUtils.isNotEmpty(modelList)) + { + ResidentsArchiveModel model = modelList.get(0); + spouseCode = model.getCode() == null ? "" : String.valueOf(model.getCode()); + } + } + + archiveMap.put("spouseCode", spouseCode); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ResidentsArchiveFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ResidentsArchiveFacade.java index a5eafb8..89a136c 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ResidentsArchiveFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ResidentsArchiveFacade.java @@ -30,6 +30,7 @@ import com.lyms.platform.query.TrackDownRecordQuery; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Sort; import org.springframework.stereotype.Component; import javax.servlet.http.HttpServletResponse; @@ -384,7 +385,7 @@ public class ResidentsArchiveFacade { }*/ getTrackHospital(archiveModel); - + setCode(archiveModel); ResidentsArchiveModel residentsArchiveModel = residentsArchiveService.addResident(archiveModel); //新增婚检追访信息,默认进入婚检追访 @@ -402,6 +403,32 @@ public class ResidentsArchiveFacade { return br; } + + private void setCode(ResidentsArchiveModel archiveModel) + { + ResidentsArchiveQuery query = new ResidentsArchiveQuery(); + query.setYn(YnEnums.YES.getId()); + query.setHospitalId(archiveModel.getHospitalId()); + if (StringUtils.isNotEmpty(archiveModel.getCertificateNum())) { + //判断该证件号码是否在该医院建档 + query.setCertificateNum(archiveModel.getCertificateNum()); + query.setCertificateTypeId(archiveModel.getCertificateTypeId()); + List modelList = residentsArchiveService.queryResidentWithSort(query,"code",Sort.Direction.DESC); + if (CollectionUtils.isNotEmpty(modelList)) { + ResidentsArchiveModel model = modelList.get(0); + if (model.getCode() != null) + { + archiveModel.setCode(model.getCode()+1); + } + } + else + { + archiveModel.setCode(Long.valueOf(DateUtil.getYyyyMM(new Date())+"001")); + } + } + + } + /** * 新增居民健康档案时追访信息 *