|  |  | @ -92,29 +92,45 @@ | 
			
		
	
		
			
				
					|  |  |  |             COUNT( ID ) AS "count", | 
			
		
	
		
			
				
					|  |  |  |             SUM( IFNULL( b.score, 80 ) ) AS "ratio" | 
			
		
	
		
			
				
					|  |  |  |         FROM | 
			
		
	
		
			
				
					|  |  |  |                 ( SELECT f.ID, f.AGENCY_ID FROM fact_origin_project_main_daily f | 
			
		
	
		
			
				
					|  |  |  |                 INNER JOIN dim_agency da ON f.FINISH_ORG_IDS LIKE concat('%', da.ID, '%') | 
			
		
	
		
			
				
					|  |  |  |                                         AND da.AGENCY_DIM_TYPE = 'all' | 
			
		
	
		
			
				
					|  |  |  |                                         AND da.`LEVEL` = #{level} | 
			
		
	
		
			
				
					|  |  |  |                                         AND da.CUSTOMER_ID = #{customerId} | 
			
		
	
		
			
				
					|  |  |  |                   WHERE 1=1 | 
			
		
	
		
			
				
					|  |  |  |                     AND f.MONTH_ID = #{monthId}) a | 
			
		
	
		
			
				
					|  |  |  |                     LEFT JOIN ( | 
			
		
	
		
			
				
					|  |  |  |                 SELECT | 
			
		
	
		
			
				
					|  |  |  |                     PROJECT_ID, | 
			
		
	
		
			
				
					|  |  |  |                     AVG( CASE ACTION_CODE WHEN 'bad' THEN 60 WHEN 'perfect' THEN 100 ELSE 80 END ) AS score | 
			
		
	
		
			
				
					|  |  |  |                 FROM | 
			
		
	
		
			
				
					|  |  |  |                     fact_origin_project_log_daily | 
			
		
	
		
			
				
					|  |  |  |                 WHERE | 
			
		
	
		
			
				
					|  |  |  |                     (ACTION_CODE = 'bad' | 
			
		
	
		
			
				
					|  |  |  |                    OR ACTION_CODE = 'good' | 
			
		
	
		
			
				
					|  |  |  |                    OR ACTION_CODE = 'perfect') | 
			
		
	
		
			
				
					|  |  |  |                     AND CUSTOMER_ID = #{customerId} | 
			
		
	
		
			
				
					|  |  |  |                     AND MONTH_ID = #{monthId} | 
			
		
	
		
			
				
					|  |  |  |                 GROUP BY | 
			
		
	
		
			
				
					|  |  |  |                     PROJECT_ID | 
			
		
	
		
			
				
					|  |  |  |             ( | 
			
		
	
		
			
				
					|  |  |  |             SELECT | 
			
		
	
		
			
				
					|  |  |  |                 f.ID, | 
			
		
	
		
			
				
					|  |  |  |                 f.AGENCY_ID | 
			
		
	
		
			
				
					|  |  |  |             FROM | 
			
		
	
		
			
				
					|  |  |  |                 fact_origin_project_main_daily f | 
			
		
	
		
			
				
					|  |  |  |             INNER JOIN dim_agency da ON f.PIDS LIKE concat( '%', da.ID, '%' ) | 
			
		
	
		
			
				
					|  |  |  |             AND da.AGENCY_DIM_TYPE = 'all' | 
			
		
	
		
			
				
					|  |  |  |             AND da.`LEVEL` = #{level} | 
			
		
	
		
			
				
					|  |  |  |             AND da.CUSTOMER_ID = #{customerId} | 
			
		
	
		
			
				
					|  |  |  |             INNER JOIN fact_origin_project_log_daily log ON f.ID = log.PROJECT_ID | 
			
		
	
		
			
				
					|  |  |  |             AND log.ACTION_CODE = 'close' | 
			
		
	
		
			
				
					|  |  |  |             AND log.DEL_FLAG = '0' | 
			
		
	
		
			
				
					|  |  |  |             AND log.CUSTOMER_ID = #{customerId} | 
			
		
	
		
			
				
					|  |  |  |             AND log.MONTH_ID = #{monthId} | 
			
		
	
		
			
				
					|  |  |  |             WHERE | 
			
		
	
		
			
				
					|  |  |  |                 1 = 1 | 
			
		
	
		
			
				
					|  |  |  |                 AND f.ORIGIN = 'issue' | 
			
		
	
		
			
				
					|  |  |  |                 AND f.PROJECT_STATUS = 'closed' | 
			
		
	
		
			
				
					|  |  |  |                 AND f.CUSTOMER_ID = #{customerId} | 
			
		
	
		
			
				
					|  |  |  |             ) a | 
			
		
	
		
			
				
					|  |  |  |             LEFT JOIN ( | 
			
		
	
		
			
				
					|  |  |  |             SELECT | 
			
		
	
		
			
				
					|  |  |  |                 l1.PROJECT_ID, | 
			
		
	
		
			
				
					|  |  |  |                 AVG( CASE l1.ACTION_CODE WHEN 'bad' THEN 60 WHEN 'perfect' THEN 100 ELSE 80 END ) AS score | 
			
		
	
		
			
				
					|  |  |  |             FROM | 
			
		
	
		
			
				
					|  |  |  |                 fact_origin_project_log_daily l1 | 
			
		
	
		
			
				
					|  |  |  |             INNER JOIN fact_origin_project_log_daily l2 ON l1.PROJECT_ID = l2.PROJECT_ID | 
			
		
	
		
			
				
					|  |  |  |             AND l2.ACTION_CODE = 'close' | 
			
		
	
		
			
				
					|  |  |  |             AND l2.MONTH_ID = #{monthId} | 
			
		
	
		
			
				
					|  |  |  |             AND l2.CUSTOMER_ID = #{customerId} | 
			
		
	
		
			
				
					|  |  |  |             WHERE | 
			
		
	
		
			
				
					|  |  |  |                 ( l1.ACTION_CODE = 'bad' OR l1.ACTION_CODE = 'good' OR l1.ACTION_CODE = 'perfect' ) | 
			
		
	
		
			
				
					|  |  |  |                 AND l1.CUSTOMER_ID = #{customerId} | 
			
		
	
		
			
				
					|  |  |  |             GROUP BY | 
			
		
	
		
			
				
					|  |  |  |                 PROJECT_ID | 
			
		
	
		
			
				
					|  |  |  |             ) b ON a.ID = b.PROJECT_ID | 
			
		
	
		
			
				
					|  |  |  |         GROUP BY AGENCY_ID | 
			
		
	
		
			
				
					|  |  |  |         GROUP BY | 
			
		
	
		
			
				
					|  |  |  |             AGENCY_ID | 
			
		
	
		
			
				
					|  |  |  |     </select> | 
			
		
	
		
			
				
					|  |  |  |     <select id="selectDepTransferCount" resultType="com.epmet.dto.extract.result.OrgStatisticsResultDTO"> | 
			
		
	
		
			
				
					|  |  |  |         SELECT | 
			
		
	
	
		
			
				
					|  |  | 
 |