|
@@ -47,7 +47,7 @@ public class StatisticsQueryImpl implements IStatisticsQueryDao {
|
|
|
*/
|
|
|
sql.append("select a.correctNums,a.overtimeNums, ");
|
|
|
sql.append("a.notCorrectNums,a.notCommentNums, ");
|
|
|
- sql.append("a.repeatNums,concat(a.accuracy,'%') as accuracy,a.errorNums,a.teacherId,a.teacherName,a.subject,a.allSubject ");
|
|
|
+ sql.append("a.repeatNums,concat(floor(100*(a.totalNums- a.errorNums-a.notCorrectNums)/a.totalNums),'%') as accuracy,a.errorNums,a.teacherId,a.teacherName,a.subject,a.allSubject ");
|
|
|
sql.append(" from (");
|
|
|
listInfo(params,queryParams,sql);
|
|
|
sql.append(" ) a");
|
|
@@ -57,7 +57,7 @@ public class StatisticsQueryImpl implements IStatisticsQueryDao {
|
|
|
private void listInfo(Map<String, Object> params,List<Object> queryParams,StringBuffer sql){
|
|
|
sql.append("select t.teacher_id as teacherId,t11.name as teacherName,t11.course_name as subject,t11.course_name as allSubject, \n");
|
|
|
sql.append(" sum(t.correct_nums) as correctNums,sum(t.overtime_nums) as overtimeNums,sum(t.not_correct_nums) as notCorrectNums, \n");
|
|
|
- sql.append(" sum(t.not_comment_nums) as notCommentNums,sum(t.repeat_nums) as repeatNums,round(avg(t.accuracy),2) as accuracy,sum(t.error_nums) as errorNums \n");
|
|
|
+ sql.append(" sum(t.not_comment_nums) as notCommentNums,sum(t.repeat_nums) as repeatNums,round(avg(t.accuracy),2) as accuracy,sum(t.error_nums) as errorNums,sum(t.total_nums) as totalNums \n");
|
|
|
sql.append(" from plat_teacher_statistics t \n");
|
|
|
sql.append(" left join tb_lib_manager t11 on t.teacher_id = t11.user_id \n");
|
|
|
sql.append(" where t11.type = 30 \n");
|
|
@@ -141,7 +141,7 @@ public class StatisticsQueryImpl implements IStatisticsQueryDao {
|
|
|
StringBuffer sql = new StringBuffer();
|
|
|
sql.append("select ifnull(sum(a.correctNums),0) as correctTotalNums,ifnull(sum(overtimeNums),0) as overtimeTotalNums, ");
|
|
|
sql.append("ifnull(sum(a.notCorrectNums),0) as notCorrectTotalNums,ifnull(sum(notCommentNums),0) as notCommentTotalNums, ");
|
|
|
- sql.append("ifnull(sum(a.repeatNums),0) as repeatTotalNums,concat(round(ifnull(avg(accuracy),0),2),'%') as accuracyTotal,ifnull(sum(errorNums),0) as errorTotalNums ");
|
|
|
+ sql.append("ifnull(sum(a.repeatNums),0) as repeatTotalNums,concat(floor(100*(sum(a.totalNums)- sum(a.errorNums)-sum(a.notCorrectNums))/sum(a.totalNums)),'%') as accuracyTotal,ifnull(sum(errorNums),0) as errorTotalNums ");
|
|
|
sql.append(" from (");
|
|
|
List<Object> queryParams = new ArrayList<>();
|
|
|
listInfo(params,queryParams,sql);
|
|
@@ -154,7 +154,7 @@ public class StatisticsQueryImpl implements IStatisticsQueryDao {
|
|
|
StringBuffer sql = new StringBuffer();
|
|
|
List<Object> queryParams = new ArrayList<>();
|
|
|
sql.append("SELECT a.teacher_id,a.teacher_name,a.`subject`,a.all_subject,a.correct_nums,a.overtime_nums,a.not_correct_nums,a.not_comment_nums,a.repeat_nums,a.error_nums,\n");
|
|
|
- sql.append("floor(100*(a.total- a.error_nums-a.not_correct_nums)/a.total) as accuracy,a.calculate_date\n");
|
|
|
+ sql.append("floor(100*(a.total- a.error_nums-a.not_correct_nums)/a.total) as accuracy,a.calculate_date,a.total as total_nums\n");
|
|
|
sql.append("from (\n");
|
|
|
sql.append("SELECT t12.name as teacher_name,t.teacher_id,t.`subject`,t12.course_name as all_subject,count(if(t.is_mark in (0,2) and t.is_feedback=1,true,NULL)) as correct_nums, \n");
|
|
|
sql.append("count(if(t.is_feedback=1 and (DATE_FORMAT(t.create_time,'%H:%i')>='20:30' and DATE_FORMAT(t11.end_time,'%Y-%m-%d %H:%i:%s')>concat(DATE_FORMAT(DATE_ADD(t.create_time,interval 1 day),'%Y-%m-%d'),' 12:00:00'))\n" +
|