From 4d520188d6f6a6fd50325b142cfbee884a3d2455 Mon Sep 17 00:00:00 2001 From: gengxiaokai Date: Mon, 14 Jan 2019 10:17:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A8=81=E6=B5=B7=E4=BA=A7=E5=90=8E=E8=A7=82?= =?UTF-8?q?=E5=AF=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/lyms/platform/biz/dal/IRecordsDao.java | 2 + .../lyms/platform/biz/dal/impl/RecordsDaoImpl.java | 4 ++ .../biz/service/PostpartumRecordsService.java | 10 +++- .../lyms/platform/biz/service/RecordsService.java | 6 +- .../main/java/com/lyms/platform/pojo/Records.java | 18 ++++++ .../platform/query/PostpartumRecordsQuery.java | 12 ++++ .../controller/PostpartumRecordsController.java | 44 +++++++++++++- .../web/facade/PostpartumRecordsFacade.java | 69 +++++++++++++++++++++- .../web/request/PostpartumRecordsAddRequest.java | 23 ++++++-- 9 files changed, 177 insertions(+), 11 deletions(-) diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/IRecordsDao.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/IRecordsDao.java index 6c40784..b7ff097 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/IRecordsDao.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/IRecordsDao.java @@ -16,4 +16,6 @@ public interface IRecordsDao { public void updateRecordsById(Records obj,String id); + public void savaRecords(Records obj); + } diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/RecordsDaoImpl.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/RecordsDaoImpl.java index 67397ba..c02a43a 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/RecordsDaoImpl.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/RecordsDaoImpl.java @@ -29,4 +29,8 @@ public class RecordsDaoImpl extends BaseMongoDAOImpl implements IRecord update(new MongoQuery(new MongoCondition("id", id, MongoOper.IS)).convertToMongoQuery(), obj); } + public void savaRecords(Records obj){ + save(obj); + } + } diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PostpartumRecordsService.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PostpartumRecordsService.java index 3af2736..f3c8496 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PostpartumRecordsService.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PostpartumRecordsService.java @@ -20,7 +20,7 @@ public class PostpartumRecordsService { @Autowired private IPostpartumRecordsDao postpartumRecordsDao; - public List getBabySieveQuery(PostpartumRecordsQuery postpartumRecordsQuery){ + public List getPostpartumRecordsQuery(PostpartumRecordsQuery postpartumRecordsQuery){ MongoQuery query = postpartumRecordsQuery.convertToQuery(); if (StringUtils.isNotEmpty(postpartumRecordsQuery.getNeed())) { postpartumRecordsQuery.mysqlBuild(postpartumRecordsDao.queryPostpartumRecordsCount(query)); @@ -29,4 +29,12 @@ public class PostpartumRecordsService { return postpartumRecordsDao.queryPostpartumRecords(query.addOrder(Sort.Direction.DESC, "created")); } + public void savePostpartumRecords(PostpartumRecords postpartumRecords){ + postpartumRecordsDao.addPostpartumRecords(postpartumRecords); + } + + public void updatePostpartumRecords(PostpartumRecords obj,String id){ + postpartumRecordsDao.updatePostpartumRecordsById(obj,id); + } + } diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/RecordsService.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/RecordsService.java index 19d6d4c..eda1a05 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/RecordsService.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/RecordsService.java @@ -30,7 +30,11 @@ public class RecordsService { } public void updateRecordsById(Records obj,String id){ - recordsDao.updateRecordsById(obj,id); + recordsDao.updateRecordsById(obj, id); + } + + public void saveRecords(Records r){ + recordsDao.savaRecords(r); } } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/Records.java b/platform-dal/src/main/java/com/lyms/platform/pojo/Records.java index e23b73a..d8709da 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/Records.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/Records.java @@ -25,6 +25,8 @@ public class Records { private String fz;//附注 private String qm;//签名 private String isDelete;//是否有效(0:无效;1:有效) + private String created;//创建时间 + private String modified;//修改时间 public String getPostId() { return postId; @@ -145,4 +147,20 @@ public class Records { public void setIsDelete(String isDelete) { this.isDelete = isDelete; } + + public String getCreated() { + return created; + } + + public void setCreated(String created) { + this.created = created; + } + + public String getModified() { + return modified; + } + + public void setModified(String modified) { + this.modified = modified; + } } diff --git a/platform-dal/src/main/java/com/lyms/platform/query/PostpartumRecordsQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/PostpartumRecordsQuery.java index 4872f2a..364f9af 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/PostpartumRecordsQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/PostpartumRecordsQuery.java @@ -14,6 +14,7 @@ import java.util.List; */ public class PostpartumRecordsQuery extends BaseQuery implements IConvertToNativeQuery { + private String id;//主键ID private String parentId;//孕妇ID private String hospitalId;//医院ID private List idList;//孕妇ID集合 @@ -37,6 +38,9 @@ public class PostpartumRecordsQuery extends BaseQuery implements IConvertToNativ if(null != isDelete){ condition = condition.and("isDelete", isDelete, MongoOper.IS); } + if(null != id){ + condition = condition.and("id", id, MongoOper.IS); + } return condition.toMongoQuery(); } @@ -79,4 +83,12 @@ public class PostpartumRecordsQuery extends BaseQuery implements IConvertToNativ public void setIsDelete(String isDelete) { this.isDelete = isDelete; } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PostpartumRecordsController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PostpartumRecordsController.java index bacb96d..e16a4e7 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PostpartumRecordsController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PostpartumRecordsController.java @@ -5,9 +5,11 @@ import com.lyms.platform.common.base.BaseController; import com.lyms.platform.common.base.LoginContext; import com.lyms.platform.common.result.BaseResponse; import com.lyms.platform.operate.web.facade.PostpartumRecordsFacade; +import com.lyms.platform.operate.web.request.PostpartumRecordsAddRequest; import com.lyms.platform.operate.web.request.PostpartumRecordsQueryRequest; 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.ResponseBody; @@ -26,13 +28,51 @@ public class PostpartumRecordsController extends BaseController { private PostpartumRecordsFacade postpartumRecordsFacade; - @RequestMapping(value = "/postpartumRecords",method = RequestMethod.GET) + /** + * 产后观察申请 + * @param PostpartumRecordsQueryRequest + * @param request + * @return + */ + @RequestMapping(value = "/getOneRecords",method = RequestMethod.GET) @ResponseBody @TokenRequired - public BaseResponse getPostpartumRecords(@Valid PostpartumRecordsQueryRequest PostpartumRecordsQueryRequest, + public BaseResponse getOneRecords(@Valid PostpartumRecordsQueryRequest PostpartumRecordsQueryRequest, HttpServletRequest request){ LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); return postpartumRecordsFacade.queryPostpartumRecords(PostpartumRecordsQueryRequest,loginState.getId()); } + + /** + * 产后观察管理 + * @param postpartumRecordsAddRequest + * @param request + * @return + */ + @RequestMapping(value = "/postpartumRecords",method = RequestMethod.POST) + @ResponseBody + @TokenRequired + public BaseResponse getPostpartumRecords(@Valid PostpartumRecordsAddRequest postpartumRecordsAddRequest, + HttpServletRequest request){ + LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); + return postpartumRecordsFacade.getRecordsList(postpartumRecordsAddRequest, loginState.getId()); + } + + + /** + * 新增或修改记录 + * @param postpartumRecordsAddRequest + * @param request + * @return + */ + @RequestMapping(value = "/addorUpdateRecords",method = RequestMethod.POST) + @ResponseBody + @TokenRequired + public BaseResponse addorUpdateRecords(@Valid @RequestBody PostpartumRecordsAddRequest postpartumRecordsAddRequest, + HttpServletRequest request){ + LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); + return postpartumRecordsFacade.addOrUpdatePostpartumRecords(postpartumRecordsAddRequest,loginState.getId()); + } + } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumRecordsFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumRecordsFacade.java index 846c7f8..5863dcb 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumRecordsFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumRecordsFacade.java @@ -3,6 +3,7 @@ package com.lyms.platform.operate.web.facade; import com.lyms.platform.biz.service.*; import com.lyms.platform.common.base.PageInfo; import com.lyms.platform.common.constants.ErrorCodeConstants; +import com.lyms.platform.common.enums.OptActionEnums; import com.lyms.platform.common.enums.YnEnums; import com.lyms.platform.common.result.BaseListResponse; import com.lyms.platform.common.result.BaseObjectResponse; @@ -60,6 +61,8 @@ public class PostpartumRecordsFacade { private OrganizationService organizationService; @Autowired private UsersService usersService; + @Autowired + private OperateLogFacade operateLogFacade; /** @@ -97,7 +100,7 @@ public class PostpartumRecordsFacade { MaternalDeliverModel maternalDeliverModel = mdList.get(0); prQuery.setParentId(parentId); prQuery.setHospitalId(hospital); - List prList = postpartumRecordsService.getBabySieveQuery(prQuery); + List prList = postpartumRecordsService.getPostpartumRecordsQuery(prQuery); PostpartumRecords postpartumRecords = new PostpartumRecords(); if(CollectionUtils.isNotEmpty(prList)){ postpartumRecords = prList.get(0); @@ -278,7 +281,7 @@ public class PostpartumRecordsFacade { prQuery.setPage(prAddRequest.getPage()); prQuery.setIsDelete("1"); prQuery.setNeed("need"); - List postList = postpartumRecordsService.getBabySieveQuery(prQuery); + List postList = postpartumRecordsService.getPostpartumRecordsQuery(prQuery); if(CollectionUtils.isNotEmpty(postList)){ int batchSize = 3; int end = 0; @@ -323,4 +326,66 @@ public class PostpartumRecordsFacade { return baseListResponse; } + + public BaseResponse addOrUpdatePostpartumRecords(PostpartumRecordsAddRequest postpartumRecordsAddRequest,Integer userId){ + String hospitalId = autoMatchFacade.getHospitalId(userId); + PostpartumRecords pRecords = new PostpartumRecords(); + pRecords.setParentId(postpartumRecordsAddRequest.getParentId()); + pRecords.setMaternalDeliverId(postpartumRecordsAddRequest.getMaternalDeliverId()); + pRecords.setHospitalId(hospitalId); + pRecords.setTwoCxl(postpartumRecordsAddRequest.getOneCxl()); + pRecords.setTwoCxl(postpartumRecordsAddRequest.getTwoCxl()); + pRecords.setDoctor(String.valueOf(userId)); + pRecords.setGcStatus("0");//正在观察 + pRecords.setIsDelete("1");//有效数据 + pRecords.setModified(DateUtil.getyyyy_MM_dd_hms(new Date())); + + BaseResponse baseResponse = new BaseResponse(); + if (StringUtils.isNotEmpty(postpartumRecordsAddRequest.getId())){ + //更新数据 + pRecords.setId(postpartumRecordsAddRequest.getId()); + PostpartumRecordsQuery ptRecordsQuery = new PostpartumRecordsQuery(); + ptRecordsQuery.setId(postpartumRecordsAddRequest.getId()); + ptRecordsQuery.setIsDelete("1"); + List pOldRecords = postpartumRecordsService.getPostpartumRecordsQuery(ptRecordsQuery); + postpartumRecordsService.updatePostpartumRecords(pRecords,pRecords.getId()); + if(CollectionUtils.isNotEmpty(pOldRecords)){ + operateLogFacade.addModifyOptLog(userId, Integer.parseInt(hospitalId), pRecords, pOldRecords.get(0), OptActionEnums.UPDATE.getId(), "修改产后观察"); + } + if(CollectionUtils.isNotEmpty(postpartumRecordsAddRequest.getRecords())){ + List rdsList = postpartumRecordsAddRequest.getRecords(); + for(PostpartumRecordsAddRequest.Records rd : rdsList){ + Records records = null; + if(StringUtils.isNotEmpty(rd.getId())){ + //更新详情数据 + records = rd.convertToDataModel(); + records.setIsDelete("1"); + RecordsQuery recordsQuery = new RecordsQuery(); + recordsQuery.setId(rd.getId()); + recordsQuery.setIsDelete("1"); + List oldRecordsList = recordsService.getRecordsListQuery(recordsQuery); + recordsService.updateRecordsById(records,records.getId()); + if(CollectionUtils.isNotEmpty(oldRecordsList)){ + operateLogFacade.addModifyOptLog(userId, Integer.parseInt(hospitalId), records, oldRecordsList.get(0), OptActionEnums.UPDATE.getId(), "修改产后观察记录详情"); + } + }else{ + //新增详情数据 + records = rd.convertToDataModel(); + records.setIsDelete("1"); + records.setCreated(DateUtil.getyyyy_MM_dd_hms(new Date())); + records.setModified(DateUtil.getyyyy_MM_dd_hms(new Date())); + recordsService.saveRecords(records); + } + } + } + }else{ + //新增数据 + pRecords.setCreated(DateUtil.getyyyy_MM_dd_hms(new Date())); + postpartumRecordsService.savePostpartumRecords(pRecords); + } + baseResponse.setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); + baseResponse.setObject(pRecords); + return baseResponse; + } + } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PostpartumRecordsAddRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PostpartumRecordsAddRequest.java index 849adc9..0c1d32a 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PostpartumRecordsAddRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PostpartumRecordsAddRequest.java @@ -59,6 +59,7 @@ public class PostpartumRecordsAddRequest implements IBasicRequestConvert records; @@ -68,6 +69,14 @@ public class PostpartumRecordsAddRequest implements IBasicRequestConvert { + public class Records implements IBasicRequestConvert { private String id; private String date;//时间 @@ -169,8 +180,8 @@ public class PostpartumRecordsAddRequest implements IBasicRequestConvert