Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/dataindex/DataIndex.java =================================================================== diff -u -r38753 -r38756 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/dataindex/DataIndex.java (.../DataIndex.java) (revision 38753) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/dataindex/DataIndex.java (.../DataIndex.java) (revision 38756) @@ -1132,38 +1132,31 @@ amountColumnSql = "mi.count"; joinMaterialInstanceSql = " inner join MaterialInstance mi on mi.tousse_id = td.id "; } - amountSql = String - .format("select " + obj.monthlyStr + " monthstr, sum(%s) amount " + amountSql = "select " + obj.monthlyStr + " monthstr, sum("+ amountColumnSql +") amount " + "from Invoice i inner join InvoiceItem ii on ii.invoice_id=i.id inner join TousseDefinition td on ii.tousseDefinitionId = td.id join TousseDefinition tdc on tdc.id=td.ancestorID " - + " %s where i.sendTime %s %s " + + joinMaterialInstanceSql + + " where i.sendTime " + + obj.betweenSql + + SqlUtils.get_InSql_Extra("i.orgUnitCoding", obj.querySupplyRoom) //+ "and i.sender is not null and %s(i.sender)<>0 " - + "%s %s %s %s " + + obj.isDisableIDCardSqlWithAliasOfTousseDefinitionIsTd + + obj.taskGroupSqlWithAliasOfTousseDefinitionIsTd + + obj.tousseGroupSqlWithAliasOfTousseDefinitionIsTd + + obj.tousseTypeAndPackageSizeSql + "group by " - + obj.monthlyStr, - amountColumnSql, - joinMaterialInstanceSql, - obj.betweenSql, - SqlUtils.get_InSql_Extra("i.orgUnitCoding", obj.querySupplyRoom), - //obj.sqlLengthFunctionName, - obj.isDisableIDCardSqlWithAliasOfTousseDefinitionIsTd, - obj.taskGroupSqlWithAliasOfTousseDefinitionIsTd, - obj.tousseGroupSqlWithAliasOfTousseDefinitionIsTd, - obj.tousseTypeAndPackageSizeSql); + + obj.monthlyStr; // 一次性物品的发货统计 if (obj.includeDisposableGoods) { amountSql += " union all "; - amountSql += String - .format("select " + obj.monthlyStr + " monthstr, sum(ii.amount) amount " + amountSql += "select " + obj.monthlyStr + " monthstr, sum(ii.amount) amount " + "from Invoice i inner join InvoiceItem ii on ii.invoice_id = i.id " + "where ii.tousseType = '一次性物品' and i.sendTime %s %s " + + obj.betweenSql + + SqlUtils.get_InSql_Extra("i.orgUnitCoding", obj.querySupplyRoom) //+ "and i.sender is not null and %s(i.sender)<>0 " + "group by " - + obj.monthlyStr, - obj.betweenSql, - SqlUtils.get_InSql_Extra("i.orgUnitCoding", obj.querySupplyRoom) - //,obj.sqlLengthFunctionName - ); + + obj.monthlyStr; } @@ -1750,19 +1743,16 @@ case "年度报表中的灭菌记录数量(灭菌次数)": - amountSql = String - .format("select " + obj.monthlyStr + " monthstr, count(*) amount %s " - + "from Sterilizationrecord"+ dbConnection.getNoLockSql() +" sr %s " - + "where sr.endDate %s %s %s " + amountSql = "select " + obj.monthlyStr + " monthstr, count(*) amount " + + obj.extraSelectColumns + + "from Sterilizationrecord"+ dbConnection.getNoLockSql() +" sr " + + obj.extraJoinCondition + + "where sr.endDate "+ obj.betweenSql + + SqlUtils.get_InSql_Extra("sr.orgUnitCoding", obj.querySupplyRoom) + + obj.extraQuery + "and (sr.status = '灭菌完成' or sr.status = '灭菌失败') " + "group by " - + obj.monthlyStr, - obj.extraSelectColumns, - obj.extraJoinCondition, - obj.betweenSql, - SqlUtils.get_InSql_Extra("sr.orgUnitCoding", obj.querySupplyRoom), - obj.extraQuery - ); + + obj.monthlyStr; break; // 支持按日期分组查询灭菌数量