CarCorpMapper.xml
IFNULL(temp.logTotal,0)
<select id="carLogIntegrityAnalysis" resultMap="carLogIntegrityAnalysisMap">
SELECT cc.corp_cname,IFNULL(temp.logTotal,0) as logTotal,IFNULL(temp.integrityLogNums,0) as integrityLogNums,temp.incomcnt,temp.type
FROM car_corp cc
LEFT JOIN
(
<foreach collection="tableNameList" item="tableName" separator="UNION">
(
SELECT
t.*
, ( SELECT COUNT(*) FROM ota_report_flow as orf LEFT JOIN ${tableName} as l ON orf.record_num = l.record_num
ANd orf.audit_state = 2
WHERE l.incomp_field IS NOT NULL AND l.incomp_field != ''
<if test="@com.zhuoqin.common.utils.Ognl@isNotEmpty(query.beginDate)">and orf.report_time >=
DATE_FORMAT(#{query.beginDate}, '%Y-%m-%d')
</if>
<if test="
@com.zhuoqin.common.utils.Ognl@isNotEmpty(query.endDate)">and orf.report_time <=
DATE_FORMAT(#{query.endDate}, '%Y-%m-%d')
</if>
) as integrityLogNums
, (
SELECT COUNT(*) FROM
ota_report_flow as orf LEFT JOIN ${tableName} as l ON orf.record_num = l.record_num
ANd orf.audit_state = 2
<where>
<if test="@com.zhuoqin.common.utils.Ognl@isNotEmpty(query.beginDate)">
and l.upload_time >= DATE_FORMAT(#{query.beginDate}, '%Y-%m-%d')
</if>
<if test="@com.zhuoqin.common.utils.Ognl@isNotEmpty(query.endDate)">
and l.upload_time <= DATE_FORMAT(#{query.endDate}, '%Y-%m-%d')
</if>
</where>
) as logTotal
,COUNT(t.vin_num) as incomcnt
FROM (
SELECT DISTINCT
orf.record_num
,ci.car_nums
,l.vin_num
,cc.corp_cname
,substring_index( substring_index( l.incomp_field, ',', rr.id + 1 ), ',',-1 ) AS type
FROM ota_report_flow as orf
LEFT JOIN ${tableName} as l ON l.record_num = orf.record_num
LEFT JOIN row2rows as rr ON rr.id < ( length( l.incomp_field ) - length( REPLACE ( l.incomp_field, ',',
'' )) + 1 )
LEFT JOIN car_corp as cc on cc.cpid = orf.cpid
LEFT JOIN car_info as ci ON ci.record_num = orf.record_num
WHERE orf.audit_state = 2
AND l.incomp_field IS NOT NULL AND l.incomp_field != ''
<if test="@com.zhuoqin.common.utils.Ognl@isNotEmpty(query.beginDate)">
and orf.report_time >= DATE_FORMAT(#{query.beginDate}, '%Y-%m-%d')
</if>
<if test="@com.zhuoqin.common.utils.Ognl@isNotEmpty(query.endDate)">
and orf.report_time <= DATE_FORMAT(#{query.endDate}, '%Y-%m-%d')
</if>
) as t
GROUP BY type
ORDER BY incomcnt ${query.sortType}
LIMIT 10
)
</foreach>
)temp
on cc.corp_cname = temp.corp_cname
</select>