From 14dc2d976fb305229b7ef8db71a56cef44081a6a Mon Sep 17 00:00:00 2001 From: wangbo <184677810@qq.com> Date: Fri, 31 May 2019 09:18:48 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=AB=E9=AB=98=20=E8=85=B9=E5=9B=B4=20?= =?UTF-8?q?=E7=AD=89=E5=AD=97=E6=AE=B5=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AntenatalExaminationController.java | 104 +++++++--- .../operate/web/facade/AntExRecordFacade.java | 228 +++++++++++++-------- .../operate/web/facade/BabyNutritionFacade.java | 8 +- 3 files changed, 220 insertions(+), 120 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/AntenatalExaminationController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/AntenatalExaminationController.java index a787e77..823fb96 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/AntenatalExaminationController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/AntenatalExaminationController.java @@ -31,6 +31,8 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; +import java.awt.*; +import java.util.List; import java.util.Map; /** @@ -79,8 +81,8 @@ public class AntenatalExaminationController extends BaseController { @Autowired private CouponService couponService; + /** - * * @return */ @RequestMapping(method = RequestMethod.GET, value = "/hischecklist") @@ -97,29 +99,26 @@ public class AntenatalExaminationController extends BaseController { return new BaseListResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setData(qhdfyHisService.queryCheckList(cardNo)); } else { return new BaseResponse().setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("没有数据"); - + } } - @RequestMapping(method = RequestMethod.GET, value = "/fm") @ResponseBody - public String getFm(String start,String end,String syxh){ - zcfyFmService.queryFmPatient(start,end,syxh); + public String getFm(String start, String end, String syxh) { + zcfyFmService.queryFmPatient(start, end, syxh); return "1"; } - - /** * gxk * 返回新的按照日期分类的数据 */ @RequestMapping(method = RequestMethod.GET, value = "/hischecklistbydate") @ResponseBody - public BaseResponse queryHisCheckList2(String cardNo, int ftype,HttpServletRequest request) { + public BaseResponse queryHisCheckList2(String cardNo, int ftype, HttpServletRequest request) { if ("1".equals(HIS_VERSION)) { return new BaseListResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setData(hisServiceV1.queryCheckListupdate(cardNo, ftype)); } else if ("2".equals(HIS_VERSION)) { @@ -130,16 +129,15 @@ public class AntenatalExaminationController extends BaseController { return new BaseListResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setData(qhdfyHisService.queryCheckListupdate(cardNo, ftype)); } else if ("6".equals(HIS_VERSION)) { return new BaseListResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setData(dzfyHisService.queryCheckListupdate(cardNo, ftype)); - } else if ("7".equals(HIS_VERSION)){ + } else if ("7".equals(HIS_VERSION)) { return new BaseListResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setData(nczxyyLisService.queryCheckListupdate(cardNo, ftype)); } else { return new BaseResponse().setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("没有数据"); - + } } - /** * 查询产前检查 * @@ -149,12 +147,12 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.GET, value = "/antexmanage") @ResponseBody @TokenRequired - public BaseResponse queryAntenatalExamination(@Valid AntenatalExaminationQueryRequest antenatalExaminationQueryRequest,HttpServletRequest request) { - if (StringUtils.isEmpty(antenatalExaminationQueryRequest.getCardNo()) && StringUtils.isEmpty(antenatalExaminationQueryRequest.getVcCardNo())&&StringUtils.isEmpty(antenatalExaminationQueryRequest.getBarCode())) { + public BaseResponse queryAntenatalExamination(@Valid AntenatalExaminationQueryRequest antenatalExaminationQueryRequest, HttpServletRequest request) { + if (StringUtils.isEmpty(antenatalExaminationQueryRequest.getCardNo()) && StringUtils.isEmpty(antenatalExaminationQueryRequest.getVcCardNo()) && StringUtils.isEmpty(antenatalExaminationQueryRequest.getBarCode())) { return new BaseResponse().setErrorcode(ErrorCodeConstants.PARAMETER_ERROR).setErrormsg("请输入查询条件"); } LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); - return antenatalExaminationFacade.queryAntenatalExamination(antenatalExaminationQueryRequest,loginState.getId()); + return antenatalExaminationFacade.queryAntenatalExamination(antenatalExaminationQueryRequest, loginState.getId()); } /** @@ -166,7 +164,7 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.POST, value = "/antexmanage") @ResponseBody @TokenRequired - public BaseResponse addOneAntenatalExamination(@Valid @RequestBody AntExAddRequest antExAddRequest,HttpServletRequest request) { + public BaseResponse addOneAntenatalExamination(@Valid @RequestBody AntExAddRequest antExAddRequest, HttpServletRequest request) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); BaseResponse baseResponse = antenatalExaminationFacade.addOneAntEx(antExAddRequest, loginState.getId()); @@ -183,9 +181,9 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.POST, value = "/antex") @ResponseBody @TokenRequired - public BaseResponse addOneAntEx(@Valid @RequestBody AntExcAddRequest antExcAddRequest,HttpServletRequest request) { + public BaseResponse addOneAntEx(@Valid @RequestBody AntExcAddRequest antExcAddRequest, HttpServletRequest request) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); - StopWatch stopWatch=new StopWatch("start post antex"); + StopWatch stopWatch = new StopWatch("start post antex"); stopWatch.start("addOneAnetExChu"); BaseResponse baseResponse = antenatalExaminationFacade.addOneAnetExChu(antExcAddRequest, loginState.getId()); stopWatch.stop(); @@ -220,7 +218,7 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.DELETE, value = "/antex") @ResponseBody @TokenRequired - public BaseResponse delOneAntById(@Valid AntExQueryRequest antExQueryRequest,HttpServletRequest request) { + public BaseResponse delOneAntById(@Valid AntExQueryRequest antExQueryRequest, HttpServletRequest request) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); return antenatalExaminationFacade.delOneAntEx(antExQueryRequest, loginState.getId()); } @@ -235,6 +233,7 @@ public class AntenatalExaminationController extends BaseController { /** * 查询高危因素 包括禁用了的 + * * @return */ @RequestMapping(method = RequestMethod.GET, value = "/antex/getRiskEnums") @@ -252,7 +251,7 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.GET, value = "/antex/antexlist") @ResponseBody @TokenRequired - public BaseResponse findAntExList(@Valid AntExListQueryRequest exListQueryRequest,HttpServletRequest request) { + public BaseResponse findAntExList(@Valid AntExListQueryRequest exListQueryRequest, HttpServletRequest request) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); return antenatalExaminationFacade.findAntExListTwo(exListQueryRequest, loginState.getId()); } @@ -265,7 +264,7 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.GET, value = "/antex/antexrecordlist") @ResponseBody @TokenRequired - public BaseResponse findAntEx(@Valid AntExManagerQueryRequest antExManagerQueryRequest,HttpServletRequest request){ + public BaseResponse findAntEx(@Valid AntExManagerQueryRequest antExManagerQueryRequest, HttpServletRequest request) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); return antExRecordFacade.findList(antExManagerQueryRequest, loginState.getId(), false, "true"); } @@ -273,20 +272,19 @@ public class AntenatalExaminationController extends BaseController { /** * 导出产检管理接口 + * * @param antExManagerQueryRequest * @param request * @return */ @RequestMapping(method = RequestMethod.GET, value = "/antex/exportAntexrecordlist") @TokenRequired - public void exportFindAntEx(@Valid AntExManagerQueryRequest antExManagerQueryRequest,HttpServletRequest request,HttpServletResponse httpServletResponse){ + public void exportFindAntEx(@Valid AntExManagerQueryRequest antExManagerQueryRequest, HttpServletRequest request, HttpServletResponse httpServletResponse) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); - antExRecordFacade.exportFindAntEx(antExManagerQueryRequest, loginState.getId(), false, httpServletResponse); + antExRecordFacade.exportFindAntEx(antExManagerQueryRequest, loginState.getId(), false, httpServletResponse); } - - /** * 产检区域管理接口 * @@ -295,7 +293,7 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.GET, value = "/antex/rantexrecordlist") @ResponseBody @TokenRequired - public BaseResponse findRegionAntEx(@Valid AntExManagerQueryRequest antExManagerQueryRequest,HttpServletRequest request){ + public BaseResponse findRegionAntEx(@Valid AntExManagerQueryRequest antExManagerQueryRequest, HttpServletRequest request) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); return antExRecordFacade.findList(antExManagerQueryRequest, loginState.getId(), true, "true"); } @@ -308,10 +306,11 @@ public class AntenatalExaminationController extends BaseController { */ @RequestMapping(method = RequestMethod.GET, value = "/antex/exportrantexrecordlist") @TokenRequired - public void exportfindRegionAntEx(@Valid AntExManagerQueryRequest antExManagerQueryRequest,HttpServletRequest request,HttpServletResponse httpServletResponse){ + public void exportfindRegionAntEx(@Valid AntExManagerQueryRequest antExManagerQueryRequest, HttpServletRequest request, HttpServletResponse httpServletResponse) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); antExRecordFacade.exportfindRegionAntEx(antExManagerQueryRequest, loginState.getId(), true, httpServletResponse); } + /** * 产检劵检查验证 * @@ -320,7 +319,7 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.GET, value = "/checkticket") @TokenRequired @ResponseBody - public BaseResponse checkTicket(String barCode,HttpServletRequest request){ + public BaseResponse checkTicket(String barCode, HttpServletRequest request) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); if (StringUtils.isNotBlank(barCode)) { String code = checkTicketService.updateTicket(barCode, 2, autoMatchFacade.getHospitalId(loginState.getId())); @@ -340,13 +339,14 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.GET, value = "/last") @TokenRequired @ResponseBody - public BaseResponse getLastCheck(HttpServletRequest request,@RequestParam("parentId")String pid){ + public BaseResponse getLastCheck(HttpServletRequest request, @RequestParam("parentId") String pid) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); return antenatalExaminationFacade.getLastCheck(loginState.getId(), pid); } /** * 最后高危因素 + * * @param patientId * @param request * @return @@ -354,7 +354,7 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.GET, value = "/getLastRisk") @ResponseBody @TokenRequired - public BaseResponse getLastRisk(@RequestParam(required = true) String patientId,HttpServletRequest request) { + public BaseResponse getLastRisk(@RequestParam(required = true) String patientId, HttpServletRequest request) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); return antenatalExaminationFacade.getLastRisk(patientId, loginState.getId()); } @@ -362,6 +362,7 @@ public class AntenatalExaminationController extends BaseController { /** * 宫高曲线图 + * * @param patientId * @param request * @return @@ -369,7 +370,7 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.GET, value = "/getGongGaoCurve") @ResponseBody @TokenRequired - public BaseResponse getGongGaoLine(@RequestParam(required = true) String patientId,HttpServletRequest request) { + public BaseResponse getGongGaoLine(@RequestParam(required = true) String patientId, HttpServletRequest request) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); return antenatalExaminationFacade.getGongGaoLine(patientId, loginState.getId()); } @@ -384,7 +385,7 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.POST, value = "/getAntenatalExRisk") @ResponseBody @TokenRequired - public BaseResponse getAntenatalExRisk(@Valid @RequestBody AntExAddRequest antExAddRequest,HttpServletRequest request) { + public BaseResponse getAntenatalExRisk(@Valid @RequestBody AntExAddRequest antExAddRequest, HttpServletRequest request) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); BaseResponse baseResponse = antenatalExaminationFacade.getAntenatalExRisk(antExAddRequest, loginState.getId()); return baseResponse; @@ -399,7 +400,7 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.POST, value = "/getAntexExRisk") @ResponseBody @TokenRequired - public BaseResponse getAntexExRisk(@Valid @RequestBody AntExcAddRequest antExcAddRequest,HttpServletRequest request) { + public BaseResponse getAntexExRisk(@Valid @RequestBody AntExcAddRequest antExcAddRequest, HttpServletRequest request) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); BaseResponse baseResponse = antenatalExaminationFacade.getAntexExRisk(antExcAddRequest, loginState.getId()); return baseResponse; @@ -408,6 +409,7 @@ public class AntenatalExaminationController extends BaseController { /** * 查询某段返回内的高危孕妇 + * * @param antExManagerQueryRequest * @param request * @return @@ -415,12 +417,48 @@ public class AntenatalExaminationController extends BaseController { @RequestMapping(method = RequestMethod.GET, value = "/antex/getRangeRiskAntexlist") @ResponseBody @TokenRequired - public BaseResponse getRangeRiskAntexlist(@Valid AntExManagerQueryRequest antExManagerQueryRequest,HttpServletRequest request){ + public BaseResponse getRangeRiskAntexlist(@Valid AntExManagerQueryRequest antExManagerQueryRequest, HttpServletRequest request) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); return antExRecordFacade.getRangeRiskAntexlist(antExManagerQueryRequest, loginState.getId()); } + /** + * 小程序添加产检记录 + */ + @RequestMapping(value = "/wx/input", method = RequestMethod.POST) + @ResponseBody + public BaseResponse inputWxData( + @RequestParam(value = "fuh", required = false) String fuh, + @RequestParam(value = "abdominalGirth") String abdominalGirth, + @RequestParam(value = "fhr") String fhr, + @RequestParam(value = "pid") String pid, + @RequestParam(value = "hospitalId") String hospitalId, + @RequestParam(value = "nextTime") String nextTime) { + return antExRecordFacade.inputWxData(fuh, abdominalGirth, fhr, pid, hospitalId, nextTime); + } + + /** + * 小程序返回产检历史数据 + */ + @RequestMapping(value = "/wx/queryAnteHistory", method = RequestMethod.GET) + @ResponseBody + public BaseResponse queryAnteHistory( + @RequestParam(value = "pid", required = false) String pid, + @RequestParam(value = "hospitalId") String hospitalId) { + + return antExRecordFacade.queryAnteHistory(hospitalId, pid); + } + @RequestMapping(value = "/queryAnte", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public BaseResponse queryOne(HttpServletRequest request, + @RequestParam(value = "pid", required = false) String pid + + ) { + LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); + return antExRecordFacade.querOne(loginState.getId(), pid); + } } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java index bf46505..fa40569 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java @@ -1,10 +1,12 @@ package com.lyms.platform.operate.web.facade; +import com.lyms.platform.biz.dal.IFolicAcidDao; import com.lyms.platform.biz.service.*; import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.enums.RiskDefaultTypeEnum; 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.*; import com.lyms.platform.operate.web.request.AntExManagerQueryRequest; @@ -20,11 +22,16 @@ import com.lyms.platform.permission.service.OrganizationService; import com.lyms.platform.permission.service.UsersService; import com.lyms.platform.pojo.*; import com.lyms.platform.query.*; +import jdk.nashorn.internal.ir.LiteralNode; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.math.NumberUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.data.domain.Sort; +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.data.mongodb.core.query.Update; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import org.springframework.stereotype.Component; @@ -65,6 +72,9 @@ public class AntExRecordFacade { @Qualifier("commonThreadPool") private ThreadPoolTaskExecutor commonThreadPool; + @Autowired + private MongoTemplate mongoTemplate; + public void syncAntRecordToList(String hospitalId) { recordService.syncAntRecordToList(hospitalId); } @@ -99,23 +109,17 @@ public class AntExRecordFacade { antExRecordQuery.setCityId(antExManagerQueryRequest.getCityId()); antExRecordQuery.setAreaId(antExManagerQueryRequest.getAreaId()); antExRecordQuery.setStreetId(antExManagerQueryRequest.getStreetId()); - if (antExManagerQueryRequest.getFirst() != null && antExManagerQueryRequest.getFirst() == 2) - { + if (antExManagerQueryRequest.getFirst() != null && antExManagerQueryRequest.getFirst() == 2) { antExRecordQuery.setFirst(antExManagerQueryRequest.getFirst()); } - if (antExManagerQueryRequest.getIsOpinion() != null) - { + if (antExManagerQueryRequest.getIsOpinion() != null) { //是否有处理意见 0否 1是 - if (antExManagerQueryRequest.getIsOpinion() == 0) - { + if (antExManagerQueryRequest.getIsOpinion() == 0) { antExRecordQuery.setIsOpinion(false); - } - else if (antExManagerQueryRequest.getIsOpinion() == 1) - { + } else if (antExManagerQueryRequest.getIsOpinion() == 1) { antExRecordQuery.setIsOpinion(true); - if (StringUtils.isNotEmpty(antExManagerQueryRequest.getTreatOpinion())) - { + if (StringUtils.isNotEmpty(antExManagerQueryRequest.getTreatOpinion())) { antExRecordQuery.setTreatOpinion(antExManagerQueryRequest.getTreatOpinion()); } } @@ -254,14 +258,13 @@ public class AntExRecordFacade { } String hospital = autoMatchFacade.getHospitalId(userId); - List antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery,Sort.Direction.DESC,"created"); - List data = getAntExRecords(antExRecordModelList, hospital, isRegion, antExManagerQueryRequest.getShowDetail()); + List antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery, Sort.Direction.DESC, "created"); + List data = getAntExRecords(antExRecordModelList, hospital, isRegion, antExManagerQueryRequest.getShowDetail()); return new BaseListResponse().setData(data).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setPageInfo(antExRecordQuery.getPageInfo()); } - private List getAntExRecords( List antExRecordModelList,String hospital,boolean isRegion,Integer isShowDetail) - { + private List getAntExRecords(List antExRecordModelList, String hospital, boolean isRegion, Integer isShowDetail) { List data = new ArrayList<>(); if (CollectionUtils.isNotEmpty(antExRecordModelList)) { int batchSize = 4; @@ -273,7 +276,7 @@ public class AntExRecordFacade { end = antExRecordModelList.size(); } listFuture.add(commonThreadPool.submit(new AntExRecordWorker(antExRecordModelList.subList(i, end), isRegion, - organizationService, usersService, recordService, commonService, hospital, basicConfigService, antExService,patientsService))); + organizationService, usersService, recordService, commonService, hospital, basicConfigService, antExService, patientsService))); } for (Future f : listFuture) { try { @@ -285,8 +288,8 @@ public class AntExRecordFacade { } Organization og = organizationService.getOrganization(Integer.valueOf(hospital)); - if(og!=null&&"2".equals(og.getCityId())&&isShowDetail==1){//需要隐藏姓名、地址 - for (AntExManagerResult result:data){ + if (og != null && "2".equals(og.getCityId()) && isShowDetail == 1) {//需要隐藏姓名、地址 + for (AntExManagerResult result : data) { result.setName(StringUtils.encryName(result.getName())); result.setAddr(StringUtils.encryAddr(result.getAddr())); } @@ -440,11 +443,11 @@ public class AntExRecordFacade { Integer score = 0; List> results = commonService.resolveOtherRisk(risk); if (CollectionUtils.isNotEmpty(results)) { - for(Map result : results){ + for (Map result : results) { //高危因素名字 - name.append(result.get("name").toString()+","); + name.append(result.get("name").toString() + ","); String level = result.get("levelId").toString(); - score += NumberUtils.toInt(result.get("score").toString(),0); + score += NumberUtils.toInt(result.get("score").toString(), 0); if (org.apache.commons.lang.StringUtils.isNotEmpty(level) && !"null".equals(level)) { e.gethLevel().add(level); } @@ -454,11 +457,11 @@ public class AntExRecordFacade { antExManagerResult.setrLevel(commonService.findRiskLevel(e.gethLevel())); String ri = commonService.resloveFactor(e.gethRisk()); if (ri.isEmpty()) { - if(StringUtils.isNotEmpty(name.toString())){ - ri = name.substring(0,name.length()-1); + if (StringUtils.isNotEmpty(name.toString())) { + ri = name.substring(0, name.length() - 1); } } else if (StringUtils.isNotEmpty(name.toString())) { - ri += "," + name.substring(0,name.length()-1); + ri += "," + name.substring(0, name.length() - 1); } antExManagerResult.setrRisk(ri); antExManagerResult.setScore((e.gethScore() + score)); @@ -618,46 +621,40 @@ public class AntExRecordFacade { parentIds.add(pa.getId()); } antExRecordQuery.setParentIds(parentIds); - } - else - { + } else { return new BaseListResponse().setData(new ArrayList()).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); } } //antExRecordQuery.setLevelId(antExManagerQueryRequest.getLevel()); - List antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery, Sort.Direction.DESC,"created"); - System.out.println("antExRecordModelList===================="+antExRecordModelList.size()); - Map> map = handleAntexRecord(antExRecordModelList); + List antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery, Sort.Direction.DESC, "created"); + System.out.println("antExRecordModelList====================" + antExRecordModelList.size()); + Map> map = handleAntexRecord(antExRecordModelList); AntExRecordQuery pageAntExRecordsQuery = new AntExRecordQuery(); //查询产检新增的高危分页记录 - List pageAntExRecords = getIncrRiskAntexRecard(map,pageAntExRecordsQuery, antExManagerQueryRequest); + List pageAntExRecords = getIncrRiskAntexRecard(map, pageAntExRecordsQuery, antExManagerQueryRequest); //查询产检详情 - List data = getAntExRecords(pageAntExRecords, hospitalId, false, antExManagerQueryRequest.getShowDetail()); + List data = getAntExRecords(pageAntExRecords, hospitalId, false, antExManagerQueryRequest.getShowDetail()); return new BaseListResponse().setData(data).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setPageInfo(pageAntExRecordsQuery.getPageInfo()); } - private List getIncrRiskAntexRecard(final Map> map,AntExRecordQuery pageAntExRecordsQuery,final AntExManagerQueryRequest request) - { + private List getIncrRiskAntexRecard(final Map> map, AntExRecordQuery pageAntExRecordsQuery, final AntExManagerQueryRequest request) { initBasicData(); List ids = new ArrayList<>(); - Map> incriskMap = new HashMap<>(); + Map> incriskMap = new HashMap<>(); - if (map.size() > 0) - { + if (map.size() > 0) { List parentIds = new ArrayList<>(); - for (String patientId : map.keySet()) - { + for (String patientId : map.keySet()) { parentIds.add(patientId); } - if (CollectionUtils.isNotEmpty(parentIds)) - { + if (CollectionUtils.isNotEmpty(parentIds)) { List listFuture = new ArrayList<>(); int batchSize = 40; @@ -759,8 +756,8 @@ public class AntExRecordFacade { } } } - result.put("ids",ids); - result.put("inc",incriskMap); + result.put("ids", ids); + result.put("inc", incriskMap); } return result; } @@ -768,14 +765,12 @@ public class AntExRecordFacade { for (Future f : listFuture) { try { - Map fmap = (Map) f.get(30, TimeUnit.SECONDS); - if (fmap.get("ids") != null) - { - ids.addAll((List)fmap.get("ids")); + Map fmap = (Map) f.get(30, TimeUnit.SECONDS); + if (fmap.get("ids") != null) { + ids.addAll((List) fmap.get("ids")); } - if (fmap.get("inc") != null) - { - incriskMap.putAll((Map)fmap.get("inc")); + if (fmap.get("inc") != null) { + incriskMap.putAll((Map) fmap.get("inc")); } } catch (Exception e) { ExceptionUtils.catchException(e, "antexrecord findList get result future error."); @@ -786,8 +781,7 @@ public class AntExRecordFacade { riskBasicMap.clear(); } - if (CollectionUtils.isEmpty(ids)) - { + if (CollectionUtils.isEmpty(ids)) { return null; } pageAntExRecordsQuery.setNeed("true"); @@ -798,10 +792,8 @@ public class AntExRecordFacade { List pageAntExRecords = recordService.queryAntExRecords(pageAntExRecordsQuery); - if (CollectionUtils.isNotEmpty(pageAntExRecords)) - { - for (AntExRecordModel model : pageAntExRecords) - { + if (CollectionUtils.isNotEmpty(pageAntExRecords)) { + for (AntExRecordModel model : pageAntExRecords) { model.setIncrhRisk(incriskMap.get(model.getId())); } } @@ -810,13 +802,10 @@ public class AntExRecordFacade { } - private boolean isExistsLevel(String level,List incrHrisks) - { - if (StringUtils.isNotEmpty(level)) - { + private boolean isExistsLevel(String level, List incrHrisks) { + if (StringUtils.isNotEmpty(level)) { List list = riskBasicMap.get(level); - if (CollectionUtils.isNotEmpty(list)) - { + if (CollectionUtils.isNotEmpty(list)) { return list.containsAll(incrHrisks); } return false; @@ -824,10 +813,9 @@ public class AntExRecordFacade { return true; } - private Map> riskBasicMap = new HashMap<>(); + private Map> riskBasicMap = new HashMap<>(); - private void initBasicData() - { + private void initBasicData() { BasicConfigQuery basicConfigQuery = new BasicConfigQuery(); basicConfigQuery.setYn(YnEnums.YES.getId()); basicConfigQuery.setParentId(SystemConfig.HIGH_RISK_ID); @@ -843,49 +831,121 @@ public class AntExRecordFacade { ids.add(bc.getId()); } } - riskBasicMap.put(basicConfig.getId(),ids); + riskBasicMap.put(basicConfig.getId(), ids); } } } - private boolean getConditionRisk(String riskId,List incrHrisk,String level) - { - if (StringUtils.isEmpty(riskId)) - { - return isExistsLevel(level,incrHrisk); + private boolean getConditionRisk(String riskId, List incrHrisk, String level) { + if (StringUtils.isEmpty(riskId)) { + return isExistsLevel(level, incrHrisk); } - return incrHrisk.contains(riskId) && isExistsLevel(level,incrHrisk); + return incrHrisk.contains(riskId) && isExistsLevel(level, incrHrisk); } /** * 把同一个人的产检记录放入集合 + * * @param antExRecordModelList * @return */ - private Map> handleAntexRecord(List antExRecordModelList) - { - Map> map = new HashMap<>(); - if (CollectionUtils.isNotEmpty(antExRecordModelList)) - { - for (AntExRecordModel recordModel : antExRecordModelList) - { + private Map> handleAntexRecord(List antExRecordModelList) { + Map> map = new HashMap<>(); + if (CollectionUtils.isNotEmpty(antExRecordModelList)) { + for (AntExRecordModel recordModel : antExRecordModelList) { List list = map.get(recordModel.getParentId()); - if (CollectionUtils.isEmpty(list)) - { + if (CollectionUtils.isEmpty(list)) { list = new ArrayList<>(); } - if (list.size() < 2) - { + if (list.size() < 2) { list.add(recordModel); - map.put(recordModel.getParentId(),list); + map.put(recordModel.getParentId(), list); } } } return map; } + /** + * 小程序产检录入 + */ + public BaseResponse inputWxData(String fuh, String abdominalGirth, String fhr, String pid, String hospitalId, String nextTime) { + WxMeasureInfoModel wxMeasureInfo = new WxMeasureInfoModel(); + if (StringUtils.isNotEmpty(pid) && StringUtils.isNotEmpty(hospitalId)) { + List listMap = new ArrayList<>(); + Map yumInfosMap = new HashMap<>(); + yumInfosMap.put("inputTime", DateUtil.getyyyy_MM_dd(new Date())); + yumInfosMap.put("fuh", fuh); + yumInfosMap.put("abdominalGirth", abdominalGirth); + yumInfosMap.put("fhr", fhr); + yumInfosMap.put("nextTime", nextTime); + WxMeasureInfoModel wxMeasure = mongoTemplate.findOne(Query.query(Criteria.where("pid").is(pid).and("type").is("1")), WxMeasureInfoModel.class); + if (null == wxMeasure) { + listMap.add(yumInfosMap); + wxMeasureInfo.setYumInfos(listMap); + wxMeasureInfo.setType("1"); + wxMeasureInfo.setCreateTime(new Date()); + wxMeasureInfo.setPid(pid); + wxMeasureInfo.setHospitalId(hospitalId); + mongoTemplate.insert(wxMeasureInfo); + } else { + WxMeasureInfoModel wxMeasureInfoModel = mongoTemplate.findOne(Query.query(Criteria.where("pid").is(pid).and("type").is("1")), WxMeasureInfoModel.class); + boolean exist = false; + if (CollectionUtils.isNotEmpty(wxMeasureInfoModel.getYumInfos())) { + List historyMap = wxMeasureInfoModel.getYumInfos(); + for (Map map : historyMap) { + String inputTime = map.get("inputTime").toString(); + String currentTime = DateUtil.getyyyy_MM_dd(new Date()); + if (currentTime.equals(inputTime)) { + exist = true; + map.putAll(yumInfosMap); + break; + } + } + if (!exist) { + historyMap.add(yumInfosMap); + } + } + Update update = MongoConvertHelper.convertToNativeUpdate(ReflectionUtils.getUpdateField(wxMeasureInfoModel)); + mongoTemplate.updateFirst(Query.query(Criteria.where("pid").is(pid)), update, WxMeasureInfoModel.class); + } + } else { + return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.DEPT_NOT_EXISTS).setErrormsg("未获取到医院名称!"); + } + return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); + } + + public BaseResponse queryAnteHistory(String hospitalId, String pid) { + if (StringUtils.isNotEmpty(hospitalId) && StringUtils.isNotEmpty(pid)) { + WxMeasureInfoModel wxMeasureInfo = mongoTemplate.findOne(Query.query(Criteria.where("pid").is(pid).and("hospitalId").is(hospitalId)), WxMeasureInfoModel.class); + if (null != wxMeasureInfo) { + return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setData(wxMeasureInfo.getYumInfos()).setErrormsg("成功"); + } + } + return null; + } + + + public BaseResponse querOne(Integer userId, String pid) { + String hospital = autoMatchFacade.getHospitalId(userId); + + if (StringUtils.isNotEmpty(pid)) { + WxMeasureInfoModel wxMeasureInfo = mongoTemplate.findOne(Query.query(Criteria.where("pid").is(pid).and("hospitalId").is(hospital).and("type").is("1")), WxMeasureInfoModel.class); + if (null != wxMeasureInfo) { + List listMap = wxMeasureInfo.getYumInfos(); + for (Map map : listMap) { + String inputTime = map.get("inputTime").toString(); + String currentTime = DateUtil.getyyyy_MM_dd(new Date()); + if (currentTime.equals(inputTime)) { + return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setData(map).setErrormsg("成功"); + } + } + } + } + return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setData("").setErrormsg("成功"); + } } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyNutritionFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyNutritionFacade.java index bfa2843..14484ee 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyNutritionFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyNutritionFacade.java @@ -1287,6 +1287,8 @@ public class BabyNutritionFacade { String kaupEvaluate = getBabyStatus(month, baby.getSex(), model.getHeight(), model.getWeight(), bmi); map.put("bmi", bmi); map.put("kaupEvaluate", kaupEvaluate); + //获取热量值 体重在正常范围内的不计算热量值 + double kaul = getKcal(month, model.getWeight(), model.getHeight(), baby.getSex(), kaupEvaluate); if (month >= 0 && month <= 5) { List babyDietReport = mongoTemplate.find(Query.query(Criteria.where("monthAge").is(month).and("feedingPattern").is(Integer.valueOf(model.getFeedType()))), BabyDietReportModel.class); for (BabyDietReportModel babyDiet : babyDietReport) { @@ -1349,8 +1351,7 @@ public class BabyNutritionFacade { } } } - //获取热量值 体重在正常范围内的不计算热量值 - double kaul = getKcal(month, model.getWeight(), model.getHeight(), baby.getSex(), kaupEvaluate); + map.put("kaul", kaul + "kacl"); data.put("userInfo", map); if ((kaupEvaluate.equals("消瘦") || kaupEvaluate.equals("超重")) && month >= 6 && month <= 11) { @@ -1408,7 +1409,8 @@ public class BabyNutritionFacade { } } } - + healthChargeFacade.addHealthCharge(hospitalId, 5, baby.getId(), null, null, + userId, model.getInterpretDoctorId(), true, model.getId()); } objectResponse.setData(data); objectResponse.setErrorcode(ErrorCodeConstants.SUCCESS); -- 1.8.3.1