Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r30293 -r30295 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 30293) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 30295) @@ -14956,11 +14956,11 @@ @Override public List getQualityMonitoringInspectMonthParamet(String queryYear,String orgUnitCoding,String monitoringType,String inspectItem,String inspectDetail,String type,String responsibilityType){ List list = new ArrayList(); - String currentOrgUnitCode = AcegiHelper.getLoginUser().getCurrentOrgUnitCode(); if("firstSecondHalfForm".equals(type) || "compareLastForm".equals(type) || "quarterForm".equals(type)){ // 上下半年对比,或者跟去年对比 或者季度对比的数据 return getQualityMonitoringInspectCompareParamet(queryYear,orgUnitCoding,monitoringType,inspectItem,inspectDetail,type,responsibilityType); } + String currentOrgUnitCode = AcegiHelper.getLoginUser().getCurrentOrgUnitCode(); String fiOrgUnitCodingSql = ""; if(!supplyRoomConfigManager.isFirstOrSecondSupplyRoomOrgUnit(currentOrgUnitCode)){ fiOrgUnitCodingSql = SqlUtils.get_InSql_Extra("fi.orgUnitCoding", currentOrgUnitCode); @@ -15046,11 +15046,16 @@ // 上下半年对比,或者跟去年对比 或者季度对比的数据 return getQualityMonitoringInspectCompareParamet(queryYear,orgUnitCoding,monitoringType,inspectItem,inspectDetail,type,responsibilityType); } + String currentOrgUnitCode = AcegiHelper.getLoginUser().getCurrentOrgUnitCode(); + String fiOrgUnitCodingSql = ""; + if(!supplyRoomConfigManager.isFirstOrSecondSupplyRoomOrgUnit(currentOrgUnitCode)){ + fiOrgUnitCodingSql = SqlUtils.get_InSql_Extra("fi.orgUnitCoding", currentOrgUnitCode); + } String sql = ""; List resultNameList = new ArrayList(); if(StringUtils.isNotBlank(responsibilityType)){ resultNameList = getResultNameList(monitoringType,inspectItem,null,responsibilityType); - sql = getQualityMonitoringInspectDayByResponsibilityTypeSql(queryYear,queryMonth,monitoringType,responsibilityType,orgUnitCoding); + sql = getQualityMonitoringInspectDayByResponsibilityTypeSql(queryYear,queryMonth,monitoringType,responsibilityType,orgUnitCoding,fiOrgUnitCodingSql); }else if(StringUtils.isNotBlank(orgUnitCoding) && StringUtils.isNotBlank(queryYear) && StringUtils.isNotBlank(queryMonth) && StringUtils.isNotBlank(inspectItem)){ String startTime = queryYear + "-" + queryMonth + "-01 00:00:00"; String endTime = getNextMonth(queryYear,queryMonth) + " 00:00:00"; @@ -15059,12 +15064,14 @@ resultNameList = getResultNameList(monitoringType,inspectItem,null,null); // 细则没有选,不需要查询监测结果,查询细则 sql = "select " + dateQueryAdapter.dateConverAdapter3("qmi.dateTime","dd") +" monthstr,fdi.name,sum(qmd.amount) count " - + " from QualityMonitoringInstance qmi,FormInstance fi,FormDefinition fd,FormInstanceItem fiItem,FormDefinitionItem fdi,QualityMonitoringGoods qmd " - + " where qmi.id=fi.id and fd.id = fi.formDefinition_id and fi.id = fiItem.formInstance_id and fiItem.formDefinitionItem_id = fdi.id " + + " from QualityMonitoringInstance qmi,FormInstance fi,FormDefinition fd,QualityMonitoringDefinition qmdf,FormInstanceItem fiItem,FormDefinitionItem fdi,QualityMonitoringGoods qmd " + + " where qmdf.id=fd.id and qmi.id=fi.id and fd.id = fi.formDefinition_id and fi.id = fiItem.formInstance_id and fiItem.formDefinitionItem_id = fdi.id " + " and qmi.id=qmd.qualityMonitoringInstance_id " + " and fd.formName = '" + inspectItem + "'" + " and fd.formType = '" + monitoringType + "'" - + SqlUtils.get_InSql_Extra("fi.orgUnitCoding", orgUnitCoding) + + SqlUtils.gethandleDepartCodingOfQualityMonitoringDefinitionSql(orgUnitCoding) + + fiOrgUnitCodingSql + //+ SqlUtils.get_InSql_Extra("fi.orgUnitCoding", orgUnitCoding) + " and (fiItem.id in (select formInstanceItem_id from FormInstanceOptionValue )) " + " and qmi.dateTime between " + dateQueryAdapter.dateAdapter(startTime) + "and "+dateQueryAdapter.dateAdapter(endTime) @@ -15073,12 +15080,14 @@ resultNameList = getResultNameList(monitoringType,inspectItem,inspectDetail,null); // 查询细则的统计结果 sql = "select " + dateQueryAdapter.dateConverAdapter3("qmi.dateTime","dd") +" monthstr,fiOption.answer,sum(qmd.amount) count " - + " from QualityMonitoringInstance qmi,FormInstance fi,FormDefinition fd,FormInstanceItem fiItem,FormDefinitionItem fdi,FormInstanceOptionValue fiOption,QualityMonitoringGoods qmd " - + " where qmi.id=fi.id and fd.id = fi.formDefinition_id and fi.id = fiItem.formInstance_id and fiItem.formDefinitionItem_id = fdi.id and fiOption.formInstanceItem_id = fiItem.id " + + " from QualityMonitoringInstance qmi,FormInstance fi,FormDefinition fd,QualityMonitoringDefinition qmdf,FormInstanceItem fiItem,FormDefinitionItem fdi,FormInstanceOptionValue fiOption,QualityMonitoringGoods qmd " + + " where qmdf.id=fd.id and qmi.id=fi.id and fd.id = fi.formDefinition_id and fi.id = fiItem.formInstance_id and fiItem.formDefinitionItem_id = fdi.id and fiOption.formInstanceItem_id = fiItem.id " + " and qmi.id=qmd.qualityMonitoringInstance_id " + " and fd.formName = '" + inspectItem + "'" + " and fd.formType = '" + monitoringType + "'" - + SqlUtils.get_InSql_Extra("fi.orgUnitCoding", orgUnitCoding) + + SqlUtils.gethandleDepartCodingOfQualityMonitoringDefinitionSql(orgUnitCoding) + + fiOrgUnitCodingSql + //+ SqlUtils.get_InSql_Extra("fi.orgUnitCoding", orgUnitCoding) + " and fdi.name = '" + inspectDetail + "'" + " and qmi.dateTime between " + dateQueryAdapter.dateAdapter(startTime) + "and "+dateQueryAdapter.dateAdapter(endTime) @@ -15120,6 +15129,11 @@ }else if("quarterForm".equals(type)){ startAndEndDays = DataIndex.getStartAndEndDay(queryYear, "quarterForm", null); } + String currentOrgUnitCode = AcegiHelper.getLoginUser().getCurrentOrgUnitCode(); + String fiOrgUnitCodingSql = ""; + if(!supplyRoomConfigManager.isFirstOrSecondSupplyRoomOrgUnit(currentOrgUnitCode)){ + fiOrgUnitCodingSql = SqlUtils.get_InSql_Extra("fi.orgUnitCoding", currentOrgUnitCode); + } for (String key : startAndEndDays.keySet()) { String startDay = null; String endDay = null; @@ -15133,42 +15147,46 @@ if(StringUtils.isNotBlank(responsibilityType)){ resultNameList = getResultNameList(monitoringType,inspectItem,null,responsibilityType); sql = " select fd.formName,sum(qmg.amount) from QualityMonitoringInstance qmi,FormInstance fi,FormDefinition fd" - + " ,QualityMonitoringDefinition qmd,QualityMonitoringGoods qmg " - + " where qmi.id = fi.id and fi.formDefinition_id=fd.id and fd.id=qmd.id " + + " ,QualityMonitoringDefinition qmdf,QualityMonitoringGoods qmg " + + " where qmi.id = fi.id and fi.formDefinition_id=fd.id and fd.id=qmdf.id " + " and qmi.id=qmg.qualityMonitoringInstance_id " - + QualityMonitoringDefinition.getResponsibilityPartSql("qmd.responsibilityPart", responsibilityType) + + QualityMonitoringDefinition.getResponsibilityPartSql("qmdf.responsibilityPart", responsibilityType) + "and fd.formType='" + monitoringType + "'" - + SqlUtils.get_InSql_Extra("fi.orgUnitCoding", orgUnitCoding) + + fiOrgUnitCodingSql + + SqlUtils.gethandleDepartCodingOfQualityMonitoringDefinitionSql(orgUnitCoding) + //+ SqlUtils.get_InSql_Extra("fi.orgUnitCoding", orgUnitCoding) + " and qmi.dateTime between " + dateQueryAdapter.dateAdapter(startDay) + " and "+dateQueryAdapter.dateAdapter(endDay) + " group by fd.formName "; }else if(StringUtils.isBlank(inspectDetail)){ resultNameList = getResultNameList(monitoringType,inspectItem,null,null); // 细则没有选,不需要查询监测结果,查询细则 sql = "select " +" fdi.name,sum(qmg.amount) count " - + " from QualityMonitoringInstance qmi,FormInstance fi,FormDefinition fd,FormInstanceItem fiItem" + + " from QualityMonitoringInstance qmi,FormInstance fi,FormDefinition fd, QualityMonitoringDefinition qmdf,FormInstanceItem fiItem" + " ,FormDefinitionItem fdi,QualityMonitoringGoods qmg " - + " where qmi.id=fi.id and fd.id = fi.formDefinition_id and fi.id = fiItem.formInstance_id " + + " where qmdf.id=fd.id and qmi.id=fi.id and fd.id = fi.formDefinition_id and fi.id = fiItem.formInstance_id " + " and fiItem.formDefinitionItem_id = fdi.id and qmi.id=qmg.qualityMonitoringInstance_id " + " and fd.formName = '" + inspectItem + "'" + " and fd.formType = '" + monitoringType + "'" - + SqlUtils.get_InSql_Extra("fi.orgUnitCoding", orgUnitCoding) - + " and (fiItem.id in (select formInstanceItem_id from FormInstanceOptionValue)) " + + fiOrgUnitCodingSql + + SqlUtils.gethandleDepartCodingOfQualityMonitoringDefinitionSql(orgUnitCoding) + //+ " and (fiItem.id in (select formInstanceItem_id from FormInstanceOptionValue)) " + " and qmi.dateTime between " + dateQueryAdapter.dateAdapter(startDay) + "and "+dateQueryAdapter.dateAdapter(endDay) + " group by " + " fdi.name "; }else{ resultNameList = getResultNameList(monitoringType,inspectItem,inspectDetail,null); // 查询细则的统计结果 sql = "select " +" fiOption.answer,sum(qmg.amount) count " - + " from QualityMonitoringInstance qmi,FormInstance fi,FormDefinition fd,FormInstanceItem fiItem" + + " from QualityMonitoringInstance qmi,FormInstance fi,FormDefinition fd,QualityMonitoringDefinition qmdf,FormInstanceItem fiItem" + " ,FormDefinitionItem fdi,FormInstanceOptionValue fiOption,QualityMonitoringGoods qmg " - + " where qmi.id=fi.id and fd.id = fi.formDefinition_id and fi.id = fiItem.formInstance_id " + + " where qmdf.id=fd.id and qmi.id=fi.id and fd.id = fi.formDefinition_id and fi.id = fiItem.formInstance_id " + " and fiItem.formDefinitionItem_id = fdi.id and fiOption.formInstanceItem_id = fiItem.id " + " and qmi.id=qmg.qualityMonitoringInstance_id " + " and fd.formName = '" + inspectItem + "'" + " and fd.formType = '" + monitoringType + "'" - + SqlUtils.get_InSql_Extra("fi.orgUnitCoding", orgUnitCoding) + + fiOrgUnitCodingSql + + SqlUtils.gethandleDepartCodingOfQualityMonitoringDefinitionSql(orgUnitCoding) + " and fdi.name = '" + inspectDetail + "'" + " and qmi.dateTime between " + dateQueryAdapter.dateAdapter(startDay) + "and "+dateQueryAdapter.dateAdapter(endDay) @@ -15247,7 +15265,7 @@ /* * 获取质量监测查询一个月中每天的sql,按责任环节查询 */ - private String getQualityMonitoringInspectDayByResponsibilityTypeSql(String queryYear,String queryMonth,String type,String responsibilityType, String orgUnitCoding){ + private String getQualityMonitoringInspectDayByResponsibilityTypeSql(String queryYear,String queryMonth,String type,String responsibilityType, String orgUnitCoding, String fiOrgUnitCodingSql){ String sql = ""; if(StringUtils.isNotBlank(queryYear) && StringUtils.isNotBlank(type) && StringUtils.isNotBlank(responsibilityType)){ String startTime = queryYear + "-" + queryMonth + "-01 00:00:00"; @@ -15258,7 +15276,9 @@ + " and qmi.id=qmg.qualityMonitoringInstance_id " + QualityMonitoringDefinition.getResponsibilityPartSql("qmd.responsibilityPart", responsibilityType) + " and fd.formType='" + type + "' " - + SqlUtils.get_InSql_Extra("fi.orgUnitCoding", orgUnitCoding) + + SqlUtils.gethandleDepartCodingOfQualityMonitoringDefinitionSql(orgUnitCoding) + + fiOrgUnitCodingSql + //+ SqlUtils.get_InSql_Extra("fi.orgUnitCoding", orgUnitCoding) + " and qmi.dateTime between " + dateQueryAdapter.dateAdapter(startTime) + " and "+dateQueryAdapter.dateAdapter(endTime) + " group by " +dateQueryAdapter.dateConverAdapter3("qmi.dateTime","dd") + " ,fd.formName";