zouxuan 3 lat temu
rodzic
commit
706e57c8d9

+ 27 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java

@@ -1908,4 +1908,31 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
     * @date 2022/3/1 14:27
     */
     List<StudentStandardDto> queryStudyStandard(Map<String, Object> params);
+
+    /**
+    * @description: 标记当前课程已评价
+     * @param courseScheduleId
+    * @return void
+    * @author zx
+    * @date 2022/3/1 17:06
+    */
+    void updateEvaluate(Long courseScheduleId);
+
+    /**
+     * @description: 学习标准待回访列表
+     * @param params
+     * @return void
+     * @author zx
+     * @date 2022/3/1 17:06
+     */
+    int countStudyStandardWaitVisit(Map<String, Object> params);
+
+    /**
+     * @description: 学习标准待回访列表
+     * @param params
+     * @return void
+     * @author zx
+     * @date 2022/3/1 17:06
+     */
+    List<StudentStandardDto> queryStudyStandardWaitVisit(Map<String, Object> params);
 }

+ 0 - 11
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentAttendanceDto.java

@@ -25,19 +25,8 @@ public class StudentAttendanceDto {
 
     private String deviceNum;
 
-    @ApiModelProperty(value = "学员学习是否达标")
-    private List<StudentStandardDto> studentStandardDtos;
-
     private List<StudentAttendance> studentAttendances;
 
-    public List<StudentStandardDto> getStudentStandardDtos() {
-        return studentStandardDtos;
-    }
-
-    public void setStudentStandardDtos(List<StudentStandardDto> studentStandardDtos) {
-        this.studentStandardDtos = studentStandardDtos;
-    }
-
     public String getDeviceNum() {
         return deviceNum;
     }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentStandardDto.java

@@ -13,6 +13,16 @@ public class StudentStandardDto {
 
     private Integer qualifiedFlag;
 
+    private String classDate;
+
+    public String getClassDate() {
+        return classDate;
+    }
+
+    public void setClassDate(String classDate) {
+        this.classDate = classDate;
+    }
+
     public Integer getUserId() {
         return userId;
     }

+ 13 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/TeacherSignOutDto.java

@@ -5,6 +5,8 @@ import io.swagger.annotations.ApiModelProperty;
 import com.ym.mec.biz.dal.entity.CourseHomework;
 import com.ym.mec.biz.dal.entity.TeacherAttendance;
 
+import java.util.List;
+
 /**
  * @Author Joburgess
  * @Date 2019/9/18
@@ -17,11 +19,22 @@ public class TeacherSignOutDto {
     @ApiModelProperty(value = "课后作业信息")
     private CourseHomework courseHomeworkInfo;
 
+    @ApiModelProperty(value = "学员学习是否达标")
+    private List<StudentStandardDto> studentStandardDtos;
+
     /**
      * 是否返回错误信息
      */
     private boolean notRturnErrorInfo;
 
+    public List<StudentStandardDto> getStudentStandardDtos() {
+        return studentStandardDtos;
+    }
+
+    public void setStudentStandardDtos(List<StudentStandardDto> studentStandardDtos) {
+        this.studentStandardDtos = studentStandardDtos;
+    }
+
     public boolean isNotRturnErrorInfo() {
         return notRturnErrorInfo;
     }

+ 13 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseScheduleReview.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.dal.entity;
 
+import com.ym.mec.biz.dal.dto.StudentStandardDto;
 import com.ym.mec.biz.dal.enums.ImSendTypeEnum;
 import com.ym.mec.common.entity.BaseEntity;
 
@@ -8,6 +9,7 @@ import io.swagger.annotations.ApiModelProperty;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
 import java.util.Date;
+import java.util.List;
 
 public class CourseScheduleReview extends BaseEntity {
     /**
@@ -130,6 +132,17 @@ public class CourseScheduleReview extends BaseEntity {
 
     private ImSendTypeEnum msgType = ImSendTypeEnum.TXT;
 
+    @ApiModelProperty(value = "学员学习是否达标")
+    private List<StudentStandardDto> studentStandardDtos;
+
+    public List<StudentStandardDto> getStudentStandardDtos() {
+        return studentStandardDtos;
+    }
+
+    public void setStudentStandardDtos(List<StudentStandardDto> studentStandardDtos) {
+        this.studentStandardDtos = studentStandardDtos;
+    }
+
     public ImSendTypeEnum getMsgType() {
         return msgType;
     }

+ 1 - 14
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseScheduleStudentPayment.java

@@ -1,11 +1,9 @@
 package com.ym.mec.biz.dal.entity;
 
-import org.apache.commons.lang3.builder.ToStringBuilder;
-
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.common.entity.BaseEntity;
-
 import io.swagger.annotations.ApiModelProperty;
+import org.apache.commons.lang3.builder.ToStringBuilder;
 
 import java.math.BigDecimal;
 
@@ -58,17 +56,6 @@ public class CourseScheduleStudentPayment extends BaseEntity implements Comparab
 
 	private Boolean beMerged;
 
-	//是否达标1是0否
-	private Integer qualifiedFlag = 1;
-
-	public Integer getQualifiedFlag() {
-		return qualifiedFlag;
-	}
-
-	public void setQualifiedFlag(Integer qualifiedFlag) {
-		this.qualifiedFlag = qualifiedFlag;
-	}
-
 	public Boolean getBeMerged() {
 		return beMerged;
 	}

+ 22 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/EvaluateCourseQueryInfo.java

@@ -13,6 +13,28 @@ public class EvaluateCourseQueryInfo extends QueryInfo {
     @ApiModelProperty(value = "是否评价,默认否")
     private Integer evaluateFlag = 0;
 
+    @ApiModelProperty(value = "开始时间")
+    private String startDate;
+
+    @ApiModelProperty(value = "截止时间")
+    private String endDate;
+
+    public String getStartDate() {
+        return startDate;
+    }
+
+    public void setStartDate(String startDate) {
+        this.startDate = startDate;
+    }
+
+    public String getEndDate() {
+        return endDate;
+    }
+
+    public void setEndDate(String endDate) {
+        this.endDate = endDate;
+    }
+
     public Long getCourseScheduleId() {
         return courseScheduleId;
     }

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/CourseScheduleService.java

@@ -668,4 +668,13 @@ public interface CourseScheduleService extends BaseService<Long, CourseSchedule>
 	* @date 2022/3/1 13:57
 	*/
 	PageInfo<StudentStandardDto> studyStandardList(EvaluateCourseQueryInfo queryInfo);
+
+	/**
+	* @description: 学习标准待回访列表
+	 * @param queryInfo
+	* @return com.ym.mec.common.page.PageInfo<com.ym.mec.biz.dal.dto.StudentStandardDto>
+	* @author zx
+	* @date 2022/3/1 18:01
+	*/
+	PageInfo<StudentStandardDto> queryStudyStandardWaitVisit(EvaluateCourseQueryInfo queryInfo);
 }

+ 12 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/TeacherAttendanceService.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.service;
 
+import com.ym.mec.biz.dal.dto.StudentStandardDto;
 import com.ym.mec.biz.dal.dto.TeacherAttendanceComplaintsDto;
 import com.ym.mec.biz.dal.dto.TeacherAttendanceDetailDto;
 import com.ym.mec.biz.dal.dto.TeacherSignOutDto;
@@ -10,11 +11,22 @@ import com.ym.mec.biz.dal.page.TeacherCloseQueryInfo;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.BaseService;
 
+import java.util.List;
 import java.util.Map;
 
 public interface TeacherAttendanceService extends BaseService<Long, TeacherAttendance> {
 
 	/**
+	* @description: 处理学员学习标准是否达标
+	 * @param studentStandardDtos
+	 * @param courseScheduleId
+	* @return void
+	* @author zx
+	* @date 2022/3/1 17:17
+	*/
+	void saveStudentStandard(List<StudentStandardDto> studentStandardDtos, Long courseScheduleId);
+
+	/**
 	 * @Author: Joburgess
 	 * @Date: 2019/9/10
 	 * 添加教师签到记录

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseReviewServiceImpl.java

@@ -83,6 +83,9 @@ public class CourseReviewServiceImpl extends BaseServiceImpl<Integer, CourseSche
     @Autowired
     private StudentServeService studentServeService;
 
+    @Autowired
+    private TeacherAttendanceService teacherAttendanceService;
+
     @Override
     public BaseDAO<Integer, CourseScheduleReview> getDAO() {
         return courseScheduleReviewDao;
@@ -179,6 +182,8 @@ public class CourseReviewServiceImpl extends BaseServiceImpl<Integer, CourseSche
         if (num <= 0) {
             throw new BizException("评论提交失败,请重试");
         }
+        //处理课程评价
+        teacherAttendanceService.saveStudentStandard(courseScheduleReview.getStudentStandardDtos(),courseScheduleReview.getCourseScheduleId().longValue());
 
         CourseHomework existHomework = courseHomeworkDao.findByCourseSchedule(courseScheduleId.longValue());
 

+ 19 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -5894,4 +5894,23 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
         pageInfo.setRows(dataList);
         return pageInfo;
     }
+
+    @Override
+    public PageInfo<StudentStandardDto> queryStudyStandardWaitVisit(EvaluateCourseQueryInfo queryInfo) {
+        PageInfo<StudentStandardDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
+        Map<String, Object> params = new HashMap<String, Object>();
+        MapUtil.populateMap(params, queryInfo);
+        List<StudentStandardDto> dataList = null;
+        int count = courseScheduleDao.countStudyStandardWaitVisit(params);
+        if (count > 0) {
+            pageInfo.setTotal(count);
+            params.put("offset", pageInfo.getOffset());
+            dataList = courseScheduleDao.queryStudyStandardWaitVisit(params);
+        }
+        if (count == 0) {
+            dataList = new ArrayList<>();
+        }
+        pageInfo.setRows(dataList);
+        return pageInfo;
+    }
 }

+ 4 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherAttendanceServiceImpl.java

@@ -76,6 +76,7 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 		return teacherAttendanceDao;
 	}
 
+	@Transactional(rollbackFor = Exception.class)
 	public void saveStudentStandard(List<StudentStandardDto> studentStandardDtos,Long courseScheduleId){
 		if(studentStandardDtos == null || studentStandardDtos.size() == 0){
 			return;
@@ -85,6 +86,8 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 			List<Integer> studentIds = collect.stream().map(e -> e.getUserId()).collect(Collectors.toList());
 			studentAttendanceDao.updateQualified(courseScheduleId,studentIds);
 		}
+		//标记当前课程为已评价
+		courseScheduleDao.updateEvaluate(courseScheduleId);
 	}
 
 	@Transactional(rollbackFor = Exception.class, isolation = Isolation.READ_COMMITTED)
@@ -147,7 +150,7 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 			throw new BizException("明天的课程不能进行签到");
 		}
 		//处理学员学习标准是否达标
-
+		this.saveStudentStandard(teacherSignOutDto.getStudentStandardDtos(),teacherAttendance.getCourseScheduleId());
 
 		School school = schoolDao.get(courseSchedule.getSchoolId());
 

+ 23 - 0
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -3165,6 +3165,9 @@
             #{courseId}
         </foreach>
     </update>
+    <update id="updateEvaluate">
+        UPDATE course_schedule SET evaluate_flag_ = 1 WHERE id_ = #{courseScheduleId}
+    </update>
 
     <select id="getStudentCourseScheduleNum" resultMap="com.ym.mec.biz.dal.dao.PracticeGroupDao.courseGroupExport">
         SELECT COUNT(*) total_class_times_,cssp.user_id_ student_id_
@@ -3970,6 +3973,7 @@
         <result property="avatar" column="avatar_"/>
         <result property="subjectName" column="subject_name_"/>
         <result property="username" column="username_"/>
+        <result property="classDate" column="class_date_"/>
     </resultMap>
     <select id="queryStudyStandard" resultMap="StudentStandardDto">
         SELECT su.avatar_,su.username_,cssp.user_id_,sb.name_ subject_name_,cssp.qualified_flag_
@@ -3981,4 +3985,23 @@
         WHERE sa.id_ IS NOT NULL AND cssp.course_schedule_id_ = #{courseScheduleId}
         <include refid="global.limit"/>
     </select>
+    <select id="countStudyStandardWaitVisit" resultType="java.lang.Integer">
+        SELECT COUNT(sa.user_id_) FROM course_schedule cs
+        LEFT JOIN course_schedule_teacher_salary csts ON csts.course_schedule_id_ = cs.id_
+        LEFT JOIN student_attendance sa ON sa.course_schedule_id_ = csts.course_schedule_id_
+        LEFT JOIN student_visit sv ON sv.object_id_ = sa.id_ AND sv.purpose_ = '教学内容未达标'
+        WHERE csts.user_id_ = #{teacherId} AND cs.evaluate_flag_ = 1 AND sa.qualified_flag_ = 0 AND sv.id_ IS NULL
+    </select>
+    <select id="queryStudyStandardWaitVisit" resultMap="StudentStandardDto">
+        SELECT su.avatar_,s.user_id_,su.username_,cs.class_date_,sb.name_ subject_name_ FROM course_schedule cs
+        LEFT JOIN course_schedule_teacher_salary csts ON csts.course_schedule_id_ = cs.id_
+        LEFT JOIN student_attendance sa ON sa.course_schedule_id_ = csts.course_schedule_id_
+        LEFT JOIN student_visit sv ON sv.object_id_ = sa.id_ AND sv.purpose_ = '教学内容未达标'
+        LEFT JOIN student s ON s.user_id_ = sa.user_id_
+        LEFT JOIN `subject` sb ON sb.id_ = s.subject_id_list_
+        LEFT JOIN sys_user su ON su.id_ = s.user_id_
+        WHERE csts.user_id_ = #{teacherId} AND cs.evaluate_flag_ = 1 AND sa.qualified_flag_ = 0 AND sv.id_ IS NULL
+        ORDER BY cs.class_date_ DESC,cs.start_class_time_ DESC
+        <include refid="global.limit"/>
+    </select>
 </mapper>

+ 0 - 1
mec-biz/src/main/resources/config/mybatis/CourseScheduleStudentPaymentMapper.xml

@@ -22,7 +22,6 @@
 		<result column="batch_no_" property="batchNo"/>
 		<result column="be_merged_" property="beMerged"/>
 		<result column="tenant_id_" property="tenantId" />
-		<result column="qualified_flag_" property="qualifiedFlag" />
 	</resultMap>
 
 	<resultMap type="com.ym.mec.biz.dal.dto.StudentCourseTimesDto" id="studentCourseTimesDto">

+ 1 - 1
mec-teacher/src/main/java/com/ym/mec/teacher/controller/CourseReviewController.java

@@ -46,7 +46,7 @@ public class CourseReviewController extends BaseController {
 
     @ApiOperation(value = "提交评论")
     @PostMapping(value = "/add")
-    public HttpResponseResult add(CourseScheduleReview courseScheduleReview) {
+    public HttpResponseResult add(@RequestBody CourseScheduleReview courseScheduleReview) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (Objects.isNull(sysUser)) {
             return failed(HttpStatus.FORBIDDEN, "请登录");

+ 13 - 0
mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherCourseScheduleController.java

@@ -388,4 +388,17 @@ public class TeacherCourseScheduleController extends BaseController {
         return succeed(scheduleService.studyStandardList(queryInfo));
     }
 
+
+    @ApiOperation(value = "学习标准待回访列表")
+    @PostMapping("/queryStudyStandardWaitVisit")
+    @AuditLogAnnotation(operateName = "学习标准待回访列表")
+    public HttpResponseResult queryStudyStandardWaitVisit(EvaluateCourseQueryInfo queryInfo){
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if(null==user){
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        queryInfo.setTeacherId(user.getId());
+        return succeed(scheduleService.queryStudyStandardWaitVisit(queryInfo));
+    }
+
 }