From 6c0dcc1f58676c1ba1c3b25b8467b1aa2600a15b Mon Sep 17 00:00:00 2001 From: liquanyu Date: Sat, 20 Mar 2021 14:46:03 +0800 Subject: [PATCH] update --- .../platform/operate/web/facade/PatientFacade.java | 7 +- .../operate/web/worker/QuanWeightWorker.java | 81 +++++++++++++++++++++- 2 files changed, 84 insertions(+), 4 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java index d51a791..d4b1160 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java @@ -15,6 +15,7 @@ import com.lyms.platform.common.result.PageResult; import com.lyms.platform.common.utils.*; import com.lyms.platform.operate.web.request.*; import com.lyms.platform.operate.web.result.*; +import com.lyms.platform.operate.web.service.ITrackDownService; import com.lyms.platform.operate.web.service.PatientWeightService; import com.lyms.platform.operate.web.service.RareBloodGroupService; import com.lyms.platform.operate.web.service.impl.BaseServiceImpl; @@ -98,7 +99,8 @@ public class PatientFacade extends BaseServiceImpl { private OrganizationService organizationService; @Autowired private OrganizationGroupsFacade groupsFacade; - + @Autowired + private ITrackDownService trackDownService; @Autowired @Qualifier("commonThreadPool") private ThreadPoolTaskExecutor commonThreadPool; @@ -1657,7 +1659,8 @@ public class PatientFacade extends BaseServiceImpl { if (end > patientWeightList.size()) { end = patientWeightList.size(); } - listFuture.add(commonThreadPool.submit(new QuanWeightWorker(patientWeightList.subList(i, end), mongoTemplate, commonService, basicConfigService, trackDownRecordService))); + listFuture.add(commonThreadPool.submit(new QuanWeightWorker(patientWeightList.subList(i, end), mongoTemplate, + commonService, basicConfigService, trackDownRecordService,trackDownService,matDeliverService))); } for (Future f : listFuture) { try { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/QuanWeightWorker.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/QuanWeightWorker.java index f0b6bf3..739b8ca 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/QuanWeightWorker.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/QuanWeightWorker.java @@ -2,21 +2,28 @@ package com.lyms.platform.operate.web.worker; import com.lyms.platform.biz.service.BasicConfigService; import com.lyms.platform.biz.service.CommonService; +import com.lyms.platform.biz.service.MatDeliverService; import com.lyms.platform.biz.service.TrackDownRecordService; +import com.lyms.platform.common.enums.FmTypeEnums; import com.lyms.platform.common.enums.YnEnums; +import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.common.utils.DateUtil; +import com.lyms.platform.common.utils.JsonUtil; import com.lyms.platform.common.utils.StringUtils; import com.lyms.platform.operate.web.facade.PatientFacade; +import com.lyms.platform.operate.web.service.ITrackDownService; import com.lyms.platform.pojo.MaternalDeliverModel; import com.lyms.platform.pojo.PatientWeight; import com.lyms.platform.pojo.Patients; import com.lyms.platform.pojo.TrackDownRecord; import com.lyms.platform.query.AntExChuQuery; import com.lyms.platform.query.AntExQuery; +import com.lyms.platform.query.MatDeliverQuery; import com.lyms.platform.query.TrackDownRecordQuery; import org.apache.commons.collections.CollectionUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Query; @@ -33,23 +40,29 @@ import java.util.concurrent.Callable; public class QuanWeightWorker implements Callable> { private static final Logger logger = LoggerFactory.getLogger(PatientFacade.class); - + private ITrackDownService trackDownService; private List patientWeightList; private MongoTemplate mongoTemplate; private CommonService commonService; private BasicConfigService basicConfigService; private TrackDownRecordService trackDownRecordService; + private MatDeliverService matDeliverService; public QuanWeightWorker(List patientWeightList, MongoTemplate mongoTemplate, CommonService commonService, BasicConfigService basicConfigService, - TrackDownRecordService trackDownRecordService + TrackDownRecordService trackDownRecordService, + ITrackDownService trackDownService, + MatDeliverService matDeliverService ) { this.patientWeightList = patientWeightList; this.mongoTemplate = mongoTemplate; this.commonService = commonService; this.basicConfigService = basicConfigService; this.trackDownRecordService = trackDownRecordService; + this.trackDownService = trackDownService; + this.matDeliverService = matDeliverService; + } @Override @@ -61,6 +74,70 @@ public class QuanWeightWorker implements Callable> { Patients patients = patientsList.get(0); Map map = new HashMap(); puliMap(patients, patientWeight, map); + + BaseObjectResponse response = trackDownService.info(patients.getId(),3,0); + if (response != null && response.getErrorcode() == 0) + { + Map down = (Map)response.getData(); + if (down != null) + { + map.put("result",down.get("result")); + map.put("trackDownDate",down.get("trackDownDate")); + } + } + + if (patients.getType() == 3) + { + MatDeliverQuery matDeliverQuery = new MatDeliverQuery(); + matDeliverQuery.setPid(patients.getPid()); + matDeliverQuery.setYn(YnEnums.YES.getId()); + List list2 = matDeliverService.query(matDeliverQuery); + if (CollectionUtils.isNotEmpty(list2)) + { + MaternalDeliverModel maternalDeliverModel = list2.get(0); + String deliveryMode = ""; + if (org.apache.commons.lang.StringUtils.isNotEmpty(maternalDeliverModel.getDeliveryMode())) { + StringBuilder sb = new StringBuilder(); + Map m = JsonUtil.str2Obj(maternalDeliverModel.getDeliveryMode(), Map.class); + String fmfs = null; + if (m != null) { + Object b = m.get("fmfs"); + if (b != null) { + fmfs = b.toString(); + if (fmfs != null) { + if (fmfs.equals("1")) { + String fmName = FmTypeEnums.getFmNameById(fmfs); + sb.append(fmName); + if (null != m.get("scfs") && !"null".equals(m.get("scfs").toString())) { + sb.append(","); + String scfs = m.get("scfs").toString(); + sb.append(FmTypeEnums.getFmScNameById(scfs)); + } + deliveryMode = sb.toString(); + } else if (fmfs.equals("2")) { + String fmName = FmTypeEnums.getFmNameById(fmfs); + deliveryMode = fmName; + } + } + } + } + } + map.put("deliveryMode", deliveryMode);//分娩方式 + map.put("deliveryDate", maternalDeliverModel.getDueDate()); + + String babyWight = ""; + List babys = maternalDeliverModel.getBaby(); + if (CollectionUtils.isNotEmpty(babys)) + { + for (MaternalDeliverModel.Baby baby : babys) + { + babyWight+=baby.getBabyWeight()+" "; + } + } + map.put("babyWight", babyWight); + } + } + //列表中冗余上追访管理--孕期检查列表id TrackDownRecordQuery query = new TrackDownRecordQuery(); query.setParentId(patients.getId()); -- 1.8.3.1