|
@ -2264,7 +2264,7 @@ public class DailyReportUploadService {
|
|
|
reportItemDO.setCompletionHour(completionHour);
|
|
|
}else {
|
|
|
//查询出关联的日报详情,计算完成时间
|
|
|
sql = " select sum(IFNULL(actual_completion_hour,IFNULL(completion_hour,'0'))) from base_daily_report_detail " +
|
|
|
sql = " select sum(cast(IFNULL(actual_completion_hour,IFNULL(completion_hour,0)) as decimal(18,2))) from base_daily_report_detail " +
|
|
|
" where report_item_id='"+item_id+"' ";
|
|
|
String completionHoursql = jdbcTemplate.queryForObject(sql,String.class);
|
|
|
reportItemDO.setCompletionHour(completionHoursql);
|
|
@ -2319,7 +2319,7 @@ public class DailyReportUploadService {
|
|
|
String sql = " select m.*,IFNULL(A.completion_hour,0) completion_hour,dh.dept_code,dh.dept_name from base_daily_report_item_members m " +
|
|
|
" INNER JOIN base_doctor doc on m.user_id = doc.id and doc.del=1 " +
|
|
|
"LEFT JOIN ( " +
|
|
|
"select up.doctor_id,SUM(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0))) completion_hour " +
|
|
|
"select up.doctor_id,sum(cast(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0)) as decimal(18,2))) completion_hour " +
|
|
|
" from base_doctor_daily_report_upload up " +
|
|
|
"INNER JOIN base_daily_report_detail rd on up.id = rd.report_id and rd.report_item_id='"+item_id+"' )A on m.user_id = A.doctor_id " +
|
|
|
"INNER JOIN base_doctor_hospital dh on m.user_id = dh.doctor_code and dh.del=1 " +
|
|
@ -2465,7 +2465,7 @@ public class DailyReportUploadService {
|
|
|
String sqlList = " select dict.dict_code project_code,dict.dict_value projectName,IFNULL( A.completionHour,0) 'completionHour', " +
|
|
|
" IFNULL(A.doctorTotal,0) 'doctorTotal',B.dict_code 'categoryCode',B.dict_value 'categoryName',C.dict_code 'levelCode' ,C.dict_value 'levelName' from wlyy_hospital_sys_dict dict " +
|
|
|
" Left JOIN (" +
|
|
|
" select i.project_code,CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour, " +
|
|
|
" select i.project_code,CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour, " +
|
|
|
" count(distinct up.doctor_id) as doctorTotal from base_daily_report_item i LEFT JOIN base_daily_report_detail de on i.id = de.report_item_id " +
|
|
|
" INNER JOIN base_doctor_daily_report_upload up on up.id = de.report_id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
|
|
|
" INNER JOIN base_doctor_hospital dh on doc.id = dh.doctor_code and dh.del=1 where i.del=1 "+sqlCondition+" GROUP BY i.project_code )A " +
|
|
@ -2563,7 +2563,7 @@ public class DailyReportUploadService {
|
|
|
if (StringUtils.isNotBlank(member)){//查询指定员工
|
|
|
sqlCondition += " and up.doctor_id='"+member+"' ";
|
|
|
}
|
|
|
String sqlList = " select i.dept,i.dept_name deptName,i.project_code,CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour, " +
|
|
|
String sqlList = " select i.dept,i.dept_name deptName,i.project_code,CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour, " +
|
|
|
" count(distinct up.doctor_id) as doctorTotal from base_daily_report_item i LEFT JOIN base_daily_report_detail de on i.id = de.report_item_id " +
|
|
|
" INNER JOIN base_doctor_daily_report_upload up on up.id = de.report_id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
|
|
|
" INNER JOIN base_doctor_hospital dh on doc.id = dh.doctor_code and dh.del=1 where i.del=1 "+sqlCondition+" GROUP BY i.project_code,i.dept ";
|
|
@ -2627,7 +2627,7 @@ public class DailyReportUploadService {
|
|
|
String sqlCount = " select count(distinct i.id) ";
|
|
|
|
|
|
String sqlCondition = " from base_daily_report_item i LEFT JOIN( " +
|
|
|
" select de.report_item_id,CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour, " +
|
|
|
" select de.report_item_id,CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour, " +
|
|
|
" count(distinct up.doctor_id) as doctorTotal " +
|
|
|
" from base_daily_report_detail de Inner JOIN base_doctor_daily_report_upload up on up.id = de.report_id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
|
|
|
" INNER JOIN base_doctor_hospital dh on doc.id = dh.doctor_code and dh.del=1 " +updateTimeSql+
|
|
@ -2707,7 +2707,7 @@ public class DailyReportUploadService {
|
|
|
}
|
|
|
if(1==type){//天
|
|
|
sql = " select i.id,CONCAT(i.title,'(',i.dept_name,')') title,i.content,i.state,i.begin_time beginTime,i.end_time endTime,i.create_user_name createUserName, " +
|
|
|
" CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time', " +
|
|
|
" CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time', " +
|
|
|
" count(distinct up.doctor_id) as doctorTotal from base_daily_report_item i LEFT JOIN base_daily_report_detail de " +
|
|
|
"on i.id = de.report_item_id INNER JOIN base_doctor_daily_report_upload up on up.id = de.report_id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
|
|
|
" INNER JOIN base_doctor_hospital dh on doc.id = dh.doctor_code and dh.del=1 " +updateTimeSql+
|
|
@ -2715,7 +2715,7 @@ public class DailyReportUploadService {
|
|
|
"group by i.id,DATE_FORMAT(de.create_time,'%Y-%m-%d') order by time asc ";
|
|
|
}else if (2==type){//按周
|
|
|
sql = " select i.id,CONCAT(i.title,'(',i.dept_name,')') title,i.content,i.state,i.begin_time beginTime,i.end_time endTime,i.create_user_name createUserName, " +
|
|
|
" CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time', " +
|
|
|
" CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time', " +
|
|
|
" count(distinct up.doctor_id) as doctorTotal from base_daily_report_item i LEFT JOIN base_daily_report_detail de " +
|
|
|
"on i.id = de.report_item_id INNER JOIN base_doctor_daily_report_upload up on up.id = de.report_id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
|
|
|
" INNER JOIN base_doctor_hospital dh on doc.id = dh.doctor_code and dh.del=1 " +updateTimeSql+
|
|
@ -2723,7 +2723,7 @@ public class DailyReportUploadService {
|
|
|
"group by i.id,DATE_FORMAT(de.create_time,'%Y%v') order by time asc ";
|
|
|
}else if (3==type){//月
|
|
|
sql = " select i.id,CONCAT(i.title,'(',i.dept_name,')') title,i.content,i.state,i.begin_time beginTime,i.end_time endTime,i.create_user_name createUserName, " +
|
|
|
" CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m') as 'time', " +
|
|
|
" CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m') as 'time', " +
|
|
|
" count(distinct up.doctor_id) as doctorTotal from base_daily_report_item i LEFT JOIN base_daily_report_detail de " +
|
|
|
"on i.id = de.report_item_id INNER JOIN base_doctor_daily_report_upload up on up.id = de.report_id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
|
|
|
" INNER JOIN base_doctor_hospital dh on doc.id = dh.doctor_code and dh.del=1 " +updateTimeSql+
|
|
@ -2812,7 +2812,7 @@ public class DailyReportUploadService {
|
|
|
String uploadTimeFormat = "";
|
|
|
if(0==type){
|
|
|
sql = " select i.id,CONCAT(i.title,'(',i.dept_name,')') title,i.content,i.state,i.begin_time beginTime,i.end_time endTime,i.create_user_name createUserName,up.doctor_id,up.doctor_name doctorName, " +
|
|
|
" CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time'," +
|
|
|
" CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time'," +
|
|
|
" DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'searchTime' " +
|
|
|
"from base_daily_report_item i LEFT JOIN base_daily_report_detail de " +
|
|
|
"on i.id = de.report_item_id INNER JOIN base_doctor_daily_report_upload up on de.report_id = up.id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +updateTimeSql+
|
|
@ -2823,7 +2823,7 @@ public class DailyReportUploadService {
|
|
|
}
|
|
|
else if(1==type){//天
|
|
|
sql = " select i.id,CONCAT(i.title,'(',i.dept_name,')') title,i.content,i.state,i.begin_time beginTime,i.end_time endTime,i.create_user_name createUserName,up.doctor_id,up.doctor_name doctorName, " +
|
|
|
" CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time', " +
|
|
|
" CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time', " +
|
|
|
"DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'searchTime' " +
|
|
|
"from base_daily_report_item i LEFT JOIN base_daily_report_detail de " +
|
|
|
"on i.id = de.report_item_id INNER JOIN base_doctor_daily_report_upload up on de.report_id = up.id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +updateTimeSql+
|
|
@ -2833,7 +2833,7 @@ public class DailyReportUploadService {
|
|
|
uploadTimeFormat=" DATE_FORMAT(up.report_date,'%Y-%m-%d') ";
|
|
|
}else if (2==type){//按周
|
|
|
sql = " select i.id,CONCAT(i.title,'(',i.dept_name,')') title,i.content,i.state,i.begin_time beginTime,i.end_time endTime,i.create_user_name createUserName,up.doctor_id,up.doctor_name doctorName, " +
|
|
|
" CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time', " +
|
|
|
" CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time', " +
|
|
|
"DATE_FORMAT(de.create_time,'%Y%v') as 'searchTime' " +
|
|
|
"from base_daily_report_item i LEFT JOIN base_daily_report_detail de " +
|
|
|
"on i.id = de.report_item_id INNER JOIN base_doctor_daily_report_upload up on de.report_id = up.id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +updateTimeSql+
|
|
@ -2843,7 +2843,7 @@ public class DailyReportUploadService {
|
|
|
uploadTimeFormat=" DATE_FORMAT(up.report_date,'%Y-%m-%d') ";
|
|
|
}else if (3==type){//月
|
|
|
sql = " select i.id,CONCAT(i.title,'(',i.dept_name,')') title,i.content,i.state,i.begin_time beginTime,i.end_time endTime,i.create_user_name createUserName,up.doctor_id,up.doctor_name doctorName, " +
|
|
|
" CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m') as 'time', " +
|
|
|
" CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m') as 'time', " +
|
|
|
"DATE_FORMAT(de.create_time,'%Y-%m') as 'searchTime' " +
|
|
|
"from base_daily_report_item i LEFT JOIN base_daily_report_detail de " +
|
|
|
"on i.id = de.report_item_id INNER JOIN base_doctor_daily_report_upload up on de.report_id = up.id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +updateTimeSql+
|
|
@ -2887,7 +2887,7 @@ public class DailyReportUploadService {
|
|
|
Double completionHour = Double.valueOf(tmp.get("completionHour").toString());
|
|
|
tmp.put("timeRange",getRangeDouble(completionHour,totalHour));
|
|
|
String doctorId = tmp.get("doctor_id").toString();
|
|
|
sql = " select up.doctor_name,"+uploadTimeFormat+" as report_date ,CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour " +
|
|
|
sql = " select up.doctor_name,"+uploadTimeFormat+" as report_date ,CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour " +
|
|
|
" from base_daily_report_detail de INNER JOIN base_doctor_daily_report_upload up on de.report_id = up.id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +updateTimeSql+
|
|
|
"where de.report_item_id='"+item_id+"' and up.doctor_id='"+doctorId+"' " +
|
|
|
"GROUP BY "+searchTimeFormat+" ORDER BY report_date asc ";
|
|
@ -2912,7 +2912,7 @@ public class DailyReportUploadService {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
timeUseList.sort(Comparator.comparing(obj -> obj.get("report_date").toString()));
|
|
|
timeUseList.sort(Comparator.comparing(obj ->((Map<String,Object>)obj).get("report_date").toString()).reversed());
|
|
|
tmp.put("timeUseList",timeUseList);
|
|
|
}
|
|
|
|
|
@ -2995,7 +2995,7 @@ public class DailyReportUploadService {
|
|
|
|
|
|
|
|
|
List<Map<String,Object>> deptProjectList = jdbcTemplate.queryForList(projectSql);
|
|
|
String sqlList = " select i.project_code,CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour, " +
|
|
|
String sqlList = " select i.project_code,CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour, " +
|
|
|
" count(distinct up.doctor_id) as doctorTotal, "+uploadTimeFormat+" as 'time' " +
|
|
|
" from base_daily_report_item i LEFT JOIN base_daily_report_detail de on i.id = de.report_item_id " +
|
|
|
" INNER JOIN base_doctor_daily_report_upload up on up.id = de.report_id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
|
|
@ -3103,7 +3103,7 @@ public class DailyReportUploadService {
|
|
|
" GROUP BY i.id ";
|
|
|
|
|
|
List<Map<String,Object>> deptProjectItemList = jdbcTemplate.queryForList(projectSql);
|
|
|
String sqlList = " select i.project_code,CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour, " +
|
|
|
String sqlList = " select i.project_code,CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour, " +
|
|
|
" count(distinct up.doctor_id) as doctorTotal, "+uploadTimeFormat+" as 'time' " +
|
|
|
" from base_daily_report_item i LEFT JOIN base_daily_report_detail de on i.id = de.report_item_id " +
|
|
|
" INNER JOIN base_doctor_daily_report_upload up on up.id = de.report_id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
|
|
@ -3245,7 +3245,7 @@ public class DailyReportUploadService {
|
|
|
" where dict.dict_name='daily_report_project' and dh.dept_code='"+dept+"' and mem.user_id='"+memberId+"' and mem.del=1 " +
|
|
|
" GROUP BY dict.dict_code; ";
|
|
|
List<Map<String,Object>> deptProjectList = jdbcTemplate.queryForList(projectSql);
|
|
|
String sqlList = " select i.project_code,CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour, " +
|
|
|
String sqlList = " select i.project_code,CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour, " +
|
|
|
" count(distinct up.doctor_id) as doctorTotal, "+uploadTimeFormat+" as 'time' " +
|
|
|
" from base_daily_report_item i LEFT JOIN base_daily_report_detail de on i.id = de.report_item_id " +
|
|
|
" INNER JOIN base_doctor_daily_report_upload up on up.id = de.report_id INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
|
|
@ -3341,7 +3341,7 @@ public class DailyReportUploadService {
|
|
|
" where i.project_code='"+projectCode+"' and mem.user_id='"+memberId+"' and mem.del=1 and dh.dept_code='"+dept+"' " +
|
|
|
" GROUP BY i.id ";
|
|
|
List<Map<String,Object>> deptProjectItemList = jdbcTemplate.queryForList(projectSql);
|
|
|
String sqlList = " select i.project_code,CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour, " +
|
|
|
String sqlList = " select i.project_code,CAST((sum(cast(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')) as decimal(18,2)))) as char ) as completionHour, " +
|
|
|
" count(distinct up.doctor_id) as doctorTotal, "+uploadTimeFormat+" as 'time' " +
|
|
|
" from base_daily_report_item i LEFT JOIN base_daily_report_detail de on i.id = de.report_item_id " +
|
|
|
" INNER JOIN base_doctor_daily_report_upload up on up.id = de.report_id " +
|
|
@ -3527,7 +3527,7 @@ public class DailyReportUploadService {
|
|
|
}
|
|
|
urgingTotal = jdbcTemplate.queryForObject(urgingSql,Long.class);
|
|
|
|
|
|
String acWorkHoursSql = " select sum(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0))) 'completion_hour' " +
|
|
|
String acWorkHoursSql = " select sum(cast(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0)) as decimal(18,2))) 'completion_hour' " +
|
|
|
" from base_doctor_daily_report_upload up " +
|
|
|
"INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
|
|
|
"Inner JOIN base_doctor_hospital dh on doc.id = dh.doctor_code and dh.del=1 " +
|
|
@ -3571,7 +3571,7 @@ public class DailyReportUploadService {
|
|
|
result.put("acWorkHours",acWorkHours);//实际工作时长
|
|
|
result.put("needWorkHours",needWorkHours);//应工作时长
|
|
|
|
|
|
String doctorTypeSql = " select sum(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0))) 'completion_hour',count(distinct doc.id) as doctorTotal,IFNULL(dh.doctor_duty_name,'其他') as 'doctor_duty_name' " +
|
|
|
String doctorTypeSql = " select sum(cast(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0)) as decimal(18,2))) 'completion_hour',count(distinct doc.id) as doctorTotal,IFNULL(dh.doctor_duty_name,'其他') as 'doctor_duty_name' " +
|
|
|
" from base_doctor_daily_report_upload up " +
|
|
|
"INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
|
|
|
"Inner JOIN base_doctor_hospital dh on doc.id = dh.doctor_code and dh.del=1 " +
|
|
@ -3633,7 +3633,7 @@ public class DailyReportUploadService {
|
|
|
if (StringUtils.isNotBlank(endDate)){
|
|
|
sqlWhere +=" and up.report_date<='"+endDate+"' ";
|
|
|
}
|
|
|
sql = " select sum(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0))) 'completion_hour',rd.work_type_name " +
|
|
|
sql = " select sum(cast(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0)) as decimal(18,2))) 'completion_hour',rd.work_type_name " +
|
|
|
" from base_doctor_daily_report_upload up INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
|
|
|
"Inner JOIN base_doctor_hospital dh on doc.id = dh.doctor_code and dh.del=1 " +
|
|
|
"LEFT JOIN base_daily_report_detail rd on up.id = rd.report_id where 1=1 " +
|
|
@ -3829,7 +3829,7 @@ public class DailyReportUploadService {
|
|
|
throw new Exception("导出失败,请检查传入参数");
|
|
|
}
|
|
|
//项目耗时情况
|
|
|
sql = " select CONCAT(it.title,'(',it.dept_name,')') title,it.content,sum(IFNULL(pd.actual_completion_hour,IFNULL(pd.completion_hour,0))) 'completion_hour' ," +
|
|
|
sql = " select CONCAT(it.title,'(',it.dept_name,')') title,it.content,sum(cast(IFNULL(pd.actual_completion_hour,IFNULL(pd.completion_hour,0)) as decimal(18,2))) 'completion_hour' ," +
|
|
|
" CASE it.state WHEN 1 THEN '已完成' ELSE '未完成' END as 'state',DATE_FORMAT(it.create_time,'%Y-%m-%d %H:%i:%S') create_time,it.create_user_name " +
|
|
|
"from base_daily_report_item it LEFT JOIN base_daily_report_detail pd " +
|
|
|
"on it.id = pd.report_item_id " +
|