ソースを参照

Merge remote-tracking branch 'origin/master'

Joburgess 5 年 前
コミット
ee800c6988
20 ファイル変更126 行追加25 行削除
  1. 0 2
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/impl/SysUserServiceImpl.java
  2. 8 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherDao.java
  3. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/CourseScheduleEndDto.java
  4. 10 3
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentCourseHomeworkDto.java
  5. 9 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentPaymentOrderExportDto.java
  6. 12 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentAttendance.java
  7. 8 0
      mec-biz/src/main/java/com/ym/mec/biz/service/TeacherService.java
  8. 1 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java
  9. 10 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java
  10. 24 10
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherLeaveRecordServiceImpl.java
  11. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java
  12. 1 0
      mec-biz/src/main/resources/config/mybatis/ClassGroupMapper.xml
  13. 2 2
      mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml
  14. 6 1
      mec-biz/src/main/resources/config/mybatis/StudentAttendanceMapper.xml
  15. 4 1
      mec-biz/src/main/resources/config/mybatis/StudentCourseHomeworkMapper.xml
  16. 3 1
      mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml
  17. 3 0
      mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml
  18. 3 2
      mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java
  19. 6 0
      mec-web/src/main/java/com/ym/mec/web/controller/TeacherController.java
  20. 1 0
      mec-web/src/main/java/com/ym/mec/web/controller/TeacherLeaveRecordController.java

+ 0 - 2
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/impl/SysUserServiceImpl.java

@@ -134,8 +134,6 @@ public class SysUserServiceImpl extends BaseServiceImpl<Integer, SysUser> implem
 
 	@Override
 	public SysUser queryUserInfo(Integer userId) {
-//		SysUser sysUser = sysUserDao.get(userId);
-//		sysUser.setOrganName(sysUserDao.getOrganName(sysUser.getOrganId()));
 		return sysUserDao.get(userId);
 	}
 

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherDao.java

@@ -2,6 +2,7 @@ package com.ym.mec.biz.dal.dao;
 
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dto.*;
+import com.ym.mec.biz.dal.entity.CourseHomework;
 import com.ym.mec.biz.dal.entity.Teacher;
 import com.ym.mec.common.dal.BaseDAO;
 import org.apache.ibatis.annotations.Param;
@@ -240,4 +241,11 @@ public interface TeacherDao extends BaseDAO<Integer, Teacher> {
     int countTeacherName(Map<String, Object> params);
 
     List<Teacher> queryPageName(Map<String, Object> params);
+
+    /**
+     * 获取教师布置的作业
+     * @param courseScheduleId
+     * @return
+     */
+    CourseHomework getCourseScheduleHomework(Integer courseScheduleId);
 }

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

@@ -16,6 +16,8 @@ public class CourseScheduleEndDto extends CourseSchedule {
 
     private String organName;
 
+    private String remark;
+
     private int isSignIn;
 
     private int isSignOut;
@@ -26,6 +28,14 @@ public class CourseScheduleEndDto extends CourseSchedule {
 
     private Date signOutTime;
 
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
     public Date getSignInTime() {
         return signInTime;
     }

+ 10 - 3
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentCourseHomeworkDto.java

@@ -1,16 +1,15 @@
 package com.ym.mec.biz.dal.dto;
 
 
-import com.ym.mec.biz.dal.entity.ClassGroup;
-
 import java.util.Date;
-import java.util.List;
 
 public class StudentCourseHomeworkDto {
     private String phone;
 
     private String username;
 
+    private String subjectName;
+
     private String url;
 
     private Date createTime;
@@ -19,6 +18,14 @@ public class StudentCourseHomeworkDto {
 
     private Integer isView;
 
+    public String getSubjectName() {
+        return subjectName;
+    }
+
+    public void setSubjectName(String subjectName) {
+        this.subjectName = subjectName;
+    }
+
     public String getPhone() {
         return phone;
     }

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentPaymentOrderExportDto.java

@@ -31,6 +31,7 @@ public class StudentPaymentOrderExportDto extends StudentPaymentOrder {
     private String organName;
     private String schoolName;
     private String subjectName;
+    private String cooperationOrganName;
 
     private Integer chargeType;
 
@@ -141,4 +142,12 @@ public class StudentPaymentOrderExportDto extends StudentPaymentOrder {
     public void setGoodsList(List<Goods> goodsList) {
         this.goodsList = goodsList;
     }
+
+    public String getCooperationOrganName() {
+        return cooperationOrganName;
+    }
+
+    public void setCooperationOrganName(String cooperationOrganName) {
+        this.cooperationOrganName = cooperationOrganName;
+    }
 }

+ 12 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentAttendance.java

@@ -40,6 +40,10 @@ public class StudentAttendance {
 	private String username;
 
 	/**  */
+	@ApiModelProperty(value = "声部列表",required = false)
+	private String subjectName;
+
+	/**  */
 	@ApiModelProperty(value = "学生手机号",required = false)
 	private String phone;
 	
@@ -63,6 +67,14 @@ public class StudentAttendance {
 	@ApiModelProperty(value = "当前课时")
 	private Integer currentClassTimes;
 
+	public String getSubjectName() {
+		return subjectName;
+	}
+
+	public void setSubjectName(String subjectName) {
+		this.subjectName = subjectName;
+	}
+
 	public String getPhone() {
 		return phone;
 	}

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/TeacherService.java

@@ -1,6 +1,7 @@
 package com.ym.mec.biz.service;
 
 import com.ym.mec.biz.dal.dto.*;
+import com.ym.mec.biz.dal.entity.CourseHomework;
 import com.ym.mec.biz.dal.entity.Teacher;
 import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.common.entity.ImGroupModel;
@@ -143,4 +144,11 @@ public interface TeacherService extends BaseService<Integer, Teacher> {
      * @return
      */
     PageInfo<Teacher> queryPageName(TeacherNameQueryInfo queryInfo);
+
+    /**
+     * 获取教师布置的作业
+     * @param courseScheduleId
+     * @return
+     */
+    CourseHomework getCourseScheduleHomework(Integer courseScheduleId);
 }

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

@@ -2335,6 +2335,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
                     result.setIsSignOut(Objects.isNull(teacherAttendance.getSignOutStatus())?3:teacherAttendance.getSignOutStatus().getCode());
                     result.setSignInTime(teacherAttendance.getSignInTime());
                     result.setSignOutTime(teacherAttendance.getSignOutTime());
+                    result.setRemark(teacherAttendance.getRemark());
                 }
                 Long studentNum = studentNumCourseMap.get(result.getId());
                 if (Objects.nonNull(studentNum)) {

+ 10 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java

@@ -364,9 +364,16 @@ public class StudentManageServiceImpl implements StudentManageService {
     @Override
     public Map<String, Integer> sumStudentAttendance(Integer courseScheduleId) {
         Map<String, Integer> sum = new HashMap<>(5);
-        sum.put("studentNum",scheduleStudentPaymentDao.countStudentNum(courseScheduleId));
-        sum.put("signInNum",studentManageDao.countStudentSignInNum(courseScheduleId,"NORMAL"));
-        sum.put("leaveNum",studentManageDao.countStudentSignInNum(courseScheduleId,"LEAVE"));
+        Integer studentNum = scheduleStudentPaymentDao.countStudentNum(courseScheduleId);
+        sum.put("studentNum",studentNum);
+        Integer signInNum = studentManageDao.countStudentSignInNum(courseScheduleId, "NORMAL");
+        sum.put("signInNum",signInNum);
+        Integer leaveNum = studentManageDao.countStudentSignInNum(courseScheduleId, "LEAVE");
+        sum.put("leaveNum",leaveNum);
+        studentNum = studentNum==null?0:studentNum;
+        signInNum = signInNum==null?0:signInNum;
+        leaveNum = leaveNum==null?0:leaveNum;
+        sum.put("truantNum",studentNum-signInNum-leaveNum);
         sum.put("homeworkNum",studentManageDao.countHomeworkNum(courseScheduleId));
         sum.put("repliedNum",studentManageDao.countRepliedNum(courseScheduleId));
         return sum;

+ 24 - 10
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherLeaveRecordServiceImpl.java

@@ -1,5 +1,22 @@
 package com.ym.mec.biz.service.impl;
 
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+
 import com.alibaba.fastjson.JSONObject;
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
@@ -8,6 +25,7 @@ import com.ym.mec.biz.dal.dao.MusicGroupDao;
 import com.ym.mec.biz.dal.dao.TeacherDao;
 import com.ym.mec.biz.dal.dao.TeacherLeaveRecordDao;
 import com.ym.mec.biz.dal.entity.CourseSchedule;
+import com.ym.mec.biz.dal.entity.CourseSchedule.CourseScheduleType;
 import com.ym.mec.biz.dal.entity.Teacher;
 import com.ym.mec.biz.dal.entity.TeacherLeaveRecord;
 import com.ym.mec.biz.dal.entity.TeacherLeaveRecord.CoursesScheduleHistory;
@@ -22,15 +40,6 @@ import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.json.JsonUtil;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Propagation;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
-
-import java.util.*;
-import java.util.stream.Collectors;
 
 @Service
 public class TeacherLeaveRecordServiceImpl extends BaseServiceImpl<Long, TeacherLeaveRecord> implements TeacherLeaveRecordService {
@@ -80,7 +89,9 @@ public class TeacherLeaveRecordServiceImpl extends BaseServiceImpl<Long, Teacher
 				List<CourseSchedule> list = new ArrayList<CourseSchedule>();
 
 				for (CoursesScheduleHistory his : coursesScheduleHistoryList) {
-
+					if (his.getBefore().getType() != CourseScheduleType.VIP) {
+						continue;
+					}
 					if(!teacherLeaveRecord.getEndTime().before(his.getAfter().getStartClassTime())
 							&&!teacherLeaveRecord.getStartTime().after(his.getAfter().getEndClassTime())){
 						throw new BizException("课程时间与老师请假时间存在冲突");
@@ -135,6 +146,9 @@ public class TeacherLeaveRecordServiceImpl extends BaseServiceImpl<Long, Teacher
 				List<CourseSchedule> list = new ArrayList<CourseSchedule>();
 
 				for (CoursesScheduleHistory his : coursesScheduleHistoryList) {
+					if (his.getBefore().getType() != CourseScheduleType.VIP) {
+						continue;
+					}
 					list.add(his.getAfter());
 				}
 				// 课时调整

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

@@ -352,6 +352,11 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 	}
 
 	@Override
+	public CourseHomework getCourseScheduleHomework(Integer courseScheduleId) {
+		return teacherDao.getCourseScheduleHomework(courseScheduleId);
+	}
+
+	@Override
 	public List<BasicUserDto> queryMusicGroupTeacher(String musicGroupId) {
 		if(Objects.isNull(musicGroupId)){
 			throw new BizException("请指定乐团");

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

@@ -360,6 +360,7 @@
             AND cg.name_ LIKE CONCAT('%',#{search},'%')
         </if>
     </select>
+
     <select id="findNoClassSubjects" resultMap="ClassGroup">
         SELECT cg.* FROM class_group cg LEFT JOIN class_group_relation cgr ON cgr.sub_class_group_id_=cg.id_
         WHERE cg.music_group_id_=#{musicGroupId} AND cg.type_ = 'NORMAL'

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

@@ -829,9 +829,9 @@
 
     <sql id="queryStudentCourseScheduleRecordCondition">
         <where>
-            (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL)
-            AND cssp.user_id_=#{userId}
+            cssp.user_id_=#{userId}
             AND cs.status_ != 'NOT_START'
+            AND cs.del_flag_ = 0
             <if test="teachMode!=null and teachMode!=''">
                 AND cs.teach_mode_=#{teachMode}
             </if>

+ 6 - 1
mec-biz/src/main/resources/config/mybatis/StudentAttendanceMapper.xml

@@ -14,6 +14,7 @@
         <result column="course_schedule_id_" property="courseScheduleId"/>
         <result column="user_id_" property="userId"/>
         <result column="username_" property="username"/>
+        <result column="subject_name_" property="subjectName"/>
         <result column="phone_" property="phone"/>
         <result column="teacher_id_" property="teacherId"/>
         <result column="status_" property="status" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
@@ -409,10 +410,14 @@
             GROUP BY sa.course_schedule_id_
     </select>
     <select id="findStudentAttendance" resultMap="StudentAttendance">
-        SELECT sa.*,su.username_,su.phone_
+        SELECT sa.*,su.username_,su.phone_,IF(s.name_ IS NULL,s1.name_,s.name_) subject_name_
         FROM course_schedule_student_payment cssp
         LEFT JOIN student_attendance sa ON cssp.course_schedule_id_ = sa.course_schedule_id_ AND cssp.user_id_ = sa.user_id_
         LEFT JOIN sys_user su ON cssp.user_id_ = su.id_
+        LEFT JOIN class_group cg ON cg.id_ = cssp.class_group_id_ AND cg.group_type_ = 'VIP'
+        LEFT JOIN student_registration sr ON sr.user_id_ = cssp.user_id_ AND cssp.music_group_id_ = sr.music_group_id_
+        LEFT JOIN `subject` s ON s.id_ = cg.subject_id_list_
+        LEFT JOIN `subject` s1 ON s1.id_ = sr.actual_subject_id_
         WHERE cssp.course_schedule_id_ = #{search}
         ORDER BY sa.id_ DESC
         <include refid="global.limit"/>

+ 4 - 1
mec-biz/src/main/resources/config/mybatis/StudentCourseHomeworkMapper.xml

@@ -271,16 +271,19 @@
     <resultMap id="StudentCourseHomeworkDtoMap" type="com.ym.mec.biz.dal.dto.StudentCourseHomeworkDto">
         <result column="username_" property="username"/>
         <result column="phone_" property="phone"/>
+        <result column="subject_name_" property="subjectName"/>
         <result column="attachments_" property="url"/>
         <result column="is_replied_" property="isReplied"/>
         <result column="is_view_" property="isView"/>
         <result column="create_time_" property="createTime"/>
     </resultMap>
     <select id="findStudentCourseHomeworks" resultMap="StudentCourseHomeworkDtoMap">
-        SELECT sch.attachments_,sch.is_replied_,sch.is_view_,sch.create_time_,su.username_,su.phone_
+        SELECT sch.attachments_,sch.is_replied_,sch.is_view_,sch.create_time_,su.username_,su.phone_,s.name_ subject_name_
         FROM course_schedule_student_payment cssp
         LEFT JOIN student_course_homework sch ON sch.course_schedule_id_ = cssp.course_schedule_id_
         LEFT JOIN sys_user su ON cssp.user_id_ = su.id_
+        LEFT JOIN student_registration sr ON cssp.music_group_id_ = sr.music_group_id_ AND cssp.user_id_ = sr.user_id_
+        LEFT JOIN `subject` s ON s.id_ = sr.actual_subject_id_
         WHERE cssp.course_schedule_id_ = #{search}
         ORDER BY sch.id_ DESC
         <include refid="global.limit"/>

+ 3 - 1
mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml

@@ -590,11 +590,13 @@
     </update>
 
     <select id="findStudentByMusicGroupIdAndUserId" resultMap="StudentRegistration">
-        SELECT sr.*,s.name_ school_name_,s2.name_ subject_name_,mgsp.kit_group_purchase_type_ kit_group_purchase_type_,mgsp.deposit_fee_ FROM student_registration sr
+        SELECT s.name_ school_name_,s2.name_ subject_name_,mgsp.kit_group_purchase_type_ kit_group_purchase_type_,
+        mgsp.deposit_fee_, co.name_ remark_ FROM student_registration sr
         LEFT JOIN music_group mg ON mg.id_ =sr.music_group_id_
         LEFT JOIN school s ON mg.school_id_ = s.id_
         LEFT JOIN subject s2 ON sr.actual_subject_id_ = s2.id_
         LEFT JOIN music_group_subject_plan mgsp ON mgsp.subject_id_ = sr.actual_subject_id_ AND mgsp.music_group_id_ = sr.music_group_id_
+        LEFT JOIN cooperation_organ co ON mg.cooperation_organ_id_ = co.id_
         WHERE sr.music_group_id_ = #{musicGroupId} AND sr.user_id_ = #{userId} AND sr.music_group_status_ != 'QUIT' LIMIT 1
     </select>
 </mapper>

+ 3 - 0
mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml

@@ -650,4 +650,7 @@
         <include refid="queryPageNameSql"/>
         <include refid="global.limit"/>
     </select>
+    <select id="getCourseScheduleHomework" resultMap="com.ym.mec.biz.dal.dao.CourseHomeworkDao.CourseHomework">
+        SELECT * FROM course_homework WHERE course_schedule_id_ = #{courseScheduleId} LIMIT 1
+    </select>
 </mapper>

+ 3 - 2
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -227,6 +227,7 @@ public class ExportController extends BaseController {
                 if (studentRegistration != null) {
                     row.setSubjectName(studentRegistration.getSubjectName());
                     row.setSchoolName(studentRegistration.getSchoolName());
+                    row.setCooperationOrganName(studentRegistration.getRemark());
                 }
             } else if (row.getGroupType().equals(GroupType.VIP)) {
                 row.setCourseFee(row.getActualAmount());
@@ -278,9 +279,9 @@ public class ExportController extends BaseController {
 
         try {
             String[] header = {"序号", "学生姓名", "交易流水号", "订单编号", "收款渠道", "收款账户", "支付金额", "到账时间",
-                    "关联乐团ID/VIP课ID", "课程形态", "课程费用","减免费用","押金", "乐器", "教辅费用", "零星收款费用", "零星收款类别", "手续费", "专业", "分部", "单位/学校", "备注"};
+                    "关联乐团ID/VIP课ID", "课程形态", "课程费用","减免费用","押金", "乐器", "教辅费用", "零星收款费用", "零星收款类别", "手续费", "专业", "分部", "单位/学校","合作机构","备注"};
             String[] body = {"id", "user.username", "transNo", "orderNo", "paymentChannel", "merNos", "actualAmount", "payTime", "musicGroupId",
-                    "groupType.desc", "courseFee","remitFee", "leaseFee", "musicalFee", "teachingFee", "sporadicAmount", "sporadicType", "transferFee", "subjectName", "organName", "schoolName", "memo"};
+                    "groupType.desc", "courseFee","remitFee", "leaseFee", "musicalFee", "teachingFee", "sporadicAmount", "sporadicType", "transferFee", "subjectName", "organName", "schoolName","cooperationOrganName", "memo"};
             HSSFWorkbook workbook = POIUtil.exportExcel(header, body, studentPaymentOrderExportDtos);
             response.setContentType("application/octet-stream");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");

+ 6 - 0
mec-web/src/main/java/com/ym/mec/web/controller/TeacherController.java

@@ -215,4 +215,10 @@ public class TeacherController extends BaseController {
     }
 
 
+    @ApiOperation(value = "获取教师布置的作业")
+    @GetMapping("/getCourseScheduleHomework")
+    @PreAuthorize("@pcs.hasPermissions('teacher/getCourseScheduleHomework')")
+    public Object getCourseScheduleHomework(Integer courseScheduleId){
+        return succeed(teacherService.getCourseScheduleHomework(courseScheduleId));
+    }
 }

+ 1 - 0
mec-web/src/main/java/com/ym/mec/web/controller/TeacherLeaveRecordController.java

@@ -51,6 +51,7 @@ public class TeacherLeaveRecordController extends BaseController {
     	
     	SysUser user = sysUserFeignService.queryUserById(teacherLeaveRecord.getUserId());
     	teacherLeaveRecord.getUser().setUsername(user.getUsername());
+    	teacherLeaveRecord.getUser().setId(user.getId());
     	
         return succeed(teacherLeaveRecord);
     }