Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r25253 -r25256 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 25253) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 25256) @@ -2270,25 +2270,12 @@ @Override public List getGoodsDistributeReportChart(String startDate, - String endDate, String goodsName,String supplyRoomName,boolean disinfection) { + String endDate, String goodsName,String querySupplyRoom,boolean disinfection) { List beans = new ArrayList(); if (StringUtils.isNotBlank(startDate) && StringUtils.isNotBlank(endDate) && StringUtils.isNotBlank(goodsName)) { String serchName = ""; - // 默认是登录用户的供应室 - String supplyRoomCoding = AcegiHelper.getLoginUser().getCurrentOrgUnitCode(); - boolean allSupply = false; - if(StringUtils.isNotBlank(supplyRoomName)){ - if(supplyRoomName.equals("全部供应室")){ - allSupply = true; - }else{ - OrgUnit ou = orgUnitManager.getCurrentOrgUintByName(supplyRoomName); - if(ou != null){ - supplyRoomCoding = ou.getOrgUnitCoding(); - } - } - } if(disinfection){ serchName = " and pi.tousseName like '%"+ goodsName+ "%'"; }else{ @@ -2302,9 +2289,7 @@ + dateQueryAdapter.dateAdapter(endDate) + serchName + " and (po.status = '已发货' or po.status = '收货签收') "; - if( !allSupply ){ - sql += " and po.orgUnitCoding = " + supplyRoomCoding; - } + sql += SqlUtils.get_InSql_Extra("po.orgUnitCoding", querySupplyRoom); sql += " group by po.settleAccountsDepart"; ResultSet rs = objectDao.executeSql(sql); try { @@ -11813,9 +11798,10 @@ //发货数量(按包统计) sql += " union all "; - sql += String.format("select 'invoice' type,tl.tousseName,sum(tl.amount) amount,tl.tousseType from (" + String temp = String.format("select 'invoice' type,tl.tousseName,sum(tl.amount) amount,tl.tousseType from (" +dataIndex.getWorkAmountByPackageSQL("发货数量", params) + ") tl group by tl.tousseName,tl.tousseType "); + sql += temp; //签收数量(按包统计) Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java =================================================================== diff -u -r25253 -r25256 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 25253) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 25256) @@ -479,7 +479,7 @@ String endDate = StrutsParamUtils.getPraramValue("endDate", null); String goodsName = StrutsParamUtils.getPraramValue("goodsName", null); - String supplyRoomName = StrutsParamUtils.getPraramValue("supplyRoomName", + String querySupplyRoom = StrutsParamUtils.getPraramValue("querySupplyRoom", null); boolean disinfection = isDisinfection(goodsName); if(disinfection){ @@ -488,7 +488,7 @@ } if (StringUtils.isNotBlank(goodsName)) { return jasperReportManager.getGoodsDistributeReportChart( - startDate, endDate, goodsName,supplyRoomName,disinfection); + startDate, endDate, goodsName,querySupplyRoom,disinfection); } } else if (reportName.equals("amountContrast")) {// 一次性物品发货数量对比报表 String startMonth = StrutsParamUtils.getPraramValue("startMonth", null); Index: ssts-web/src/main/webapp/disinfectsystem/reportforms/goodsDistributeReportChartView.js =================================================================== diff -u -r25237 -r25256 --- ssts-web/src/main/webapp/disinfectsystem/reportforms/goodsDistributeReportChartView.js (.../goodsDistributeReportChartView.js) (revision 25237) +++ ssts-web/src/main/webapp/disinfectsystem/reportforms/goodsDistributeReportChartView.js (.../goodsDistributeReportChartView.js) (revision 25256) @@ -82,7 +82,8 @@ showResult('请选择物品名称。'); return false; } - var supplyRoomName = Ext.getCmp('querySupplyRoom').getValue(); + var querySupplyRoom = Ext.getCmp('querySupplyRoom').getValue(); + var startDate= $Id('startDate').value; var endDate= $Id('endDate').value; var departCoding = Ext.getCmp('querySupplyRoom').getValue();//20181225 @@ -93,7 +94,7 @@ myMask.show(); goodsSearch = goodsSearch.replace(/\%/g,'%25'); goodsSearch = goodsSearch.replace('#','%23'); - window.open(WWWROOT+"/jasperreports/jasperreportsAction!createReportFromJavaBeanSource.do?jasperreportName=goodsDistributeReport.jasper&reportName=goodsDistributeReportChart&startDate="+startDate+"&endDate="+endDate+"&goodsName="+goodsSearch+"&supplyRoomName="+supplyRoomName+"",'thisIframe','_self'); + window.open(WWWROOT+"/jasperreports/jasperreportsAction!createReportFromJavaBeanSource.do?jasperreportName=goodsDistributeReport.jasper&reportName=goodsDistributeReportChart&startDate="+startDate+"&endDate="+endDate+"&goodsName="+goodsSearch+"&querySupplyRoom="+querySupplyRoom+"",'thisIframe','_self'); } var tousseAndDiposableGoodsStore = new Ext.data.Store({ Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/DataIndex.java =================================================================== diff -u -r25235 -r25256 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/DataIndex.java (.../DataIndex.java) (revision 25235) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/DataIndex.java (.../DataIndex.java) (revision 25256) @@ -803,38 +803,39 @@ break; case "发货数量": - if (obj.includeTousses){ - amountSql = String - .format("select sum(ii.amount) amount ,i.sender userName, td.tousseType, td.name tousseName " - + "from Invoice i inner join InvoiceItem ii on ii.invoice_id = i.id " - + "inner join TousseDefinition td on td.id=ii.tousseDefinitionId " - + "where i.sendTime %s %s " - + "and i.sender is not null and %s(i.sender)<>0 %s %s %s %s " - + "group by i.sender,td.tousseType,td.name ", - obj.betweenSql, - SqlUtils.get_InSql_Extra("i.orgUnitCoding", obj.querySupplyRoom), - obj.sqlLengthFunctionName, - obj.isDisableIDCardSqlWithAliasOfTousseDefinitionIsTd, - obj.taskGroupSqlWithAliasOfTousseDefinitionIsTd, - obj.tousseGroupSqlWithAliasOfTousseDefinitionIsTd, - obj.tousseTypeAndPackageSizeSql); + if (obj.includeTousses) { + amountSql = String + .format("select sum(ii.amount) amount ,i.sender userName, td.tousseType, td.name tousseName " + + "from Invoice i inner join InvoiceItem ii on ii.invoice_id = i.id " + + "inner join TousseDefinition td on td.id=ii.tousseDefinitionId " + + "where i.sendTime %s %s " + + "and i.sender is not null and %s(i.sender)<>0 %s %s %s %s " + + "group by i.sender,td.tousseType,td.name ", + obj.betweenSql, + SqlUtils.get_InSql_Extra("i.orgUnitCoding", + obj.querySupplyRoom), + obj.sqlLengthFunctionName, + obj.isDisableIDCardSqlWithAliasOfTousseDefinitionIsTd, + obj.taskGroupSqlWithAliasOfTousseDefinitionIsTd, + obj.tousseGroupSqlWithAliasOfTousseDefinitionIsTd, + obj.tousseTypeAndPackageSizeSql); } // 一次性物品的发货统计 - if (obj.includeDisposableGoods){ - if (obj.includeTousses){ + if (obj.includeDisposableGoods) { + if (obj.includeTousses) { amountSql += " union all "; } - amountSql = String + amountSql += String .format("select sum(ii.amount) amount ,i.sender userName, ii.tousseType tousseType,ii.tousseName tousseName " + "from Invoice i inner join InvoiceItem ii on ii.invoice_id = i.id " + "where ii.tousseType = '一次性物品' and i.sendTime %s %s " + "and i.sender is not null and %s(i.sender)<>0 " + "group by i.sender,ii.tousseType,ii.tousseName ", obj.betweenSql, - SqlUtils.get_InSql_Extra("i.orgUnitCoding", obj.querySupplyRoom), + SqlUtils.get_InSql_Extra("i.orgUnitCoding", + obj.querySupplyRoom), obj.sqlLengthFunctionName); } - break; case "年度报表中的发货数量(按包)":