From 9998cff25c0efa3d9c037f95e8bc7388d3b876b0 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Mon, 12 Nov 2018 14:38:49 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AD=9B=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/lyms/platform/biz/dal/ISieveDao.java | 2 + .../lyms/platform/biz/dal/impl/SieveDaoImpl.java | 5 + .../lyms/platform/biz/service/SieveService.java | 4 + .../com/lyms/platform/common/utils/ExcelUtil.java | 134 +++++++++++++ .../com/lyms/platform/query/DiagnosisQuery.java | 12 ++ .../com/lyms/platform/query/PatientsQuery.java | 2 +- .../com/lyms/platform/query/SieveResultQuery.java | 89 +++++++++ .../operate/web/controller/SieveController.java | 14 ++ .../platform/operate/web/facade/SieveFacade.java | 207 ++++++++++++++++++++- .../web/service/impl/NewbornServiceImpl.java | 2 +- 10 files changed, 459 insertions(+), 12 deletions(-) diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/ISieveDao.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/ISieveDao.java index 9ed1511..c1186e1 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/ISieveDao.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/ISieveDao.java @@ -86,4 +86,6 @@ public interface ISieveDao { List queryList(MongoQuery sieveQuery); void updateSieveResult(SieveResultModel model); + + int queryListSieveResultCount(MongoQuery mongoQuery); } diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/SieveDaoImpl.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/SieveDaoImpl.java index 64bce49..241ea40 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/SieveDaoImpl.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/SieveDaoImpl.java @@ -96,6 +96,11 @@ public class SieveDaoImpl extends BaseMongoDAOImpl implements mongoTemplate.updateMulti(new MongoQuery(new MongoCondition("id", model.getId(), MongoOper.IS)).convertToMongoQuery(), update, SieveResultModel.class); } + @Override + public int queryListSieveResultCount(MongoQuery mongoQuery) { + return (int)count(mongoQuery.convertToMongoQuery()); + } + /** * 查询产筛列表 * diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/SieveService.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/SieveService.java index 6463f91..16f3645 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/SieveService.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/SieveService.java @@ -49,6 +49,10 @@ public class SieveService { return iSieveDao.queryListSieveResult(sieveResultQuery.convertToQuery()); } + public int queryListSieveResultCount(SieveResultQuery sieveResultQuery) { + return iSieveDao.queryListSieveResultCount(sieveResultQuery.convertToQuery()); + } + public void updateSieveRsult(SieveResultModel model) { iSieveDao.updateSieveResult(model); } diff --git a/platform-common/src/main/java/com/lyms/platform/common/utils/ExcelUtil.java b/platform-common/src/main/java/com/lyms/platform/common/utils/ExcelUtil.java index 8b467e9..85bfa76 100644 --- a/platform-common/src/main/java/com/lyms/platform/common/utils/ExcelUtil.java +++ b/platform-common/src/main/java/com/lyms/platform/common/utils/ExcelUtil.java @@ -286,6 +286,140 @@ public class ExcelUtil } } + + public static void writeWhSieveExclFile(String filePath,OutputStream out,List> values,String date) { + File file = new File(filePath); + InputStream in = null; + Workbook wb = null; + try { + in = new FileInputStream(file); + wb = Workbook.getWorkbook(in); + + WritableWorkbook book = wb.createWorkbook(out,wb); + WritableSheet ws = book.getSheet(0); + + WritableFont contentFont = new WritableFont(WritableFont.ARIAL, 12, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, Colour.BLACK); + WritableCellFormat contentFormt = new WritableCellFormat(contentFont); + contentFormt.setAlignment(jxl.format.Alignment.CENTRE); + contentFormt.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN); + contentFormt.setVerticalAlignment(VerticalAlignment.CENTRE); + + + Label label = new Label(0, 0, "ssss",contentFormt); + ws.addCell(label); + + int arrayIndex = 0; + for (int i = 3, len = values.size()+3; i < len; i++, arrayIndex++) + { + + Set sets = values.get(arrayIndex).keySet(); + int j = 0; + for (String key : sets) + { + String value = values.get(arrayIndex).get(key)+""; + if (StringUtils.isNotEmpty(value) && StringUtils.isNum(value)) + { + WritableCellFormat wcfN = new WritableCellFormat(contentFont); + wcfN.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN); + wcfN.setAlignment(jxl.format.Alignment.CENTRE); + wcfN.setVerticalAlignment(VerticalAlignment.CENTRE); + Number labelNF = new Number(j, i,Integer.parseInt(value), wcfN); + ws.addCell(labelNF); + } + else + { + ws.addCell(new Label(j, i,value, contentFormt)); + } + j++; + } + } + + book.write(); + book.close(); + wb.close(); + }catch (Exception e) + { + e.printStackTrace(); + } + } + + + + public static void writeWhDiagnosisExclFile(String filePath,OutputStream out,List> values,String titleName,String h1) + { + + File file = new File(filePath); + InputStream in = null; + Workbook wb = null; + try { + in = new FileInputStream(file); + wb = Workbook.getWorkbook(in); + + WritableWorkbook book = wb.createWorkbook(out,wb); + WritableSheet ws = book.getSheet(0); + + WritableFont contentFont = new WritableFont(WritableFont.ARIAL, 12, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, Colour.BLACK); + WritableCellFormat contentFormt = new WritableCellFormat(contentFont); + contentFormt.setAlignment(jxl.format.Alignment.CENTRE); + contentFormt.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN); + contentFormt.setVerticalAlignment(VerticalAlignment.CENTRE); + + WritableFont leftFont = new WritableFont(WritableFont.ARIAL, 12, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, Colour.BLACK); + WritableCellFormat leftFormt = new WritableCellFormat(leftFont); + leftFormt.setBorder(jxl.format.Border.ALL,jxl.format.BorderLineStyle.THIN); + leftFormt.setAlignment(Alignment.LEFT); + leftFormt.setVerticalAlignment(VerticalAlignment.CENTRE); + + + WritableFont title = new WritableFont(WritableFont.ARIAL, 18, WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE, Colour.BLACK); + WritableCellFormat titleFormt = new WritableCellFormat(title); + titleFormt.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN); + titleFormt.setAlignment(jxl.format.Alignment.CENTRE); + titleFormt.setVerticalAlignment(VerticalAlignment.CENTRE); + + Label label = new Label(0, 0, titleName,titleFormt); + ws.addCell(label); + + Label label1 = new Label(1, 1, titleName,titleFormt); + ws.addCell(label1); + + int arrayIndex = 0; + for (int i = 6, len = values.size()+6; i < len; i++, arrayIndex++) + { + + Set sets = values.get(arrayIndex).keySet(); + int j = 0; + for (String key : sets) + { + String value = values.get(arrayIndex).get(key); + if (StringUtils.isNotEmpty(value) && StringUtils.isNum(value)) + { + WritableCellFormat wcfN = new WritableCellFormat(contentFont); + wcfN.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN); + wcfN.setAlignment(jxl.format.Alignment.CENTRE); + wcfN.setVerticalAlignment(VerticalAlignment.CENTRE); + Number labelNF = new Number(j, i,Integer.parseInt(value), wcfN); + ws.addCell(labelNF); + } + else + { + ws.addCell(new Label(j, i,value, contentFormt)); + } + j++; + } + + } + + book.write(); + book.close(); + wb.close(); + }catch (Exception e) + { + e.printStackTrace(); + } + + } + public static void writeExclFile(String filePath,OutputStream out,List areaNams,String titleName,String area,String time,List> values) { diff --git a/platform-dal/src/main/java/com/lyms/platform/query/DiagnosisQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/DiagnosisQuery.java index 9ff9dee..5cfdb82 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/DiagnosisQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/DiagnosisQuery.java @@ -41,6 +41,15 @@ public class DiagnosisQuery extends BaseQuery implements IConvertToNativeQuery { private String specimenNo;//标本号 private String collectHospitalId;//申请医院 private List parentIdList;//孕妇ID集合 + private String diaProject; + + public String getDiaProject() { + return diaProject; + } + + public void setDiaProject(String diaProject) { + this.diaProject = diaProject; + } public List getHospitalIds() { return hospitalIds; @@ -251,6 +260,9 @@ public class DiagnosisQuery extends BaseQuery implements IConvertToNativeQuery { if(null != diaResult){ condition = condition.and("diaResult",diaResult,MongoOper.IS); } + if(null != diaProject){ + condition = condition.and("diaProject",diaProject,MongoOper.IS); + } if(null != rsResult){ condition = condition.and("rsResult", rsResult, MongoOper.IS); } 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 f11f8e9..367f928 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 @@ -468,7 +468,7 @@ public class PatientsQuery extends BaseQuery implements IConvertToNativeQuery { condition = condition.and("areaPostRestId", areaPostRestId, MongoOper.IS); } if (StringUtils.isNotEmpty(streetPostRestId)) { - condition = condition.and("streetRegisterId", streetPostRestId, MongoOper.IS); + condition = condition.and("streetPostRestId", streetPostRestId, MongoOper.IS); } // 分娩信息 diff --git a/platform-dal/src/main/java/com/lyms/platform/query/SieveResultQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/SieveResultQuery.java index d44644d..755debb 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/SieveResultQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/SieveResultQuery.java @@ -8,6 +8,7 @@ import com.lyms.platform.common.dao.operator.MongoQuery; import org.springframework.data.mongodb.core.query.Criteria; import java.util.Date; +import java.util.List; /** * @@ -20,6 +21,7 @@ public class SieveResultQuery extends BaseQuery implements IConvertToNativeQuery private String id; //患者id private String parentId; + private List parentIds; //姓名 private String name; //胎数 @@ -53,6 +55,61 @@ public class SieveResultQuery extends BaseQuery implements IConvertToNativeQuery private Date modifiedStart; private Date modifiedEnd; + private String tszhz;// 唐氏综合症 + private String sjgjx;// 神经管畸形 + private String sbst;// 18-三体 + private String dzhpx;// 地中海贫血 + private String cspj;// 产筛评价 + private String stzhz13; //13-三体 + + public String getTszhz() { + return tszhz; + } + + public void setTszhz(String tszhz) { + this.tszhz = tszhz; + } + + public String getStzhz13() { + return stzhz13; + } + + public void setStzhz13(String stzhz13) { + this.stzhz13 = stzhz13; + } + + public String getCspj() { + return cspj; + } + + public void setCspj(String cspj) { + this.cspj = cspj; + } + + public String getDzhpx() { + return dzhpx; + } + + public void setDzhpx(String dzhpx) { + this.dzhpx = dzhpx; + } + + public String getSbst() { + return sbst; + } + + public void setSbst(String sbst) { + this.sbst = sbst; + } + + public String getSjgjx() { + return sjgjx; + } + + public void setSjgjx(String sjgjx) { + this.sjgjx = sjgjx; + } + public Integer getIsNotify() { return isNotify; } @@ -99,6 +156,29 @@ public class SieveResultQuery extends BaseQuery implements IConvertToNativeQuery if (null != id) { condition = condition.and("id", id, MongoOper.IS); } + + if (null != tszhz) { + condition = condition.and("tszhz", tszhz, MongoOper.IS); + } + if (null != sjgjx) { + condition = condition.and("sjgjx",sjgjx , MongoOper.IS); + } + if (null != sbst) { + condition = condition.and("sbst",sbst , MongoOper.IS); + } + + if (null != dzhpx) { + condition = condition.and("dzhpx", dzhpx, MongoOper.IS); + } + + if (null != stzhz13) { + condition = condition.and("stzhz13", stzhz13, MongoOper.IS); + } + + if (null != parentIds && parentIds.size()>0) { + condition = condition.and("parentId", parentIds, MongoOper.IN); + } + if (null != parentId) { condition = condition.and("parentId", parentId, MongoOper.IS); } @@ -142,6 +222,15 @@ public class SieveResultQuery extends BaseQuery implements IConvertToNativeQuery return condition.toMongoQuery(); } + + public List getParentIds() { + return parentIds; + } + + public void setParentIds(List parentIds) { + this.parentIds = parentIds; + } + public Date getModifiedStart() { return modifiedStart; } 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 d354542..cfbc00f 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 @@ -311,4 +311,18 @@ public class SieveController extends BaseController { } + /** + * 导出产前诊断及新生儿疾病筛查工作情况表 + * @param cqSieveQueryRequest + * @param request + * @param response + */ + @TokenRequired + @RequestMapping(value = "exportDiagnosisReportExcl", method = RequestMethod.POST) + public void exportDiagnosisReportExcl(@Valid CqSieveQueryRequest cqSieveQueryRequest,HttpServletRequest request,HttpServletResponse response) { + + sieveFacade.exportDiagnosisReportExcl(cqSieveQueryRequest, getUserId(request), response); + + } + } \ No newline at end of file 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 436b706..397aecb 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 @@ -17,6 +17,7 @@ import com.lyms.platform.operate.web.request.SieveAddRequest; 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.DueOrgCountWorker; import com.lyms.platform.operate.web.worker.SieveWorker; import com.lyms.platform.permission.model.Organization; import com.lyms.platform.permission.model.OrganizationQuery; @@ -37,6 +38,7 @@ import org.springframework.stereotype.Component; import javax.servlet.http.HttpServletResponse; import java.io.OutputStream; import java.util.*; +import java.util.concurrent.Callable; import java.util.concurrent.Future; import java.util.concurrent.TimeUnit; @@ -1328,17 +1330,202 @@ public class SieveFacade { @Autowired private AreaCountFacade areaCountFacade; + + private List> getSieveDatas(List hospitalIds,String[] dates,String cityId) + { + List> list = new ArrayList<>(); + + + BasicConfigQuery basicQuery = new BasicConfigQuery(); + basicQuery.setYn(YnEnums.YES.getId()); + basicQuery.setTypeId("b7ea005c-dfac-4c2a-bdae-25239b3f44fd"); + basicQuery.setParentId(cityId); + + + int ySieveCount = 0; + int sSieveCount = 0; + //获取地址列表 + List configList = basicConfigService.queryBasicConfig(basicQuery); + for (BasicConfig bc : configList) + { + Map mapData = new HashMap<>(); + mapData.put("areaName", bc.getName());//县市区 + + PatientsQuery patientsQuery = new PatientsQuery(); + patientsQuery.setHospitalList(hospitalIds); + patientsQuery.setYn(YnEnums.YES.getId()); + patientsQuery.setCityRegisterId(cityId); + List patientses = patientsService.queryPatient(patientsQuery); + List patientIds = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(patientses)) + { + for (Patients pat : patientses) + { + patientIds.add(pat.getId()); + } + SieveQuery ySieveQuery = new SieveQuery(); + ySieveQuery.setParentIds(patientIds); + ySieveQuery.setHospitalIds(hospitalIds); + if (dates != null) { + ySieveQuery.setCreatedStart(DateUtil.parseYMD(dates[0])); + if (dates.length == 2) { + ySieveQuery.setCreatedEnd(DateUtil.parseYMDHMS(dates[1])); + } + } + ySieveCount = sieveService.queryListCount(ySieveQuery); + + ySieveQuery.setStatus(3); + sSieveCount = sieveService.queryListCount(ySieveQuery); + } + + mapData.put("ysiveCount", String.valueOf(ySieveCount));//应筛查户籍人数 + mapData.put("sSieveCount", String.valueOf(sSieveCount));//实筛查户籍人数 + +// private String tszhz;// 唐氏综合症 +// private String sjgjx;// 神经管畸形 +// private String sbst;// 18-三体 +// private String dzhpx;// 地中海贫血 +// private String cspj;// 产筛评价 +// private String stzhz13; //13-三体 + int st21Count = 0; + int st1813Count = 0; + int sjqxCount = 0; + + int sieveCount=0; + + int disCount = 0; + int disExcCount = 0; + int sjDisCount = 0; + int sjDisExcCount = 0; + //孕妇无创DNA检测 + int dnaSieveCount = 0; + int dnaSieveLowCount = 0; + int dnaSieveHighCount = 0; + + if (CollectionUtils.isNotEmpty(patientIds)) + { + SieveResultQuery sieveResultQuery = new SieveResultQuery(); + sieveResultQuery.setParentIds(patientIds); + sieveResultQuery.setYn(YnEnums.YES.getId()); + sieveResultQuery.setTszhz("2"); + st21Count = sieveService.queryListSieveResultCount(sieveResultQuery); + + + sieveResultQuery = new SieveResultQuery(); + sieveResultQuery.setParentIds(patientIds); + sieveResultQuery.setYn(YnEnums.YES.getId()); + sieveResultQuery.setSbst("2"); + int temp1 = sieveService.queryListSieveResultCount(sieveResultQuery); + + sieveResultQuery = new SieveResultQuery(); + sieveResultQuery.setParentIds(patientIds); + sieveResultQuery.setYn(YnEnums.YES.getId()); + sieveResultQuery.setStzhz13("2"); + int temp2 = sieveService.queryListSieveResultCount(sieveResultQuery); + st1813Count = temp1 + temp2; + + + sieveResultQuery = new SieveResultQuery(); + sieveResultQuery.setParentIds(patientIds); + sieveResultQuery.setYn(YnEnums.YES.getId()); + sieveResultQuery.setSjgjx("2"); + sjqxCount = sieveService.queryListSieveResultCount(sieveResultQuery); + + sieveCount=st21Count+st1813Count+sjqxCount; + + + //羊水穿刺产前诊断 诊断项目(1,羊水穿刺;2,绒毛穿刺;3,脐带血检测) + DiagnosisQuery diagnosisQuery1 = new DiagnosisQuery(); + diagnosisQuery1.setHospitalIds(hospitalIds); + diagnosisQuery1.setDiaProject("1"); + diagnosisQuery1.setDiaStatus("3");//(0,未申请;1,已申请;2,已接收;3,已诊断) + if (dates != null) { + diagnosisQuery1.setResultDateStart(DateUtil.parseYMD(dates[0])); + if (dates.length == 2) { + diagnosisQuery1.setResultDateEnd(DateUtil.parseYMDHMS(dates[1])); + } + } + disCount = diagnosisService.queryDiagnosisCount(diagnosisQuery1); + + diagnosisQuery1 = new DiagnosisQuery(); + diagnosisQuery1.setHospitalIds(hospitalIds); + diagnosisQuery1.setDiaProject("1"); + diagnosisQuery1.setDiaResult("1");//诊断结果(0,阴性;1,阳性) + diagnosisQuery1.setDiaStatus("3");//(0,未申请;1,已申请;2,已接收;3,已诊断) + if (dates != null) { + diagnosisQuery1.setResultDateStart(DateUtil.parseYMD(dates[0])); + if (dates.length == 2) { + diagnosisQuery1.setResultDateEnd(DateUtil.parseYMDHMS(dates[1])); + } + } + disExcCount = diagnosisService.queryDiagnosisCount(diagnosisQuery1); + + + + } + + mapData.put("st21Count", String.valueOf(st21Count));//21-三体 + + mapData.put("st1813Count",String.valueOf(st1813Count));//18、13三体 + + mapData.put("sjqxCount",String.valueOf(sjqxCount));//神经管缺陷 + + mapData.put("sieveCount",String.valueOf(sieveCount));//合计 + + mapData.put("disCount",String.valueOf(disCount));//诊断数 + + mapData.put("disExcCount",String.valueOf(disExcCount));//异常数 + + mapData.put("sjDisCount",String.valueOf(sjDisCount));//诊断数 + + mapData.put("sjDisExcCount",String.valueOf(sjDisExcCount));//异常数 + + mapData.put("dnaSieveCount",String.valueOf(dnaSieveCount));//筛查数 + + mapData.put("dnaSieveLowCount",String.valueOf(dnaSieveLowCount));//低风险人数 + + mapData.put("dnaSieveHighCount",String.valueOf(dnaSieveHighCount));//高风险人数 + + list.add(mapData); + } + + + //sum(list, basicConfigs); + + return list; + } + public void exportSieveReportExcl(CqSieveQueryRequest cqSieveQueryRequest, Integer userId,HttpServletResponse response) { -// try { -// -// response.setContentType("application/force-download"); -// response.setHeader("Content-Disposition", "attachment;filename=" + new String(("威海市孕妇产前筛查和诊断情况月报表.xls").getBytes("UTF-8"), "ISO-8859-1")); -// String path = this.getClass().getResource("/").getPath()+ "whfy_sieve.xls"; -// ExcelUtil.writeWhExclFile(path, response.getOutputStream(), list); -// -// } catch (Exception e) { -// ExceptionUtils.catchException(e, "fmRecordExportExcl异常"); -// } + try { + + + + List> list = new ArrayList<>(); + response.setContentType("application/force-download"); + response.setHeader("Content-Disposition", "attachment;filename=" + new String(("孕妇产前筛查和诊断情况月报表.xls").getBytes("UTF-8"), "ISO-8859-1")); + String path = this.getClass().getResource("/").getPath()+ "whfy_sieve.xls"; + ExcelUtil.writeWhSieveExclFile(path, response.getOutputStream(), list,cqSieveQueryRequest.getTime()); + + } catch (Exception e) { + ExceptionUtils.catchException(e, "exportSieveReportExcl error"); + } + } + + public void exportDiagnosisReportExcl(CqSieveQueryRequest cqSieveQueryRequest, Integer userId, HttpServletResponse response) { + try { + + String titleName = "山东省产前诊断及新生儿疾病筛查工作情况表"; + String h1 = "填报单位(签章):威海市妇幼保健院 XXX年X季度"; + + List> list = new ArrayList<>(); + response.setContentType("application/force-download"); + response.setHeader("Content-Disposition", "attachment;filename=" + new String(("产前诊断及新生儿疾病筛查工作情况表.xls").getBytes("UTF-8"), "ISO-8859-1")); + String path = this.getClass().getResource("/").getPath()+ "whfy_diagnosis.xls"; + ExcelUtil.writeWhDiagnosisExclFile(path, response.getOutputStream(), list,titleName,h1); + + } catch (Exception e) { + ExceptionUtils.catchException(e, "exportDiagnosisReportExcl error"); + } } } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/NewbornServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/NewbornServiceImpl.java index fe92ae0..e4d40b4 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/NewbornServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/NewbornServiceImpl.java @@ -540,7 +540,7 @@ public class NewbornServiceImpl extends BaseServiceImpl implements INewbornVisit { map.put("monthName", patients.getUsername()); map.put("phone", patients.getPhone()); - map.put("fmDays", patients.getFmWeek()); + map.put("fmDays", DateUtil.getDays(patients.getFmDate(),new Date())); map.put("fmHospitalName", CommonsHelper.getHospitalName(babyModel.getHospitalId(), organizationService)); map.put("postAddress", CommonsHelper.getResidence(patients.getProvincePostRestId(), patients.getCityPostRestId(), patients.getAreaPostRestId(), patients.getStreetPostRestId(), patients.getAddressPostRest(), basicConfigService)); -- 1.8.3.1