From 2b738aef744ceed2fe62fa2505bfd514f321992b Mon Sep 17 00:00:00 2001 From: wtt Date: Thu, 16 Jul 2020 16:48:23 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A1=E6=B0=B4=E4=BA=A7=E7=AD=9B=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lyms/platform/query/SieveApplyOrderQuery.java | 12 + .../java/com/lyms/platform/query/SieveQuery.java | 15 +- .../operate/web/controller/SieveController.java | 30 +++ .../platform/operate/web/facade/SieveFacade.java | 281 ++++++++++++++++++++- .../operate/web/result/SieveListResult.java | 30 ++- .../web/worker/SieveRegionalCqsievesWorker.java | 140 ++++++++++ 6 files changed, 504 insertions(+), 4 deletions(-) create mode 100644 platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/SieveRegionalCqsievesWorker.java diff --git a/platform-dal/src/main/java/com/lyms/platform/query/SieveApplyOrderQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/SieveApplyOrderQuery.java index 2def1e6..e796c35 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/SieveApplyOrderQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/SieveApplyOrderQuery.java @@ -6,6 +6,8 @@ import com.lyms.platform.common.dao.operator.MongoCondition; import com.lyms.platform.common.dao.operator.MongoOper; import com.lyms.platform.common.dao.operator.MongoQuery; +import java.util.List; + /** * Created by Administrator on 2016/6/15 0015. */ @@ -37,6 +39,16 @@ public class SieveApplyOrderQuery extends BaseQuery implements IConvertToNativeQ //产筛医院 private String sieveHospitalId; + //衡水区域产筛申请统计使用 + private List sieveHospitalIds; + + public List getSieveHospitalIds() { + return sieveHospitalIds; + } + + public void setSieveHospitalIds(List sieveHospitalIds) { + this.sieveHospitalIds = sieveHospitalIds; + } public String getNumber() { return number; diff --git a/platform-dal/src/main/java/com/lyms/platform/query/SieveQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/SieveQuery.java index ac126cc..cd78f35 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/SieveQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/SieveQuery.java @@ -89,6 +89,8 @@ public class SieveQuery extends BaseQuery implements IConvertToNativeQuery { //产筛医院 private String sieveHospitalId; + //衡水区域产筛申请统计使用 + private List sieveHospitalIds; //申请医院 private String applyHospitalId; @@ -120,6 +122,14 @@ public class SieveQuery extends BaseQuery implements IConvertToNativeQuery { private String areaId; private String streetId; + public List getSieveHospitalIds() { + return sieveHospitalIds; + } + + public void setSieveHospitalIds(List sieveHospitalIds) { + this.sieveHospitalIds = sieveHospitalIds; + } + public List getLymsSieveIds() { return lymsSieveIds; } @@ -421,7 +431,9 @@ public class SieveQuery extends BaseQuery implements IConvertToNativeQuery { if (null != applyHospitalId) { condition = condition.and("applyHospitalId", applyHospitalId, MongoOper.IS); } - + if (null != sieveHospitalIds) { + condition = condition.and("sieveHospitalId", sieveHospitalIds, MongoOper.IN); + } if (null != parentId) { condition = condition.and("parentId", parentId, MongoOper.IS); } @@ -599,6 +611,7 @@ public class SieveQuery extends BaseQuery implements IConvertToNativeQuery { } } + if (StringUtils.isNotEmpty(costType)) { // costType = null/1 免费 if ("1".equals(costType)) { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/SieveController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/SieveController.java index 2213a15..3dae3ac 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/SieveController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/SieveController.java @@ -256,6 +256,36 @@ public class SieveController extends BaseController { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); return sieveFacade.queryList(cqSieveQueryRequest, loginState.getId(), "true", false); } + /** + * 区域 产筛申请统计 + * + * @param cqSieveQueryRequest + * @param request + * @Author: 武涛涛 + * @Date: 2020/7/16 10:06 + */ + @ResponseBody + @RequestMapping(value = "/regionalCqsievesList", method = RequestMethod.GET) + @TokenRequired + public BaseResponse regionalCqsievesList(@Valid CqSieveQueryRequest cqSieveQueryRequest, HttpServletRequest request) { + LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); + return sieveFacade.regionalCqsievesList(cqSieveQueryRequest, loginState.getId(), "true", false); + } + /** + * 区域 产筛申请统计导出 + * + * @param cqSieveQueryRequest + * @param request + * @param response + * @Author: 武涛涛 + * @Date: 2020/7/16 16:08 + */ + @RequestMapping(value = "/exportRegionalCqsievesList", method = RequestMethod.GET) + @TokenRequired + public void exportRegionalCqsievesList(@Valid CqSieveQueryRequest cqSieveQueryRequest, HttpServletRequest request, HttpServletResponse response) { + LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); + sieveFacade.exportRegionalCqsievesList(cqSieveQueryRequest, loginState.getId(), response); + } /** diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java index ff9e179..f92c7c3 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java @@ -19,6 +19,7 @@ import com.lyms.platform.operate.web.result.*; import com.lyms.platform.operate.web.service.ITrackDownService; import com.lyms.platform.operate.web.utils.CommonsHelper; import com.lyms.platform.operate.web.worker.SieveHistory; +import com.lyms.platform.operate.web.worker.SieveRegionalCqsievesWorker; import com.lyms.platform.operate.web.worker.SieveWorker; import com.lyms.platform.operate.web.worker.SieveWorker2; import com.lyms.platform.permission.model.Organization; @@ -31,7 +32,6 @@ import com.lyms.platform.query.*; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; -import jxl.read.biff.BiffException; import net.sf.json.JSONObject; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.fileupload.disk.DiskFileItem; @@ -50,7 +50,9 @@ import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.commons.CommonsMultipartFile; import javax.servlet.http.HttpServletResponse; -import java.io.*; +import java.io.File; +import java.io.FileInputStream; +import java.io.OutputStream; import java.text.SimpleDateFormat; import java.util.*; import java.util.concurrent.Callable; @@ -612,6 +614,213 @@ public class SieveFacade { return new BaseListResponse().setData(data).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setPageInfo(sieveQuery.getPageInfo()); } + /** + * 区域 产筛申请统计 + * + * @param cqSieveQueryRequest + * @param userId + * @param needPage + * @param isSieveLagManage + * @Author: 武涛涛 + * @Date: 2020/7/16 10:10 + */ + public BaseResponse regionalCqsievesList(CqSieveQueryRequest cqSieveQueryRequest, Integer userId, String needPage, boolean isSieveLagManage) { + + String hospitalId = autoMatchFacade.getHospitalId(userId); + List hospitalList = new ArrayList<>(); + if(null!=hospitalId){ + //当前用户本院 + hospitalList.add(hospitalId); + } + //查询用户是否有区域权限 + DataPermissionsModelQuery dataPermissionsModelQuery = new DataPermissionsModelQuery(); + dataPermissionsModelQuery.setUserId(userId); + List permissionsModels = dataPermissionService.queryPermission(dataPermissionsModelQuery); + if (CollectionUtils.isNotEmpty(permissionsModels)) { + Set set = permissionsModels.get(0).getData().keySet(); + Iterator it = set.iterator(); + while (it.hasNext()) { + String id = it.next(); + if (com.lyms.platform.common.utils.StringUtils.isNotEmpty(id) && !hospitalList.contains(id)) { + hospitalList.add(id); + } + } + } + + List data = new ArrayList<>(); + SieveQuery sieveQuery = new SieveQuery(); + sieveQuery.setQueryNo(cqSieveQueryRequest.getQueryNo()); + sieveQuery.setYn(YnEnums.YES.getId()); + sieveQuery.setPhone(cqSieveQueryRequest.getPhone()); + sieveQuery.setStatus(cqSieveQueryRequest.getStatus()); + sieveQuery.setStatuses(cqSieveQueryRequest.getStatuses()); + sieveQuery.setCqResult(cqSieveQueryRequest.getCqResult()); + sieveQuery.setRenShenResult(cqSieveQueryRequest.getRenShenResult()); + sieveQuery.setName(cqSieveQueryRequest.getName()); + sieveQuery.setCardNo(cqSieveQueryRequest.getCardNo()); + + if (StringUtils.isNotEmpty(cqSieveQueryRequest.getVcCardNo())) { + PatientsQuery patientsQuery = new PatientsQuery(); + //patientsQuery.setHospitalId(hospitalId); + patientsQuery.setHospitalList(hospitalList); + patientsQuery.setYn(YnEnums.YES.getId()); + patientsQuery.setVcCardNo(cqSieveQueryRequest.getVcCardNo()); + List localPatients = patientsService.queryPatient(patientsQuery); + if (CollectionUtils.isNotEmpty(localPatients)) { + List ids = new ArrayList<>(); + for (Patients pat : localPatients) { + ids.add(pat.getId()); + } + sieveQuery.setParentIds(ids); + } + } + + + //省市区查询 + sieveQuery.setProvinceId(cqSieveQueryRequest.getProvinceId()); + sieveQuery.setCityId(cqSieveQueryRequest.getCityId()); + sieveQuery.setAreaId(cqSieveQueryRequest.getAreaId()); + sieveQuery.setStreetId(cqSieveQueryRequest.getStreetId()); + + if (null != cqSieveQueryRequest.getDueWeekStart()) { + sieveQuery.setDueWeekStart(7 * Integer.valueOf(cqSieveQueryRequest.getDueWeekStart())); + } + if (null != cqSieveQueryRequest.getDueWeekEnd()) { + sieveQuery.setDueWeekEnd(7 * Integer.valueOf(cqSieveQueryRequest.getDueWeekEnd()) + 6); + } + if (null != cqSieveQueryRequest.getcDueWeekStart()) { + sieveQuery.setLastMensesEnd(DateUtil.addDay(DateUtil.parseYMD(DateUtil.getyyyy_MM_dd(new Date())), -(cqSieveQueryRequest.getcDueWeekStart() * 7))); + } + if (null != cqSieveQueryRequest.getcDueWeekEnd()) { + sieveQuery.setLastMensesStart(DateUtil.addDay(DateUtil.parseYMD(DateUtil.getyyyy_MM_dd(new Date())), -(cqSieveQueryRequest.getcDueWeekEnd() * 7) - 6)); + } + + if (StringUtils.isNotEmpty(cqSieveQueryRequest.getApplyTime())) { + String[] dates = cqSieveQueryRequest.getApplyTime().split(" - "); + + sieveQuery.setApplyTimeStart(DateUtil.parseYMD(dates[0])); + if (dates.length == 2) { + sieveQuery.setApplyTimeEnd(DateUtil.parseYMDHMS(dates[1] + " 23:59:59")); + } + } + + if (StringUtils.isNotEmpty(cqSieveQueryRequest.getDiagnosisTime())) { + String[] dates = cqSieveQueryRequest.getDiagnosisTime().split(" - "); + + sieveQuery.setDiagnosisTimeStart(DateUtil.parseYMD(dates[0])); + if (dates.length == 2) { + sieveQuery.setDiagnosisTimeEnd(DateUtil.parseYMDHMS(dates[1] + " 23:59:59")); + } + } + + if (StringUtils.isNotEmpty(cqSieveQueryRequest.getResultTime())) { + String[] dates = cqSieveQueryRequest.getResultTime().split(" - "); + + sieveQuery.setResultTimeStart(DateUtil.parseYMD(dates[0])); + if (dates.length == 2) { + sieveQuery.setResultTimeEnd(DateUtil.parseYMDHMS(dates[1] + " 23:59:59")); + } + } + sieveQuery.setZtfx(cqSieveQueryRequest.getZtfx()); + sieveQuery.setStatus(cqSieveQueryRequest.getIsNotify()); + sieveQuery.setPage(cqSieveQueryRequest.getPage()); + sieveQuery.setLimit(cqSieveQueryRequest.getLimit()); + + + sieveQuery.setNeed(needPage); + + + if (isSieveLagManage) { + if (StringUtils.isNotEmpty(cqSieveQueryRequest.getApplyHospitalId())) {//申请医院 + sieveQuery.setApplyHospitalId(cqSieveQueryRequest.getApplyHospitalId()); + } + //区域统计,当前用户有那个医院就可以查看申请到的医院数据 + sieveQuery.setSieveHospitalIds(hospitalList); + } else { + sieveQuery.setHospitalIds(hospitalList); + } + List lymsSieveIds = new ArrayList<>(); + + if (StringUtils.isNotEmpty(cqSieveQueryRequest.getNumber())) { + List parentIds = new ArrayList<>(); + SieveApplyOrderQuery sieveApplyOrderQuery = new SieveApplyOrderQuery(); + sieveApplyOrderQuery.setSieveHospitalIds(hospitalList); + sieveApplyOrderQuery.setNumber(cqSieveQueryRequest.getNumber()); + sieveApplyOrderQuery.setYn(YnEnums.YES.getId()); + List sieveApplyOrderModels = applyOrderService.querySieveApplyOrderWithQuery(sieveApplyOrderQuery); + if (CollectionUtils.isNotEmpty(sieveApplyOrderModels)) { + for (SieveApplyOrderModel model : sieveApplyOrderModels) { + parentIds.add(model.getParentId()); + if (StringUtils.isNotEmpty(model.getLymsSieveId())) { + lymsSieveIds.add(model.getLymsSieveId()); + } + } + } + if (CollectionUtils.isNotEmpty(lymsSieveIds)) { + sieveQuery.setLymsSieveIds(lymsSieveIds);//以前产筛表没有这个管理会漏掉,后面修改过就不会,这里有可能会有个问题 + } else if (CollectionUtils.isNotEmpty(parentIds)) { + sieveQuery.setParentIds(parentIds); + } else { + return new BaseListResponse().setData(data).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setPageInfo(sieveQuery.getPageInfo()); + } + } + + // 筛查类型 + String sieveType = cqSieveQueryRequest.getSieveType(); + if (StringUtils.isNotEmpty(sieveType)) { + if(sieveType.contains(",")){ + sieveType=sieveType.replace(",", ""); + } + sieveQuery.setSieveType(sieveType); + } + + // 费用类型 ,1 + String costType = cqSieveQueryRequest.getCostType(); + if (StringUtils.isNotEmpty(costType)) { + if(costType.contains(",")){ + costType=costType.replace(",", ""); + } + sieveQuery.setCostType(costType); + } + + // 报告类型 + String reportType = cqSieveQueryRequest.getReportType(); + if (StringUtils.isNotEmpty(reportType)) { + sieveQuery.setReportType(reportType); + } + + //查询产筛list + List list = sieveService.queryList1(sieveQuery, "order"); + int batchSize = 4; + int end = 0; + List listFuture = new ArrayList<>(); + for (int i = 0; i < list.size(); i += batchSize) { + end = (end + batchSize); + if (end > list.size()) { + end = list.size(); + } + listFuture.add(commonThreadPool.submit(new SieveRegionalCqsievesWorker(list.subList(i, end), patientsService,applyOrderService,organizationService,basicConfigService,sieveService))); + } + for (Future f : listFuture) { + try { + data.addAll((List) f.get(30, TimeUnit.SECONDS)); + } catch (Exception e) { + ExceptionUtils.catchException(e, "cqSieve list get result Future error."); + } + } + return new BaseListResponse().setData(data).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setPageInfo(sieveQuery.getPageInfo()); + } + + /** + * 产筛导出3.0版 血清学筛查 + * + * @param cqSieveQueryRequest + * @param userId + * @param needPage + * @param isSieveLagManage + * @Author: 武涛涛 + * @Date: 2020/7/16 10:07 + */ public BaseResponse queryList2(CqSieveQueryRequest cqSieveQueryRequest, Integer userId, String needPage, boolean isSieveLagManage) { List data = new ArrayList<>(); SieveQuery sieveQuery = new SieveQuery(); @@ -2756,6 +2965,15 @@ public class SieveFacade { } } + /** + * 产筛导出3.0版 血清学筛查 + * + * @param cqSieveQueryRequest + * @param id + * @param response + * @Author: 武涛涛 + * @Date: 2020/7/16 10:09 + */ public void exportSerologySieve(CqSieveQueryRequest cqSieveQueryRequest, Integer id, HttpServletResponse response) { try { BaseListResponse listResponse = (BaseListResponse) queryList2(cqSieveQueryRequest, id, null, true); @@ -2911,6 +3129,65 @@ public class SieveFacade { cnames.put("IdCard", "IdCard");//身份证号*/ } + private void cnamesRegionalCqsievesMap(Map cnames) { + cnames.put("姓名", "姓名"); + cnames.put("年龄", "年龄"); + cnames.put("申请时间", "申请时间"); + cnames.put("申请孕周", "申请孕周"); + cnames.put("采血时间", "采血时间"); + cnames.put("申请医院", "申请医院"); + cnames.put("户籍地", "户籍地"); + cnames.put("产筛类型", "产筛类型"); + cnames.put("筛查状态", "筛查状态"); + cnames.put("收费类型", "收费类型"); + cnames.put("整体风险", "整体风险"); + cnames.put("21-三体", "21-三体"); + cnames.put("18-三体", "18-三体"); + cnames.put("神经管畸形", "神经管畸形"); + } + public void exportRegionalCqsievesList(CqSieveQueryRequest cqSieveQueryRequest, Integer id, HttpServletResponse response) { + try { + BaseListResponse listResponse = (BaseListResponse) regionalCqsievesList(cqSieveQueryRequest, id, "true", true); + + List list = listResponse.getData(); + List> datas = new ArrayList<>(); + + if (CollectionUtils.isNotEmpty(list)) { + for (SieveListResult sive : list) { + try { + Map data = new HashMap<>(); + data.put("姓名", sive.getName()); + data.put("年龄", sive.getAge()); + data.put("申请时间", sive.getApplyTime()); + data.put("申请孕周", sive.getDueWeek()); + data.put("采血时间", sive.getCollectionDate()); + data.put("申请医院", sive.getApplyHospital()); + data.put("户籍地", sive.getPlaceDomicile()); + data.put("产筛类型", sive.getSieveTypeStr()); + data.put("筛查状态", sive.getStatusText()); + data.put("收费类型", sive.getCostTypeStr()); + data.put("整体风险", sive.getZtfxText()); + data.put("21-三体", sive.getTszhz()); + data.put("18-三体", sive.getSbst()); + data.put("神经管畸形", sive.getSjgjx()); + datas.add(data); + } catch (Exception e) { + e.printStackTrace(); + continue; + } + } + } + OutputStream out = response.getOutputStream(); + Map cnames = new LinkedHashMap<>(); + cnamesRegionalCqsievesMap(cnames); + response.setContentType("application/octet-stream"); + response.setCharacterEncoding("UTF-8"); + response.setHeader("Content-Disposition", "attachment;fileName=" + "csdata.xls"); + ExcelUtil.toExcel(out, datas, cnames); + } catch (Exception e) { + ExceptionUtils.catchException(e, "产筛统计导出异常"); + } + } /** * 功能描述 产筛导入3.0版 血清学筛查 excle 2003 diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/SieveListResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/SieveListResult.java index 29023ad..91bab1f 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/SieveListResult.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/SieveListResult.java @@ -16,6 +16,10 @@ import java.util.Map; public class SieveListResult implements IBasicResultConvert { public static final String SPIT = "-"; + private String sjgjx;// 神经管畸形 + private String sbst;// 18-三体 + private String tszhz;// 21 唐氏综合症 + private String id; //患者id private String parentId; @@ -157,6 +161,30 @@ public class SieveListResult implements IBasicResultConvert + * Created by Administrator on 2017/3/10 0010. + */ +public class SieveRegionalCqsievesWorker implements Callable> { + + + private List list; + + private ApplyOrderService applyOrderService; + + private PatientsService patientsService; + + private OrganizationService organizationService; + + private BasicConfigService basicConfigService; + private SieveService sieveService; + + + public SieveRegionalCqsievesWorker(List list, + PatientsService patientsService, ApplyOrderService applyOrderService, + OrganizationService organizationService, BasicConfigService basicConfigService,SieveService sieveService) { + this.list = list; + this.patientsService = patientsService; + this.applyOrderService = applyOrderService; + this.organizationService = organizationService; + this.basicConfigService = basicConfigService; + this.sieveService = sieveService; + } + + @Override + public List call() throws Exception { + List results = new ArrayList<>(); + + for (SieveModel sieveModel : list) { + SieveListResult sieveListResult = new SieveListResult(); + //申请孕周 + AntExQuery antExQuery = new AntExQuery(); + antExQuery.setYn(YnEnums.YES.getId()); + antExQuery.setHospitalId(sieveModel.getHospitalId()); + antExQuery.setParentId(sieveModel.getParentId()); + + //获取产筛申请数据 + SieveApplyOrderQuery sieveApplyOrderQuery = new SieveApplyOrderQuery(); + sieveApplyOrderQuery.setSort("created descc"); + sieveApplyOrderQuery.setParentId(sieveModel.getParentId()); + sieveApplyOrderQuery.setHospitalId(sieveModel.getHospitalId()); + sieveApplyOrderQuery.setYn(YnEnums.YES.getId()); + sieveApplyOrderQuery.setLymsSieveId(sieveModel.getId()); + + //产筛结果 + SieveResultQuery sieveResultQuery = new SieveResultQuery(); + sieveResultQuery.setSort("created descc"); + sieveResultQuery.setParentId(sieveModel.getParentId()); + sieveResultQuery.setYn(YnEnums.YES.getId()); + List resultModels = sieveService.queryListSieveResult(sieveResultQuery); + if (CollectionUtils.isNotEmpty(resultModels)) { + SieveResultModel resultModel = resultModels.get(0); + if(StringUtils.isNotEmpty(resultModel.getTszhz())){ + sieveListResult.setTszhz(SieveEnums.getTitle(Integer.parseInt(resultModel.getTszhz())));//21 -三体 + } + if(StringUtils.isNotEmpty(resultModel.getSbst())){ + sieveListResult.setSbst(SieveEnums.getTitle(Integer.parseInt(resultModel.getSbst())));// 18-三体 + } + if(StringUtils.isNotEmpty(resultModel.getSjgjx())){ + sieveListResult.setSjgjx(SieveEnums.getTitle(Integer.parseInt(resultModel.getSjgjx())));// 神经管畸形 + } + } + List applyOrderModels = applyOrderService.querySieveApplyOrderWithQuery(sieveApplyOrderQuery); + if(CollectionUtils.isEmpty(applyOrderModels)){ + SieveApplyOrderQuery sieveApplyOrderQuery1 = new SieveApplyOrderQuery(); + sieveApplyOrderQuery1.setSort("created descc"); + sieveApplyOrderQuery1.setParentId(sieveModel.getParentId()); + sieveApplyOrderQuery1.setHospitalId(sieveModel.getHospitalId()); + sieveApplyOrderQuery1.setYn(YnEnums.YES.getId()); + applyOrderModels = applyOrderService.querySieveApplyOrderWithQuery(sieveApplyOrderQuery1); + } + sieveListResult.setName(sieveModel.getName()); //姓名 + //采血日期 + if (CollectionUtils.isNotEmpty(applyOrderModels)) { + SieveApplyOrderModel sieveApplyOrderModel = applyOrderModels.get(0); + //采血日期 + sieveListResult.setCollectionDate(DateUtil.getyyyy_MM_dd(sieveApplyOrderModel.getCollectionDate())); + } + Patients patients = patientsService.findOnePatientById(sieveModel.getParentId()); + if (null != patients) { + sieveListResult.setIsGravida((patients.getType() == 3 && patients.getFmDate() != null) ? "0" : "1"); + if (null != patients.getDueStatus() && 1 == patients.getDueStatus()) + sieveListResult.setcDueWeek("终止妊娠"); + else if (patients.getType() == 3) { + sieveListResult.setcDueWeek("已分娩"); + } + //年龄 + sieveListResult.setAge(DateUtil.getAge(patients.getBirth()) + "岁"); + //户籍地 + sieveListResult.setPlaceDomicile(CommonsHelper.getResidence(patients.getProvinceId(), patients.getCityId(), + patients.getAreaId(), patients.getStreetId(), patients.getAddress(), basicConfigService)); + } + sieveListResult.setApplyTime(DateUtil.getyyyy_MM_dd(sieveModel.getApplyDate())); //申请时间 + sieveListResult.setDueWeek(com.lyms.platform.common.utils.StringUtils.dueWeek(sieveModel.getDueWeek()));//申请孕周 + if (StringUtils.isNotEmpty(sieveModel.getApplyHospitalId())) { + Organization organization = organizationService.getOrganization(Integer.parseInt(sieveModel.getApplyHospitalId())); + sieveListResult.setApplyHospital(organization.getName()); //申请医院 + } + sieveListResult.setSieveTypeStr(SieveEnums.SieveTypeEnums.getNameById(sieveModel.getSieveType()));//筛查类型 1 血清学筛查 2/无创基因筛查 3/二者都用 + sieveListResult.setStatusText(SieveStatusEnums.getStrById(sieveModel.getStatus()));//产筛状态 + sieveListResult.setCostTypeStr(SieveEnums.CostTypeEnums.getNameById(sieveModel.getCostType())); // 费用类型 1/免费 2/自费 + sieveListResult.setZtfxText(SieveEnums.getTitle(sieveModel.getZtfx()));//整体风险 + results.add(sieveListResult); + } + return results; + } +} -- 1.8.3.1