From fa9ca215e8ba10408756c788eaa5eb6a8558303c Mon Sep 17 00:00:00 2001 From: wangbo <184677810@qq.com> Date: Sat, 15 Jun 2019 11:03:23 +0800 Subject: [PATCH] =?UTF-8?q?=E5=87=BA=E9=99=A2=E5=B0=8F=E7=BB=93=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lyms/hospitalapi/qhdfy/QhdfyHisService.java | 18 +++- .../controller/DischargeAbstractController.java | 18 +++- .../web/facade/DischargeAbstractFacade.java | 112 ++++++++++++++------- 3 files changed, 105 insertions(+), 43 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyHisService.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyHisService.java index 780ff98..6820565 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyHisService.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyHisService.java @@ -870,8 +870,9 @@ public class QhdfyHisService { String finalDiagnosis, Integer page, Integer limit) { List> result = new ArrayList<>(); String startDate = startDischargeDate + "00:00:00"; - String endDate = endDischargeDate + "00:00:00"; + String endDate = endDischargeDate + "23:59:59"; SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); + SimpleDateFormat sdfcyrq = new SimpleDateFormat("yyyyMMddHH:mm:ss"); PageInfo pageInfo = new PageInfo(); int startPage = 1; int endlimit = 10; @@ -918,7 +919,7 @@ public class QhdfyHisService { } sql = hospitalizationNoSql + babyNameSql + finalDiagnosisSql + dischargeDateSql + birthDateSql; } - String sqls = "select * from (select top 99999999 ROW_NUMBER() OVER(ORDER BY lrrq DESC ) " + + String sqls = "select * from (select top 99999999 ROW_NUMBER() OVER(ORDER BY cyrq DESC ) " + "AS ROWID,blh,cyrq,hzxm,sex,birth,cyzdmc from VW_LYMS_XSE_BRSYK where cyrq is not null " + sql + ") " + "AS TEMP where ROWID BETWEEN " + startPage + " and " + endlimit + " order by ROWID Asc"; @@ -932,7 +933,7 @@ public class QhdfyHisService { Map map = new HashMap<>(); try { if (StringUtils.isNotEmpty(info.getCyrq())) { - Date date = sdf.parse(info.getCyrq()); + Date date = sdfcyrq.parse(info.getCyrq()); map.put("dischargeDate", DateUtil.getyyyy_MM_dd(date)); } } catch (Exception e) { @@ -975,5 +976,16 @@ public class QhdfyHisService { return objectResponse; } + public static void main(String[] args) { + String str = "20160504121330"; + SimpleDateFormat sdfcyrq = new SimpleDateFormat("yyyyMMddHHmmss"); + try { + Date date = sdfcyrq.parse(str); + System.out.println(date); + } catch (Exception e) { + + } + + } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/DischargeAbstractController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/DischargeAbstractController.java index c7d96c9..9345384 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/DischargeAbstractController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/DischargeAbstractController.java @@ -15,6 +15,7 @@ import com.lyms.platform.operate.web.result.DischargeAbstractQueryResult; import com.lyms.platform.operate.web.result.DischargeAbstractSaveResult; import com.lyms.platform.permission.service.CouponService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; @@ -98,13 +99,24 @@ public class DischargeAbstractController extends BaseController { @TokenRequired @ResponseBody @RequestMapping(value = "discharge", method = RequestMethod.DELETE) - public BaseResponse delDisCharge(@RequestParam("id")String id,HttpServletRequest request){ - return dischargeAbstractFacade.delDisCharge(id,getUserId(request)); + public BaseResponse delDisCharge(@RequestParam("id") String id, HttpServletRequest request) { + return dischargeAbstractFacade.delDisCharge(id, getUserId(request)); } @RequestMapping(value = "correct", method = RequestMethod.GET) @ResponseBody - public BaseResponse correctDisCharge(){ + public BaseResponse correctDisCharge() { return dischargeAbstractFacade.correctDisCharge(); } + + @RequestMapping(value = "list", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public BaseResponse list(HttpServletRequest request, + + @RequestParam(value = "page") Integer page, + @RequestParam(value = "limit") Integer limit) { + + return dischargeAbstractFacade.list(page, limit, getUserId(request)); + } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/DischargeAbstractFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/DischargeAbstractFacade.java index 7df0278..e6f5cb7 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/DischargeAbstractFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/DischargeAbstractFacade.java @@ -9,20 +9,16 @@ import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.enums.OptActionEnums; import com.lyms.platform.common.enums.RenShenJieJuEnums; import com.lyms.platform.common.enums.YnEnums; -import com.lyms.platform.common.result.BaseObjectResponse; -import com.lyms.platform.common.result.BaseResponse; -import com.lyms.platform.common.result.ResponseCode; +import com.lyms.platform.common.result.*; import com.lyms.platform.common.utils.BeanUtils; import com.lyms.platform.common.utils.DateUtil; import com.lyms.platform.operate.web.request.DischargeAbstractQueryRequest; import com.lyms.platform.operate.web.request.DischargeAbstractSaveRequest; import com.lyms.platform.operate.web.result.*; +import com.lyms.platform.operate.web.service.impl.BaseServiceImpl; import com.lyms.platform.permission.service.CouponService; import com.lyms.platform.permission.service.UsersService; -import com.lyms.platform.pojo.BabyModel; -import com.lyms.platform.pojo.DischargeAbstractBabyModel; -import com.lyms.platform.pojo.DischargeAbstractMotherModel; -import com.lyms.platform.pojo.Patients; +import com.lyms.platform.pojo.*; import com.lyms.platform.query.BabyModelQuery; import com.lyms.platform.query.DischargeAbstractBabyQuery; import com.lyms.platform.query.DischargeAbstractMotherQuery; @@ -30,13 +26,14 @@ import com.lyms.platform.query.PatientsQuery; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; +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.stereotype.Component; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; +import java.util.*; /** * @auther HuJiaqi @@ -44,7 +41,7 @@ import java.util.Map; * @discription */ @Component -public class DischargeAbstractFacade { +public class DischargeAbstractFacade extends BaseServiceImpl { @Autowired private DischargeAbstractMotherService dischargeAbstractMotherService; @@ -77,14 +74,20 @@ public class DischargeAbstractFacade { @Autowired private OperateLogFacade operateLogFacade; + @Autowired + private MongoTemplate mongoTemplate; + + @Autowired + private OrganizationGroupsFacade groupsFacade; + public DischargeAbstractSaveResult save(DischargeAbstractSaveRequest dischargeAbstractSaveRequest, Integer userId) { DischargeAbstractSaveResult dischargeAbstractSaveResult = new DischargeAbstractSaveResult(); - String hId=autoMatchFacade.getHospitalId(userId); + String hId = autoMatchFacade.getHospitalId(userId); /** 验证产检券是否可用 可用就改为已使用状态 */ - if(StringUtils.isNotBlank(dischargeAbstractSaveRequest.getCouponCode()) && dischargeAbstractSaveRequest.getCouponType() != null) { + if (StringUtils.isNotBlank(dischargeAbstractSaveRequest.getCouponCode()) && dischargeAbstractSaveRequest.getCouponType() != null) { BaseObjectResponse resp = couponService.validate(dischargeAbstractSaveRequest.getCouponCode(), dischargeAbstractSaveRequest.getCouponType(), autoMatchFacade.getHospitalId(userId)); - if(resp.getErrorcode() != 0) { + if (resp.getErrorcode() != 0) { ResponseCode data = (ResponseCode) resp.getData(); dischargeAbstractSaveResult.setErrorcode(data.getCode()); dischargeAbstractSaveResult.setErrormsg(data.getMsg()); @@ -107,9 +110,9 @@ public class DischargeAbstractFacade { dischargeAbstractMotherModel.setHospitalId(hId); if (StringUtils.isEmpty(dischargeAbstractMotherModel.getId())) { dischargeAbstractMotherModel = dischargeAbstractMotherService.save(dischargeAbstractMotherModel); - operateLogFacade.addAddOptLog(userId,Integer.parseInt(hId),dischargeAbstractMotherModel, OptActionEnums.ADD.getId(),"添加出院小结母亲内容"); + operateLogFacade.addAddOptLog(userId, Integer.parseInt(hId), dischargeAbstractMotherModel, OptActionEnums.ADD.getId(), "添加出院小结母亲内容"); /** 使用优惠券 */ - if(StringUtils.isNotBlank(dischargeAbstractSaveRequest.getCouponCode()) && dischargeAbstractSaveRequest.getCouponType() != null) { + if (StringUtils.isNotBlank(dischargeAbstractSaveRequest.getCouponCode()) && dischargeAbstractSaveRequest.getCouponType() != null) { couponService.use(hId, dischargeAbstractSaveRequest.getCouponCode(), userId, dischargeAbstractMotherModel.getId()); } } else { @@ -129,8 +132,7 @@ public class DischargeAbstractFacade { if (babyList != null && babyList.size() > 0) { for (DischargeAbstractSaveRequest.Baby baby : babyList) { - if (StringUtils.isEmpty(baby.getpId())) - { + if (StringUtils.isEmpty(baby.getpId())) { continue; } @@ -157,7 +159,7 @@ public class DischargeAbstractFacade { List list = dischargeAbstractBabyService.query(dischargeAbstractBabyQuery); dischargeAbstractBabyService.update(dischargeAbstractBabyModel); - operateLogFacade.addModifyOptLog(userId, Integer.parseInt(hId), list.get(0),dischargeAbstractBabyModel, OptActionEnums.UPDATE.getId(), "修改出院小结儿童内容"); + operateLogFacade.addModifyOptLog(userId, Integer.parseInt(hId), list.get(0), dischargeAbstractBabyModel, OptActionEnums.UPDATE.getId(), "修改出院小结儿童内容"); } } } @@ -196,15 +198,11 @@ public class DischargeAbstractFacade { patientsQuery.setCardNo(StringUtils.isEmpty(dischargeAbstractSaveRequest.getCardNo()) ? null : dischargeAbstractSaveRequest.getCardNo()); //德州市妇幼保健院医院通过(就诊卡号、银行卡号,社保卡号) 查询出对应的用过的卡号 add lqy - if ("1000000114".equals(hospitalId)) - { - if (com.lyms.platform.common.utils.StringUtils.isNotEmpty(dischargeAbstractSaveRequest.getVcCardNo())) - { + if ("1000000114".equals(hospitalId)) { + if (com.lyms.platform.common.utils.StringUtils.isNotEmpty(dischargeAbstractSaveRequest.getVcCardNo())) { patientsQuery.setVcCardNos(dzfyHisService.getDzVcCardNos(dischargeAbstractSaveRequest.getVcCardNo())); } - } - else - { + } else { patientsQuery.setVcCardNo(StringUtils.isEmpty(dischargeAbstractSaveRequest.getVcCardNo()) ? null : dischargeAbstractSaveRequest.getVcCardNo()); } @@ -245,7 +243,6 @@ public class DischargeAbstractFacade { } - if (!hospitalId.equals(patients.getFmHospital())) { dischargeAbstractQueryResult.setStatus("6"); dischargeAbstractQueryResult.setErrormsg("外院分娩不可进行出院小结"); @@ -343,13 +340,13 @@ public class DischargeAbstractFacade { dischargeAbstractBabyQueryModel.setbCGAndHBVVaccinationDate(DateUtil.getyyyy_MM_dd(dischargeAbstractBabyModel.getbCGAndHBVVaccinationDate())); dischargeAbstractBabyQueryModel.sethBIGInjectDate(DateUtil.getyyyy_MM_dd(dischargeAbstractBabyModel.gethBIGInjectDate())); //新增字段 - if(dischargeAbstractBabyModel.getbCGVaccinDate()!=null||dischargeAbstractBabyModel.getHbvVaccinDate()!=null|| - org.apache.commons.lang.StringUtils.isNotEmpty(dischargeAbstractBabyModel.getHbvInjectUserName())|| org.apache.commons.lang.StringUtils.isNotEmpty(dischargeAbstractBabyModel.getbCGInjectUserName())){//如果修改过数据 + if (dischargeAbstractBabyModel.getbCGVaccinDate() != null || dischargeAbstractBabyModel.getHbvVaccinDate() != null || + org.apache.commons.lang.StringUtils.isNotEmpty(dischargeAbstractBabyModel.getHbvInjectUserName()) || org.apache.commons.lang.StringUtils.isNotEmpty(dischargeAbstractBabyModel.getbCGInjectUserName())) {//如果修改过数据 dischargeAbstractBabyQueryModel.setbCGVaccinDate(DateUtil.getyyyy_MM_dd(dischargeAbstractBabyModel.getbCGVaccinDate())); dischargeAbstractBabyQueryModel.setHbvVaccinDate(DateUtil.getyyyy_MM_dd(dischargeAbstractBabyModel.getHbvVaccinDate())); dischargeAbstractBabyQueryModel.setHbvInjectUserName(dischargeAbstractBabyModel.getHbvInjectUserName()); dischargeAbstractBabyQueryModel.setbCGInjectUserName(dischargeAbstractBabyModel.getbCGInjectUserName()); - }else{//使用老数据兼容数据 + } else {//使用老数据兼容数据 dischargeAbstractBabyQueryModel.setbCGVaccinDate(DateUtil.getyyyy_MM_dd(dischargeAbstractBabyModel.getbCGAndHBVVaccinationDate())); dischargeAbstractBabyQueryModel.setHbvVaccinDate(DateUtil.getyyyy_MM_dd(dischargeAbstractBabyModel.getbCGAndHBVVaccinationDate())); dischargeAbstractBabyQueryModel.setHbvInjectUserName(dischargeAbstractBabyModel.getbCGAndHBVVaccinationInjectUserName()); @@ -369,27 +366,28 @@ public class DischargeAbstractFacade { /** * 删除出院小结 + * * @return */ - public BaseResponse delDisCharge(String id,Integer userId){ + public BaseResponse delDisCharge(String id, Integer userId) { String hospitalId = autoMatchFacade.getHospitalId(userId); DischargeAbstractMotherModel dischargeAbstractMotherQueryModel = new DischargeAbstractMotherModel(); dischargeAbstractMotherQueryModel.setYn(YnEnums.NO.getId()); dischargeAbstractMotherQueryModel.setId(id); dischargeAbstractMotherService.update(dischargeAbstractMotherQueryModel); - operateLogFacade.addDeleteOptLog(userId, Integer.parseInt(hospitalId), dischargeAbstractMotherQueryModel, OptActionEnums.DELETE.getId(),"删除出院小结"); + operateLogFacade.addDeleteOptLog(userId, Integer.parseInt(hospitalId), dischargeAbstractMotherQueryModel, OptActionEnums.DELETE.getId(), "删除出院小结"); return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); } - public BaseResponse correctDisCharge(){ + public BaseResponse correctDisCharge() { DischargeAbstractMotherQuery dischargeAbstractMotherQuery = new DischargeAbstractMotherQuery(); dischargeAbstractMotherQuery.setYn(YnEnums.YES.getId()); List models = dischargeAbstractMotherService.query(dischargeAbstractMotherQuery); - if(CollectionUtils.isNotEmpty(models)){ - for(DischargeAbstractMotherModel mode:models){ + if (CollectionUtils.isNotEmpty(models)) { + for (DischargeAbstractMotherModel mode : models) { Patients patients = patientsService.findOnePatientById(mode.getPatientId()); - if(null!=patients){ + if (null != patients) { mode.setHospitalId(patients.getHospitalId()); mode.setPid(patients.getPid()); dischargeAbstractMotherService.update(mode); @@ -398,4 +396,44 @@ public class DischargeAbstractFacade { } return new BaseResponse().setErrormsg(ErrorCodeConstants.SUCCESS_DESCRIPTION).setErrorcode(ErrorCodeConstants.SUCCESS); } + + public BaseResponse list(Integer page, Integer limit, Integer userId) { + List hospital = groupsFacade.findGroupHospital(userId, false); + Criteria criteria = Criteria.where("yn").ne("0").and("hospitalId").in(hospital); + Criteria pCriteria = Criteria.where("yn").ne("0").and("hospitalId").in(hospital); + boolean flag = true; + + + if (flag) { + List discharge = mongoTemplate.find(Query.query(pCriteria), DischargeAbstractMotherModel.class); + List ids = new ArrayList<>(); + if (com.lyms.platform.operate.web.utils.CollectionUtils.isNotEmpty(discharge)) { + for (DischargeAbstractMotherModel dischargeAbstract : discharge) { + ids.add(dischargeAbstract.getId()); + } + } + criteria.and("_id").in(ids); + } + PageResult pageResult = findMongoPage(DischargeAbstractMotherModel.class, new Query(criteria).with(new Sort(Sort.Direction.DESC, "createDate")), page, limit); + List discharge = (List) pageResult.getGrid(); + List> data = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(discharge)) { + for (DischargeAbstractMotherModel dischargeAbstract : discharge) { + Map map = new HashMap<>(); + Patients patients = patientsService.findOnePatientById(dischargeAbstract.getPatientId()); + if (null != patients) { + map.put("name", patients.getUsername()); + map.put("phoen", patients.getPhone()); + map.put("age", patients.getAge() + "岁"); + } + map.put("leaveHospitalDate", DateUtil.getyyyy_MM_dd(dischargeAbstract.getLeaveHospitalDate())); + map.put("description", dischargeAbstract.getDescription()); + map.put("afterMakeBabyDays", dischargeAbstract.getAfterMakeBabyDays()); + + data.add(map); + } + } + pageResult.setGrid(data); + return RespBuilder.buildSuccess(pageResult); + } } -- 1.8.3.1