Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r33641 -r33659 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 33641) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 33659) @@ -5502,9 +5502,13 @@ */ @Override public List getDepartmentMonthDetailList( - String startTime,String endTime, String departSearch,String departCoding,String typeSearch, + String whetherToCharge, String startTime,String endTime, String departSearch,String departCoding,String typeSearch, String goodsNameSearch, String batch,String searchType,boolean disinfection,String disposableGoodsType,String goodsType, Boolean showCustonTousseAmount, String invoicePlanDepartCoding, String departGroupStr) { + boolean filterWhetherToCharge = false; + if(StringUtils.isNotBlank(whetherToCharge) && !whetherToCharge.contains("全部")){ + filterWhetherToCharge = true; + } //数据库拼接符号 String concatSymbolInDb = DatabaseUtil.isOracle(dbConnection.getDatabase())?"||":"+"; SupplyRoomConfig config = supplyRoomConfigManager.getSystemParamsObj(); @@ -5657,8 +5661,9 @@ String disposableGoodsIdSql = ""; String outEntryPredicate = " 1=1 "; - if(StringUtils.isNotBlank(disposableGoodsType)){ - disposableGoodsIdSql = String.format(" select id from DisposableGoods where type='%s' ", disposableGoodsType); + if(StringUtils.isNotBlank(disposableGoodsType) || filterWhetherToCharge){ + disposableGoodsIdSql = String.format(" select id from DisposableGoods where 1=1 %s %s", StringUtils.isNotBlank(disposableGoodsType)?" and type='"+ disposableGoodsType +"'":"" + , filterWhetherToCharge?" and whetherToCharge='"+ whetherToCharge +"'":""); invoiceItemDisposableGoodsTypePredicate = String.format(" (ii.diposable='否' or ii.disposableGoodsId in(%s)) ", disposableGoodsIdSql); diposableGoodsItemPredicate = String.format(" (d.disposableGoodsID in(%s)) ", disposableGoodsIdSql); packingDisposableGoodsTypeSql = String.format(" (dgi.disposableGoodsID in(%s)) ", disposableGoodsIdSql); @@ -6422,11 +6427,15 @@ } @Override public List getDepartmentMonthDetailListOfSingleDepart( - String startTime, String endTime, String departSearch, + String whetherToCharge, String startTime, String endTime, String departSearch, String departCoding, String typeSearch, String goodsNameSearch, String batch, String searchType, boolean disinfection, String disposableGoodsType, String goodsType, Boolean showCustonTousseAmount, String invoicePlanDepartCoding) { + boolean filterWhetherToCharge = false; + if(StringUtils.isNotBlank(whetherToCharge) && !whetherToCharge.contains("全部")){ + filterWhetherToCharge = true; + } //数据库拼接符号 String concatSymbolInDb = "+"; if(DatabaseUtil.isOracle(dbConnection.getDatabase())){ @@ -6486,9 +6495,9 @@ String receiveRecordItemPredicate = " (1=1) "; String disposableGoodsIdSql = ""; String outEntryPredicate = " 1=1 "; - - if(StringUtils.isNotBlank(disposableGoodsType)){ - disposableGoodsIdSql = String.format(" select id from DisposableGoods where type='%s' ", disposableGoodsType); + if(StringUtils.isNotBlank(disposableGoodsType) || filterWhetherToCharge){ + disposableGoodsIdSql = String.format(" select id from DisposableGoods where 1=1 %s %s", StringUtils.isNotBlank(disposableGoodsType)?" and type='"+ disposableGoodsType +"'":"" + , filterWhetherToCharge?" and whetherToCharge='"+ whetherToCharge +"'":""); invoiceItemDisposableGoodsTypePredicate = String.format(" (ii.diposable='否' or ii.disposableGoodsId in(%s)) ", disposableGoodsIdSql); diposableGoodsItemPredicate = String.format(" (d.disposableGoodsID in(%s)) ", disposableGoodsIdSql); packingDisposableGoodsTypeSql = String.format(" (dgi.disposableGoodsID in(%s)) ", disposableGoodsIdSql); @@ -23485,7 +23494,7 @@ ReportDataWriteRecord data = (ReportDataWriteRecord)objectDao.getBySql(ReportDataWriteRecord.class.getSimpleName(), queryCondition); if(data == null){ List resultList = - getDepartmentMonthDetailList(startTime, endTime, null, null, null, null, null, null, false, null, null, showCustonTousseAmount, null, null); + getDepartmentMonthDetailList(null, startTime, endTime, null, null, null, null, null, null, false, null, null, showCustonTousseAmount, null, null); if(CollectionUtils.isNotEmpty(resultList)){ JSONObject resultParamData = new JSONObject(); resultParamData.put("startTime", startTime); @@ -23506,7 +23515,7 @@ endTime = ForgonDateUtils.safelyFormatDate(cal.getTime(), ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMM, null); List resultList = - getDepartmentMonthDetailList(startTime, endTime, null, null, null, null, null, null, false, null, null, showCustonTousseAmount,null, null); + getDepartmentMonthDetailList(null, startTime, endTime, null, null, null, null, null, null, false, null, null, showCustonTousseAmount,null, null); if(CollectionUtils.isNotEmpty(resultList)){ JSONObject resultParamData = new JSONObject(); resultParamData.put("startTime", startTime); Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManager.java =================================================================== diff -u -r33629 -r33659 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManager.java (.../JasperReportManager.java) (revision 33629) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManager.java (.../JasperReportManager.java) (revision 33659) @@ -271,6 +271,7 @@ /** * 查询明细核算月报数据 + * @param whetherToCharge 一次性物品是否收费 * @param startTime 开始时间 * @param endTime 结束时间 * @param depart 科室名称(结算科室) @@ -288,10 +289,11 @@ * @return */ public List getDepartmentMonthDetailList( - String startTime,String endTime, String depart,String departCoding,String type, String goodsName, + String whetherToCharge, String startTime,String endTime, String depart,String departCoding,String type, String goodsName, String batch,String searchType,boolean disinfection,String disposableGoodsType,String goodsType,Boolean showCustonTousseAmount, String invoicePlanDepart, String departGroupStr); /** * 查询单个科室的明细核算月报数据 + * @param whetherToCharge 一次性物品是否收费 * @param startTime 开始时间 * @param endTime 结束时间 * @param depart 科室名称(结算科室) @@ -308,7 +310,7 @@ * @return */ public List getDepartmentMonthDetailListOfSingleDepart( - String startTime,String endTime, String depart,String departCoding,String type, String goodsName, + String whetherToCharge, String startTime,String endTime, String depart,String departCoding,String type, String goodsName, String batch,String searchType,boolean disinfection,String disposableGoodsType,String goodsType,Boolean showCustonTousseAmount, String invoicePlanDepart); /** * 查询器械返消统计报表(按科室与包定义汇总) Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java =================================================================== diff -u -r33629 -r33659 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 33629) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 33659) @@ -1177,13 +1177,14 @@ } String patternOfReport = StrutsParamUtils.getPraramValue("patternOfReport", null); String invoicePlanDepartCoding = StrutsParamUtils.getPraramValue("invoicePlanDepartCoding", ""); + String whetherToCharge = StrutsParamUtils.getPraramValue("whetherToCharge", ""); if("singleDepart".equals(patternOfReport)){//单个科室的明细核算月报 if(StringUtils.isNotBlank(tousseType) && tousseType.contains(",")){ throw new RuntimeException("单个科室的明细核算月报不支持物品类型多选查询"); } - return jasperReportManager.getDepartmentMonthDetailListOfSingleDepart(startTime, endTime, departSearch, departCoding, tousseType, goodsSearch, batch, searchType, disinfection, disposableGoodsType, goodsType, showCustonTousseAmount,invoicePlanDepartCoding); + return jasperReportManager.getDepartmentMonthDetailListOfSingleDepart(whetherToCharge,startTime, endTime, departSearch, departCoding, tousseType, goodsSearch, batch, searchType, disinfection, disposableGoodsType, goodsType, showCustonTousseAmount,invoicePlanDepartCoding); }else{ - return jasperReportManager.getDepartmentMonthDetailList(startTime,endTime, departSearch, departCoding,tousseType, goodsSearch, batch,searchType,disinfection,disposableGoodsType,goodsType,showCustonTousseAmount, invoicePlanDepartCoding, departGroupStr); + return jasperReportManager.getDepartmentMonthDetailList(whetherToCharge,startTime,endTime, departSearch, departCoding,tousseType, goodsSearch, batch,searchType,disinfection,disposableGoodsType,goodsType,showCustonTousseAmount, invoicePlanDepartCoding, departGroupStr); } } else if (reportName.equals("tousseReturnDisinfection")) {// 器械包返消 String startDate = StrutsParamUtils.getPraramValue("startDate", null);