Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java =================================================================== diff -u -r17612 -r17664 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 17612) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 17664) @@ -290,6 +290,8 @@ String materialName = StrutsParamUtils.getPraramValue("materialName", ""); return jasperReportManager.getRecycleMaterialDetail(startTime, endTime, handelDepartCoding, applyDepartCoding, materialName); }else if (reportName.equals("QualityMonitoringInspectMonthReport")) { + // 查询科室编码 + String querySupplyRoom = StrutsParamUtils.getPraramValue("querySupplyRoom", ""); // 质量监测项统计月报 String queryYear = StrutsParamUtils.getPraramValue("queryYear", ""); String queryMonth = StrutsParamUtils.getPraramValue("queryMonth", ""); @@ -300,9 +302,9 @@ // 图形显示类型 String type = StrutsParamUtils.getPraramValue("type", ""); if(StringUtils.isNotBlank(queryYear) && StringUtils.isNotBlank(queryMonth) && StringUtils.isNotBlank(inspectItem)){ - return jasperReportManager.getQualityMonitoringInspectDayOfMonthParamet(queryYear,queryMonth,monitoringType,inspectItem,inspectDetail,type); + return jasperReportManager.getQualityMonitoringInspectDayOfMonthParamet(queryYear,querySupplyRoom,queryMonth,monitoringType,inspectItem,inspectDetail,type); }else if(StringUtils.isNotBlank(queryYear) && StringUtils.isNotBlank(inspectItem)){ - return jasperReportManager.getQualityMonitoringInspectMonthParamet(queryYear,monitoringType,inspectItem,inspectDetail,type); + return jasperReportManager.getQualityMonitoringInspectMonthParamet(queryYear,querySupplyRoom,monitoringType,inspectItem,inspectDetail,type); } }else if(reportName.equals("formInstanceReport")){ String startDate = StrutsParamUtils.getPraramValue("startDate", ""); Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManager.java =================================================================== diff -u -r17612 -r17664 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManager.java (.../JasperReportManager.java) (revision 17612) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManager.java (.../JasperReportManager.java) (revision 17664) @@ -422,23 +422,26 @@ /** * 获取质量监测统计项月报统计 * @param queryYear + * @param orgUnitCoding 查询科室编码 * @param monitoringType * @param inspectItem * @param inspectDetail + * @param type * @return */ - public List getQualityMonitoringInspectMonthParamet(String queryYear,String monitoringType,String inspectItem,String inspectDetail,String type); + public List getQualityMonitoringInspectMonthParamet(String queryYear,String orgUnitCoding,String monitoringType,String inspectItem,String inspectDetail,String type); /** * 获取质量监测统计项一个月内每天的统计 * @param queryYear 查询年份 如: 2017 + * @param orgUnitCoding 查询供应室的编码 * @param queryMonth 查询月份 如: 02 * @param monitoringType 监测类型 * @param inspectItem 监测细则 * @param inspectDetail 监测结果 * @param type 查询的表格类型 * @return */ - public List getQualityMonitoringInspectDayOfMonthParamet(String queryYear,String queryMonth,String monitoringType,String inspectItem,String inspectDetail,String type); + public List getQualityMonitoringInspectDayOfMonthParamet(String queryYear,String orgUnitCoding,String queryMonth,String monitoringType,String inspectItem,String inspectDetail,String type); /** * 回收器械材料明细报表 * @param startTime Index: ssts-web/src/main/webapp/disinfectsystem/reportforms/qualityMonitoringMonthView.js =================================================================== diff -u -r17024 -r17664 --- ssts-web/src/main/webapp/disinfectsystem/reportforms/qualityMonitoringMonthView.js (.../qualityMonitoringMonthView.js) (revision 17024) +++ ssts-web/src/main/webapp/disinfectsystem/reportforms/qualityMonitoringMonthView.js (.../qualityMonitoringMonthView.js) (revision 17664) @@ -31,6 +31,8 @@ Ext.QuickTips.init(); // 记录cookie(3步) function reloadReport(){ + + var querySupplyRoom = Ext.getCmp('querySupplyRoom').getValue(); var queryYear = $Id('monthSearch').value; // 监测项类型 var monitoringType = $Id('monitoringType').value; @@ -87,7 +89,7 @@ reportFile = "QualityMonitoringInspectMonthReportView.jasper"; } } - window.open(WWWROOT+"/jasperreports/jasperreportsAction!createReportFromJavaBeanSource.do?jasperreportName="+reportFile+"&monitoringType="+monitoringType+"&reportName=QualityMonitoringInspectMonthReport&queryYear="+yearStr+"&queryMonth="+monthStr+"&inspectItem=" + inspectItem +"&type=" + type + "&inspectDetail="+inspectDetail+"",'thisIframe','_self'); + window.open(WWWROOT+"/jasperreports/jasperreportsAction!createReportFromJavaBeanSource.do?jasperreportName="+reportFile+"&monitoringType="+monitoringType+"&reportName=QualityMonitoringInspectMonthReport&queryYear="+yearStr+"&queryMonth="+monthStr+"&inspectItem=" + inspectItem +"&type=" + type + "&inspectDetail="+inspectDetail+"&querySupplyRoom="+querySupplyRoom+"",'thisIframe','_self'); } Ext.ux.ForgonPageGrid.prototype.getGridParameterMap = function() { @@ -241,7 +243,7 @@ width : 200, layout : 'form', labelWidth : 70, - hidden : true, + hidden : false, items : [{ xtype : 'combo', id : 'querySupplyRoom', Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r17636 -r17664 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 17636) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 17664) @@ -12483,13 +12483,13 @@ return list; } // 获取质量监测统计项月报统计 - public List getQualityMonitoringInspectMonthParamet(String queryYear,String monitoringType,String inspectItem,String inspectDetail,String type){ + public List getQualityMonitoringInspectMonthParamet(String queryYear,String orgUnitCoding,String monitoringType,String inspectItem,String inspectDetail,String type){ List list = new ArrayList(); if("firstSecondHalfForm".equals(type) || "compareLastForm".equals(type) || "quarterForm".equals(type)){ - // 上下半年对比,或者跟去年对比图 - return getQualityMonitoringInspectCompareParamet(queryYear,monitoringType,inspectItem,inspectDetail,type); + // 上下半年对比,或者跟去年对比 或者季度对比的数据 + return getQualityMonitoringInspectCompareParamet(queryYear,orgUnitCoding,monitoringType,inspectItem,inspectDetail,type); } - if(StringUtils.isNotBlank(queryYear) && StringUtils.isNotBlank(inspectItem)){ + if(StringUtils.isNotBlank(orgUnitCoding) && StringUtils.isNotBlank(queryYear) && StringUtils.isNotBlank(inspectItem)){ String startYear = queryYear + "-01-01 00:00:00"; String nextYear = getNextYear(queryYear) + " 00:00:00"; String sql = ""; @@ -12503,6 +12503,7 @@ + " left join FormInstanceOptionValue fiov on fiItem.id = fiov.formInstanceItem_id " + " where fd.formName = '" + inspectItem + "'" + " and fd.formType = '" + monitoringType + "'" + + " and fi.orgUnitCoding = '"+ orgUnitCoding + "'" + " and fiov.id is not null " + " and fiov.id = (select MIN(id) from FormInstanceOptionValue where formInstanceItem_id = fiItem.id) " + " and qmi.dateTime between " + dateQueryAdapter.dateAdapter(startYear) @@ -12516,6 +12517,7 @@ + " where qmi.id=fi.id and fd.id = fi.formDefinition_id and fi.id = fiItem.formInstance_id and fiItem.formDefinitionItem_id = fdi.id and fiOption.formInstanceItem_id = fiItem.id " + " and fd.formName = '" + inspectItem + "'" + " and fd.formType = '" + monitoringType + "'" + + " and fi.orgUnitCoding = '"+ orgUnitCoding + "'" + " and fdi.name = '" + inspectDetail + "'" + " and qmi.dateTime between " + dateQueryAdapter.dateAdapter(startYear) + "and "+dateQueryAdapter.dateAdapter(nextYear) @@ -12536,20 +12538,21 @@ /** * 获取质量监测统计项一个月内每天的统计 * @param queryYear 查询年份 如: 2017 + * @param orgUnitCoding 查询供应室的编码 * @param queryMonth 查询月份 如: 02 * @param monitoringType 监测类型 * @param inspectItem 监测细则 * @param inspectDetail 监测结果 * @param type 查询的表格类型 * @return */ - public List getQualityMonitoringInspectDayOfMonthParamet(String queryYear,String queryMonth,String monitoringType,String inspectItem,String inspectDetail,String type){ + public List getQualityMonitoringInspectDayOfMonthParamet(String queryYear,String orgUnitCoding,String queryMonth,String monitoringType,String inspectItem,String inspectDetail,String type){ List list = new ArrayList(); if("firstSecondHalfForm".equals(type) || "compareLastForm".equals(type) || "quarterForm".equals(type)){ - // 上下半年对比,或者跟去年对比图 - return getQualityMonitoringInspectCompareParamet(queryYear,monitoringType,inspectItem,inspectDetail,type); + // 上下半年对比,或者跟去年对比 或者季度对比的数据 + return getQualityMonitoringInspectCompareParamet(queryYear,orgUnitCoding,monitoringType,inspectItem,inspectDetail,type); } - if(StringUtils.isNotBlank(queryYear) && StringUtils.isNotBlank(queryMonth) && StringUtils.isNotBlank(inspectItem)){ + if(StringUtils.isNotBlank(orgUnitCoding) && StringUtils.isNotBlank(queryYear) && StringUtils.isNotBlank(queryMonth) && StringUtils.isNotBlank(inspectItem)){ String startTime = queryYear + "-" + queryMonth + "-01 00:00:00"; String endTime = getNextMonth(queryYear,queryMonth) + " 00:00:00"; String sql = ""; @@ -12562,6 +12565,7 @@ + " where qmi.id=fi.id and fd.id = fi.formDefinition_id and fi.id = fiItem.formInstance_id and fiItem.formDefinitionItem_id = fdi.id " + " and fd.formName = '" + inspectItem + "'" + " and fd.formType = '" + monitoringType + "'" + + " and fi.orgUnitCoding = '"+ orgUnitCoding + "'" + " and (fiItem.id in (select formInstanceItem_id from FormInstanceOptionValue)) " + " and qmi.dateTime between " + dateQueryAdapter.dateAdapter(startTime) + "and "+dateQueryAdapter.dateAdapter(endTime) @@ -12574,6 +12578,7 @@ + " where qmi.id=fi.id and fd.id = fi.formDefinition_id and fi.id = fiItem.formInstance_id and fiItem.formDefinitionItem_id = fdi.id and fiOption.formInstanceItem_id = fiItem.id " + " and fd.formName = '" + inspectItem + "'" + " and fd.formType = '" + monitoringType + "'" + + " and fi.orgUnitCoding = '"+ orgUnitCoding + "'" + " and fdi.name = '" + inspectDetail + "'" + " and qmi.dateTime between " + dateQueryAdapter.dateAdapter(startTime) + "and "+dateQueryAdapter.dateAdapter(endTime) @@ -12601,11 +12606,11 @@ * @param type * @return */ - public List getQualityMonitoringInspectCompareParamet(String queryYear,String monitoringType,String inspectItem,String inspectDetail,String type){ + public List getQualityMonitoringInspectCompareParamet(String queryYear,String orgUnitCoding,String monitoringType,String inspectItem,String inspectDetail,String type){ List list = new ArrayList(); Map map = new HashMap(); try{ - if(StringUtils.isNotBlank(queryYear) && StringUtils.isNotBlank(inspectItem)){ + if(StringUtils.isNotBlank(orgUnitCoding) && StringUtils.isNotBlank(queryYear) && StringUtils.isNotBlank(inspectItem)){ Map> startAndEndDays = null; if ( "firstSecondHalfForm".equals(type) ) { startAndEndDays = getStartAndEndDay(queryYear, "split", null); @@ -12632,6 +12637,7 @@ + " where qmi.id=fi.id and fd.id = fi.formDefinition_id and fi.id = fiItem.formInstance_id and fiItem.formDefinitionItem_id = fdi.id " + " and fd.formName = '" + inspectItem + "'" + " and fd.formType = '" + monitoringType + "'" + + " and fi.orgUnitCoding = '"+ orgUnitCoding + "'" + " and (fiItem.id in (select formInstanceItem_id from FormInstanceOptionValue)) " + " and qmi.dateTime between " + dateQueryAdapter.dateAdapter(startDay) + "and "+dateQueryAdapter.dateAdapter(endDay) @@ -12644,6 +12650,7 @@ + " where qmi.id=fi.id and fd.id = fi.formDefinition_id and fi.id = fiItem.formInstance_id and fiItem.formDefinitionItem_id = fdi.id and fiOption.formInstanceItem_id = fiItem.id " + " and fd.formName = '" + inspectItem + "'" + " and fd.formType = '" + monitoringType + "'" + + " and fi.orgUnitCoding = '"+ orgUnitCoding + "'" + " and fdi.name = '" + inspectDetail + "'" + " and qmi.dateTime between " + dateQueryAdapter.dateAdapter(startDay) + "and "+dateQueryAdapter.dateAdapter(endDay)