| 
					
				 | 
			
			
				@ -1748,7 +1748,7 @@ public class DailyReportUploadService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            reportItemDO.setCompletionHour(completionHour); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //查询出关联的日报详情,计算完成时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = " select IFNULL(sum(actual_completion_hour),'0') from base_daily_report_detail " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = " select sum(IFNULL(actual_completion_hour,IFNULL(completion_hour,'0'))) from base_daily_report_detail " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " where report_item_id='"+item_id+"' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String completionHoursql = jdbcTemplate.queryForObject(sql,String.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            reportItemDO.setCompletionHour(completionHoursql); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1903,9 +1903,9 @@ public class DailyReportUploadService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<BaseDailyReportItemDO> itemDOS = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sqlCondition = "  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sqlList = " select i.id,i.title,i.content,i.state,i.begin_time beginTime,i.end_time endTime,i.create_user_name createUserName," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " CAST(IFNULL(sum(de.actual_completion_hour),'0') as char ) as completionHour " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) 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 " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " where i.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "  INNER JOIN base_doctor_daily_report_upload up on up.id = de.report_id where i.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sqlCount = " select count(distinct i.id) from base_daily_report_item i where i.del=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(title)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlCondition +=" and i.title like '%"+title+"%' "; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1942,23 +1942,23 @@ public class DailyReportUploadService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(1==type){//天 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = " select i.id,i.title,i.content,i.state,i.begin_time beginTime,i.end_time endTime,i.create_user_name createUserName, " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " CAST(IFNULL(sum(de.actual_completion_hour),'0') as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time' " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "from base_daily_report_item i LEFT JOIN base_daily_report_detail de " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "on i.id = de.report_item_id " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " 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', " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " 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 " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "where 1=1 and i.id='"+item_id+"' " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "group by i.id,DATE_FORMAT(de.create_time,'%Y-%m-%d') order by time asc "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else if (2==type){//按周 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = " select i.id,i.title,i.content,i.state,i.begin_time beginTime,i.end_time endTime,i.create_user_name createUserName, " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " CAST(IFNULL(sum(de.actual_completion_hour),'0') as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time' " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "from base_daily_report_item i LEFT JOIN base_daily_report_detail de " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "on i.id = de.report_item_id " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " 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', " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " 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  " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "where 1=1 and i.id='"+item_id+"' " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "group by i.id,DATE_FORMAT(de.create_time,'%Y%v') order by time asc "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else if (3==type){//月 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = " select i.id,i.title,i.content,i.state,i.begin_time beginTime,i.end_time endTime,i.create_user_name createUserName, " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " CAST(IFNULL(sum(de.actual_completion_hour),'0') as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m') as 'time' " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "from base_daily_report_item i LEFT JOIN base_daily_report_detail de " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "on i.id = de.report_item_id " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " 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', " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " 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 " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "where 1=1 and i.id='"+item_id+"' " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "group by i.id,DATE_FORMAT(de.create_time,'%Y-%m') order by time asc "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1989,35 +1989,44 @@ public class DailyReportUploadService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(member)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            memberSql = " and up.doctor_id='"+member+"' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String searchTimeFormat = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(0==type){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = " select i.id,i.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(IFNULL(sum(de.actual_completion_hour),'0') as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time' " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " 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'," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " 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 " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "where 1=1 and i.id='"+item_id+"' " +memberSql+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "group by i.id,up.doctor_id order by completionHour desc "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            searchTimeFormat=" DATE_FORMAT(de.create_time,'%Y-%m-%d') "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        else if(1==type){//天 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = " select i.id,i.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(IFNULL(sum(de.actual_completion_hour),'0') as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time' " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " 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', " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "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 " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "where 1=1 and i.id='"+item_id+"' " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "group by i.id,up.doctor_id,DATE_FORMAT(de.create_time,'%Y-%m-%d') order by time asc "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            searchTimeFormat=" DATE_FORMAT(de.create_time,'%Y-%m-%d') "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else if (2==type){//按周 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = " select i.id,i.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(IFNULL(sum(de.actual_completion_hour),'0') as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m-%d') as 'time' " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " 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', " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "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 " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "where 1=1 and i.id='"+item_id+"' " +memberSql+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "group by i.id,up.doctor_id,DATE_FORMAT(de.create_time,'%Y%v') order by time asc "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            searchTimeFormat=" DATE_FORMAT(de.create_time,'%Y%v') "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else if (3==type){//月 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = " select i.id,i.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(IFNULL(sum(de.actual_completion_hour),'0') as char ) as completionHour,DATE_FORMAT(de.create_time,'%Y-%m') as 'time' " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " 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', " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "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 " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "where 1=1 and i.id='"+item_id+"' " +memberSql+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "group by i.id,up.doctor_id,DATE_FORMAT(de.create_time,'%Y-%m') order by time asc "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            searchTimeFormat=" DATE_FORMAT(de.create_time,'%Y-%m') "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            throw new Exception("查询失败,请检查传入参数"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -2031,7 +2040,18 @@ public class DailyReportUploadService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                tmp.put("avgValue",avgValue); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                Double completionHour = Double.valueOf(tmp.get("completionHour").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                tmp.put("timeRange",getRangeDouble(completionHour,totalHour)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String searchTime =tmp.get("searchTime").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String doctorId = tmp.get("doctor_id").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql = " select up.doctor_name,up.report_date,CAST((sum(IFNULL(de.actual_completion_hour,IFNULL(de.completion_hour,'0')))) as char ) as completionHour " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        " from base_daily_report_detail de  INNER JOIN base_doctor_daily_report_upload up on de.report_id = up.id  " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        "where  de.report_item_id='"+item_id+"' and up.doctor_id='"+doctorId+"'  " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        "and "+searchTimeFormat+"='"+searchTime+"' " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        "GROUP BY up.report_date ORDER BY up.report_date asc "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                List<Map<String,Object>> timeUseList = jdbcTemplate.queryForList(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                tmp.put("timeUseList",timeUseList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return list; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 |