Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r30857 -r30908 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 30857) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 30908) @@ -14896,9 +14896,12 @@ String materialName = StrutsParamUtils.getPraramValue("materialName", ""); String tousseName = StrutsParamUtils.getPraramValue("tousseName", ""); String fdioValueSql = null;//查询fdio.Value时加上序号,解决报表排序问题 + String answerWhereSql = null; if(dbConnection.isOracle()){ + answerWhereSql = ""; fdioValueSql = ",case when fdio.orderNumber<10 then '0' || fdio.orderNumber || 'P+' || fdio.value else fdio.orderNumber || 'P+' || fdio.value end value"; }else{ + answerWhereSql = " and fiItem.answer<>'' "; fdioValueSql = ",case when fdio.orderNumber<10 then '0' + CONVERT(varchar(10), fdio.orderNumber) + 'P+' + fdio.value else CONVERT(varchar(10), fdio.orderNumber) + 'P+' + fdio.value end value"; } String extraQueryForResponsibilityPart = null; @@ -15001,7 +15004,7 @@ + " join QualityMonitoringDefinition qmdf on qmdf.id=fd.id join FormInstanceItem fiItem on qmi.id=fiItem.formInstance_id join FormDefinitionItem fdi on fiItem.formDefinitionItem_id=fdi.id " + " join QualityMonitoringGoods qmd on qmi.id=qmd.qualityMonitoringInstance_id " + extraJoin - + " where (fiItem.answer is not null) and (fdi.type != '" + FormDefinitionItem.TYPE_RADIO + "' and fdi.type!='" + FormDefinitionItem.TYPE_CHECK + "')" + " and " + whereSql + tousseNameSql + qmdOrderNumberBySql; + + " where (fiItem.answer is not null "+ answerWhereSql +") and (fdi.type != '" + FormDefinitionItem.TYPE_RADIO + "' and fdi.type!='" + FormDefinitionItem.TYPE_CHECK + "')" + " and " + whereSql + tousseNameSql + qmdOrderNumberBySql; addMonitoringItemBeanOptionSingleResult(list,sql,showSterilizationInfo, washScope); // 没有录入材料和包,单一的结果 sql = " select " + dataSql + " dateStr," @@ -15011,7 +15014,7 @@ + " from QualityMonitoringInstance qmi join FormInstance fi on qmi.id=fi.id join FormDefinition fd on fi.formDefinition_id=fd.id " + " join QualityMonitoringDefinition qmdf on qmdf.id=fd.id join FormInstanceItem fiItem on qmi.id=fiItem.formInstance_id join FormDefinitionItem fdi on fiItem.formDefinitionItem_id=fdi.id " + extraJoin - + " where (fiItem.answer is not null) and (fdi.type != '" + FormDefinitionItem.TYPE_RADIO + "' and fdi.type!='" + FormDefinitionItem.TYPE_CHECK + "')" + " and " + whereSql + + " where (fiItem.answer is not null "+ answerWhereSql +") and (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,showSterilizationInfo,monitoringType);