select
de.plate_number,d1.dept_name deptName, d.dept_name, de.device_name,
decode(de.tech_status,1,'完好',2,'待修',3,'待报废'), decode(de.use_status,0,'停用',1,'在用',2,'已交'),
ceil(to_date('${end_date}','yyyy-MM-dd')+1-to_date('${start_date}','yyyy-MM-dd')) - RPT_RETURN_GZTJ(de.plate_number,'${start_date}','${end_date}') goodDays,
RPT_RETURN_GZTJ(de.plate_number,'${start_date}','${end_date}') fault_time,
nvl(rpt_return_sjkd(de.plate_number,'${start_date}','${end_date}'),0) real_drive,
trunc((ceil(to_date('${end_date}','yyyy-MM-dd')+1-to_date('${start_date}','yyyy-MM-dd')) - RPT_RETURN_GZTJ(de.plate_number,'${start_date}','${end_date}'))/ ceil(to_date('${end_date}','yyyy-MM-dd')+1-to_date('${start_date}','yyyy-MM-dd'))*100,2)|| '%' good_rate,
trunc(nvl(RPT_RETURN_SJKD(de.plate_number,'${start_date}','${end_date}'),0)/RPT_RETURN_JHKD(substr(de.device_code,1,2),'${start_date}','${end_date}')*100)|| '%' LY_lV,
trunc(RPT_RETURN_CCCS(de.plate_number,'${start_date}','${end_date}')/ceil(to_date('${end_date}','yyyy-MM-dd')+1-to_date('${start_date}','yyyy-MM-dd'))*100)|| '%' SY_lV,
RPT_RETURN_CCCS(de.plate_number,'${start_date}','${end_date}') cccs,
RPT_RETURN_CCCS_SJ(de.plate_number,'${start_date}','${end_date}') sjcccs,
nvl(sum(t.run_time),0),
nvl(sum(t.run_distance),0)
from device_info_t de
left join new_sheet_t t on de.plate_number = t.plate_number and t.car_leave_time >= to_date('${start_date}','yyyy-MM-dd')
and t.car_leave_time < to_date('${end_date}','yyyy-MM-dd')+1
left join dept_info_t d on de.use_dept_code = d.dept_code
left join dept_info_t d1 on d1.dept_code = de.belong_dept_code
where de.use_dept_code IN (SELECT T.DEPT_CODE FROM DEPT_INFO_T T START WITH T.DEPT_CODE='${dept_code}' CONNECT BY PRIOR T.DEPT_ID=T.DEPT_PARENT)
and de.device_name like '%车'
and de.use_status <> 2
group by de.plate_number,d1.dept_name, d.dept_name, de.device_name,de.device_code,
decode(de.tech_status,1,'完好',2,'待修',3,'待报废'), decode(de.use_status,0,'停用',1,'在用',2,'已交')
order by de.device_name,de.plate_number
SELECT
de.plate_number,d1.dept_name deptName, d.dept_name, de.device_name,
IF(de.tech_status=1,"完好", IF(de.tech_status=2,"待修","待报废")),
IF(de.tech_status=0,"停用",IF(de.tech_status=1,"在用","已交")),
CEIL(DATE_ADD(STR_TO_DATE('${end_date}','%y-%M-%d') ,INTERVAL 1 DAY)-to_date('${start_date}','%y-%M-%d')) - RPT_RETURN_GZTJ(de.plate_number,'${start_date}','${end_date}') goodDays,
RPT_RETURN_GZTJ(de.plate_number,'${start_date}','${end_date}') fault_time,
ISNULL (rpt_return_sjkd(de.plate_number,'${start_date}','${end_date}'),0) real_drive,
CONCAT(SUBSTRING((CEIL (DATE_ADD(STR_TO_DATE ('${end_date}',' %y-%M-%d ') ,INTERVAL 1 DAY)) - STR_TO_DATE ('${start_date}','%y-%M-%d')) -
RPT_RETURN_GZTJ(de.plate_number,'${start_date}','${end_date}')/
CEIL(DATE_ADD(STR_TO_DATE ('${end_date}','%y-%M-%d'),INTERVAL 1 DAY)-STR_TO_DATE('${start_date}','%y-%M-%d'))*100,2),
'%') good_rate, CONCAT(SUBSTRING(IFNULL(RPT_RETURN_SJKD(de.plate_number,'${start_date}','${end_date}'),0)/RPT_RETURN_JHKD(SUBSTRING(de.device_code,1,2),'${start_date}','${end_date}')*100),'%') LY_lV,
CONCAT(SUBSTRING(RPT_RETURN_CCCS(de.plate_number,'${start_date}','${end_date}')/CEIL(DATE_ADD(STR_TO_DATE ('${end_date}','%y-%M-%d'),INTERVAL 1 DAY)-STR_TO_DATE('${start_date}','%y-%M-%d'))*100)
,'%') SY_lV,RPT_RETURN_CCCS(de.plate_number,'${start_date}','${end_date}') cccs,RPT_RETURN_CCCS_SJ(de.plate_number,'${start_date}','${end_date}') sjcccs,IFNULL(SUM(t.run_time),0),IFNULL(SUM(t.run_distance),0) FROM equ_device_account de
LEFT JOIN ljl_new_sheet_t t ON de.plate_number = t.plate_number AND t.car_leave_time >= to_date('${start_date}','%y-%M-%d')
AND t.car_leave_time < to_date('${end_date}','%y-%M-%d')+1
LEFT JOIN cqms_dept_info_t d ON de.use_dept_code = d.dept_code
LEFT JOIN cqms_dept_info_t d1 ON d1.dept_code = de.belong_dept_code
WHERE de.use_dept_code IN
(SELECT DISTINCT e.BIANMA
FROM oa_department
a
INNER JOIN oa_department b ON a.DEPARTMENT_ID=b.PARENT_ID OR a.DEPARTMENT_ID=b.DEPARTMENT_ID
INNER JOIN oa_department c ON b.DEPARTMENT_ID=c.PARENT_ID OR b.DEPARTMENT_ID=c.DEPARTMENT_ID
INNER JOIN oa_department d ON c.DEPARTMENT_ID=d.PARENT_ID OR c.DEPARTMENT_ID=d.DEPARTMENT_ID
INNER JOIN oa_department e ON d.DEPARTMENT_ID=e.PARENT_ID OR d.DEPARTMENT_ID=e.DEPARTMENT_ID
WHERE 1=1 #${IF(len(dept_code) ==0 || dept_code =='0' || dept_code =='1',"","and a.DEPARTMENT_ID = ('" + dept_code + "')")})
AND de.device_name LIKE '%车'
AND de.use_status <> 2
GROUP BY de.plate_number,d1.dept_name, d.dept_name, de.device_name,de.device_code,
IF(de.tech_status=1,"完好",IF(de.tech_status=2,"待修",IF(de.tech_status=3,"待报废") ) ),
IF(de.tech_status=0,"停用",IF(de.tech_status=1,"在用",IF(de.tech_status=2,"已交"))) ORDER BY de.device_name,de.plate_number