diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/FolviteMapper.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/FolviteMapper.java index 74a96ee..40af0a0 100644 --- a/platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/FolviteMapper.java +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/FolviteMapper.java @@ -3,6 +3,8 @@ package com.lyms.platform.permission.dao.master; import com.lyms.platform.permission.model.FolviteQuery; import com.lyms.platform.pojo.FolviteRecordModel; +import java.util.List; + public interface FolviteMapper { /** @@ -11,4 +13,34 @@ public interface FolviteMapper { * @return */ FolviteRecordModel queryOne(FolviteQuery query); + + /** + * 保存叶酸建档记录 + * + * @param recordModel + */ + void saveFolvite(FolviteRecordModel recordModel); + + /** + * 修改叶酸建档记录 + * + * @param recordModel + */ + void updateFolvite(FolviteRecordModel recordModel); + + /** + * 叶酸查询List + * + * @param query + * @return + */ + + List queryFolviteList(FolviteQuery query); + + /** + * 查询总条数 + * @param query + * @return + */ + int queryFolviteListCount(FolviteQuery query); } diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/FolviteReceiveMapper.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/FolviteReceiveMapper.java new file mode 100644 index 0000000..b2f98c0 --- /dev/null +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/FolviteReceiveMapper.java @@ -0,0 +1,24 @@ +package com.lyms.platform.permission.dao.master; + +import com.lyms.platform.permission.model.FolviteRecordQuery; +import com.lyms.platform.pojo.FolviteReceiveRecordModel; + +import java.util.List; + +/** + * @author: shuai-Bo + * @Date: 2019/10/30 0030 + * @Time: 14:54 + */ +public interface FolviteReceiveMapper { + + void saveFolviteReceive(FolviteReceiveRecordModel receiveRecordModel); + + void updaetFolviteReceive(FolviteReceiveRecordModel receiveRecordModel); + + FolviteReceiveRecordModel queryOneReceive(String id); + + List queryFolviteReceiveList(FolviteRecordQuery query); + + int queyFolviteReceiveCount(FolviteRecordQuery query); +} \ No newline at end of file diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/model/FolviteQuery.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/model/FolviteQuery.java index f4b545e..2678c6f 100644 --- a/platform-biz-service/src/main/java/com/lyms/platform/permission/model/FolviteQuery.java +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/model/FolviteQuery.java @@ -26,6 +26,17 @@ public class FolviteQuery extends BaseQuery { //建档医院 private String hospitalId; + //妇女建档id + private String womanId; + + public String getWomanId() { + return womanId; + } + + public void setWomanId(String womanId) { + this.womanId = womanId; + } + public String getHospitalId() { return hospitalId; } diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/model/FolviteRecordQuery.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/model/FolviteRecordQuery.java new file mode 100644 index 0000000..f632965 --- /dev/null +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/model/FolviteRecordQuery.java @@ -0,0 +1,23 @@ +package com.lyms.platform.permission.model; + +import com.lyms.platform.common.dao.BaseQuery; + +/** + * @author: shuai-Bo + * @Date: 2019/10/30 0030 + * @Time: 17:46 + */ +public class FolviteRecordQuery extends BaseQuery { + + //叶酸建档id + private String folviteId; + + + public String getFolviteId() { + return folviteId; + } + + public void setFolviteId(String folviteId) { + this.folviteId = folviteId; + } +} \ No newline at end of file diff --git a/platform-biz-service/src/main/resources/mainOrm/master/FolviteMapper.xml b/platform-biz-service/src/main/resources/mainOrm/master/FolviteMapper.xml index f428659..7e50c9d 100644 --- a/platform-biz-service/src/main/resources/mainOrm/master/FolviteMapper.xml +++ b/platform-biz-service/src/main/resources/mainOrm/master/FolviteMapper.xml @@ -2,8 +2,46 @@ - SELECT id AS id, NAME AS NAME, @@ -36,85 +74,145 @@ ispregnancy AS ispregnancy, operation_doctor AS operationDoctor, created AS created, - vc_card AS vcCard + vc_card AS vcCard, + receivesum as receiveSum, + hospitalid as hospitalId FROM lyms_folvite_Info - -INSERT INTO lyms_folvite_Info( - id, - name, - sex, - birthday, - nationality, - nation, - marital_status, - certificate_type, - card_no, - census_type, - live_type, - education, - occupation, - phone, - work_unit, - habitation_province, - habitation_city, - habitation_area, - habitation_country, - habitation_address, - domicile_province, - domicile_city, - domicile_area, - domicile_country, - domicile_address, - woman_id, - isconceive, - lastmenstrual, - ispregnancy, - operation_doctor, - created, - vc_card ) - VALUES ( - #{id,jdbcType=INTEGER}, - #{name,jdbcType=VARCHAR}, - #{sex,jdbcType=BIGINT}, - #{birthday,jdbcType=TIMESTAMP}, - #{nationality,jdbcType=VARCHAR}, - #{nation,jdbcType=VARCHAR}, - #{maritalStatus,jdbcType=VARCHAR}, - #{certificateType,jdbcType=VARCHAR}, - #{cardNo,jdbcType=VARCHAR}, - #{censusType,jdbcType=VARCHAR}, - #{liveType,jdbcType=VARCHAR}, - #{education,jdbcType=VARCHAR}, - #{occupation,jdbcType=VARCHAR}, - #{phone,jdbcType=VARCHAR}, - #{workUnit,jdbcType=VARCHAR}, - #{habitationProvince,jdbcType=VARCHAR}, - #{habitationCity,jdbcType=VARCHAR}, - #{habitationArea,jdbcType=VARCHAR}, - #{habitationCountry,jdbcType=VARCHAR}, - #{habitationAddress,jdbcType=VARCHAR}, - #{domicileProvince,jdbcType=VARCHAR}, - #{domicileCity,jdbcType=VARCHAR}, - #{domicileArea,jdbcType=VARCHAR}, - #{domicileCountry,jdbcType=VARCHAR}, - #{domicileAddress,jdbcType=VARCHAR}, - #{womanId,jdbcType=VARCHAR}, - #{isconceive,jdbcType=BIGINT}, - #{lastmenstrual,jdbcType=TIMESTAMP}, - #{ispregnancy,jdbcType=BIGINT}, - #{operationDoctor,jdbcType=VARCHAR}, - #{created,jdbcType=TIMESTAMP}, - #{vcCard,jdbcType=VARCHAR}) + + + + + + + +INSERT INTO lyms_folvite_Info ( + id, + NAME, + sex, + birthday, + nationality, + nation, + marital_status, + certificate_type, + card_no, + census_type, + live_type, + education, + occupation, + phone, + work_unit, + habitation_province, + habitation_city, + habitation_area, + habitation_country, + habitation_address, + domicile_province, + domicile_city, + domicile_area, + domicile_country, + domicile_address, + woman_id, + isconceive, + lastmenstrual, + ispregnancy, + operation_doctor, + created, + vc_card, + hospitalid, + receivesum +) +VALUES + ( + #{id,jdbcType=VARCHAR}, + #{name,jdbcType=VARCHAR}, + #{sex,jdbcType=BIGINT}, + #{birthday,jdbcType=TIMESTAMP}, + #{nationality,jdbcType=VARCHAR}, + #{nation,jdbcType=VARCHAR}, + #{maritalStatus,jdbcType=VARCHAR}, + #{certificateType,jdbcType=VARCHAR}, + #{cardNo,jdbcType=VARCHAR}, + #{censusType,jdbcType=VARCHAR}, + #{liveType,jdbcType=VARCHAR}, + #{education,jdbcType=VARCHAR}, + #{occupation,jdbcType=VARCHAR}, + #{phone,jdbcType=VARCHAR}, + #{workUnit,jdbcType=VARCHAR}, + #{habitationProvince,jdbcType=VARCHAR}, + #{habitationCity,jdbcType=VARCHAR}, + #{habitationArea,jdbcType=VARCHAR}, + #{habitationCountry,jdbcType=VARCHAR}, + #{habitationAddress,jdbcType=VARCHAR}, + #{domicileProvince,jdbcType=VARCHAR}, + #{domicileCity,jdbcType=VARCHAR}, + #{domicileArea,jdbcType=VARCHAR}, + #{domicileCountry,jdbcType=VARCHAR}, + #{domicileAddress,jdbcType=VARCHAR}, + #{womanId,jdbcType=VARCHAR}, + #{isconceive,jdbcType=BIGINT}, + #{lastmenstrual,jdbcType=TIMESTAMP}, + #{ispregnancy,jdbcType=BIGINT}, + #{operationDoctor,jdbcType=VARCHAR}, + #{created,jdbcType=TIMESTAMP}, + #{vcCard,jdbcType=VARCHAR}, + #{hospitalid,jdbcType=VARCHAR}, + #{receivesum,jdbcType=INTEGER}) - + 1=1 + + and id=#{id,jdbcType=VARCHAR} + and certificate_type=#{certificateType,jdbcType=VARCHAR} @@ -133,7 +231,7 @@ INSERT INTO lyms_folvite_Info( - + UPDATE lyms_folvite_Info where id = #{id} @@ -141,9 +239,6 @@ INSERT INTO lyms_folvite_Info( - - id=#{id,jdbcType=INTEGER}, - name=#{name,jdbcType=VARCHAR}, @@ -237,7 +332,27 @@ INSERT INTO lyms_folvite_Info( vc_card=#{vcCard,jdbcType=VARCHAR}, + + hospitalid=#{hospitalid,jdbcType=VARCHAR}, + + + receivesum=#{receivesum,jdbcType=INTEGER}, + + + modify=#{modify,jdbcType=TIMESTAMP}, + + + + + order by ${sort} + + limit #{offset, jdbcType=INTEGER} , #{limit, jdbcType=INTEGER} + + + + + \ No newline at end of file diff --git a/platform-biz-service/src/main/resources/mainOrm/master/FolviteReceiveMapper.xml b/platform-biz-service/src/main/resources/mainOrm/master/FolviteReceiveMapper.xml new file mode 100644 index 0000000..9f0930f --- /dev/null +++ b/platform-biz-service/src/main/resources/mainOrm/master/FolviteReceiveMapper.xml @@ -0,0 +1,149 @@ + + + + + + + + + + + + + + + + + + +INSERT INTO lyms_folvite_provide ( + id, + folvite_id, + receive_number, + receive_week, + highrisk, + provide_unit, + ISSUER, + receive_date, + creation_date, + modified +) +VALUES + ( + #{id,jdbcType=VARCHAR}, + #{folviteId,jdbcType=VARCHAR}, + #{receiveNumber,jdbcType=INTEGER}, + #{receiveWeek,jdbcType=INTEGER}, + #{highrisk,jdbcType=VARCHAR}, + #{provideUnit,jdbcType=VARCHAR}, + #{issuer,jdbcType=VARCHAR}, + #{receiveDate,jdbcType=TIMESTAMP}, + #{creationDate,jdbcType=TIMESTAMP}, + #{modified,jdbcType=TIMESTAMP}) + + + + + + + + 1=1 + + + + + + + + + + UPDATE lyms_folvite_provide + + where id=#{id,jdbcType=VARCHAR} + + + + + + + id=#{id,jdbcType=VARCHAR}, + + + folvite_id=#{folviteId,jdbcType=VARCHAR}, + + + receive_number=#{receiveNumber,jdbcType=INTEGER}, + + + receive_week=#{receiveWeek,jdbcType=INTEGER}, + + + highrisk=#{highrisk,jdbcType=VARCHAR}, + + + provide_unit=#{provideUnit,jdbcType=VARCHAR}, + + + issuer=#{issuer,jdbcType=VARCHAR}, + + + receive_date=#{receiveDate,jdbcType=TIMESTAMP}, + + + reation_date=#{creationDate,jdbcType=TIMESTAMP}, + + + modified=#{modified,jdbcType=TIMESTAMP}, + + + + + + + + + order by ${sort} + + limit #{offset, jdbcType=INTEGER} , #{limit, jdbcType=INTEGER} + + + + \ No newline at end of file diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/FolviteReceiveRecordModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/FolviteReceiveRecordModel.java index 32f804a..58f6a10 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/FolviteReceiveRecordModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/FolviteReceiveRecordModel.java @@ -22,7 +22,10 @@ public class FolviteReceiveRecordModel { private long receiveNumber; //领取孕周 - private long receiveWeek; + private Integer receiveWeek; + + //孕前还是孕后 0 孕前 1孕后 + private Integer isconceive; //高危风险因素 private String highrisk; @@ -33,17 +36,47 @@ public class FolviteReceiveRecordModel { //发放人 private String Issuer; - //发放日期 + //领取日期 private Date receiveDate; //创建日期 private Date creationDate; + //修改日期 + private Date modified; + + //医院id + private String hospitalId; + + + public String getHospitalId() { + return hospitalId; + } + + public void setHospitalId(String hospitalId) { + this.hospitalId = hospitalId; + } + + public Date getModified() { + return modified; + } + + public void setModified(Date modified) { + this.modified = modified; + } public FolviteReceiveRecordModel() { - id = UUID.randomUUID().toString().replace("-", ""); + + } + public Integer getIsconceive() { + return isconceive; + } + + public void setIsconceive(Integer isconceive) { + this.isconceive = isconceive; + } public String getId() { return this.id; @@ -72,12 +105,11 @@ public class FolviteReceiveRecordModel { this.receiveNumber = receiveNumber; } - public long getReceiveWeek() { - return this.receiveWeek; + public Integer getReceiveWeek() { + return receiveWeek; } - - public void setReceiveWeek(long receiveWeek) { + public void setReceiveWeek(Integer receiveWeek) { this.receiveWeek = receiveWeek; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/FolviteRecordModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/FolviteRecordModel.java index 94e44d0..2b5cd04 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/FolviteRecordModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/FolviteRecordModel.java @@ -17,7 +17,7 @@ public class FolviteRecordModel { //叶酸:建档用户姓名 private String name; - //建档医生id + //建档医院id private String hospitalId; //性别 @@ -93,23 +93,57 @@ public class FolviteRecordModel { private String womanId; //是否怀孕,0、未怀孕 1、已怀孕 - private long isconceive = 0; + private Integer isconceive = 0; //末次月经 private Date lastmenstrual; //是否结束孕辰 0、未结束 1、已结束 - private long ispregnancy; + private Integer ispregnancy; //操作医生 private String operationDoctor; + //建档日期 + private String drawTime; + //创建时间 private Date created; //就诊卡卡号 private String vcCard; + //可领取总数 + private String receiveSum; + + //修改时间 + private Date modify; + + public Date getModify() { + return modify; + } + + public void setModify(Date modify) { + this.modify = modify; + } + + + public String getDrawTime() { + return drawTime; + } + + public void setDrawTime(String drawTime) { + this.drawTime = drawTime; + } + + public String getReceiveSum() { + return receiveSum; + } + + public void setReceiveSum(String receiveSum) { + this.receiveSum = receiveSum; + } + public String getHospitalId() { return hospitalId; } @@ -119,7 +153,7 @@ public class FolviteRecordModel { } public FolviteRecordModel() { - id = UUID.randomUUID().toString().replace("-", ""); + } public String getId() { @@ -354,15 +388,22 @@ public class FolviteRecordModel { this.womanId = womanId; } - public long getIsconceive() { - return this.isconceive; + public Integer getIsconceive() { + return isconceive; } - - public void setIsconceive(long isconceive) { + public void setIsconceive(Integer isconceive) { this.isconceive = isconceive; } + public Integer getIspregnancy() { + return ispregnancy; + } + + public void setIspregnancy(Integer ispregnancy) { + this.ispregnancy = ispregnancy; + } + public Date getLastmenstrual() { return this.lastmenstrual; } @@ -372,14 +413,6 @@ public class FolviteRecordModel { this.lastmenstrual = lastmenstrual; } - public long getIspregnancy() { - return this.ispregnancy; - } - - - public void setIspregnancy(long ispregnancy) { - this.ispregnancy = ispregnancy; - } public String getOperationDoctor() { return this.operationDoctor; diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/FolviteController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/FolviteController.java index c6cb570..79ba5ad 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/FolviteController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/FolviteController.java @@ -4,12 +4,12 @@ import com.lyms.platform.common.annotation.TokenRequired; import com.lyms.platform.common.base.BaseController; import com.lyms.platform.common.result.BaseResponse; import com.lyms.platform.operate.web.service.FolviteService; +import com.lyms.platform.pojo.FolviteReceiveRecordModel; +import com.lyms.platform.pojo.FolviteRecordModel; +import org.apache.ibatis.annotations.Param; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; -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 org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; @@ -26,6 +26,15 @@ public class FolviteController extends BaseController { @Autowired private FolviteService folviteService; + /** + * 查询or发放叶酸 + * + * @param vcCardNo + * @param cardNo + * @param certificateTypeId + * @param request + * @return + */ @RequestMapping(value = "/queryFolvite", method = RequestMethod.GET) @ResponseBody @TokenRequired @@ -36,5 +45,40 @@ public class FolviteController extends BaseController { return folviteService.queryFolvite(vcCardNo, cardNo, certificateTypeId, getUserId(request)); } + /** + * 添加修改叶酸建档记录 + * + * @param recordModel + * @param request + * @return + */ + @RequestMapping(value = "/saveOrUpdateFolvite", method = RequestMethod.POST) + @ResponseBody + @TokenRequired + public BaseResponse saveFolvite(@RequestBody FolviteRecordModel recordModel, HttpServletRequest request) { + + return folviteService.saveFolvite(recordModel, getUserId(request)); + } + + /** + * 添加叶酸发放记录 + * + * @param receiveModel + * @param request + * @return + */ + @RequestMapping(value = "saveOrUpdateProvideFolvite", method = RequestMethod.POST) + @ResponseBody + @TokenRequired + public BaseResponse saveProvideFolvite(@RequestBody FolviteReceiveRecordModel receiveModel, HttpServletRequest request) { + return folviteService.saveProvideFolvite(receiveModel, getUserId(request)); + + } + + @RequestMapping(value = "queryOneProvide/{id}", method = RequestMethod.GET) + public BaseResponse queryOneProvide(@PathVariable("id") String id, HttpServletRequest request) { + + return folviteService.queryOneProvide(id, getUserId(request)); + } } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/FolviteService.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/FolviteService.java index b5296cfb9..d47c915 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/FolviteService.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/FolviteService.java @@ -1,6 +1,13 @@ package com.lyms.platform.operate.web.service; import com.lyms.platform.common.result.BaseResponse; +import com.lyms.platform.permission.model.FolviteQuery; +import com.lyms.platform.permission.model.FolviteRecordQuery; +import com.lyms.platform.pojo.FolviteReceiveRecordModel; +import com.lyms.platform.pojo.FolviteRecordModel; +import com.sun.istack.internal.NotNull; + +import java.util.List; /** * @author: shuai-Bo @@ -19,4 +26,34 @@ public interface FolviteService { */ BaseResponse queryFolvite(String vcCardNo, String cardNo, String certificateTypeId, Integer userId); + /** + * 保存叶酸建档记录 + * + * @param recordModel + * @return + */ + BaseResponse saveFolvite(FolviteRecordModel recordModel, Integer userId); + + + /** + * 保存叶酸发放记录 + * + * @param receiveRecordModel + * @return + */ + BaseResponse saveProvideFolvite(FolviteReceiveRecordModel receiveRecordModel, Integer userId); + + /** + * 根据id 查询叶酸历史记录 + * + * @param id + * @param userId + * @return + */ + BaseResponse queryOneProvide(@NotNull String id, Integer userId); + + + List queryFolviteList(FolviteQuery folviteQuery); + + List queryFolviteReceiveList(FolviteRecordQuery query); } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IBaseService.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IBaseService.java index 2897cb5..6b545a1 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IBaseService.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IBaseService.java @@ -1,8 +1,6 @@ package com.lyms.platform.operate.web.service; -import com.lyms.platform.common.result.BaseResponse; import com.lyms.platform.common.result.PageResult; - import org.springframework.data.mongodb.core.query.Query; import java.util.List; diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/FolviteServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/FolviteServiceImpl.java index c69f845..60a69f4 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/FolviteServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/FolviteServiceImpl.java @@ -13,17 +13,20 @@ import com.lyms.platform.operate.web.service.FolviteService; 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.permission.model.Organization; +import com.lyms.platform.permission.service.OrganizationService; +import com.lyms.platform.pojo.FolviteReceiveRecordModel; import com.lyms.platform.pojo.FolviteRecordModel; import com.lyms.platform.pojo.ResidentsArchiveModel; import com.lyms.platform.query.ResidentsArchiveQuery; -import com.mchange.v2.lang.ObjectUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import javax.validation.constraints.NotNull; +import java.util.*; /** * @author: shuai-Bo @@ -45,6 +48,12 @@ public class FolviteServiceImpl implements FolviteService { @Autowired private ResidentsArchiveService residentsArchiveService; + @Autowired + private FolviteReceiveMapper receiveMapper; + + @Autowired + private OrganizationService organizationService; + @Override public BaseResponse queryFolvite(String vcCardNo, String cardNo, String certificateTypeId, Integer userId) { Map response = new HashMap<>(); @@ -95,6 +104,139 @@ public class FolviteServiceImpl implements FolviteService { return responses; } + @Override + public BaseResponse saveFolvite(FolviteRecordModel recordModel, Integer userId) { + String hospitalId = autoMatchFacade.getHospitalId(userId); + if (StringUtils.isEmpty(recordModel.getId())) { + recordModel.setId(UUID.randomUUID().toString().replace("-", "")); + recordModel.setHospitalId(hospitalId); + recordModel.setCreated(new Date()); + recordModel.setModify(new Date()); + folviteMapper.saveFolvite(recordModel); + } else { + recordModel.setHospitalId(hospitalId); + recordModel.setModify(new Date()); + folviteMapper.updateFolvite(recordModel); + } + BaseResponse response = new BaseResponse(); + response.setObject(recordModel.getId()); + return response; + } + + @Override + public BaseResponse saveProvideFolvite(FolviteReceiveRecordModel receiveRecordModel, Integer userId) { + if (StringUtils.isNotEmpty(receiveRecordModel.getId())) { + receiveRecordModel.setModified(new Date()); + receiveMapper.updaetFolviteReceive(receiveRecordModel); + } else { + receiveRecordModel.setId(UUID.randomUUID().toString().replace("-", "")); + receiveRecordModel.setCreationDate(new Date()); + receiveRecordModel.setModified(new Date()); + receiveMapper.saveFolviteReceive(receiveRecordModel); + } + BaseResponse response = new BaseResponse(); + response.setObject(receiveRecordModel.getId()); + return response; + } + + @Override + public BaseResponse queryOneProvide(@NotNull String id, Integer userId) { + Map respone = new HashMap<>(); + String hospitalId = autoMatchFacade.getHospitalId(userId); + //叶酸建档id + String folviteId = null; + FolviteReceiveRecordModel receiveRecordModel = receiveMapper.queryOneReceive(id); + Map provide = new HashMap<>(); + if (receiveRecordModel != null) { + provide.put("created", DateUtil.getyyyy_MM_dd(receiveRecordModel.getCreationDate())); + provide.put("drawCount", receiveRecordModel.getReceiveNumber()); + provide.put("drawTime", receiveRecordModel.getReceiveDate()); + provide.put("highRisk", receiveRecordModel.getHighrisk()); + String hospital = ""; + if (org.apache.commons.lang.StringUtils.isNotEmpty(receiveRecordModel.getHospitalId())) { + Organization organization = organizationService.getOrganization(Integer.parseInt(receiveRecordModel.getHospitalId())); + if (organization != null && organization.getYn() == YnEnums.YES.getId()) { + hospital = organization.getName(); + } + } + provide.put("hospitalName", hospital); + provide.put("id", receiveRecordModel.getId()); + provide.put("operator", receiveRecordModel.getIssuer()); + provide.put("pregnancyWeeks", receiveRecordModel.getReceiveWeek()); + folviteId = receiveRecordModel.getFolviteId(); + } + FolviteQuery folviteQuery = new FolviteQuery(); + folviteQuery.setHospitalId(hospitalId); + folviteQuery.setId(folviteId); + FolviteRecordModel recordModel = folviteMapper.queryOne(folviteQuery); + String womanId = null; + Map folvite = new HashMap<>(); + if (recordModel != null) { + folvite.put("username", recordModel.getName()); + folvite.put("birthday", DateUtil.getyyyy_MM_dd(recordModel.getBirthday())); + folvite.put("certificateNum", recordModel.getCardNo()); + folvite.put("certificateTypeId", recordModel.getCertificateType()); + folvite.put("id", recordModel.getId()); + folvite.put("phone", recordModel.getPhone()); + folvite.put("residenceRegister", CommonsHelper.getResidence(recordModel.getDomicileProvince(), recordModel.getDomicileCity(), + recordModel.getDomicileArea(), recordModel.getDomicileCountry(), recordModel.getDomicileAddress(), basicConfigService)); + folvite.put("alreadySum", "已领总数"); + folvite.put("canSum", "可领总数"); + womanId = recordModel.getWomanId(); + } + FolviteQuery query = new FolviteQuery(); + query.setWomanId(womanId); + query.setCardNo(recordModel.getCardNo()); + List recordModels = queryFolviteList(query); + List>> list = new ArrayList(); + if (CollectionUtils.isNotEmpty(recordModels)) { + FolviteRecordQuery recordQuery = new FolviteRecordQuery(); + for (FolviteRecordModel folviteModel : recordModels) { + List> listMap = new ArrayList<>(); + recordQuery.setFolviteId(folviteModel.getId()); + List folviteRecordModels = queryFolviteReceiveList(recordQuery); + if (CollectionUtils.isNotEmpty(folviteRecordModels)) { + for (FolviteReceiveRecordModel folviteRecordModel : folviteRecordModels) { + Map recordMap = new HashMap<>(); + recordMap.put("drawCount", folviteRecordModel.getReceiveNumber()); + recordMap.put("drawTime", DateUtil.getyyyy_MM_dd(folviteRecordModel.getReceiveDate())); + recordMap.put("id", folviteRecordModel.getId()); + recordMap.put("other", folviteRecordModel.getIsconceive()); + if (folviteRecordModel.getIsconceive() == 0) { + recordMap.put("pregnancyType", "孕前"); + } else { + recordMap.put("pregnancyType", "孕" + folviteRecordModel.getReceiveWeek() + "周"); + } + listMap.add(recordMap); + } + } + list.add(listMap); + } + } + BaseResponse response = new BaseResponse(); + respone.put("folicAcidResult", provide); + respone.put("archiveResult", folvite); + respone.put("folicAcidHistory", list); + response.setObject(respone); + return response; + } + + @Override + public List queryFolviteList(FolviteQuery folviteQuery) { + if (folviteQuery.getNeed() != null) { + folviteQuery.mysqlBuild(folviteMapper.queryFolviteListCount(folviteQuery)); + } + return folviteMapper.queryFolviteList(folviteQuery); + } + + @Override + public List queryFolviteReceiveList(FolviteRecordQuery query) { + if (query.getNeed() != null) { + query.mysqlBuild(receiveMapper.queyFolviteReceiveCount(query)); + } + return receiveMapper.queryFolviteReceiveList(query); + } + FolviteResult result(ResidentsArchiveModel archiveModel) { FolviteResult folviteResult = new FolviteResult(); folviteResult.setWomanId(archiveModel.getId()); @@ -112,15 +254,22 @@ public class FolviteServiceImpl implements FolviteService { folviteResult.setOccupation(archiveModel.getProfessionTypeId()); folviteResult.setPhone(archiveModel.getPhone()); folviteResult.setWorkUnit(archiveModel.getWorkUnit()); + + folviteResult.setHabitationProvince(archiveModel.getProvinceId()); - folviteResult.setHabitationCity(archiveModel.getAreaId()); + folviteResult.setHabitationCity(archiveModel.getCityId()); + folviteResult.setHabitationArea(archiveModel.getAreaId()); folviteResult.setHabitationCountry(archiveModel.getStreetId()); folviteResult.setHabitationAddress(archiveModel.getAddress()); + + folviteResult.setDomicileProvince(archiveModel.getProvinceRegisterId()); folviteResult.setDomicileCity(archiveModel.getCityRegisterId()); folviteResult.setDomicileArea(archiveModel.getAreaRegisterId()); folviteResult.setDomicileCountry(archiveModel.getStreetRegisterId()); folviteResult.setDomicileAddress(archiveModel.getAddressRegister()); + + return folviteResult; }