Joburgess 5 years ago
parent
commit
cd0a79363b
20 changed files with 282 additions and 90 deletions
  1. 9 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ClassGroupDao.java
  2. 13 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java
  3. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SubjectDao.java
  4. 12 2
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherDao.java
  5. 2 3
      mec-biz/src/main/java/com/ym/mec/biz/service/SubjectService.java
  6. 16 0
      mec-biz/src/main/java/com/ym/mec/biz/service/TeacherAttendanceService.java
  7. 12 1
      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/StudentAttendanceServiceImpl.java
  9. 3 6
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SubjectServiceImpl.java
  10. 48 7
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherAttendanceServiceImpl.java
  11. 6 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java
  12. 9 1
      mec-biz/src/main/resources/config/mybatis/ClassGroupMapper.xml
  13. 48 43
      mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml
  14. 10 0
      mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml
  15. 0 15
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherController.java
  16. 71 0
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherSchoolController.java
  17. 12 1
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherSubjectController.java
  18. 0 7
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherVipGroupController.java
  19. 1 1
      mec-util/src/main/java/com/ym/mec/util/collection/MapUtil.java
  20. 8 0
      mec-web/src/main/java/com/ym/mec/web/controller/TeacherController.java

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ClassGroupDao.java

@@ -385,4 +385,13 @@ public interface ClassGroupDao extends BaseDAO<Integer, ClassGroup> {
      * @return
      */
     List<ImUserModel> findGroupTeacher(Integer groupId);
+
+    /**
+     * @describe 根据课程获取班级信息
+     * @author Joburgess
+     * @date 2019/11/4
+     * @param courseScheduleId: 课程编号
+     * @return com.ym.mec.biz.dal.entity.ClassGroup
+     */
+    ClassGroup findByCourseSchedule(Integer courseScheduleId);
 }

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

@@ -38,6 +38,17 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
 	int batchAddCourseSchedules(List<CourseSchedule> courseSchedules);
 
 	/**
+	 * @describe 修改课程的状态
+	 * @author Joburgess
+	 * @date 2019/11/4
+	 * @param courseScheduleId: 课程编号
+	 * @param status: 状态
+	 * @return int
+	 */
+	int updateCourscheduleStatus(@Param("courseScheduleId") Integer courseScheduleId,
+								 @Param("status") String status);
+
+	/**
 	 * @describe 批量删除课程计划
 	 * @author Joburgess
 	 * @date 2019/10/31
@@ -381,6 +392,8 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
 	 */
 	void updateByMusicGroupId(@Param("musicGroupId") String musicGroupId, @Param("schoolId") Integer schoolId);
 
+
+
 	/**
 	 * 获取班级某时间后相应节数的课程
 	 *

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SubjectDao.java

@@ -73,7 +73,7 @@ public interface SubjectDao extends BaseDAO<Integer, Subject> {
      * @Date: 2019/9/26
      * 获取教师所属科目列表
      */
-    List<Subject> findTeacherSubjects(Long teacherId);
+    List<Subject> findTeacherSubjects(Integer teacherId);
 
     List<ConditionDto> findSubjectConditions();
 

+ 12 - 2
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherDao.java

@@ -9,7 +9,6 @@ import org.apache.ibatis.annotations.Param;
 import java.math.BigDecimal;
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
 
 public interface TeacherDao extends BaseDAO<Integer, Teacher> {
 
@@ -155,4 +154,15 @@ public interface TeacherDao extends BaseDAO<Integer, Teacher> {
      * @return
      */
     List<BasicUserDto> queryMusicGroupStudents(@Param("teacherIds") String teacherIds,@Param("search") String search);
-}
+
+    /**
+     * @describe 根据声部获取部门下的老师
+     * @author Joburgess
+     * @date 2019/11/4
+     * @param organId: 部门编号
+     * @param subjectId: 声部编号
+     * @return java.util.List<com.ym.mec.biz.dal.entity.Teacher>
+     */
+    List<Teacher> findOrganTeacherBySubject(@Param("organId") Integer organId,
+                                            @Param("subjectId") Integer subjectId);
+}

+ 2 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/SubjectService.java

@@ -7,7 +7,6 @@ import com.ym.mec.biz.dal.entity.SubjectGoodsMapper;
 import com.ym.mec.biz.dal.page.SubjectQueryInfo;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.BaseService;
-import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 import java.util.Map;
@@ -65,7 +64,7 @@ public interface SubjectService extends BaseService<Integer, Subject> {
      * @Date: 2019/9/26
      * 获取教师所属科目列表
      */
-    List<Subject> findTeacherSubjects();
+    List<Subject> findTeacherSubjects(Integer userId);
 
     List<ConditionDto> findSubjectConditions();
 
@@ -85,4 +84,4 @@ public interface SubjectService extends BaseService<Integer, Subject> {
     List<Subject> findSubSubjects();
 
     List<Subject> findBySubjectByIdList(List<Integer> subjectIdList);
-}
+}

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

@@ -3,6 +3,7 @@ package com.ym.mec.biz.service;
 import com.ym.mec.biz.dal.dto.TeacherAbnormalAttendanceInfoDto;
 import com.ym.mec.biz.dal.dto.TeacherSignOutDto;
 import com.ym.mec.biz.dal.entity.TeacherAttendance;
+import com.ym.mec.biz.dal.enums.SignStatusEnum;
 import com.ym.mec.biz.dal.page.TeacherCloseQueryInfo;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.BaseService;
@@ -21,6 +22,21 @@ public interface TeacherAttendanceService extends BaseService<Long, TeacherAtten
 	Map<String, Object> addTeacherAttendanceRecord(TeacherSignOutDto teacherSignOutDto);
 
 	/**
+	 * @describe 调价教师签到记录
+	 * @author Joburgess
+	 * @date 2019/11/4
+	 * @param courseScheduleId: 课程编号
+	 * @param userId: 用户编号
+	 * @param signStatus: 签到or签退
+	 * @param updateCourseScheduleStatus: 是否更新课程状态
+	 * @return void
+	 */
+	void addTeacherAttendanceRecord(Integer courseScheduleId,
+									Integer userId,
+									SignStatusEnum signStatus,
+									boolean updateCourseScheduleStatus);
+
+	/**
 	 * 获取教师个人的签到记录
 	 * @return
 	 */

+ 12 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/TeacherService.java

@@ -78,6 +78,17 @@ public interface TeacherService extends BaseService<Integer, Teacher> {
     List<Teacher> findTeachers(@Param("organId") Integer organId);
 
     /**
+     * @describe 根据科目获取部门下的教师
+     * @author Joburgess
+     * @date 2019/11/4
+     * @param organId: 部门编号
+     * @param subjectId: 科目编号
+     * @return java.util.List<com.ym.mec.biz.dal.entity.Teacher>
+     */
+    List<Teacher> findOrganTeacherBySubject(@Param("organId") Integer organId,
+                                            @Param("subjectId") Integer subjectId);
+
+    /**
      * 获取教师上课结算列表
      * @param queryInfo
      * @return
@@ -121,4 +132,4 @@ public interface TeacherService extends BaseService<Integer, Teacher> {
      * @return
      */
     PageInfo<musicGroupStudentApplyDto> queryMusicGroupStudentApply(queryMusicGroupStudentQueryInfo queryInfo);
-}
+}

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

@@ -109,6 +109,7 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
 		Map<StudentAttendanceStatusEnum, List<StudentAttendance>> studentAttendanceGroupByStatus = studentAttendances.stream().collect(Collectors.groupingBy(StudentAttendance::getStatus));
 		Integer studentNum=studentAttendanceGroupByStatus.get(StudentAttendanceStatusEnum.NORMAL)==null?0:studentAttendanceGroupByStatus.get(StudentAttendanceStatusEnum.NORMAL).size();
 		Integer leaveStudentNum=studentAttendanceGroupByStatus.get(StudentAttendanceStatusEnum.LEAVE)==null?0:studentAttendanceGroupByStatus.get(StudentAttendanceStatusEnum.LEAVE).size();
+		courseSchedule.setStatus(CourseStatusEnum.UNDERWAY);
 		courseSchedule.setStudentNum(studentNum);
 		courseSchedule.setLeaveStudentNum(leaveStudentNum);
 		courseScheduleDao.update(courseSchedule);

+ 3 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SubjectServiceImpl.java

@@ -1,6 +1,5 @@
 package com.ym.mec.biz.service.impl;
 
-import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.biz.dal.dao.StudentRegistrationDao;
 import com.ym.mec.biz.dal.dao.SubjectDao;
 import com.ym.mec.biz.dal.dao.SubjectGoodsMapperDao;
@@ -32,8 +31,6 @@ public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject>  imple
     private StudentRegistrationDao studentRegistrationDao;
     @Autowired
     private SubjectGoodsMapperDao subjectGoodsMapperDao;
-    @Autowired
-    private SysUserFeignService sysUserFeignService;
 
     @Override
     public BaseDAO<Integer, Subject> getDAO() {
@@ -140,8 +137,8 @@ public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject>  imple
     }
 
     @Override
-    public List<Subject> findTeacherSubjects() {
-        return subjectDao.findTeacherSubjects(sysUserFeignService.queryUserInfo().getId().longValue());
+    public List<Subject> findTeacherSubjects(Integer userId) {
+        return subjectDao.findTeacherSubjects(userId);
     }
 
     @Override
@@ -172,4 +169,4 @@ public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject>  imple
     public List<Subject> findBySubjectByIdList(List<Integer> subjectIdList) {
         return subjectDao.findBySubjectByIdList(StringUtils.join(subjectIdList,","));
     }
-}
+}

+ 48 - 7
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherAttendanceServiceImpl.java

@@ -7,13 +7,8 @@ import com.ym.mec.biz.dal.dto.TeacherAbnormalAttendanceInfoDto;
 import com.ym.mec.biz.dal.dto.TeacherAttendanceDto;
 import com.ym.mec.biz.dal.dto.TeacherPersonalAttendanceDto;
 import com.ym.mec.biz.dal.dto.TeacherSignOutDto;
-import com.ym.mec.biz.dal.entity.CourseHomework;
-import com.ym.mec.biz.dal.entity.StudentCourseHomework;
-import com.ym.mec.biz.dal.entity.TeacherAttendance;
-import com.ym.mec.biz.dal.enums.MessageTypeEnum;
-import com.ym.mec.biz.dal.enums.ParamEnum;
-import com.ym.mec.biz.dal.enums.SignStatusEnum;
-import com.ym.mec.biz.dal.enums.YesOrNoEnum;
+import com.ym.mec.biz.dal.entity.*;
+import com.ym.mec.biz.dal.enums.*;
 import com.ym.mec.biz.dal.page.TeacherCloseQueryInfo;
 import com.ym.mec.biz.service.*;
 import com.ym.mec.common.dal.BaseDAO;
@@ -51,6 +46,8 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 	private SysConfigDao sysConfigDao;
 	@Autowired
 	private SysMessageService sysMessageService;
+	@Autowired
+	private ClassGroupDao classGroupDao;
 
 	@Override
 	public BaseDAO<Long, TeacherAttendance> getDAO() {
@@ -159,6 +156,50 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 	}
 
 	@Override
+	public void addTeacherAttendanceRecord(Integer courseScheduleId, Integer userId, SignStatusEnum signStatus, boolean updateCourseScheduleStatus) {
+		TeacherAttendance teacherAttendance=teacherAttendanceDao.findByTeacherAttendanceInfo(userId.longValue(),courseScheduleId.longValue());
+		ClassGroup classGroup = classGroupDao.findByCourseSchedule(courseScheduleId);
+		boolean isAttendance=false;
+		Date now=new Date();
+
+		if(Objects.isNull(teacherAttendance)){
+			teacherAttendance=new TeacherAttendance();
+			teacherAttendance.setTeacherId(userId);
+			teacherAttendance.setClassGroupId(classGroup.getId());
+			teacherAttendance.setMusicGroupId(classGroup.getMusicGroupId());
+			teacherAttendance.setCourseScheduleId(courseScheduleId.longValue());
+		}else{
+			isAttendance=true;
+		}
+		switch (signStatus){
+			case SIGN_IN:
+				teacherAttendance.setSignInTime(now);
+				teacherAttendance.setSignInStatus(YesOrNoEnum.YES);
+				int currentClassTimes = teacherAttendanceDao.countClassTime(classGroup.getId().longValue());
+				classGroup.setCurrentClassTimes(currentClassTimes);
+				if(updateCourseScheduleStatus){
+					courseScheduleDao.updateCourscheduleStatus(courseScheduleId,CourseStatusEnum.UNDERWAY.getCode());
+				}
+				break;
+			case SIGN_OUT:
+				teacherAttendance.setSignOutTime(now);
+				teacherAttendance.setSignOutStatus(YesOrNoEnum.YES);
+				if(updateCourseScheduleStatus){
+					courseScheduleDao.updateCourscheduleStatus(courseScheduleId,CourseStatusEnum.OVER.getCode());
+				}
+				break;
+			default:
+
+				break;
+		}
+		if(isAttendance){
+			teacherAttendanceDao.update(teacherAttendance);
+		}else{
+			teacherAttendanceDao.insert(teacherAttendance);
+		}
+	}
+
+	@Override
 	public PageInfo getTeacherPersonalAttendances(TeacherCloseQueryInfo queryInfo) {
 		PageInfo<TeacherPersonalAttendanceDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
 		Map<String, Object> params = new HashMap<String, Object>();

+ 6 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java

@@ -11,7 +11,6 @@ import com.ym.mec.biz.dal.page.MusicGroupTeacherAttendanceQueryInfo;
 import com.ym.mec.biz.dal.page.TeacherCloseQueryInfo;
 import com.ym.mec.biz.dal.page.TeacherQueryInfo;
 import com.ym.mec.biz.dal.page.queryMusicGroupStudentQueryInfo;
-import com.ym.mec.biz.service.ContractService;
 import com.ym.mec.biz.service.TeacherService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.entity.ImGroupModel;
@@ -201,6 +200,11 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
     }
 
 	@Override
+	public List<Teacher> findOrganTeacherBySubject(Integer organId, Integer subjectId) {
+		return teacherDao.findOrganTeacherBySubject(organId,subjectId);
+	}
+
+	@Override
 	public PageInfo<TeacherCloseDto> queryCloses(TeacherCloseQueryInfo queryInfo) {
 		PageInfo<TeacherCloseDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
 		Map<String, Object> params = new HashMap<>();
@@ -358,4 +362,4 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 		return teacher;
 	}
 
-}
+}

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

@@ -254,7 +254,7 @@
         </where>
     </select>
     <select id="findVipStuNames" resultType="map">
-        SELECT cg.music_group_id_ 'key',GROUP_CONCAT(su.real_name_) 'value'
+        SELECT cg.music_group_id_ 'key',GROUP_CONCAT(su.username_) 'value'
         FROM class_group cg
         LEFT JOIN class_group_student_mapper cgsm ON cg.id_ = cgsm.class_group_id_
         LEFT JOIN sys_user su ON cgsm.user_id_ = su.id_
@@ -670,4 +670,12 @@
                 #{classGroupId}
             </foreach>
     </select>
+    <select id="findByCourseSchedule" resultMap="ClassGroup">
+        SELECT
+            cg.*
+        FROM
+            course_schedule cs
+            LEFT JOIN class_group cg ON cs.class_group_id_=cg.id_
+        WHERE cs.id_=#{courseScheduleId}
+    </select>
 </mapper>

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

@@ -811,49 +811,49 @@
     
     <update id="batchUpdate" parameterType="java.util.List">
     	<foreach collection="list" item="item" index="index" open="" close="" separator=";">
-        UPDATE course_schedule
-        <set>
-            <if test="item.classDate != null">
-                class_date_ = #{item.classDate},
-            </if>
-            <if test="item.endClassTime != null">
-                end_class_time_ = #{item.endClassTime},
-            </if>
-            <if test="item.status != null">
-                status_ = #{item.status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-            </if>
-            <if test="item.type != null">
-                type_ = #{item.type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-            </if>
-            <if test="item.actualTeacherId != null">
-                actual_teacher_id_ = #{item.actualTeacherId},
-            </if>
-            <if test="item.subsidy != null">
-                subsidy_ = #{item.subsidy},
-            </if>
-            <if test="item.classGroupId != null">
-                class_group_id_ = #{item.classGroupId},
-            </if>
-            <if test="item.startClassTime != null">
-                start_class_time_ = #{item.startClassTime},
-            </if>
-            <if test="item.teacherId != null">
-                teacher_id_ = #{item.teacherId},
-            </if>
-            <if test="item.updateTime != null">
-                update_time_ = #{item.updateTime},
-            </if>
-            <if test="item.studentNum != null">
-                student_num_ = #{item.studentNum},
-            </if>
-            <if test="item.leaveStudentNum != null">
-                leave_student_num_ = #{item.leaveStudentNum},
-            </if>
-            <if test="item.schoolId != null">
-                school_id_ = #{item.choolId},
-            </if>
-        </set>
-        WHERE id_ = #{item.id}
+            UPDATE course_schedule
+            <set>
+                <if test="item.classDate != null">
+                    class_date_ = #{item.classDate},
+                </if>
+                <if test="item.endClassTime != null">
+                    end_class_time_ = #{item.endClassTime},
+                </if>
+                <if test="item.status != null">
+                    status_ = #{item.status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+                </if>
+                <if test="item.type != null">
+                    type_ = #{item.type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+                </if>
+                <if test="item.actualTeacherId != null">
+                    actual_teacher_id_ = #{item.actualTeacherId},
+                </if>
+                <if test="item.subsidy != null">
+                    subsidy_ = #{item.subsidy},
+                </if>
+                <if test="item.classGroupId != null">
+                    class_group_id_ = #{item.classGroupId},
+                </if>
+                <if test="item.startClassTime != null">
+                    start_class_time_ = #{item.startClassTime},
+                </if>
+                <if test="item.teacherId != null">
+                    teacher_id_ = #{item.teacherId},
+                </if>
+                <if test="item.updateTime != null">
+                    update_time_ = #{item.updateTime},
+                </if>
+                <if test="item.studentNum != null">
+                    student_num_ = #{item.studentNum},
+                </if>
+                <if test="item.leaveStudentNum != null">
+                    leave_student_num_ = #{item.leaveStudentNum},
+                </if>
+                <if test="item.schoolId != null">
+                    school_id_ = #{item.choolId},
+                </if>
+            </set>
+            WHERE id_ = #{item.id}
         </foreach>
     </update>
     <update id="updateByMusicGroupId">
@@ -861,6 +861,11 @@
         WHERE cs.class_group_id_ IN (SELECT cg.id_ FROM class_group cg WHERE cg.music_group_id_ = #{musicGroupId})
     </update>
 
+    <update id="updateCourscheduleStatus">
+        UPDATE course_schedule SET status_ = #{status}
+        WHERE id_=#{courseScheduleId}
+    </update>
+
     <select id="queryNoSignInListByBeforeMinutes" resultMap="CourseSchedule">
         SELECT cs.* FROM course_schedule cs left join teacher_attendance ta on ta.course_schedule_id_ = cs.id_ WHERE ta.sign_in_time_ is null and SUBTIME(start_class_time_, CONCAT(#{minutes},'00')) &lt; CURRENT_TIME()
     </select>

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

@@ -453,6 +453,16 @@
         </if>
         GROUP BY t.id_
     </select>
+    <select id="findOrganTeacherBySubject" resultType="com.ym.mec.biz.dal.entity.Teacher">
+        SELECT su.* FROM teacher t
+        LEFT JOIN sys_user su on t.id_ = su.id_ WHERE 1=1
+        <if test="organId != null">
+            AND t.organ_id_ = #{organId}
+        </if>
+        <if test="subjectId != null">
+            AND FIND_IN_SET(#{subjectId},t.subjectId)
+        </if>
+    </select>
 
     <sql id="queryCloses">
         <where>

+ 0 - 15
mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherController.java

@@ -8,7 +8,6 @@ import com.ym.mec.biz.dal.page.TeacherQueryInfo;
 import com.ym.mec.biz.dal.page.VipClassQueryInfo;
 import com.ym.mec.biz.dal.page.queryMusicGroupStudentQueryInfo;
 import com.ym.mec.biz.service.ClassGroupService;
-import com.ym.mec.biz.service.SchoolService;
 import com.ym.mec.biz.service.TeacherService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.page.QueryInfo;
@@ -16,7 +15,6 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -37,9 +35,6 @@ public class TeacherController extends BaseController {
     @Autowired
     private SysUserFeignService sysUserFeignService;
 
-    @Autowired
-    private SchoolService schoolService;
-
     @ApiOperation(value = "修改教师个人中心信息")
     @PostMapping("/update")
     public Object update(Teacher teacher) {
@@ -118,16 +113,6 @@ public class TeacherController extends BaseController {
         return succeed(teacherService.findTeacherNoPay(teacherId));
     }
 
-    @ApiOperation(value = "获取教师vip课教学点")
-    @GetMapping("/findVipSchoolByTeacher")
-    public Object findVipSchoolByTeacher(){
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if(sysUser == null){
-            return failed(HttpStatus.FORBIDDEN,"请登录");
-        }
-        return succeed(schoolService.findVipSchoolByTeacher(sysUser.getId()));
-    }
-
     @ApiOperation(value = "获取乐团学院学员报名列表")
     @GetMapping("queryStudentApply")
     public Object queryMusicGroupStudentApply(queryMusicGroupStudentQueryInfo queryInfo) {

+ 71 - 0
mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherSchoolController.java

@@ -0,0 +1,71 @@
+package com.ym.mec.teacher.controller;
+
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.biz.dal.entity.School;
+import com.ym.mec.biz.service.SchoolService;
+import com.ym.mec.common.controller.BaseController;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Date;
+
+/**
+ * @Author Joburgess
+ * @Date 2019/11/4
+ */
+
+@RequestMapping("school")
+@Api(tags = "教师教学点服务")
+@RestController
+public class TeacherSchoolController extends BaseController {
+
+    @Autowired
+    private SchoolService schoolService;
+    @Autowired
+    private SysUserFeignService sysUserFeignService;
+
+    @ApiOperation(value = "新增学校")
+    @PostMapping("/add")
+    public Object add(School school){
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if(sysUser == null){
+            return failed(HttpStatus.FORBIDDEN,"请登录");
+        }
+        school.setUserId(sysUser.getId());
+        schoolService.insert(school);
+        return succeed();
+    }
+
+    @ApiOperation(value = "删除学校")
+    @PostMapping("/del")
+    public Object del(@ApiParam(value = "学校编号", required = true) Integer id){
+        schoolService.delete(id);
+        return succeed();
+    }
+
+    @ApiOperation(value = "修改学校")
+    @PostMapping("/update")
+    public Object update(School school){
+        school.setUpdateTime(new Date());
+        schoolService.update(school);
+        return succeed();
+    }
+
+    @ApiOperation(value = "获取教师vip课教学点")
+    @GetMapping("/findVipSchoolByTeacher")
+    public Object findVipSchoolByTeacher(){
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if(sysUser == null){
+            return failed(HttpStatus.FORBIDDEN,"请登录");
+        }
+        return succeed(schoolService.findVipSchoolByTeacher(sysUser.getId()));
+    }
+}

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

@@ -1,14 +1,19 @@
 package com.ym.mec.teacher.controller;
 
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.service.SubjectService;
 import com.ym.mec.common.controller.BaseController;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.Objects;
+
 /**
  * @Author Joburgess
  * @Date 2019/9/26
@@ -20,11 +25,17 @@ public class TeacherSubjectController extends BaseController {
 
     @Autowired
     private SubjectService subjectService;
+    @Autowired
+    private SysUserFeignService sysUserFeignService;
 
     @ApiOperation(value = "获取教师所在科目列表")
     @GetMapping("/findTeacherSubjets")
     public Object findTeacherSubjets(){
-        return succeed(subjectService.findTeacherSubjects());
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if(Objects.isNull(sysUser)){
+            return failed(HttpStatus.FORBIDDEN,"请登录");
+        }
+        return succeed(subjectService.findTeacherSubjects(sysUser.getId()));
     }
 
     @ApiOperation(value = "获取子集科目列表")

+ 0 - 7
mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherVipGroupController.java

@@ -9,7 +9,6 @@ import com.ym.mec.biz.service.VipGroupService;
 import com.ym.mec.common.controller.BaseController;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
 import org.springframework.web.bind.annotation.*;
@@ -65,10 +64,4 @@ public class TeacherVipGroupController extends BaseController {
 		return succeed(vipGroupService.querySchoolByUserId(user.getId()));
 	}
 
-	@ApiOperation(value = "获取教师vip课教学点")
-	@GetMapping("/findVipSchoolByTeacher")
-	public Object findVipSchoolByTeacher(@ApiParam(value = "教师编号", required = true) Integer userId){
-		return succeed(schoolService.findVipSchoolByTeacher(userId));
-	}
-
 }

+ 1 - 1
mec-util/src/main/java/com/ym/mec/util/collection/MapUtil.java

@@ -116,4 +116,4 @@ public class MapUtil {
 		});
 		return result;
 	}
-}
+}

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

@@ -74,6 +74,14 @@ public class TeacherController extends BaseController {
         return succeed(teacherService.findTeachers(organId));
     }
 
+    @ApiOperation(value = "根据科目获取部门下的教师")
+    @GetMapping("/findOrganTeacherBySubject")
+    @PreAuthorize("@pcs.hasPermissions('teacher/findOrganTeacherBySubject')")
+    public HttpResponseResult findOrganTeacherBySubject(Integer subjecId) {
+        Integer organId = sysUserFeignService.queryUserInfo().getOrganId();
+        return succeed(teacherService.findOrganTeacherBySubject(organId,subjecId));
+    }
+
     @ApiOperation(value = "获取乐团所有老师")
     @GetMapping("/findMusicGroupTeachers")
     @PreAuthorize("@pcs.hasPermissions('teacher/findMusicGroupTeachers')")