diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/BabyModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/BabyModel.java index 28f99bc..5b4e4ae 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/BabyModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/BabyModel.java @@ -263,7 +263,7 @@ public class BabyModel extends BaseModel { */ private Integer yn; /** - * 数据状态 1-孕妇分娩自动建档、更新为正式数据时修改为0,2:小程序建档 + * 数据状态 1-孕妇分娩自动建档、更新为正式数据时修改为0,2:小程序预约建档 */ private Integer dataStatus; //预产期 @@ -577,7 +577,9 @@ public class BabyModel extends BaseModel { private String cjfy;//刺激反应 private String zl;//张力 - //居住类别 + /** + * 母亲居住类别 + */ private String liveType; private String numberCode; @@ -881,6 +883,19 @@ public class BabyModel extends BaseModel { */ private String babyAddress; + /** + * 儿童户口性质 1:农业 2:非农业 + */ + private String babyAccountNature; + + public String getBabyAccountNature() { + return babyAccountNature; + } + + public void setBabyAccountNature(String babyAccountNature) { + this.babyAccountNature = babyAccountNature; + } + public String getBabyProvinceId() { return babyProvinceId; } 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 51f5bee..5b6a859 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 @@ -7,12 +7,10 @@ import com.lyms.platform.common.dao.operator.MongoOper; import com.lyms.platform.common.dao.operator.MongoQuery; import com.lyms.platform.common.utils.StringUtils; import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.collections.MapUtils; import org.springframework.data.mongodb.core.query.Criteria; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Date; -import java.util.List; +import java.util.*; /** * 新生儿查询模型 @@ -405,6 +403,18 @@ public class BabyModelQuery extends BaseQuery implements IConvertToNativeQuery { *详细地址 */ private String babyAddress; + /** + *儿童小程序 预约建档 母亲身份证和手机号是否存在 + */ + private Map cardArticle; + + public Map getCardArticle() { + return cardArticle; + } + + public void setCardArticle(Map cardArticle) { + this.cardArticle = cardArticle; + } public String getBabyProvinceId() { return babyProvinceId; @@ -2577,14 +2587,21 @@ public class BabyModelQuery extends BaseQuery implements IConvertToNativeQuery { c = Criteria.where("lhNextEyeCheckTime").gte(lhNextEyeCheckTimeStrat).lte(lhNextEyeCheckTimeEnd); } } + Criteria cor8=MongoCondition.newInstance().getCriteria();//这里不能给null return拼接不能为空 + if(MapUtils.isNotEmpty(cardArticle)){ + MongoCondition con = MongoCondition.newInstance(); + MongoCondition con1 = MongoCondition.newInstance("mcertNo", cardArticle.get("mcertNo"), MongoOper.IS); + MongoCondition con2 = MongoCondition.newInstance("mphone",cardArticle.get("mphone"),MongoOper.IS); + cor8=con.orCondition(new MongoCondition[]{con1, con2}).getCriteria(); + } /** * 多个orCondition 需要添加Criteria来控制json同级两个and或者or来解决mongodb执行查询问题 */ if(c!=null){ - return new MongoCondition(c.andOperator(condition.getCriteria(),cor,cor2,cor3,cor4,cor5,cor6,cor7)).toMongoQuery(); + return new MongoCondition(c.andOperator(condition.getCriteria(),cor,cor2,cor3,cor4,cor5,cor6,cor7,cor8)).toMongoQuery(); } - return new MongoCondition(cor.andOperator(condition.getCriteria(),cor2,cor3,cor4,cor5,cor6,cor7)).toMongoQuery(); + return new MongoCondition(cor.andOperator(condition.getCriteria(),cor2,cor3,cor4,cor5,cor6,cor7,cor8)).toMongoQuery(); } public Boolean getFmDataStatu() { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java index 67c2c45..e180636 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java @@ -1088,4 +1088,17 @@ public class BabyBuildController extends BaseController { LoginContext loginState = (LoginContext) httpServletRequest.getAttribute("loginContext"); return babyBookbuildingFacade.queryBabyCheck0_6Toll(checkDateStart,checkDateEnd,babyProvinceId,babyCityId,babyAreaId,babyStreetId ,loginState.getId()); } + + /** + * 小程序app 儿童预建档 + * @param request + * @param httpServletRequest + * @return + */ + @RequestMapping(method = RequestMethod.POST, value = "/babyBuildArticle") + @ResponseBody + public BaseResponse babyBuildArticle(@Valid @RequestBody BabyAppBuildAddRequest request, + HttpServletRequest httpServletRequest) { + return babyBookbuildingFacade.babyBuildArticle(request); + } } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java index 02f6392..4616c6c 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java @@ -6381,4 +6381,60 @@ public class BabyBookbuildingFacade { } return new BaseObjectResponse().setData(result); } + + public BaseResponse babyBuildArticle(BabyAppBuildAddRequest request) { + //查询是否存在 + BabyModelQuery babyModelQuery=new BabyModelQuery(); + babyModelQuery.setHospitalId(request.getHospitalId()); + babyModelQuery.setMcertNo(request.getMommyCardNo()); + Map map=new HashMap<>(); + map.put("mcertNo", request.getMommyCardNo()); + map.put("mphone", request.getPhone()); + babyModelQuery.setCardArticle(map); + List babyModels = babyBookbuildingService.queryBabyBuildByCond(babyModelQuery); + + if (CollectionUtils.isEmpty(babyModels)) { + BabyModel model=new BabyModel(); + model.setYn(YnEnums.NO.getId()); + model.setDataStatus(2); + model.setBuildType(1); + model.setHospitalId(request.getHospitalId()); + //母亲 + model.setMname(request.getMommyName()); + model.setMcertNo(request.getMommyCardNo()); + model.setMphone(request.getPhone()); + model.setLiveType(request.getLiveType()); + //父亲 + model.setFname(request.getFname()); + model.setFphone(request.getFphone()); + //儿童 + model.setName(request.getBabyName()); + model.setCardNo(request.getBabyCard()); + model.setBirth(DateUtil.parseYMD(request.getBirth())); + model.setSex(Integer.valueOf(request.getSex())); + model.setBabyHeight(request.getHeight()); + model.setBabyWeight(request.getWeight()); + model.setBabyAccountNature(request.getBabyAccountNature()); + //儿童居住地 + model.setProvinceId(request.getProvinceId()); + model.setCityId(request.getCityId()); + model.setAreaId(request.getAreaId()); + model.setStreetId(request.getStreetId()); + model.setAddress(request.getAddress()); + //儿童户籍 + model.setBabyProvinceId(request.getBabyProvinceId()); + model.setBabyCityId(request.getBabyCityId()); + model.setBabyAreaId(request.getBabyAreaId()); + model.setBabyStreetId(request.getBabyStreetId()); + model.setBabyAddress(request.getBabyAddress()); + model.setBuildDate(new Date()); + model.setCreated(new Date()); + model = babyBookbuildingService.addBabyBookbuilding(model); + }else { + return new BaseObjectResponse().setErrormsg("身份证号已经存在档案").setErrorcode(ErrorCodeConstants.DATA_EXIST); + } + + + return new BaseObjectResponse().setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS); + } } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyAppBuildAddRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyAppBuildAddRequest.java index 175945c..7c1846d 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyAppBuildAddRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyAppBuildAddRequest.java @@ -22,6 +22,9 @@ public class BabyAppBuildAddRequest { private String mommyName; private String vcCardNo; private String hospitalId; + //父亲 + private String fname; + private String fphone; private String mBirth;//母亲出生日期 private String dulWeek;//分娩孕周 @@ -32,7 +35,14 @@ public class BabyAppBuildAddRequest { private String weight; private String height; private String addr; - + //儿童居住地 + private String address; + private String provinceId; + private String cityId; + private String areaId; + private String streetId; + //儿童身份证号码 + private String babyCard; /********************************************/ //隆化-儿童建档户籍地 /** @@ -55,6 +65,96 @@ public class BabyAppBuildAddRequest { *详细地址 */ private String babyAddress; + /** + * 儿童户口性质 1:农业 2:非农业 + */ + private String babyAccountNature; + + /** + * 母亲居住属性 + */ + //baby里的名字:居住类别 + private String liveType; + + public String getFname() { + return fname; + } + + public void setFname(String fname) { + this.fname = fname; + } + + public String getFphone() { + return fphone; + } + + public void setFphone(String fphone) { + this.fphone = fphone; + } + + public String getLiveType() { + return liveType; + } + + public void setLiveType(String liveType) { + this.liveType = liveType; + } + + public String getBabyAccountNature() { + return babyAccountNature; + } + + public void setBabyAccountNature(String babyAccountNature) { + this.babyAccountNature = babyAccountNature; + } + + public String getBabyCard() { + return babyCard; + } + + public void setBabyCard(String babyCard) { + this.babyCard = babyCard; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getProvinceId() { + return provinceId; + } + + public void setProvinceId(String provinceId) { + this.provinceId = provinceId; + } + + public String getCityId() { + return cityId; + } + + public void setCityId(String cityId) { + this.cityId = cityId; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } public String getBabyProvinceId() { return babyProvinceId;