Index: ssts-web/src/main/webapp/jasperRtp/routineMonitoringReportOfADJ.jasper =================================================================== diff -u Binary files differ Index: ssts-web/src/main/webapp/jasperRtp/routineMonitoringReport.jrxml =================================================================== diff -u -r26267 -r26375 --- ssts-web/src/main/webapp/jasperRtp/routineMonitoringReport.jrxml (.../routineMonitoringReport.jrxml) (revision 26267) +++ ssts-web/src/main/webapp/jasperRtp/routineMonitoringReport.jrxml (.../routineMonitoringReport.jrxml) (revision 26375) @@ -59,12 +59,6 @@ - - - - - - @@ -100,29 +94,12 @@ - - - - + - - - - - - - - - - - - - - @@ -133,20 +110,9 @@ - - - - - - - - - - - @@ -166,11 +132,6 @@ - - - - - @@ -182,50 +143,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -234,13 +151,6 @@ - - - - - - - @@ -259,11 +169,7 @@ - - - - - + @@ -278,21 +184,10 @@ - - - - - + - - - - - - - @@ -312,13 +207,6 @@ - - - - - - - @@ -336,21 +224,10 @@ - - - - - + - - - - - - - @@ -448,30 +325,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r26267 -r26375 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 26267) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 26375) @@ -227,6 +227,7 @@ @Autowired private WorkQualityCollectionDataIndex workQualityCollectionDataIndex; + public static final String FORMNAMEOFADJ = "无菌包质量抽查登记表"; /** * 利用sql语句做数据源创建JasperPrint对象 * @param realPath 报表的jasper文件在服务器本地机子的全路径 @@ -10641,9 +10642,16 @@ String formName = StrutsParamUtils.getPraramValue("formName", ""); String materialName = StrutsParamUtils.getPraramValue("materialName", ""); String tousseName = StrutsParamUtils.getPraramValue("tousseName", ""); + String extraQuery = ""; + String extraJoin = ""; + boolean isCustomADJAndIsFormNameIsADJ = false;//是否无菌包质量抽查登记表 + if(FORMNAMEOFADJ.equals(formName)){ + isCustomADJAndIsFormNameIsADJ = true; + extraQuery = ",sr.frequency,s.name sterilizerName"; + extraJoin = " join SterilizationRecord sr on sr.id=qmi.sterilizationRecordId join Sterilizer s on s.id=sr.sterilizer_id"; + } String monitoringType = StrutsParamUtils.getPraramValue("monitoringType", ""); - String extraQuery = ",sr.frequency,s.name sterilizerName"; - String extraJoin = " join SterilizationRecord sr on sr.id=qmi.sterilizationRecordId join Sterilizer s on s.id=sr.sterilizer_id"; + if (StringUtils.isNotBlank(startDate) && StringUtils.isNotBlank(endDate) && StringUtils.isNotBlank(formName)) { @@ -10664,7 +10672,7 @@ + " left join FormInstanceOptionValue fiov on fiov.formInstanceItem_id=fiItem.id " + " and fiov.definitionItemOption_id=fdio.id " + " where (fdi.type = '" + FormDefinitionItem.TYPE_RADIO + "' or fdi.type ='" + FormDefinitionItem.TYPE_CHECK + "')" + " and " + whereSql; - addMonitoringItemBeanOptionRadioAndCHeck(list,sql); + addMonitoringItemBeanOptionRadioAndCHeck(list,sql,isCustomADJAndIsFormNameIsADJ); // 没有录入材料和包,有配了多选的细则的项 sql = " select " + dataSql + " dateStr," + " qmi.id qmiId,qmi.positionMsg positionMsg," @@ -10678,7 +10686,7 @@ + " and fiov.definitionItemOption_id=fdio.id " + " where (fdi.type = '" + FormDefinitionItem.TYPE_RADIO + "' or fdi.type ='" + FormDefinitionItem.TYPE_CHECK + "')" + " and " + whereSql + " and qmi.id in ( select qmi.id from QualityMonitoringInstance qmi left join QualityMonitoringGoods qmd on qmi.id=qmd.qualityMonitoringInstance_id where qmd.id is null) "; - addMonitoringItemBeanOptionRadioAndCHeckWithoutMaterial(list,sql); + addMonitoringItemBeanOptionRadioAndCHeckWithoutMaterial(list,sql,isCustomADJAndIsFormNameIsADJ); sql = " select " + dataSql + " dateStr," + " qmd.tousseName toussName,qmd.material material,qmd.amount amount,qmi.id qmiId,qmi.positionMsg positionMsg," @@ -10689,7 +10697,7 @@ + " join QualityMonitoringGoods qmd on qmi.id=qmd.qualityMonitoringInstance_id " + extraJoin + " where (fdi.type != '" + FormDefinitionItem.TYPE_RADIO + "' and fdi.type!='" + FormDefinitionItem.TYPE_CHECK + "')" + " and " + whereSql; - addMonitoringItemBeanOptionSingleResult(list,sql); + addMonitoringItemBeanOptionSingleResult(list,sql,isCustomADJAndIsFormNameIsADJ); // 没有录入材料和包,单一的结果 sql = " select " + dataSql + " dateStr," + " qmi.id qmiId,qmi.positionMsg positionMsg," @@ -10700,7 +10708,7 @@ + extraJoin + " where (fdi.type != '" + FormDefinitionItem.TYPE_RADIO + "' and fdi.type!='" + FormDefinitionItem.TYPE_CHECK + "')" + " and " + whereSql + " and qmi.id in ( select qmi.id from QualityMonitoringInstance qmi left join QualityMonitoringGoods qmd on qmi.id=qmd.qualityMonitoringInstance_id where qmd.id is null) "; - addMonitoringItemBeanOptionSingleResultWithoutMaterial(list,sql); + addMonitoringItemBeanOptionSingleResultWithoutMaterial(list,sql,isCustomADJAndIsFormNameIsADJ); if(FormDefinition.FOMRTYPE_QUALITYMONITORING.equals(monitoringType)){ sql = " select " + dataSql + " dateStr," @@ -10713,19 +10721,18 @@ + " where qmi.id not in (select formInstance_id from FormInstanceItem) " + " and qmi.type = '" + FormDefinition.FOMRTYPE_QUALITYMONITORING + "' " + " and " + whereSql; - addMonitoringItemBeanQualityMonitoring(list,sql); + addMonitoringItemBeanQualityMonitoring(list,sql,isCustomADJAndIsFormNameIsADJ); } - //是否隐藏监测结果列 - boolean hideMonitorReportMonitorResult = CssdUtils.getSystemSetConfigByNameBool("hideMonitorReportMonitorResult", false); - if (!hideMonitorReportMonitorResult && FormDefinition.FOMRTYPE_PERIODICMONITORING.equals(monitoringType)) { + //是否无菌包质量抽查登记表,是则隐藏监测结果列 + if (!FORMNAMEOFADJ.equals(formName) && FormDefinition.FOMRTYPE_PERIODICMONITORING.equals(monitoringType)) { sql = " select " + dataSql + " dateStr," + " qmd.tousseName toussName,qmd.material material,qmd.amount amount,qmi.id qmiId,qmi.positionMsg positionMsg,qmi.result " + extraQuery + " from QualityMonitoringInstance qmi join FormInstance fi on qmi.id=fi.id join FormDefinition fd on fi.formDefinition_id=fd.id " + " join QualityMonitoringGoods qmd on qmi.id=qmd.qualityMonitoringInstance_id " + extraJoin + " where qmi.type = '" + FormDefinition.FOMRTYPE_PERIODICMONITORING + "'" + " and " + whereSql; - addMonitoringItemBeanRountineMonitoring(list,sql); + addMonitoringItemBeanRountineMonitoring(list,sql,isCustomADJAndIsFormNameIsADJ); } // 条数 Integer qmCount = 0; @@ -11649,7 +11656,7 @@ private void newMonitoringItem(List list, Integer amount,String tousseName,String materialName, Long qmiId,String positoinMsg,String dateStr, - Integer orderNum,String questionName,String option,String answer,Integer frequency, String sterilizerName) { + Integer orderNum,String questionName,String option,String answer,Integer frequency, String sterilizerName, boolean isCustomADJAndIsFormNameIsADJ) { MonitoringItemBean bean = new MonitoringItemBean(); bean.setAmount(amount); bean.setDateTime(dateStr); @@ -11663,8 +11670,10 @@ bean.setOption(option);// 表头第三列 bean.setQuestionName(questionName);// 表头第二列 bean.setAnswer(answer); - bean.setFrequency(frequency); - bean.setSterilizerName(sterilizerName); + if(isCustomADJAndIsFormNameIsADJ){ + bean.setFrequency(frequency); + bean.setSterilizerName(sterilizerName); + } list.add(bean); } // 获取设备维护的bean的数据 单选和多选 @@ -11775,7 +11784,7 @@ * @param list * @param sql */ - private void addMonitoringItemBeanOptionRadioAndCHeck(List list,String sql){ + private void addMonitoringItemBeanOptionRadioAndCHeck(List list,String sql, boolean isCustomADJAndIsFormNameIsADJ){ if(StringUtils.isBlank(sql)){ return ; } @@ -11793,10 +11802,14 @@ String optionStr = rs.getString(9); Long fiovId = rs.getLong(10); String answer = (fiovId > 0) ? "√" : ""; - int frequency = rs.getInt("frequency"); - String sterilizerName = rs.getString("sterilizerName"); + int frequency = 0; + String sterilizerName = null; + if(isCustomADJAndIsFormNameIsADJ){ + frequency = rs.getInt("frequency"); + sterilizerName = rs.getString("sterilizerName"); + } newMonitoringItem(list, amount,tousseName,materialName,qmiId,positionMsg, - dataStr, orderNum, questionName,optionStr, answer,frequency,sterilizerName); + dataStr, orderNum, questionName,optionStr, answer,frequency,sterilizerName,isCustomADJAndIsFormNameIsADJ); } } catch (SQLException e) { e.printStackTrace(); @@ -11809,7 +11822,7 @@ * @param list * @param sql */ - private void addMonitoringItemBeanOptionRadioAndCHeckWithoutMaterial(List list,String sql){ + private void addMonitoringItemBeanOptionRadioAndCHeckWithoutMaterial(List list,String sql, boolean addMonitoringItemBeanOptionSingleResult){ if(StringUtils.isBlank(sql)){ return ; } @@ -11824,10 +11837,14 @@ String optionStr = rs.getString(6); Long fiovId = rs.getLong(7); String answer = (fiovId > 0) ? "√" : ""; - int frequency = rs.getInt("frequency"); - String sterilizerName = rs.getString("sterilizerName"); + int frequency = 0; + String sterilizerName = null; + if(addMonitoringItemBeanOptionSingleResult){ + frequency = rs.getInt("frequency"); + sterilizerName = rs.getString("sterilizerName"); + } newMonitoringItem(list, 0,"","",qmiId,positionMsg, - dataStr, orderNum, questionName,optionStr, answer, frequency, sterilizerName); + dataStr, orderNum, questionName,optionStr, answer, frequency, sterilizerName, addMonitoringItemBeanOptionSingleResult); } } catch (SQLException e) { e.printStackTrace(); @@ -11840,7 +11857,7 @@ * @param list * @param sql */ - private void addMonitoringItemBeanOptionSingleResult(List list,String sql){ + private void addMonitoringItemBeanOptionSingleResult(List list,String sql, boolean addMonitoringItemBeanOptionSingleResult){ if(StringUtils.isBlank(sql)){ return ; } @@ -11856,10 +11873,14 @@ String questionName = rs.getString(7); int orderNum = rs.getInt(8); String answer = rs.getString(9); - int frequency = rs.getInt("frequency"); - String sterilizerName = rs.getString("sterilizerName"); + int frequency = 0; + String sterilizerName = null; + if(addMonitoringItemBeanOptionSingleResult){ + frequency = rs.getInt("frequency"); + sterilizerName = rs.getString("sterilizerName"); + } newMonitoringItem(list, amount,tousseName,materialName,qmiId,positionMsg, - dataStr, orderNum, "-",questionName, answer, frequency, sterilizerName); + dataStr, orderNum, "-",questionName, answer, frequency, sterilizerName, addMonitoringItemBeanOptionSingleResult); } } catch (SQLException e) { e.printStackTrace(); @@ -11872,7 +11893,7 @@ * @param list * @param sql */ - private void addMonitoringItemBeanOptionSingleResultWithoutMaterial(List list,String sql){ + private void addMonitoringItemBeanOptionSingleResultWithoutMaterial(List list,String sql, boolean addMonitoringItemBeanOptionSingleResultWithoutMaterial){ if(StringUtils.isBlank(sql)){ return ; } @@ -11885,10 +11906,14 @@ String questionName = rs.getString(4); int orderNum = rs.getInt(5); String answer = rs.getString(6); - int frequency = rs.getInt("frequency"); - String sterilizerName = rs.getString("sterilizerName"); + int frequency = 0; + String sterilizerName = null; + if(addMonitoringItemBeanOptionSingleResultWithoutMaterial){ + frequency = rs.getInt("frequency"); + sterilizerName = rs.getString("sterilizerName"); + } newMonitoringItem(list, 0,"","",qmiId,positionMsg, - dataStr, orderNum, "-",questionName, answer ,frequency ,sterilizerName); + dataStr, orderNum, "-",questionName, answer ,frequency ,sterilizerName, addMonitoringItemBeanOptionSingleResultWithoutMaterial); } } catch (SQLException e) { e.printStackTrace(); @@ -11901,7 +11926,7 @@ * @param list * @param sql */ - private void addMonitoringItemBeanQualityMonitoring(List list,String sql){ + private void addMonitoringItemBeanQualityMonitoring(List list,String sql, boolean addMonitoringItemBeanQualityMonitoring){ if(StringUtils.isBlank(sql)){ return ; } @@ -11914,10 +11939,14 @@ int amount = rs.getInt(4); Long qmiId = rs.getLong(5); String positionMsg = rs.getString(6); - int frequency = rs.getInt("frequency"); - String sterilizerName = rs.getString("sterilizerName"); + int frequency = 0; + String sterilizerName = null; + if(addMonitoringItemBeanQualityMonitoring){ + frequency = rs.getInt("frequency"); + sterilizerName = rs.getString("sterilizerName"); + } newMonitoringItem(list, amount,tousseName,materialName,qmiId,positionMsg, - dataStr, 1, "-","-", "", frequency, sterilizerName); + dataStr, 1, "-","-", "", frequency, sterilizerName, addMonitoringItemBeanQualityMonitoring); } } catch (SQLException e) { e.printStackTrace(); @@ -11930,7 +11959,7 @@ * @param list * @param sql */ - private void addMonitoringItemBeanRountineMonitoring(List list,String sql){ + private void addMonitoringItemBeanRountineMonitoring(List list,String sql,boolean addMonitoringItemBeanRountineMonitoring){ if(StringUtils.isBlank(sql)){ return ; } @@ -11944,10 +11973,14 @@ Long qmiId = rs.getLong(5); String positionMsg = rs.getString(6); String result = rs.getString(7); - int frequency = rs.getInt("frequency"); - String sterilizerName = rs.getString("sterilizerName"); + int frequency = 0; + String sterilizerName = null; + if(addMonitoringItemBeanRountineMonitoring){ + frequency = rs.getInt("frequency"); + sterilizerName = rs.getString("sterilizerName"); + } newMonitoringItem(list, amount,tousseName,materialName,qmiId,positionMsg, - dataStr, 100, "-","监测结果", result, frequency, sterilizerName); + dataStr, 100, "-","监测结果", result, frequency, sterilizerName, addMonitoringItemBeanRountineMonitoring); } } catch (SQLException e) { e.printStackTrace(); Index: ssts-web/src/main/webapp/disinfectsystem/config/gdsy/config.js =================================================================== diff -u -r26370 -r26375 --- ssts-web/src/main/webapp/disinfectsystem/config/gdsy/config.js (.../config.js) (revision 26370) +++ ssts-web/src/main/webapp/disinfectsystem/config/gdsy/config.js (.../config.js) (revision 26375) @@ -285,7 +285,5 @@ //允许增加的外来器械新材料的种类的数量 numberOfNewMaterialsForForeignTousse:3, //禁止删除外来器械包的已有材料 - disableModifyExistMaterilaOfForeignTousse:true, - //是否隐藏质量监测报表的监测结果 - hideMonitorReportMonitorResult : true + disableModifyExistMaterilaOfForeignTousse:true } \ No newline at end of file Index: ssts-web/src/main/webapp/disinfectsystem/reportforms/qualityMonitoringView.js =================================================================== diff -u -r25237 -r26375 --- ssts-web/src/main/webapp/disinfectsystem/reportforms/qualityMonitoringView.js (.../qualityMonitoringView.js) (revision 25237) +++ ssts-web/src/main/webapp/disinfectsystem/reportforms/qualityMonitoringView.js (.../qualityMonitoringView.js) (revision 26375) @@ -116,7 +116,12 @@ var reportFile = "QualityMonitoringReport.jasper"; if(monitoringType == "定期监测"){ - reportFile = "routineMonitoringReport.jasper"; + if("无菌包质量抽查登记表" == formName){ + reportFile = "routineMonitoringReportOfADJ.jasper"; + }else{ + reportFile = "routineMonitoringReport.jasper"; + } + } window.open(WWWROOT+"/jasperreports/jasperreportsAction!createReportFromJavaBeanSource.do?jasperreportName="+reportFile +"&monitoringType="+monitoringType Index: ssts-web/src/main/webapp/jasperRtp/routineMonitoringReportOfADJ.jrxml =================================================================== diff -u --- ssts-web/src/main/webapp/jasperRtp/routineMonitoringReportOfADJ.jrxml (revision 0) +++ ssts-web/src/main/webapp/jasperRtp/routineMonitoringReportOfADJ.jrxml (revision 26375) @@ -0,0 +1,478 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <band height="40" splitType="Stretch"> + <textField> + <reportElement uuid="4dd1a765-4207-4079-8cf6-8b2dc4d91f3b" x="0" y="0" width="845" height="40"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="14" isBold="true"/> + </textElement> + <textFieldExpression><![CDATA[$P{title}]]></textFieldExpression> + </textField> + </band> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0?$V{goodsName}.lastIndexOf("%&"):0))]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Index: ssts-web/src/main/webapp/jasperRtp/routineMonitoringReport.jasper =================================================================== diff -u -r26267 -r26375 Binary files differ