From 7349fcedf6b8e194f54caefdb7d06058377240a9 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Sun, 16 Dec 2018 21:48:43 +0800 Subject: [PATCH] update code --- .../operate/web/controller/TestController.java | 120 ++++++++++++++++++++- 1 file changed, 116 insertions(+), 4 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java index 3a10405..a2b946c 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java @@ -33,10 +33,9 @@ import com.lyms.platform.operate.web.worker.AntexOtherHighRiskWorker; import com.lyms.platform.operate.web.worker.AntexcOtherHighRiskWorker; import com.lyms.platform.operate.web.worker.BabyBuildSerToPatientSerWorker; import com.lyms.platform.operate.web.worker.BuildSerToPatientSerWorker; -import com.lyms.platform.permission.model.Organization; -import com.lyms.platform.permission.model.OrganizationQuery; -import com.lyms.platform.permission.model.PatientService; -import com.lyms.platform.permission.model.PatientServiceQuery; +import com.lyms.platform.permission.dao.master.CouponMapper; +import com.lyms.platform.permission.model.*; +import com.lyms.platform.permission.service.CouponService; import com.lyms.platform.permission.service.OrganizationService; import com.lyms.platform.permission.service.PatientServiceService; import com.lyms.platform.pojo.*; @@ -45,6 +44,7 @@ import com.mongodb.Mongo; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.io.FileUtils; import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.time.DateUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.data.authentication.UserCredentials; @@ -2747,6 +2747,118 @@ public class TestController extends BaseController { } return "finishing。。。。。。"; } + @Autowired + private CouponService couponService; + @Autowired + private CouponMapper couponMapper; + + + @RequestMapping(value = "/handleQhdCoupon1", method = RequestMethod.GET) + @ResponseBody + public void handleQhdCoupon1(@RequestParam(required = true) String hid,@RequestParam(required = false) String patientId) { + List patients = mongoTemplate.find(Query.query(Criteria.where("isSendCoupon").is(true).and("yn").is(1)).with(new Sort(Sort.Direction.DESC, "created")), Patients.class); + List ids = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(patients)) + { + for(Patients pat : patients) + { + AntExChuQuery antExChuQuery = new AntExChuQuery(); + antExChuQuery.setYn(YnEnums.YES.getId()); + antExChuQuery.setParentId(pat.getId()); + antExChuQuery.setHospitalId(hid); + List chus = antenatalExaminationService.queryAntExChu(antExChuQuery); + if (CollectionUtils.isNotEmpty(chus)) + { + AntExChuModel chu = chus.get(0); + } + } + } + } + + @RequestMapping(value = "/handleQhdCoupon", method = RequestMethod.GET) + @ResponseBody + public void handleQhdCoupon(@RequestParam(required = true) String hid,@RequestParam(required = false) String patientId) { + AntExChuQuery antExChuQuery = new AntExChuQuery(); + antExChuQuery.setEnd(new Date()); + antExChuQuery.setStart(DateUtil.addMonth(new Date(),-2)); + antExChuQuery.setYn(YnEnums.YES.getId()); + antExChuQuery.setHospitalId(hid); + List chus = antenatalExaminationService.queryAntExChu(antExChuQuery); + List ids = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(chus)) { + for (AntExChuModel chu : chus) { + if (StringUtils.isNotEmpty(chu.getPid())) { + Map param = new HashMap<>(); + param.put("userId", chu.getPid()); + List list = couponMapper.findList(param); + if (CollectionUtils.isNotEmpty(list)) { + for (CouponInfo couponInfo : list) { + Map param1 = new HashMap<>(); + param.put("code", couponInfo.getSequenceId()); + param.put("type", 2); + Map data = couponMapper.findValidateParam(param1); + + if (data == null) + { + continue; + } + Integer start = Integer.parseInt(data.get("actual_start").toString()); + Integer end = Integer.parseInt(data.get("actual_end").toString()); + + Date startDate = DateUtils.addDays(chu.getLastMenses(), start * 7); + Date endDate = DateUtils.addDays(chu.getLastMenses(), end * 7 + 6); + if (DateUtil.isBetween(chu.getCheckTime(), startDate, DateUtils.addDays(endDate, 1)) && couponInfo.getStatus() == 1) { + ids.add(chu.getParentId()); + break; + } + } + + } + } + } + } + + AntExQuery antExQuery = new AntExQuery(); + antExQuery.setYn(YnEnums.YES.getId()); + antExQuery.setHospitalId(hid); + antExQuery.setCreatedTimeEnd(new Date()); + antExQuery.setCreatedTimeStart(DateUtil.addMonth(new Date(),-2)); + List fus = antenatalExaminationService.queryAntenatalExamination(antExQuery.convertToQuery()); + if (CollectionUtils.isNotEmpty(fus)) { + for (AntenatalExaminationModel fu : fus) { + if (StringUtils.isNotEmpty(fu.getPid())) { + Map param = new HashMap<>(); + param.put("userId", fu.getPid()); + List list = couponMapper.findList(param); + if (CollectionUtils.isNotEmpty(list)) { + for (CouponInfo couponInfo : list) { + Map param1 = new HashMap<>(); + param.put("code", couponInfo.getSequenceId()); + param.put("type", 2); + Map data = couponMapper.findValidateParam(param1); + if (data == null) + { + continue; + } + Integer start = Integer.parseInt(data.get("actual_start").toString()); + Integer end = Integer.parseInt(data.get("actual_end").toString()); + + Date startDate = DateUtils.addDays(fu.getLastMenses(), start * 7); + Date endDate = DateUtils.addDays(fu.getLastMenses(), end * 7 + 6); + + if (DateUtil.isBetween(fu.getCheckDate(), startDate, DateUtils.addDays(endDate, 1)) && couponInfo.getStatus() == 1) { + if (!ids.contains(fu.getParentId())) + { + break; + } + } + } + } + } + } + } + System.out.println(ids.size()); + } } -- 1.8.3.1