CREATE DEFINER=`admin`@`%` PROCEDURE `pro_inspection`(
IN inspectionCode varchar(50),
IN hystCode varchar(50),
IN status varchar(25),
IN start datetime,
IN end datetime)
BEGIN
SELECT
a.INSPECTION_CODE,
d.HYST_CODE,
d.HYST_NAME,
CONCAT(e.AD_NAME,' ',f.AD_NAME,' ',g.AD_NAME) as AD_NAME,
CASE
WHEN a.HAS_UP_TO_STD='1' THEN
'正常'
WHEN a.HAS_UP_TO_STD='0' THEN
'异常' ELSE '' end as HAS_UP_TO_STD,
IF(ISNULL(a.STATIS_DATE),'',a.STATIS_DATE) STATIS_DATE
FROM
`inspection_hyst_records` a
LEFT JOIN video_base_infos b ON a.OBJ_CODE = b.PANNEL_ID
LEFT JOIN rel_video_hyst c ON b.VIDEO_CODE = c.VIDEO_CODE
LEFT JOIN hyst_base_infos d ON c.HYST_CODE = d.HYST_CODE
LEFT JOIN ad_base_infos e ON d.CITY_CODE = e.AD_CODE
LEFT JOIN ad_base_infos f ON d.COUNTY_CODE = f.AD_CODE
LEFT JOIN ad_base_infos g ON d.TOWN_CODE = g.AD_CODE
WHERE
a.INSPECTION_CODE like CONCAT(inspectionCode,'%')
and a.HAS_UP_TO_STD like CONCAT(status,'%')
and IF(ISNULL(start) or ISNULL(end) or start=0 or end=0,1=1, a.STATIS_DATE BETWEEN start AND end)
and IF(ISNULL(hystCode) or hystCode='',1=1, FIND_IN_SET(d.HYST_CODE,hystCode));
END