diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/PreEugenicsBaseModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/PreEugenicsBaseModel.java index c880127..d6b9e77 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/PreEugenicsBaseModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/PreEugenicsBaseModel.java @@ -7,9 +7,10 @@ import lombok.Data; import org.springframework.data.mongodb.core.mapping.Document; import java.util.Date; +import java.util.Map; /** - * 孕前优生基础信息 实体类 + * 孕前优生信息 实体类 * * @author: shuai-Bo * @Date: 2019/11/20 0020 @@ -18,110 +19,208 @@ import java.util.Date; @Document(collection = "lyms_preeugenics_base") @Data public class PreEugenicsBaseModel extends BaseModel { - //id + + /** + * id + */ private String id; + + /** + * 医院id + */ + private String hospitalId; + + /** + * 创建人id + */ + private String createUser; + + /** + * 更新时间 + */ + private Date updateTime; + + /** + * 创建时间 + */ + private Date created; + /******************丈夫信息****************************/ - //丈夫姓名 + + /** + * 丈夫编号 + */ + private String husbandNo; + + /** + * 丈夫姓名 + */ private String husbandName; - //民族 + + /** + * 丈夫民族id + */ private String husbandNation; /** - * 出生日期 + * 丈夫出生日期 */ @JsonFormat(pattern = DateUtil.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8") private Date husbandBirthday; - //年龄 + /** + * 丈夫年龄 + */ private String husbandAge; - //文化程度 + /** + * 丈夫文化程度id + */ private String husbandEducational; - //身份证号码 + /** + * 丈夫证件类型 + */ + private String husbandCardType; + + /** + * 丈夫身份证号码 + */ private String husbandCardNo; /** - * 职业 : 1农民 2工人 3服务业 4经商 5家务 6教师/公务员/职员 7其他 + * 丈夫职业 : 1农民 2工人 3服务业 4经商 5家务 6教师/公务员/职员 7其他 */ private String husbandCareer; /** - * 户口所在地 省 + * 丈夫户口所在地 省 */ private String husbandAccountProvince; /** - * 户口所在地 市 + * 丈夫户口所在地 市 */ private String husbandAccountCity; /** - * 户口所在地 县 + * 丈夫户口所在地 县 */ private String husbandAccountCounty; /** - * 户口所在地 详细地址 + * 丈夫户口所在地 详细地址 */ private String husbandAccountAddress; /** - * 户口性质: + * 丈夫现住址 省 + */ + private String husbandCurrentProvince; + + /** + * 丈夫现住址 市 + */ + private String husbandCurrentCity; + + /** + * 丈夫现住址 县 + */ + private String husbandCurrentArea; + + /** + * 丈夫现住址 街道 + */ + private String husbandCurrentStreet; + + /** + * 丈夫现住址 详细地址 + */ + private String husbandCurrentAddress; + + /** + * 丈夫户口性质: * 1农业户口 (含界定为农村居民者) 2.非农业 */ private String husbandAccountNature; - /******************妻子信息**********************/ + /** + * 丈夫邮政编码 + */ + private String husbandZipCode; + + /** + * 妻子编号 + */ + private String wifeNo; + /** * 妻子姓名 */ private String wifeName; - //民族 + /** + * 妻子民族id + */ private String wifeNation; + /** - * 出生日期 + * 妻子出生日期 */ @JsonFormat(pattern = DateUtil.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8") private Date wifeBirthday; - //年龄 + /** + * 妻子年龄 + */ private String wifeAge; - //文化程度 + /** + * 妻子文化程度id + */ private String wifeEducational; - //身份证号码 + /** + * 妻子身份证号码类型 + */ + private String wifeCardType; + + /** + * 妻子身份证号码 + */ private String wifeCardNo; /** - * 职业 : 1农民 2工人 3服务业 4经商 5家务 6教师/公务员/职员 7其他 + * 妻子职业 : 1农民 2工人 3服务业 4经商 5家务 6教师/公务员/职员 7其他 */ private String wifeCareer; /** - * 户口所在地 省 + * 妻子户口所在地 省 */ private String wifeAccountProvince; /** - * 户口所在地 市 + * 妻子户口所在地 市 */ private String wifeAccountCity; /** - * 户口所在地 县 + * 妻子户口所在地 县 */ - private String wifeAccountCounty; + private String wifeAccountArea; /** - * 户口所在地 详细地址 + * 妻子户口所在地 街道 + */ + private String wifeAccountStreet; + /** + * 妻子户口所在地 详细地址 */ private String wifeAccountAddress; /** - * 户口性质: + * 妻子户口性质: * 1农业户口 (含界定为农村居民者) 2.非农业 */ private String wifeAccountNature; @@ -139,7 +238,12 @@ public class PreEugenicsBaseModel extends BaseModel { /** * 妻子现住地址 县 */ - private String wifeCurrentCounty; + private String wifeCurrentArea; + + /** + * 妻子现住地址 街道 + */ + private String wifeCurrentStreet; /** * 妻子现住地址 详细地址 @@ -147,15 +251,35 @@ public class PreEugenicsBaseModel extends BaseModel { private String wifeCurrentAddress; /** + * 妻子:邮编 + */ + private String wifeZipCode; + + /** + * 1/女方签署 2/男方签署 3/双方签署 + */ + private String hasSignBook; + + /** * 结婚时间 */ @JsonFormat(pattern = DateUtil.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8") private Date marriageTime; /** - * 联系电话 + * 妻子联系电话 */ - private String phone; + private String wifePhone; + + /** + * 丈夫联系电话 + */ + private String husbandPhone; + + /** + * 座机号 + */ + private String fixedLineTelephone; /** * 填写日期 @@ -168,4 +292,53 @@ public class PreEugenicsBaseModel extends BaseModel { */ private String doctor; + /** + * 妻子一般情况 + */ + private Map wifeBaseInfo; + + /** + * 妻子体格检查 + */ + private Map wifePhysiqueCheck; + + /** + * 妻子临床检查 + */ + private Map wifeClinicalCheck; + + /** + * 妻子B超检查 + */ + private Map wifeBCheck; + + /** + * 妻子其他检查 + */ + private Map wifeOtherCheck; + + /** + * 丈夫一般情况 + */ + private Map husbandBaseInfo; + + /** + * 丈夫体格检查 + */ + private Map husbandPhysiqueCheck; + + /** + * 丈夫临床检查 + */ + private Map husbandClinicalCheck; + + /** + * 丈夫其他检查 + */ + private Map husbandOtherCheck; + + /** + * 孕前优生检查结果与建议 + */ + private Map resultAdvice; } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PreEugenicsBaseController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PreEugenicsBaseController.java index 9e4f7a9..6f78635 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PreEugenicsBaseController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PreEugenicsBaseController.java @@ -1,15 +1,23 @@ package com.lyms.platform.operate.web.controller; -import com.lyms.platform.common.base.BaseController; -import com.lyms.platform.common.result.BaseResponse; -import com.lyms.platform.operate.web.service.IPreEugenicsService; +import javax.servlet.http.HttpServletRequest; + 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.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; -import javax.servlet.http.HttpServletRequest; +import com.fasterxml.jackson.annotation.JsonAlias; +import com.lyms.platform.common.annotation.TokenRequired; +import com.lyms.platform.common.base.BaseController; +import com.lyms.platform.common.result.BaseListResponse; +import com.lyms.platform.common.result.BaseResponse; +import com.lyms.platform.operate.web.request.PreEugenicsBaseListRequest; +import com.lyms.platform.operate.web.request.PreEugenicsBaseRequest; +import com.lyms.platform.operate.web.service.IPreEugenicsService; /** * @author: shuai-Bo @@ -17,10 +25,83 @@ import javax.servlet.http.HttpServletRequest; * @Time: 11:06 */ @Controller +@RequestMapping("/preEugenicsBase") public class PreEugenicsBaseController extends BaseController { + @Autowired private IPreEugenicsService iPreEugenicsService; + /** + * + * 根据身份证号获取对应的孕前优生信息 + * + * @param idCard + * @return + */ + @RequestMapping(method = RequestMethod.GET, value = "/getInfoByIdCard") + @ResponseBody + @TokenRequired + public BaseResponse getPatientInfoByIdCard(@RequestParam String idCard) { + return iPreEugenicsService.getPatientInfoByIdCard(idCard); + } + + /** + * 保存单个 + * + * @param param + * @return + */ + @RequestMapping(method = RequestMethod.POST, value = "/add") + @ResponseBody + @TokenRequired + public BaseResponse add( @RequestBody PreEugenicsBaseRequest param, HttpServletRequest request) { + Integer userId = getUserId(request); + param.setCreateUser(userId.toString()); + return iPreEugenicsService.add(param); + } + + /** + * 编辑单个 + * + * @param param + * @return + */ + @RequestMapping(method = RequestMethod.POST, value = "/edit") + @ResponseBody + @TokenRequired + public BaseResponse edit( @RequestBody PreEugenicsBaseRequest param, HttpServletRequest request) { + Integer userId = getUserId(request); + param.setCreateUser(userId.toString()); + return iPreEugenicsService.edit(param); + } + + /** + * 列表 + * + * @param param + * @return + */ + @RequestMapping(method = RequestMethod.GET, value = "/listPage") + @ResponseBody + @TokenRequired + public BaseListResponse listPage(@JsonAlias PreEugenicsBaseListRequest param) { + return iPreEugenicsService.listPage(param); + } + + /** + * 单个查询 + * + * @param param + * @return + */ + @RequestMapping(method = RequestMethod.GET, value = "/detail") + @ResponseBody + @TokenRequired + public BaseResponse detail( @JsonAlias PreEugenicsBaseRequest param) { + return iPreEugenicsService.detail(param); + } + + @RequestMapping(value = "getPreEugenicsBase") @ResponseBody public BaseResponse getPreEugenicsBaseInfo(@RequestParam(value = "cardNo") String cardNo, diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PreEugenicsBaseListRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PreEugenicsBaseListRequest.java new file mode 100644 index 0000000..0b1c709 --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PreEugenicsBaseListRequest.java @@ -0,0 +1,24 @@ +package com.lyms.platform.operate.web.request; + +import com.lyms.platform.common.dao.BaseQuery; + +/** + * @author dongqin + * @description + * @date 15:38 2019/11/26 + **/ +public class PreEugenicsBaseListRequest extends BaseQuery { + + /** + * 身份证 + */ + private String idCardNo; + + public String getIdCardNo() { + return idCardNo; + } + + public void setIdCardNo(String idCardNo) { + this.idCardNo = idCardNo; + } +} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PreEugenicsBaseRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PreEugenicsBaseRequest.java new file mode 100644 index 0000000..42de038 --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PreEugenicsBaseRequest.java @@ -0,0 +1,12 @@ +package com.lyms.platform.operate.web.request; + +import com.lyms.platform.pojo.PreEugenicsBaseModel; + +/** + * @author dongqin + * @description + * @date 15:28 2019/11/26 + **/ +public class PreEugenicsBaseRequest extends PreEugenicsBaseModel { + +} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IPreEugenicsService.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IPreEugenicsService.java index 11ce562..e9dc6e4 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IPreEugenicsService.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IPreEugenicsService.java @@ -1,6 +1,9 @@ package com.lyms.platform.operate.web.service; +import com.lyms.platform.common.result.BaseListResponse; import com.lyms.platform.common.result.BaseResponse; +import com.lyms.platform.operate.web.request.PreEugenicsBaseListRequest; +import com.lyms.platform.operate.web.request.PreEugenicsBaseRequest; public interface IPreEugenicsService extends IBaseService { /** @@ -12,4 +15,43 @@ public interface IPreEugenicsService extends IBaseService { */ BaseResponse getPreEugenicsBaseInfo(String cardNo, String vcCardNo, Integer userId); + /** + * 根据身份证号获取对应的孕前优生信息 + * + * @param idCard + * @return + */ + BaseResponse getPatientInfoByIdCard(String idCard); + + /** + * 保存单个 + * + * @param param + * @return + */ + BaseResponse add(PreEugenicsBaseRequest param); + + /** + * 编辑单个 + * + * @param param + * @return + */ + BaseResponse edit(PreEugenicsBaseRequest param); + + /** + * 列表 + * + * @param param + * @return + */ + BaseListResponse listPage(PreEugenicsBaseListRequest param); + + /** + * 单个查询 + * + * @param param + * @return + */ + BaseResponse detail(PreEugenicsBaseRequest param); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PreEugebicsServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PreEugebicsServiceImpl.java index 5cdfc56..104f3d5 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PreEugebicsServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PreEugebicsServiceImpl.java @@ -1,7 +1,19 @@ package com.lyms.platform.operate.web.service.impl; +import com.lyms.platform.biz.service.BasicConfigService; +import com.lyms.platform.common.result.BaseListResponse; import com.lyms.platform.common.result.BaseResponse; +import com.lyms.platform.common.utils.DateUtil; +import com.lyms.platform.operate.web.request.PreEugenicsBaseListRequest; +import com.lyms.platform.operate.web.request.PreEugenicsBaseRequest; import com.lyms.platform.operate.web.service.IPreEugenicsService; +import com.lyms.platform.pojo.PreEugenicsBaseModel; +import com.lyms.platform.pojo.ResidentsArchiveModel; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; import org.springframework.stereotype.Service; /** @@ -14,9 +26,106 @@ import org.springframework.stereotype.Service; @Service public class PreEugebicsServiceImpl extends BaseServiceImpl implements IPreEugenicsService { + @Autowired + private MongoTemplate mongoTemplate; + + @Autowired + private BasicConfigService basicConfigService; @Override public BaseResponse getPreEugenicsBaseInfo(String cardNo, String vcCardNo, Integer userId) { return null; } + + /** + * 根据身份证号获取对应的孕前优生信息 + * + * @param idCard + * @return + */ + @Override + public BaseResponse getPatientInfoByIdCard(String idCard) { + PreEugenicsBaseModel one = mongoTemplate.findOne(Query.query(Criteria.where("husbandCardNo").is(idCard) + .orOperator(Criteria.where("wifeCardNo").is(idCard))), PreEugenicsBaseModel.class); + if (one == null) { + ResidentsArchiveModel model = mongoTemplate.findOne(Query.query(Criteria.where("certificateNum").is(idCard)), ResidentsArchiveModel.class); + if (model == null) { + return new BaseResponse(); + } + one = new PreEugenicsBaseModel(); + one.setWifeName(model.getUsername()); + one.setWifeNation(model.getNationId()); + one.setWifeBirthday(model.getBirthday()); + one.setWifeAge(DateUtil.getAge(model.getBirthday()).toString()); + one.setWifeEducational(model.getLevelTypeId()); + one.setWifeCardType(model.getCertificateTypeId()); + one.setWifeCardNo(model.getCertificateNum()); + one.setWifeCareer(model.getProfessionTypeId()); + + // 妇女户口地址 + one.setWifeAccountProvince(model.getProvinceRegisterId()); + one.setWifeAccountCity(model.getCityRegisterId()); + one.setWifeAccountArea(model.getAreaRegisterId()); + one.setWifeAccountStreet(model.getStreetRegisterId()); + one.setWifeAccountAddress(model.getStreetRegisterId()); + + // 丈夫信息 + one.setHusbandName(model.getSpouseName()); + one.setHusbandPhone(model.getSpousePhone()); + one.setHusbandCardType(model.getSpouseCertTypeId()); + one.setHusbandCardNo(model.getSpouseCardNo()); + + BaseResponse baseResponse = new BaseResponse(); + baseResponse.setObject(one); + return baseResponse; + } + + BaseResponse baseResponse = new BaseResponse(); + baseResponse.setObject(one); + return baseResponse; + } + + /** + * 保存单个 + * + * @param param + * @return + */ + @Override + public BaseResponse add(PreEugenicsBaseRequest param) { + return null; + } + + /** + * 编辑单个 + * + * @param param + * @return + */ + @Override + public BaseResponse edit(PreEugenicsBaseRequest param) { + return null; + } + + /** + * 列表 + * + * @param param + * @return + */ + @Override + public BaseListResponse listPage(PreEugenicsBaseListRequest param) { + return null; + } + + /** + * 单个查询 + * + * @param param + * @return + */ + @Override + public BaseResponse detail(PreEugenicsBaseRequest param) { + return null; + } } \ No newline at end of file