ソースを参照

Merge branch 'pre'

dzx 1 年間 前
コミット
773ffaa21c

+ 6 - 2
src/main/java/com/xjrsoft/module/classtime/service/impl/ClassTimeStatisticsServiceImpl.java

@@ -125,7 +125,8 @@ public class ClassTimeStatisticsServiceImpl extends MPJBaseServiceImpl<ClassTime
      * 1、通过xjr_user和base_teacher查询所有教师,查询聘用类型为:正式聘用和外聘的
      * 2、根据统计的开始日期和结束日期查询课时补充(wf_teacher_course_time)中的教研会、督导听课、临近三年退休政策、出题、阅卷、周末培优
      * 3、根绝统计的开始日期和结束日期查询课程表(course_table)中的所有课程数据
-     *
+     * 4、查询补班日期下的所有课程
+     * 5、属于节假日的课程不查询
      * @param statistics
      * @return
      */
@@ -158,9 +159,12 @@ public class ClassTimeStatisticsServiceImpl extends MPJBaseServiceImpl<ClassTime
         //计算出这个时间段内一共多少周
         List<WeekTimeRangeVo> weekTimeRangeVos = calculateNaturalWeeks(statistics.getStartDate(), statistics.getEndDate());
 
-        //查询课程数据
+        //查询课程数据,排除开节假日的数据
         List<CourseListVo> allCourseList = this.baseMapper.getCourseList(statistics);
 
+        //查询补班日期
+
+
         //查询删除课时的数据,将每个班删除的具体日期统计出来
         List<ClassTimeDelete> deleteList = deleteService.list(
                 new QueryWrapper<ClassTimeDelete>().lambda()

+ 3 - 0
src/main/java/com/xjrsoft/module/student/entity/BaseStudentAssessmentInspection.java

@@ -148,4 +148,7 @@ public class BaseStudentAssessmentInspection implements Serializable {
 
     @ApiModelProperty("学生考核项目编号(base_student_assessment_item主键)")
     private Long baseStudentAssessmentItemId;
+
+    @ApiModelProperty("总分数")
+    private Double totalScore;
 }

+ 2 - 0
src/main/java/com/xjrsoft/module/student/entity/BaseStudentAssessmentStudentRelation.java

@@ -80,4 +80,6 @@ public class BaseStudentAssessmentStudentRelation implements Serializable {
     private String majorName;
 
 
+    @ApiModelProperty("被扣分数")
+    private Double score;
 }

+ 9 - 0
src/main/java/com/xjrsoft/module/student/service/impl/BaseStudentAssessmentInspectionServiceImpl.java

@@ -493,6 +493,7 @@ public class BaseStudentAssessmentInspectionServiceImpl extends MPJBaseServiceIm
         //获取考核记录
         BaseStudentAssessmentInspection baseStudentAssessmentInspection = this.getById(id);
         if(baseStudentAssessmentInspection != null){
+            double totalScore = 0d;
             if(StrUtil.isNotEmpty(baseStudentAssessmentInspection.getClassIds())) {
                 //同步数据到考核关联班级表
                 String[] classIds = baseStudentAssessmentInspection.getClassIds().split(",");
@@ -506,6 +507,7 @@ public class BaseStudentAssessmentInspectionServiceImpl extends MPJBaseServiceIm
                         setSortCode(b.getSortCode() + 1);
                     }});
                 }
+                totalScore = baseStudentAssessmentInspection.getScore();
             }
             //同步数据到考核关联学生表
             if(StrUtil.isNotEmpty(baseStudentAssessmentInspection.getPersonalStudentUserIds())){
@@ -527,9 +529,16 @@ public class BaseStudentAssessmentInspectionServiceImpl extends MPJBaseServiceIm
                         queryWrapperSortcode.select("IFNULL(MAX(sort_code),0) as sortCode");
                         BaseStudentAssessmentStudentRelation b = assessmentStudentRelationMapper.selectOne(queryWrapperSortcode);
                         setSortCode(b.getSortCode() + 1);
+                        setScore(baseStudentAssessmentInspection.getScore());
+
                     }});
                 }
+
+                totalScore = studentIds.length * baseStudentAssessmentInspection.getScore();
             }
+            baseStudentAssessmentInspection.setTotalScore(totalScore);
+            this.updateById(baseStudentAssessmentInspection);
+
         }
         return true;
     }

+ 3 - 0
src/main/java/com/xjrsoft/module/student/vo/BaseStudentAssessmentInspectionPageVo.java

@@ -57,4 +57,7 @@ public class BaseStudentAssessmentInspectionPageVo {
 
     @ApiModelProperty("考核对象")
     private String assessmentType;
+
+    @ApiModelProperty("分数")
+    private Double totalScore;
 }

+ 3 - 0
src/main/java/com/xjrsoft/module/student/vo/BaseStudentAssessmentInspectionVo.java

@@ -69,4 +69,7 @@ public class BaseStudentAssessmentInspectionVo {
 
     @ApiModelProperty("考核对象")
     private String assessmentType;
+
+    @ApiModelProperty("总分数")
+    private Double totalScore;
 }

+ 15 - 0
src/main/resources/mapper/classtime/ClassTimeStatisticsMapper.xml

@@ -21,6 +21,21 @@
         LEFT JOIN course_table_bak t3 ON t1.id = t3.id
         LEFT JOIN wf_course_adjust t4 ON t4.id = t3.wf_course_adjust_id
         WHERE t1.schedule_date BETWEEN #{dto.startDate} and #{dto.endDate}
+        AND t1.schedule_date NOT IN (
+            SELECT DATE FROM holiday_date WHERE STATUS = 3
+            AND DATE BETWEEN #{dto.startDate} and #{dto.endDate}
+        )
+    </select>
+
+    <select id="getReplaceCourseList" parameterType="com.xjrsoft.module.classtime.entity.ClassTimeStatistics" resultType="com.xjrsoft.module.classtime.vo.CourseListVo">
+        SELECT t1.class_id, t1.teacher_id, t2.short_name,t1.adjust_type,t4.reason,t1.schedule_date FROM course_table t1
+        LEFT JOIN class_time t2 ON t1.time_period = t2.time_period AND t1.time_number = t2.number
+        LEFT JOIN course_table_bak t3 ON t1.id = t3.id
+        LEFT JOIN wf_course_adjust t4 ON t4.id = t3.wf_course_adjust_id
+        WHERE t1.schedule_date BETWEEN #{dto.startDate} and #{dto.endDate}
+        AND t1.schedule_date IN (
+        SELECT replace_date FROM class_time_calendar WHERE delete_mark = 0 AND replace_date BETWEEN #{dto.startDate} and #{dto.endDate}
+        )
     </select>
 
     <select id="getSubstituteList" parameterType="com.xjrsoft.module.classtime.entity.ClassTimeStatistics" resultType="com.xjrsoft.module.classtime.vo.CourseListVo">

+ 7 - 3
src/main/resources/mapper/student/BaseStudentAssessmentInspectionMapper.xml

@@ -4,13 +4,13 @@
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.xjrsoft.module.student.mapper.BaseStudentAssessmentInspectionMapper">
     <select id="getPage" parameterType="com.xjrsoft.module.student.dto.BaseStudentAssessmentInspectionPageDto" resultType="com.xjrsoft.module.student.vo.BaseStudentAssessmentInspectionPageVo">
-        SELECT t.id,t.score,t.score_type,t.create_date AS assessment_date,t.reason,t1.name AS assessment_category_name,t2.name AS assessment_project_name,t3.name AS semester_name,t4.name AS grade_name,t5.name AS assessment_user_name,t6.name AS score_type_cn,
+        SELECT t.id,t.score,t.total_score,t.score_type,t.assessment_date,t.reason,t1.name AS assessment_category_name,t2.name AS assessment_project_name,t3.name AS semester_name,t4.name AS grade_name,t5.name AS assessment_user_name,t6.name AS score_type_cn,
         (
         SELECT NAME FROM base_class
         WHERE id = t.class_ids
         ) AS assessment_class_names,
         (
-        (LENGTH(class_student_user_ids) - LENGTH(REPLACE(class_student_user_ids, ',', '')))
+        (LENGTH(personal_student_user_ids) - LENGTH(REPLACE(personal_student_user_ids, ',', '')))
         ) + 1 AS student_count,t.enabled_mark,t.assessment_type
         FROM base_student_assessment_inspection t
         LEFT JOIN base_student_assessment_category t1 ON (t1.id = t.base_student_assessment_category_id)
@@ -46,6 +46,7 @@
     <select id="getInfo" resultType="com.xjrsoft.module.student.vo.BaseStudentAssessmentInspectionVo">
         select t.id,t.score,t.score_type,t.assessment_date,t.reason,t1.name as assessment_category_name,t2.name as assessment_project_name,
         t3.name as semester_name,t4.name as grade_name,t5.name as assessment_user_name,t6.name as score_type_cn,t.file_id,t7.name as create_user_name
+        ,t.total_score
         from base_student_assessment_inspection t
         left join base_student_assessment_category t1 on (t1.id = t.base_student_assessment_category_id)
         left join base_student_assessment_project t2 on (t2.id = t.base_student_assessment_project_id)
@@ -306,12 +307,15 @@
     </select>
     <select id="getStudentListByInspectionId"
             resultType="com.xjrsoft.module.student.entity.BaseStudentAssessmentStudentRelation">
-        SELECT t1.id,t1.user_id,t1.class_id,t3.student_id,t2.name,t6.name AS nation,t4.name AS class_name,t5.name AS major_name FROM base_student_assessment_student_relation t1
+        SELECT t1.id,t1.user_id,t1.class_id,t3.student_id,t2.name,t6.name AS nation,t4.name AS class_name,
+               t5.name AS major_name,t7.name as gender,t1.score
+        FROM base_student_assessment_student_relation t1
         INNER JOIN xjr_user t2 ON t1.user_id = t2.id
         INNER JOIN base_student t3 ON t2.id = t3.user_id
         INNER JOIN base_class t4 ON t4.id = t1.class_id
         INNER JOIN base_major_set t5 ON t4.major_set_id = t5.id
         LEFT JOIN xjr_dictionary_detail t6 ON t3.nation = t6.code
+        LEFT JOIN xjr_dictionary_detail t7 ON t2.gender = t7.code
         WHERE t1.base_student_assessment_inspection_id = #{id}
     </select>
 </mapper>