diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml index 9a21641767..1ea4b350fd 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml @@ -389,15 +389,28 @@ SELECT DISTINCT - project_id + period.project_id FROM - fact_origin_project_org_period_daily - WHERE - del_flag = '0' - AND customer_id = #{customerId} - AND TIMESTAMPDIFF( MINUTE, informed_date, IFNULL( handled_date, NOW( ) ) ) > #{thresholdValue} + fact_origin_project_org_period_daily period + LEFT JOIN + ( + + SELECT + + project.ID AS projectId, + IF(project.project_status = 'closed',period.handled_date,NOW()) AS finishDate - ) + FROM fact_origin_project_main_daily project LEFT JOIN fact_origin_project_org_period_daily period + ON project.ID = period.project_id AND period.del_flag = '0' AND period.customer_id = #{customerId} + AND period.operation = 'close' + WHERE project.customer_id = #{customerId} AND project.del_flag = '0' + ) projectFinishDate ON projectFinishDate.projectId = period.project_id + + WHERE + period.del_flag = '0' + AND period.customer_id = #{customerId} + AND TIMESTAMPDIFF( DAY, period.informed_date, projectFinishDate.finishDate) > #{thresholdValue} + )