From bcbadb9243bbca7e407cf6fd3cf7dd2d7888ad69 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Sun, 23 Feb 2020 14:50:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E9=87=8F=E5=85=83=E7=B4=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/lyms/platform/pojo/MicroelementModel.java | 12 ++ .../com/lyms/platform/query/PatientsQuery.java | 15 ++ .../web/controller/MicroelementController.java | 222 ++++----------------- .../operate/web/facade/HealthChargeFacade.java | 2 +- .../operate/web/facade/MicroelementFacade.java | 59 +++++- 5 files changed, 124 insertions(+), 186 deletions(-) diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/MicroelementModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/MicroelementModel.java index d530953..8a08f05 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/MicroelementModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/MicroelementModel.java @@ -40,6 +40,10 @@ public class MicroelementModel extends BaseModel { private List microelements; + private String numberCode; + + + public static class Microelement implements Serializable { private static final long serialVersionUID = SerialIdEnum.Microelement.getCid(); @@ -108,6 +112,14 @@ public class MicroelementModel extends BaseModel { } } + public String getNumberCode() { + return numberCode; + } + + public void setNumberCode(String numberCode) { + this.numberCode = numberCode; + } + public String getId() { return id; } diff --git a/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java index de172a9..c06014f 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java @@ -364,6 +364,18 @@ public class PatientsQuery extends BaseQuery implements IConvertToNativeQuery { private String lowerHairOgrId; + + //条码号 + private String numberCode; + + public String getNumberCode() { + return numberCode; + } + + public void setNumberCode(String numberCode) { + this.numberCode = numberCode; + } + public String getLowerHairOgrId() { return lowerHairOgrId; } @@ -452,6 +464,9 @@ public class PatientsQuery extends BaseQuery implements IConvertToNativeQuery { if (null != pcensusTypeId) { condition = condition.and("pcensusTypeId", pcensusTypeId, MongoOper.IS); } + if (null != numberCode) { + condition = condition.and("numberCode", numberCode, MongoOper.IS); + } if (null != serviceTypeIsExist) { condition = condition.and("serviceType", serviceTypeIsExist, MongoOper.EXISTS); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/MicroelementController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/MicroelementController.java index 5a98c15..64feea8 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/MicroelementController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/MicroelementController.java @@ -5,11 +5,13 @@ import com.lyms.platform.common.base.BaseController; import com.lyms.platform.common.result.BaseResponse; import com.lyms.platform.operate.web.facade.MicroelementFacade; import com.lyms.platform.operate.web.request.AmniocentesisQueryRequest; +import com.lyms.platform.pojo.MicroelementModel; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; /** @@ -24,29 +26,45 @@ public class MicroelementController extends BaseController { @Autowired private MicroelementFacade microelementFacade; + /** + * 添加微量元素 + * @param request + * @param microelementModel + * @return + */ + @TokenRequired + @ResponseBody + @RequestMapping(value = "/saveMicroelement", method = RequestMethod.POST) + public BaseResponse saveMicroelement(HttpServletRequest request, + @RequestBody MicroelementModel microelementModel) { + + return microelementFacade.saveMicroelement(microelementModel, getUserId(request)); + + } + /** - * 查询羊穿基本信息,没有羊穿基本信息 - * 就从孕妇建档中查询建档基本信息回填 + * 微量元素报告 * @param request - * @param cardNo - * @param vcCardNo + * @param httpServletResponse + * @param type + * @param id * @return -// */ -// @TokenRequired -// @ResponseBody -// @RequestMapping(value = "/queryAmniocentesisInfo", method = RequestMethod.GET) -// public BaseResponse queryAmniocentesisInfo(HttpServletRequest request, -// @RequestParam(required = false) String cardNo, -// @RequestParam(required = false) String vcCardNo) { -// -// return amniocentesisFacade.queryAmniocentesisInfo(cardNo,vcCardNo,getUserId(request)); -// -// } + */ + @ResponseBody + @RequestMapping(method = RequestMethod.GET, value = "/queryMicroelementReport/{type}/{doctorId}/{id}") + @TokenRequired + public BaseResponse queryMicroelementReport(HttpServletRequest request, HttpServletResponse httpServletResponse, + @PathVariable Integer type, + @PathVariable String doctorId, + @PathVariable String id) + { + return microelementFacade.queryMicroelementReport(type,doctorId,id,getUserId(request)); + } /** - * 列表 + * 微量元素列表 * @param request * @return */ @@ -58,176 +76,12 @@ public class MicroelementController extends BaseController { @RequestParam(required = false) Integer weekStart, @RequestParam(required = false) Integer weekEnd, @RequestParam(required = false) Integer age, - @RequestParam(required = false) Integer page, - @RequestParam(required = false) Integer limit, + @RequestParam(required = false) Integer type, + @RequestParam(required = true) Integer page, + @RequestParam(required = true) Integer limit, @RequestParam(required = false) String vcCardNo) { - return microelementFacade.querymicroelementList(queryNo,weekStart,weekEnd,age,vcCardNo,page,limit ,getUserId(request)); + return microelementFacade.querymicroelementList(queryNo,weekStart,weekEnd,age,vcCardNo,type,page,limit ,getUserId(request)); } - - -// /** -// * 导出列表 -// * @param request -// * @param httpServletResponse -// * @param amniocentesisQueryRequest -// */ -// @RequestMapping(method = RequestMethod.GET, value = "/exportAmniocentesisList") -// @TokenRequired -// public void exportAmniocentesisList(HttpServletRequest request, HttpServletResponse httpServletResponse, -// @Valid AmniocentesisQueryRequest amniocentesisQueryRequest) -// { -// amniocentesisFacade.exportAmniocentesisList(amniocentesisQueryRequest,getUserId(request), httpServletResponse); -// } -// -// -// /** -// * 查看页面接口 -// * @param request -// * @param id -// * @return -// */ -// @TokenRequired -// @ResponseBody -// @RequestMapping(value = "/queryAmniocentesisView", method = RequestMethod.GET) -// public BaseResponse queryAmniocentesisView(HttpServletRequest request, -// @RequestParam(required = true) String id) { -// -// return amniocentesisFacade.queryAmniocentesisView(id, getUserId(request)); -// -// } -// -// -// /** -// * 保存和修改 -// * @param request -// * @param amniocentesisInfoRequest -// * @return -// */ -// @TokenRequired -// @ResponseBody -// @RequestMapping(value = "/saveOrUpdateAmnioInfo", method = RequestMethod.POST) -// public BaseResponse saveOrUpdateAmnioInfo(HttpServletRequest request, -// @RequestBody AmniocentesisInfoRequest amniocentesisInfoRequest) { -// -// return amniocentesisFacade.saveOrUpdateAmniocentesisInfo(amniocentesisInfoRequest, getUserId(request)); -// -// } -// -// -// -// -// /** -// * 根据id查询数据 -// * @param request -// * @param id -// * @return -// */ -// @TokenRequired -// @ResponseBody -// @RequestMapping(value = "/queryAmniocentesisInfoById", method = RequestMethod.GET) -// public BaseResponse queryAmniocentesisInfoById(HttpServletRequest request, -// @RequestParam(required = true) String id) { -// return amniocentesisFacade.queryAmniocentesisInfoById(id, getUserId(request)); -// -// } -// -// -// /** -// * 添加羊穿记录手术 -// * @param request -// * @param amnioRecordRequest -// * @return -// */ -// @TokenRequired -// @ResponseBody -// @RequestMapping(value = "/saveOrUpdateAmnioRecord", method = RequestMethod.POST) -// public BaseResponse saveOrUpdateAmnioRecord(HttpServletRequest request, -// @RequestBody AmnioRecordRequest amnioRecordRequest) { -// return amniocentesisFacade.saveOrUpdateAmnioRecord(amnioRecordRequest, getUserId(request)); -// -// } -// -// -// /** -// * 手术记录查看页面接口 -// * @param request -// * @param id -// * @return -// */ -// @TokenRequired -// @ResponseBody -// @RequestMapping(value = "/queryAmnioRecordView", method = RequestMethod.GET) -// public BaseResponse queryAmnioRecordView(HttpServletRequest request, -// @RequestParam(required = true) String id) { -// return amniocentesisFacade.queryAmnioRecordView(id, getUserId(request)); -// -// } -// -// -// /** -// * 根据id查询手术记录详情 -// * @param request -// * @param id -// * @return -// */ -// @TokenRequired -// @ResponseBody -// @RequestMapping(value = "/queryAmnioRecordById", method = RequestMethod.GET) -// public BaseResponse queryAmnioRecordById(HttpServletRequest request, -// @RequestParam(required = true) String id) { -// return amniocentesisFacade.queryAmnioRecordById(id, getUserId(request)); -// -// } -// -// -// -// /** -// * 添加羊穿结果 -// * @param request -// * @param amnioResultRequest -// * @return -// */ -// @TokenRequired -// @ResponseBody -// @RequestMapping(value = "/saveOrUpdateAmnioResult", method = RequestMethod.POST) -// public BaseResponse saveOrUpdateAmnioResult(HttpServletRequest request, -// @RequestBody AmnioResultRequest amnioResultRequest) { -// return amniocentesisFacade.saveOrUpdateAmnioResult(amnioResultRequest, getUserId(request)); -// -// } -// -// /** -// * 查看羊穿结果 -// * @param request -// * @param id -// * @return -// */ -// @TokenRequired -// @ResponseBody -// @RequestMapping(value = "/queryAmnioResultView", method = RequestMethod.GET) -// public BaseResponse queryAmnioResultView(HttpServletRequest request, -// @RequestParam(required = true) String id) { -// return amniocentesisFacade.queryAmnioResultView(id, getUserId(request)); -// -// } -// -// -// /** -// * 根据id查询结果 -// * @param request -// * @param id -// * @return -// */ -// @TokenRequired -// @ResponseBody -// @RequestMapping(value = "/queryAmnioResultById", method = RequestMethod.GET) -// public BaseResponse queryAmnioResultById(HttpServletRequest request, -// @RequestParam(required = true) String id) { -// return amniocentesisFacade.queryAmnioResultById(id, getUserId(request)); -// -// } - - } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HealthChargeFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HealthChargeFacade.java index 1c9516a..ed0e969 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HealthChargeFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HealthChargeFacade.java @@ -57,7 +57,7 @@ public class HealthChargeFacade { * 新增字段:报表解读人 孕妇/儿童 * * @param hospitalId 医院id - * @param healthType 打印类型 1体重 2 血糖 3 血压 4妊高症 4-儿童膳食 6体成分分析 + * @param healthType 打印类型 1体重 2 血糖 3 血压 4妊高症 4-儿童膳食 6体成分分析 7 孕期微量元素 * @param foreignId 档案id (院内建档或者临时档案id)孕妇/儿童 * @param type 打印报告类别 1普通报告 2高危报告(暂时不用) * @param source 档案来源类型 1院内建档 2零时建档 (暂时不用) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MicroelementFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MicroelementFacade.java index cdd4728..d51281c 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MicroelementFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MicroelementFacade.java @@ -5,7 +5,9 @@ import com.lyms.platform.biz.service.MicroelementService; import com.lyms.platform.biz.service.PatientsService; import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.dao.BaseQuery; +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.DateUtil; import com.lyms.platform.permission.model.PatientService; @@ -33,10 +35,14 @@ public class MicroelementFacade { @Autowired private MicroelementService microelementService; + + @Autowired + private HealthChargeFacade healthChargeFacade; + @Autowired private PatientsService patientsService; - public BaseResponse querymicroelementList(String queryNo, Integer weekStart, Integer weekEnd, Integer age, String vcCardNo, Integer page, Integer limit, Integer userId) { + public BaseResponse querymicroelementList(String queryNo, Integer weekStart, Integer weekEnd, Integer age, String vcCardNo,Integer type ,Integer page, Integer limit, Integer userId) { List dataList = new ArrayList(); @@ -98,6 +104,7 @@ public class MicroelementFacade { data.put("phone",patients.getPhone()); data.put("vcCardNo",patients.getVcCardNo()); data.put("cardNo",patients.getCardNo()); + data.put("microelements", model.getMicroelements()); data.put("age", DateUtil.getAge(patients.getBirth(), model.getCreated())); data.put("week", DateUtil.getWeekDesc(patients.getLastMenses(), model.getCreated())); data.put("created", DateUtil.getyyyy_MM_dd(model.getCreated())); @@ -108,4 +115,54 @@ public class MicroelementFacade { return new BaseListResponse().setData(dataList). setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setPageInfo(query.getPageInfo()); } + + public BaseResponse queryMicroelementReport(Integer type,String doctorId, String id, Integer userId) { + Map data = new HashMap(); + + String hospitalId = autoMatchFacade.getHospitalId(userId); + + MicroelementQuery query = new MicroelementQuery(); + query.setType(type); + query.setId(id); + MicroelementModel model = microelementService.queryOneMicroelement(query); + if (model != null) + { + Patients pat = patientsService.findOnePatientById(model.getPatientId()); + data.put("userName",pat.getUsername()); + data.put("age", DateUtil.getAge(pat.getBirth(), model.getCreated())); + data.put("week", DateUtil.getWeekDesc(pat.getLastMenses(), model.getCreated())); + data.put("microelements", model.getMicroelements()); + data.put("created", DateUtil.getyyyy_MM_dd(model.getCreated())); + } + + healthChargeFacade.addHealthCharge(hospitalId, 7, model.getPatientId(), 1, 1, userId, doctorId, false); + return new BaseObjectResponse().setData(data). + setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); + } + + public BaseResponse saveMicroelement(MicroelementModel microelementModel, Integer userId) { + String hospitalId = autoMatchFacade.getHospitalId(userId); + PatientsQuery patientsQuery = new PatientsQuery(); + patientsQuery.setYn(YnEnums.YES.getId()); + patientsQuery.setHospitalId(hospitalId); + patientsQuery.setType(1); + patientsQuery.setNumberCode(microelementModel.getNumberCode()); + List patients = patientsService.queryPatient(patientsQuery); + if (CollectionUtils.isNotEmpty(patients)) + { + Patients pat = patients.get(0); + microelementModel.setHospitalId(hospitalId); + microelementModel.setPatientId(pat.getId()); + microelementModel.setPid(pat.getPid()); + microelementModel.setBirthday(pat.getBirth()); + microelementModel.setLastMenses(pat.getLastMenses()); + microelementModel.setType(0); + microelementModel.setCreated(new Date()); + microelementModel.setModified(new Date()); + microelementService.add(microelementModel); + } + + return new BaseResponse(). + setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); + } } -- 1.8.3.1