Explorar o código

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

# Conflicts:
#	mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java
yonge %!s(int64=5) %!d(string=hai) anos
pai
achega
7e418696dc
Modificáronse 29 ficheiros con 277 adicións e 98 borrados
  1. 11 3
      mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/entity/SysUser.java
  2. 2 2
      mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/enums/UserLockFlag.java
  3. 1 1
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/core/handler/AuthenticationFailureListener.java
  4. 2 2
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/core/provider/service/DefaultUserDetailsService.java
  5. 1 1
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/impl/SysUserLoginServiceImpl.java
  6. 2 1
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/impl/SysUserServiceImpl.java
  7. 3 3
      mec-auth/mec-auth-server/src/main/resources/config/mybatis/SysUserMapper.xml
  8. 14 7
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ClassGroupStudentMapperDao.java
  9. 19 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDao.java
  10. 26 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/ClassGroupImGroupDto.java
  11. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/StudentAttendanceService.java
  12. 39 6
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java
  13. 20 24
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupStudentMapperServiceImpl.java
  14. 9 6
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupTeacherMapperServiceImpl.java
  15. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java
  16. 62 12
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentAttendanceServiceImpl.java
  17. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java
  18. 8 8
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java
  19. 11 1
      mec-biz/src/main/resources/config/mybatis/ClassGroupStudentMapperMapper.xml
  20. 5 5
      mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml
  21. 1 1
      mec-biz/src/main/resources/config/mybatis/CourseScheduleStudentPaymentMapper.xml
  22. 1 1
      mec-biz/src/main/resources/config/mybatis/EmployeeMapper.xml
  23. 5 4
      mec-biz/src/main/resources/config/mybatis/StudentManageDao.xml
  24. 22 1
      mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderMapper.xml
  25. 2 2
      mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml
  26. 2 2
      mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml
  27. 2 1
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherAttendanceController.java
  28. 3 0
      mec-web/src/main/java/com/ym/mec/web/controller/StudentManageController.java
  29. 1 1
      mec-web/src/main/resources/application.yml

+ 11 - 3
mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/entity/SysUser.java

@@ -60,7 +60,7 @@ public class SysUser implements Serializable{
 
 	/** 0-正常,9-锁定 */
 	@ApiModelProperty(value = "0-正常,9-锁定",required = false)
-	private UserLockFlag lockFlag;
+	private Integer lockFlag;
 
 	/** 0-正常,1-删除 */
 	@ApiModelProperty(value = "0-正常,1-删除",required = false)
@@ -223,14 +223,22 @@ public class SysUser implements Serializable{
 		return this.updateTime;
 	}
 
-	public UserLockFlag getLockFlag() {
+	public Integer getLockFlag() {
 		return lockFlag;
 	}
 
-	public void setLockFlag(UserLockFlag lockFlag) {
+	public void setLockFlag(Integer lockFlag) {
 		this.lockFlag = lockFlag;
 	}
 
+	public Boolean getSuperAdmin() {
+		return isSuperAdmin;
+	}
+
+	public void setSuperAdmin(Boolean superAdmin) {
+		isSuperAdmin = superAdmin;
+	}
+
 	public YesOrNoEnum getDelFlag() {
 		return delFlag;
 	}

+ 2 - 2
mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/enums/UserLockFlag.java

@@ -9,11 +9,11 @@ import com.ym.mec.common.enums.BaseEnum;
  */
 public enum UserLockFlag implements BaseEnum<Integer, UserLockFlag> {
 
-	NORMAL(0, "正常"), CANCELLED(1, "冻结"), LOCKED(9, "锁定");
+	NORMAL(0, "正常"), LOCKED(9, "锁定"), CANCELLED(1, "冻结");
 
 	private int code;
 
-	private UserLockFlag(int code, String remark) {
+	UserLockFlag(int code, String remark) {
 		this.code = code;
 		this.remark = remark;
 	}

+ 1 - 1
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/core/handler/AuthenticationFailureListener.java

@@ -61,7 +61,7 @@ public class AuthenticationFailureListener implements ApplicationListener<Authen
                 if(userLogin.getFailCount() >= 5){
                     userLogin.setLockTime(30);
                     userLogin.setLockDate(date);
-                    sysUser.setLockFlag(UserLockFlag.LOCKED);
+                    sysUser.setLockFlag(9);
                     sysUser.setUpdateTime(date);
                     sysUserService.update(sysUser);
                 }

+ 2 - 2
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/core/provider/service/DefaultUserDetailsService.java

@@ -51,7 +51,7 @@ public class DefaultUserDetailsService implements UserDetailsService {
 		}
 		if (userInfo == null) {
 			throw new UsernameNotFoundException("账户不存在");
-		} else if (userInfo.getSysUser().getLockFlag() == UserLockFlag.LOCKED) {
+		} else if (userInfo.getSysUser().getLockFlag() == 9) {
 			throw new LockedException("账户被锁定");
 		}
 
@@ -68,7 +68,7 @@ public class DefaultUserDetailsService implements UserDetailsService {
 
 		SysUser sysUser = userInfo.getSysUser();
 
-		return new AuthUser(sysUser.getId(), sysUser.getOrganId(), username, BCRYPT + sysUser.getPassword(), sysUser.getLockFlag() == UserLockFlag.NORMAL,
+		return new AuthUser(sysUser.getId(), sysUser.getOrganId(), username, BCRYPT + sysUser.getPassword(), sysUser.getLockFlag() == 0,
 				true, true, true, authorities);
 	}
 

+ 1 - 1
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/impl/SysUserLoginServiceImpl.java

@@ -60,7 +60,7 @@ public class SysUserLoginServiceImpl extends BaseServiceImpl<Integer, SysUserLog
 						userLogin.setLockTime(0);
 						update(userLogin);
 
-						user.setLockFlag(UserLockFlag.NORMAL);
+						user.setLockFlag(0);
 						user.setUpdateTime(currentDate);
 						sysUserDao.update(user);
 					}

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

@@ -59,7 +59,8 @@ public class SysUserServiceImpl extends BaseServiceImpl<Integer, SysUser> implem
 
 	@Override
 	public SysUser queryByPhone(String phone) {
-		return sysUserDao.queryByPhone(phone);
+		SysUser sysUser = sysUserDao.queryByPhone(phone);
+		return sysUser;
 	}
 
 	@Override

+ 3 - 3
mec-auth/mec-auth-server/src/main/resources/config/mybatis/SysUserMapper.xml

@@ -17,7 +17,7 @@
         <result column="organ_id_" property="organId"/>
         <result column="create_time_" property="createTime"/>
         <result column="update_time_" property="updateTime"/>
-        <result column="lock_flag_" property="lockFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="lock_flag_" property="lockFlag"/>
         <result column="del_flag_" property="delFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="wx_openid_" property="wxOpenid"/>
         <result column="qq_openid_" property="qqOpenid"/>
@@ -108,7 +108,7 @@
                 update_time_ = NOW(),
             </if>
             <if test="lockFlag != null">
-                lock_flag_ = #{lockFlag, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+                lock_flag_ = #{lockFlag},
             </if>
             <if test="birthdate != null">
                 birthdate_ = #{birthdate},
@@ -186,7 +186,7 @@
     </select>
     
     <select id="queryByStatus" resultMap="SysUser">
-        select * from sys_user where lock_flag_ = #{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+        select * from sys_user where lock_flag_ = #{status}
     </select>
     <select id="getOrganName" resultType="java.lang.String">
         SELECT GROUP_CONCAT(name_) FROM organization WHERE FIND_IN_SET(id_,#{organId})

+ 14 - 7
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ClassGroupStudentMapperDao.java

@@ -1,12 +1,5 @@
 package com.ym.mec.biz.dal.dao;
 
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-import com.ym.mec.biz.dal.entity.ClassGroup;
-import org.apache.ibatis.annotations.Param;
-
 import com.ym.mec.biz.dal.dto.StudentAttendanceViewDto;
 import com.ym.mec.biz.dal.dto.TeacherClassStudentDto;
 import com.ym.mec.biz.dal.entity.ClassGroupStudentMapper;
@@ -15,6 +8,11 @@ import com.ym.mec.biz.dal.enums.ClassGroupStudentStatusEnum;
 import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.common.dal.BaseDAO;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
 
 public interface ClassGroupStudentMapperDao extends BaseDAO<Long, ClassGroupStudentMapper> {
     /**
@@ -69,6 +67,15 @@ public interface ClassGroupStudentMapperDao extends BaseDAO<Long, ClassGroupStud
     String[] findStudentNumByClassGroupId(@Param("classGroupId") Long classGroupId);
 
     /**
+     * @describe 获取课程上的学员名称集合
+     * @author Joburgess
+     * @date 2019/12/4
+     * @param courseScheduleId:
+     * @return java.lang.String[]
+     */
+    String[] findCourseStudentName(@Param("courseScheduleId") Integer courseScheduleId);
+
+    /**
      * @param params:
      * @return java.util.List<com.ym.mec.biz.dal.dto.TeacherClassStudentDto>
      * @describe 获取班级学生

+ 19 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDao.java

@@ -125,5 +125,24 @@ public interface StudentPaymentOrderDao extends BaseDAO<Long, StudentPaymentOrde
      */
     List<StudentPaymentOrder> findOrdersOverTime(@Param("orderNoList") List<String> orderNoList, @Param("status") DealStatusEnum status, @Param("beforeTime") Date beforeTime);
 
+    /**
+     * @describe 根据乐团和用户编号统计剩余课时
+     * @author Joburgess
+     * @date 2019/12/4
+     * @param musicGroupId: 乐团编号
+     * @param userId: 用户编号
+     * @return int
+     */
+    int countSurplusCourseByMusicGroupAndUser(@Param("musicGroupId") String musicGroupId, @Param("userId") Integer userId);
 
+    /**
+     * @describe 统计乐团或vip课的收入金额
+     * @author Joburgess
+     * @date 2019/12/4
+     * @param musicGroupId: 乐团或小课金额
+     * @param groupType:
+     * @return java.math.BigDecimal
+     */
+    BigDecimal sumGroupIncomeFee(@Param("musicGroupId") String musicGroupId,
+                                 @Param("groupType") String groupType);
 }

+ 26 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/ClassGroupImGroupDto.java

@@ -0,0 +1,26 @@
+package com.ym.mec.biz.dal.dto;
+
+
+import com.ym.mec.biz.dal.entity.ClassGroup;
+
+import java.util.List;
+
+public class ClassGroupImGroupDto {
+    private ClassGroup classGroup;
+    private List<Integer> userIds;
+
+    public ClassGroup getClassGroup() {
+        return classGroup;
+    }
+
+    public void setClassGroup(ClassGroup classGroup) {
+        this.classGroup = classGroup;
+    }
+    public List<Integer> getUserIds() {
+        return userIds;
+    }
+
+    public void setUserIds(List<Integer> userIds) {
+        this.userIds = userIds;
+    }
+}

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

@@ -19,7 +19,7 @@ public interface StudentAttendanceService extends BaseService<Long, StudentAtten
 	 * @Date: 2019/9/11
 	 * 批量插入学生上课签到信息
 	 */
-	Map addStudentAttendances(StudentAttendanceDto studentAttendanceInfo);
+	void addStudentAttendances(StudentAttendanceDto studentAttendanceInfo);
 
 	/**
 	 * @describe 获取当前课程的学生

+ 39 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -296,16 +296,16 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
                 courseScheduleDao.deleteCourseSchedulesByClassGroupIds(courseScheduleIds);
             }
 
-			//删除融云群
-			List<ImGroupModel> imGroupModels = new ArrayList<ImGroupModel>();
+            List<ImGroupModel> imGroupModelList = new ArrayList<>();
             for (ClassGroup classGroup : classGroups) {
-            	imGroupModels.add(new ImGroupModel(classGroup.getId().toString()));
+                imGroupModelList.add(new ImGroupModel(classGroup.getId().toString(), null, classGroup.getName()));
             }
-			imFeignService.groupBatchDismiss(imGroupModels);
+            imFeignService.groupBatchDismiss(imGroupModelList);
         }
 
         List<CourseSchedule> courseScheduleList = new ArrayList<>();
         List<ClassGroupTeacherMapper> classGroupTeacherMapperList = new ArrayList<>();
+        List<ClassGroupImGroupDto> classGroupImGroupList = new ArrayList<>();
         Integer schoolId = musicGroup.getSchoolId();
         for (HighClassGroupDto highClassGroup : highClassGroupList) {
             if (highClassGroup.getDayOfWeek() < 1 || highClassGroup.getDayOfWeek() > 7) {
@@ -377,9 +377,13 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
             List<Integer> userIdList = new ArrayList<>();
             userIdList.add(classGroupTeacherMapper.getUserId());
 
-            //加入Im群组
-            addImGroup(highClassGroup, userIdList);
+            ClassGroupImGroupDto classGroupImGroupDto = new ClassGroupImGroupDto();
+            classGroupImGroupDto.setClassGroup(highClassGroup);
+            classGroupImGroupDto.setUserIds(userIdList);
+            classGroupImGroupList.add(classGroupImGroupDto);
         }
+        //加入Im群组
+        batchAddImGroup(classGroupImGroupList);
         classGroupTeacherMapperService.classGroupTeachersInsert(classGroupTeacherMapperList);
         //检测新排课冲突
         courseScheduleService.checkNewCourseSchedules(courseScheduleList, false);
@@ -1768,4 +1772,33 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
     public List<ClassGroup> findByClassGroupIds(List<Integer> classGroupIds) {
         return classGroupDao.findByClassGroupIds(classGroupIds);
     }
+
+    public Boolean batchAddImGroup(List<ClassGroupImGroupDto> classGroupImGroupList) {
+
+        MusicGroup musicGroup = musicGroupDao.get(classGroupImGroupList.get(0).getClassGroup().getMusicGroupId());
+
+        List<ImGroupModel> imGroupModelList = new ArrayList<>();
+        for (ClassGroupImGroupDto classGroupImGroupDto : classGroupImGroupList) {
+            List<Integer> userIdList = new ArrayList<>();
+            userIdList.add(musicGroup.getEducationalTeacherId());
+            userIdList.add(musicGroup.getTeamTeacherId());
+            userIdList.add(musicGroup.getOperatorUserId());
+            userIdList.add(musicGroup.getDirectorUserId());
+            if (classGroupImGroupDto.getUserIds() != null && classGroupImGroupDto.getUserIds().size()>0) {
+                userIdList.addAll(classGroupImGroupDto.getUserIds());
+            }
+
+            List<ImGroupMember> imGroupMemberList = new ArrayList<>();
+            for (Integer userId : userIdList) {
+                if (userId == null) continue;
+                imGroupMemberList.add(new ImGroupMember(userId.toString()));
+            }
+            //创建IM群组
+            ImGroupMember[] imGroupMembers = imGroupMemberList.toArray(new ImGroupMember[imGroupMemberList.size()]);
+            ImGroupModel imGroupModel = new ImGroupModel(classGroupImGroupDto.getClassGroup().getId().toString(), imGroupMembers, classGroupImGroupDto.getClassGroup().getName());
+            imGroupModelList.add(imGroupModel);
+        }
+        imFeignService.groupBatchCreate(imGroupModelList);
+        return true;
+    }
 }

+ 20 - 24
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupStudentMapperServiceImpl.java

@@ -49,7 +49,7 @@ public class ClassGroupStudentMapperServiceImpl extends BaseServiceImpl<Long, Cl
 
     @Override
     public ClassGroupStudentMapper findClassStudentMapperByUserIdAndClassGroupId(Integer userId, Integer classGroupId) {
-        return classGroupStudentMapperDao.findClassStudentMapperByUserIdAndClassGroupId(userId, classGroupId,"NORMAL");
+        return classGroupStudentMapperDao.findClassStudentMapperByUserIdAndClassGroupId(userId, classGroupId, "NORMAL");
     }
 
     @Override
@@ -153,26 +153,22 @@ public class ClassGroupStudentMapperServiceImpl extends BaseServiceImpl<Long, Cl
 
         Iterator<String> iterator = userIdStrSet.iterator();
         while (iterator.hasNext()) {
-        	Integer userId = Integer.parseInt(iterator.next());
+            Integer userId = Integer.parseInt(iterator.next());
             List<ClassGroupStudentMapper> highClassGroupHasUser = classGroupStudentMapperDao.findHighClassGroupHasUser(classGroup.getMusicGroupId(), userId, classGroup.getType());
             if (!classGroup.getType().equals(ClassGroupTypeEnum.SNAP) && highClassGroupHasUser != null && highClassGroupHasUser.size() > 0) {
-            	iterator.remove();
+                iterator.remove();
                 continue;
             }
-            //校验是否存在历史记录
-            ClassGroupStudentMapper classGroupStudentMapper = classGroupStudentMapperDao.findClassStudentMapperByUserIdAndClassGroupId(userId, classGroupId, null);
-            if(classGroupStudentMapper != null){
-                classGroupStudentMapper.setStatus(ClassGroupStudentStatusEnum.NORMAL);
-            }else {
-                classGroupStudentMapper = new ClassGroupStudentMapper();
-                classGroupStudentMapper.setMusicGroupId(classGroup.getMusicGroupId());
-                classGroupStudentMapper.setClassGroupId(classGroupId);
-                classGroupStudentMapper.setUserId(userId);
-                classGroupStudentMapper.setCreateTime(nowDate);
-                classGroupStudentMapper.setStatus(ClassGroupStudentStatusEnum.NORMAL);
-                classGroupStudentMapper.setGroupType(GroupType.MUSIC);
-                classGroupStudentMappers.add(classGroupStudentMapper);
-            }
+            
+            ClassGroupStudentMapper classGroupStudentMapper = new ClassGroupStudentMapper();
+            classGroupStudentMapper.setMusicGroupId(classGroup.getMusicGroupId());
+            classGroupStudentMapper.setClassGroupId(classGroupId);
+            classGroupStudentMapper.setUserId(userId);
+            classGroupStudentMapper.setCreateTime(nowDate);
+            classGroupStudentMapper.setStatus(ClassGroupStudentStatusEnum.NORMAL);
+            classGroupStudentMapper.setGroupType(GroupType.MUSIC);
+            classGroupStudentMappers.add(classGroupStudentMapper);
+
             if (classGroup.getType().equals(ClassGroupTypeEnum.NORMAL)) {
                 StudentRegistration studentRegistration = studentRegistrationService.queryByUserIdAndMusicGroupId(userId, classGroup.getMusicGroupId());
                 studentRegistration.setClassGroupId(classGroupId);
@@ -180,9 +176,9 @@ public class ClassGroupStudentMapperServiceImpl extends BaseServiceImpl<Long, Cl
             }
             imGroupMemberList.add(new ImGroupMember(userId.toString()));
         }
-		if (classGroupStudentMappers.size() > 0) {
-			classGroupStudentMapperDao.classGroupStudentsInsert(classGroupStudentMappers);
-		}
+        if (classGroupStudentMappers.size() > 0) {
+            classGroupStudentMapperDao.classGroupStudentsInsert(classGroupStudentMappers);
+        }
 
         //添加进IM群组
         ImGroupMember[] imGroupMembers = imGroupMemberList.toArray(new ImGroupMember[imGroupMemberList.size()]);
@@ -214,8 +210,8 @@ public class ClassGroupStudentMapperServiceImpl extends BaseServiceImpl<Long, Cl
             courseScheduleStudentPaymentService.batchInsert(courseScheduleStudentPayments);
         }
         //乐团在合奏班
-        if(classGroupRelation != null){
-            addStudents(classGroupRelation.getClassGroupId(),userIdsStr,GroupType.MUSIC);
+        if (classGroupRelation != null) {
+            addStudents(classGroupRelation.getClassGroupId(), userIdsStr, GroupType.MUSIC);
         }
 
         return true;
@@ -223,12 +219,12 @@ public class ClassGroupStudentMapperServiceImpl extends BaseServiceImpl<Long, Cl
 
     @Override
     public Object queryHoliday(String year) throws IOException {
-        return HttpUtil.get(holidayUrl + year,null);
+        return HttpUtil.get(holidayUrl + year, null);
     }
 
     @Override
     public List<ClassGroupStudentMapper> findMusicGroupClassGroupByType(String musicGroupId, ClassGroupTypeEnum type) {
-        return classGroupStudentMapperDao.findMusicGroupClassGroupByType(musicGroupId,type);
+        return classGroupStudentMapperDao.findMusicGroupClassGroupByType(musicGroupId, type);
     }
 
     @Override

+ 9 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupTeacherMapperServiceImpl.java

@@ -64,7 +64,7 @@ public class ClassGroupTeacherMapperServiceImpl extends BaseServiceImpl<Long, Cl
 
         List<ClassGroup> classGroups = classGroupService.findClassGroupByIds(classGroupIds);
 
-        List<ClassGroupTeacherMapper> oldClassGroupTeacherMapper = classGroupTeacherMapperDao.getClassGroupTeacherMapper(classGroupTeacherMapperList,GroupType.MUSIC);
+        List<ClassGroupTeacherMapper> oldClassGroupTeacherMapper = classGroupTeacherMapperDao.getClassGroupTeacherMapper(classGroupTeacherMapperList, GroupType.MUSIC);
 
         for (ClassGroup classGroup : classGroups) {
             imGroupMemberList.clear();
@@ -172,7 +172,10 @@ public class ClassGroupTeacherMapperServiceImpl extends BaseServiceImpl<Long, Cl
                 if (classGroupNoStartCourseSchedule.getType().equals(CourseSchedule.CourseScheduleType.HIGH)) {
                     //课程时长与结算单位时长占比
                     classTimeDuty = new BigDecimal(duration).divide(new BigDecimal(45), CommonConstants.DECIMAL_PLACE, BigDecimal.ROUND_DOWN);
-                    baseSalary = classGroupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalary.getMainTeacher90MinSalary() : teacherDefaultMusicGroupSalary.getAssistantTeacher90MinSalary();
+                    baseSalary = classGroupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalary.getMainTeacher30MinSalary() : teacherDefaultMusicGroupSalary.getAssistantTeacher30MinSalary();
+                    if (musicGroup.getSettlementType().equals(SalarySettlementTypeEnum.GRADIENT_SALARY)) {
+                        baseSalary = classGroupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalary.getMainTeacher90MinSalary() : teacherDefaultMusicGroupSalary.getAssistantTeacher90MinSalary();
+                    }
                 }
 
                 salary = baseSalary.multiply(classTimeDuty).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
@@ -197,13 +200,13 @@ public class ClassGroupTeacherMapperServiceImpl extends BaseServiceImpl<Long, Cl
 
     @Override
     public void createMusicGroupTeacherMapper(List<CourseSchedule> courseSchedules, String musicGroupId) {
-        Date date=new Date();
+        Date date = new Date();
         MusicGroup musicGroup = musicGroupService.get(musicGroupId);
         //老师默认的课酬
 //        Map<String, TeacherDefaultMusicGroupSalary> teacherDefaultSalary = new HashMap<>();
         for (CourseSchedule classGroupNoStartCourseSchedule : courseSchedules) {
             List<CourseScheduleTeacherSalary> courseScheduleTeacherSalaryList = new ArrayList<>();
-            List<TeacherAttendance> teacherAttendances=new ArrayList<>();
+            List<TeacherAttendance> teacherAttendances = new ArrayList<>();
             //课时长度
             int duration = DateUtil.minutesBetween(classGroupNoStartCourseSchedule.getStartClassTime(), classGroupNoStartCourseSchedule.getEndClassTime());
             List<ClassGroupTeacherMapper> byClassGroup = classGroupTeacherMapperDao.findByClassGroup(classGroupNoStartCourseSchedule.getClassGroupId());
@@ -213,7 +216,7 @@ public class ClassGroupTeacherMapperServiceImpl extends BaseServiceImpl<Long, Cl
                 }
                 BigDecimal salary;
 
-                TeacherDefaultMusicGroupSalary teacherDefaultMusicGroupSalary=teacherDefaultMusicGroupSalaryDao.findByTeacherAndCourseType(classGroupTeacherMapper.getUserId(),
+                TeacherDefaultMusicGroupSalary teacherDefaultMusicGroupSalary = teacherDefaultMusicGroupSalaryDao.findByTeacherAndCourseType(classGroupTeacherMapper.getUserId(),
                         classGroupNoStartCourseSchedule.getType().getCode());
 
                 if (teacherDefaultMusicGroupSalary == null) {
@@ -264,7 +267,7 @@ public class ClassGroupTeacherMapperServiceImpl extends BaseServiceImpl<Long, Cl
                 courseScheduleTeacherSalary.setClassGroupId(classGroupTeacherMapper.getClassGroupId());
                 courseScheduleTeacherSalaryList.add(courseScheduleTeacherSalary);
 
-                TeacherAttendance teacherAttendance=new TeacherAttendance();
+                TeacherAttendance teacherAttendance = new TeacherAttendance();
                 teacherAttendance.setMusicGroupId(courseScheduleTeacherSalary.getMusicGroupId());
                 teacherAttendance.setTeacherId(classGroupTeacherMapper.getUserId());
                 teacherAttendance.setClassGroupId(classGroupTeacherMapper.getClassGroupId());

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

@@ -342,7 +342,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 				courseScheduleDto.setStatus(CourseStatusEnum.UNDERWAY);
 			}
 			if(Objects.nonNull(courseScheduleDto.getClassGroupId())){
-				String[] studentNums = classGroupStudentMapperDao.findStudentNumByClassGroupId(courseScheduleDto.getClassGroupId().longValue());
+				String[] studentNums = classGroupStudentMapperDao.findCourseStudentName(courseScheduleDto.getId().intValue());
 				courseScheduleDto.setStudentNames(org.apache.commons.lang3.StringUtils.join(studentNums, ","));
 			}
 			courseScheduleDto.setSubjectName(subjectNameCourseMap.get(courseScheduleDto.getId()));

+ 62 - 12
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentAttendanceServiceImpl.java

@@ -8,10 +8,7 @@ import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.*;
 import com.ym.mec.biz.dal.page.CourseHomeworkQueryInfo;
 import com.ym.mec.biz.dal.page.StudentAttendanceQueryInfo;
-import com.ym.mec.biz.service.StudentAttendanceService;
-import com.ym.mec.biz.service.SysConfigService;
-import com.ym.mec.biz.service.SysMessageService;
-import com.ym.mec.biz.service.TeacherAttendanceService;
+import com.ym.mec.biz.service.*;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
@@ -58,6 +55,14 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
 	private SysConfigDao sysConfigDao;
 	@Autowired
 	private TeacherAttendanceService teacherAttendanceService;
+	@Autowired
+	private SchoolDao schoolDao;
+	@Autowired
+	private SysConfigService sysConfigService;
+	@Autowired
+	private CourseScheduleService courseScheduleService;
+	@Autowired
+	private TeacherAttendanceDao teacherAttendanceDao;
 
 	@Override
 	public BaseDAO<Long, StudentAttendance> getDAO() {
@@ -66,7 +71,7 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
 
 	@Override
 	@Transactional(rollbackFor = Exception.class)
-	public Map addStudentAttendances(StudentAttendanceDto studentAttendanceInfos) {
+	public void addStudentAttendances(StudentAttendanceDto studentAttendanceInfos) {
 		List<StudentAttendance> studentAttendances=studentAttendanceInfos.getStudentAttendances();
 		SysUser sysUser = sysUserFeignService.queryUserInfo();
 		if(Objects.isNull(sysUser)){
@@ -135,13 +140,58 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
 		courseSchedule.setLeaveStudentNum(leaveStudentNum);
 		courseScheduleDao.update(courseSchedule);
 
-		TeacherSignOutDto teacherSignOutDto=new TeacherSignOutDto();
-		TeacherAttendance teacherAttendance = new TeacherAttendance(courseSchedule.getId(), 0);
-		teacherAttendance.setSignInLongitudeLatitude(studentAttendanceInfos.getSignInLongitudeLatitude());
-		teacherAttendance.setUpdate(studentAttendanceInfos.getUpdate());
-		teacherSignOutDto.setTeacherAttendanceInfo(teacherAttendance);
-		teacherSignOutDto.setNotRturnErrorInfo(true);
-		return teacherAttendanceService.addTeacherAttendanceRecord(teacherSignOutDto);
+		if(StringUtils.isBlank(studentAttendanceInfos.getSignInLongitudeLatitude())){
+			throw new BizException("未获取到您的位置");
+		}
+
+		School school = schoolDao.get(courseSchedule.getSchoolId());
+
+		//是否在范围内
+		boolean isInScore = true;
+		if(StringUtils.isBlank(school.getLongitudeLatitude())){
+			if(studentAttendanceInfos.getUpdate().equals(YesOrNoEnum.YES.getCode())){
+				school.setLongitudeLatitude(studentAttendanceInfos.getSignInLongitudeLatitude());
+				schoolDao.update(school);
+			}
+		}else{
+			SysConfig sysConfig = sysConfigService.findByParamName(SysConfigService.ATTENDANCE_RANGE);
+			double attendanceRange = Double.valueOf(sysConfig.getParanValue());
+			double distance = MapUtil.distance(studentAttendanceInfos.getSignInLongitudeLatitude(),
+					school.getLongitudeLatitude());
+			if(distance>attendanceRange){
+				isInScore=false;
+			}
+		}
+
+		TeacherAttendance teacherAttendance=teacherAttendanceDao.findByTeacherAttendanceInfo(sysUser.getId().longValue(),courseSchedule.getId());
+
+
+		Date date = new Date();
+		if(Objects.isNull(teacherAttendance)){
+			teacherAttendance= new TeacherAttendance();
+			teacherAttendance.setTeacherId(sysUser.getId());
+			teacherAttendance.setCreateTime(date);
+		}else if(teacherAttendance.getSignInTime() != null && teacherAttendance.getSignOutTime() != null){
+			return;
+		}
+
+		YesOrNoEnum yesOrNoEnum = courseScheduleService.enableOnlyNormalAttendance(courseSchedule.getStartClassTime(),
+				sysUser.getId().longValue(),
+				true,
+				courseSchedule.getSchoolId().intValue());
+		teacherAttendance.setSignInTime(date);
+		teacherAttendance.setSignInStatus(YesOrNoEnum.YES);
+		teacherAttendance.setSignOutTime(date);
+		teacherAttendance.setSignOutStatus(YesOrNoEnum.YES);
+		if(yesOrNoEnum != YesOrNoEnum.YES&&courseSchedule.getStartClassTime().before(date)){
+			teacherAttendance.setSignInStatus(YesOrNoEnum.NO);
+			teacherAttendance.setSignOutStatus(YesOrNoEnum.NO);
+		}
+		if(Objects.nonNull(teacherAttendance.getId())){
+			teacherAttendanceDao.update(teacherAttendance);
+		}else{
+			teacherAttendanceDao.insert(teacherAttendance);
+		}
 	}
 
 	@Override

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

@@ -262,7 +262,7 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
             sysUser.setPhone(studentRegistration.getParentsPhone());
             sysUser.setCreateTime(date);
             sysUser.setUpdateTime(date);
-            sysUser.setLockFlag(UserLockFlag.NORMAL);
+            sysUser.setLockFlag(0);
             sysUser.setDelFlag(com.ym.mec.auth.api.enums.YesOrNoEnum.NO);
             sysUser.setUserType(SysUserType.STUDENT);
             sysUser.setGender(studentRegistration.getGender());

+ 8 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -1113,13 +1113,12 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		}
 		VipGroup vipGroup=vipGroupDao.get(vipGroupId);
 		//剩余课时数
-		Map surplusClassTimes=MapUtil.convertMybatisMap(vipGroupDao.countSurplusClassTimes(vipGroupId));
-		studentApplyRefunds.setExpectAmount(countVipGroupPredictFee(vipGroup,
-				vipGroup.getUserId(),
-				new BigDecimal(Objects.isNull(surplusClassTimes.get(TeachModeEnum.ONLINE.getCode()))?"0":surplusClassTimes.get(TeachModeEnum.ONLINE.getCode()).toString()),
-				new BigDecimal(Objects.isNull(surplusClassTimes.get(TeachModeEnum.OFFLINE.getCode()))?"0":surplusClassTimes.get(TeachModeEnum.OFFLINE.getCode()).toString()),
-				true,
-				false).get("totalPrice"));
+		int surplusCourses = studentPaymentOrderDao.countSurplusCourseByMusicGroupAndUser(vipGroup.getId().toString(), userId);
+		if(surplusCourses<=0){
+			throw new BizException("此vip课程没有剩余排课");
+		}
+		BigDecimal surplusCourseFee = studentPaymentOrderDao.sumSurplusCourseFee(vipGroup.getId().toString(), userId);
+		studentApplyRefunds.setExpectAmount(surplusCourseFee);
 		studentApplyRefunds.setStatus(StudentApplyRefundsStatus.ING);
 		String orderNo=StringUtils.join(new String[]{userId.toString(),String.valueOf(System.currentTimeMillis())});
 		studentApplyRefunds.setOrderNo(orderNo);
@@ -1367,10 +1366,11 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			vipGroupSalaryBaseInfo.setTotalFeeDeduction(new BigDecimal(0));
 		}
 
-		BigDecimal totalCoursePrice= courseScheduleStudentPaymentDao.countAllCourseFee(classGroup.getId());
+		BigDecimal totalCoursePrice= studentPaymentOrderDao.sumGroupIncomeFee(classGroup.getId().toString(),GroupType.VIP.getCode());
 		if(Objects.isNull(totalCoursePrice)){
 			totalCoursePrice=new BigDecimal(0);
 		}
+
 		//课程总价
 		vipGroupSalaryBaseInfo.setTotalCoursePrice(totalCoursePrice);
 

+ 11 - 1
mec-biz/src/main/resources/config/mybatis/ClassGroupStudentMapperMapper.xml

@@ -94,6 +94,16 @@
             WHERE cgsm.class_group_id_=#{classGroupId} AND cgsm.status_!='QUIT'
     </select>
 
+    <select id="findCourseStudentName" resultType="string">
+        SELECT
+            su.username_
+        FROM
+            course_schedule_student_payment cssp
+            LEFT JOIN sys_user su ON cssp.user_id_ = su.id_
+        WHERE
+            cssp.course_schedule_id_ = #{courseScheduleId}
+    </select>
+
     <resultMap id="teacherClassStudentDto" type="com.ym.mec.biz.dal.dto.TeacherClassStudentDto">
         <result property="userId" column="user_id_"/>
         <result property="userName" column="username_"/>
@@ -183,7 +193,7 @@
         WHERE cgsm.music_group_id_ = #{musicGroupId}
         AND cgsm.user_id_=#{userId}
         AND cg.type_ = #{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
-        AND cgsm.status_='NORMAL'
+        AND FIND_IN_SET(cgsm.status_,'NORMAL,LEAVE')
     </select>
     <select id="findClassGroupIdByUserAndCourseDateAndStatus" resultType="int">
         SELECT

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

@@ -1226,7 +1226,7 @@
         FROM
             course_schedule cs left join class_group cg on cs.class_group_id_ = cg.id_
         WHERE (cs.class_date_ BETWEEN DATE_FORMAT(#{startTime},'%Y%m%d') AND DATE_FORMAT(#{endTime},'%Y%m%d'))
-            AND cs.del_flag_!=1 AND cg.del_flag_!=1
+            AND (cs.del_flag_ IS NULL OR cs.del_flag_=0) AND (cg.del_flag_ IS NULL OR cg.del_flag_=0)
     </select>
     
     <select id="queryStudentCoursesTimesOfTomorrow" resultMap="Mapper">
@@ -1481,11 +1481,11 @@
     </delete>
     
     <select id="queryUnsignedStudentList" resultMap="StudentAttendance">
-        SELECT a.*,cg.current_class_times_,sa.id_ FROM (SELECT cgsm.user_id_,cs.actual_teacher_id_ teacher_id_,
+        SELECT a.*,cg.current_class_times_,sa.id_ FROM (SELECT cssp.user_id_,cs.actual_teacher_id_ teacher_id_,
         cs.id_ course_schedule_id_,cs.class_group_id_,cs.music_group_id_,cs.group_type_
-        FROM class_group_student_mapper cgsm
-        right JOIN course_schedule cs ON cgsm.class_group_id_ = cs.class_group_id_
-        WHERE cgsm.status_ = 'NORMAL' AND CONCAT(cs.class_date_,' ',cs.end_class_time_) &lt;= now()) a
+        FROM course_schedule_student_payment cssp
+        LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
+        WHERE CONCAT(cs.class_date_,' ',cs.end_class_time_) &lt;= now() AND cssp.actual_price_ IS NOT NULL) a
         LEFT JOIN class_group cg ON a.class_group_id_ = cg.id_
         LEFT JOIN student_attendance sa ON sa.user_id_ = a.user_id_ AND a.teacher_id_ = sa.teacher_id_
         AND sa.class_group_id_ = a.class_group_id_ AND sa.course_schedule_id_ = a.course_schedule_id_

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

@@ -149,7 +149,7 @@
 		WHERE
 			(cs.del_flag_ != 1 OR cs.del_flag_ IS NULL)
 			AND cssp.user_id_ = #{userId}
-			AND cs.status_ = 'NOT_START'
+			AND CONCAT(cs.class_date_	,' ',cs.start_class_time_) &gt; NOW()
 			AND cs.class_group_id_ = #{classGroupId}
     </select>
 	<select id="countAllCourseFee" resultType="java.math.BigDecimal">

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

@@ -33,7 +33,7 @@
         <result column="organ_id_" property="organId"/>
         <result column="create_time_" property="createTime"/>
         <result column="update_time_" property="updateTime"/>
-        <result column="lock_flag_" property="lockFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="lock_flag_" property="lockFlag"/>
         <result column="del_flag_" property="delFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="wx_openid_" property="wxOpenid"/>
         <result column="qq_openid_" property="qqOpenid"/>

+ 5 - 4
mec-biz/src/main/resources/config/mybatis/StudentManageDao.xml

@@ -57,7 +57,7 @@
         UPDATE sys_user
         <set>
             <if test="delFlag != null">
-                del_flag_ = #{delFlag, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+                del_flag_ = #{delFlag},
             </if>
             <if test="wxOpenid != null">
                 wx_openid_ = #{wxOpenid},
@@ -84,7 +84,7 @@
                 update_time_ = NOW(),
             </if>
             <if test="lockFlag != null">
-                lock_flag_ = #{lockFlag, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+                lock_flag_ = #{lockFlag},
             </if>
             <if test="birthdate != null">
                 birthdate_ = #{birthdate},
@@ -489,13 +489,14 @@
         LEFT JOIN vip_group vg ON cg.music_group_id_ = vg.id_
         LEFT JOIN class_group_teacher_mapper cgtm ON cgtm.class_group_id_ = cg.id_
         LEFT JOIN vip_group_activity vgc ON vgc.id_ = vg.vip_group_activity_id_
-        WHERE cg.group_type_ = 'VIP' AND cgtm.teacher_role_ = 'BISHOP' AND cgsm.status != 'QUIT' AND cgsm.user_id_ = #{studentId}
+        WHERE cg.group_type_ = 'VIP' AND cgtm.teacher_role_ = 'BISHOP' AND cgsm.status_ != 'QUIT' AND cgsm.user_id_ = #{studentId}
         <if test="vipGroupName != null">
             AND vg.name_ LIKE CONCAT('%',#{vipGroupName},'%')
         </if>
         <if test="vipGroupStatus != null">
             AND vg.status_ = #{vipGroupStatus}
         </if>
+        <include refid="global.limit"/>
     </select>
     <select id="countStudentVipGroupClass" resultType="java.lang.Integer">
         SELECT COUNT(vg.id_)
@@ -503,7 +504,7 @@
         LEFT JOIN class_group cg ON cgsm.class_group_id_ = cg.id_
         LEFT JOIN vip_group vg ON cg.music_group_id_ = vg.id_
         LEFT JOIN class_group_teacher_mapper cgtm ON cgtm.class_group_id_ = cg.id_
-        WHERE cg.group_type_ = 'VIP' AND cgtm.teacher_role_ = 'BISHOP' AND cgsm.status != 'QUIT' AND cgsm.user_id_ = #{studentId}
+        WHERE cg.group_type_ = 'VIP' AND cgtm.teacher_role_ = 'BISHOP' AND cgsm.status_ != 'QUIT' AND cgsm.user_id_ = #{studentId}
         <if test="vipGroupName != null">
             AND vg.name_ LIKE CONCAT('%',#{vipGroupName},'%')
         </if>

+ 22 - 1
mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderMapper.xml

@@ -224,7 +224,7 @@
         WHERE
             cssp.user_id_ = #{userId}
             AND cssp.music_group_id_ = #{vipGroupId}
-            AND cs.status_='NOT_START'
+            AND CONCAT(cs.class_date_	,' ',cs.start_class_time_) &gt; NOW()
     </select>
     <select id="findNotFailedOrderByStudentVipGroup" resultMap="StudentPaymentOrder">
         SELECT
@@ -295,4 +295,25 @@
         select count(1) from student_payment_order where  music_group_id_=#{musicGroupId} AND status_ = 'SUCCESS' AND type_='SMALL_CLASS_TO_BUY'
     </select>
 
+    <select id="countSurplusCourseByMusicGroupAndUser" resultType="int">
+        SELECT
+            COUNT(*)
+        FROM
+            course_schedule_student_payment cssp
+            LEFT JOIN course_schedule cs ON cssp.course_schedule_id_=cs.id_
+        WHERE
+            cssp.user_id_ = #{userId}
+            AND cssp.music_group_id_ = #{musicGroupId}
+            AND CONCAT(cs.class_date_	,' ',cs.start_class_time_) &gt; NOW()
+    </select>
+    <select id="sumGroupIncomeFee" resultType="java.math.BigDecimal">
+        SELECT
+            SUM(expect_amount_)
+        FROM
+            student_payment_order
+        WHERE
+            group_type_ = #{groupType}
+            AND music_group_id_ = #{musicGroupId}
+    </select>
+
 </mapper>

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

@@ -46,7 +46,7 @@
         <result column="organ_id_" property="organId"/>
         <result column="create_time_" property="createTime"/>
         <result column="update_time_" property="updateTime"/>
-        <result column="lock_flag_" property="lockFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="lock_flag_" property="lockFlag"/>
         <result column="del_flag_" property="delFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="wx_openid_" property="wxOpenid"/>
         <result column="qq_openid_" property="qqOpenid"/>
@@ -363,7 +363,7 @@
         <result column="organ_id_" property="organId"/>
         <result column="create_time_" property="createTime"/>
         <result column="update_time_" property="updateTime"/>
-        <result column="lock_flag_" property="lockFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="lock_flag_" property="lockFlag"/>
         <result column="del_flag_" property="delFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="wx_openid_" property="wxOpenid"/>
         <result column="qq_openid_" property="qqOpenid"/>

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

@@ -36,7 +36,7 @@
         <result column="salt_" property="salt"/>
         <result column="phone_" property="phone"/>
         <result column="avatar_" property="avatar"/>
-        <result column="lock_flag_" property="lockFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="lock_flag_" property="lockFlag"/>
         <result column="del_flag_" property="delFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="wx_openid_" property="wxOpenid"/>
         <result column="qq_openid_" property="qqOpenid"/>
@@ -183,7 +183,7 @@
                 update_time_ = NOW(),
             </if>
             <if test="lockFlag != null">
-                lock_flag_ = #{lockFlag, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+                lock_flag_ = #{lockFlag},
             </if>
             <if test="birthdate != null">
                 birthdate_ = #{birthdate},

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

@@ -47,6 +47,7 @@ public class TeacherAttendanceController extends BaseController {
     @ApiOperation(value = "点名")
     @PostMapping("/addStudentAttendances")
     public Object addStudentAttendances(@RequestBody StudentAttendanceDto studentAttendanceInfo){
-        return succeed(studentAttendanceService.addStudentAttendances(studentAttendanceInfo));
+        studentAttendanceService.addStudentAttendances(studentAttendanceInfo);
+        return succeed();
     }
 }

+ 3 - 0
mec-web/src/main/java/com/ym/mec/web/controller/StudentManageController.java

@@ -3,7 +3,10 @@ package com.ym.mec.web.controller;
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.EmployeeDao;
+import com.ym.mec.biz.dal.entity.ClassGroup;
+import com.ym.mec.biz.dal.entity.CourseSchedule;
 import com.ym.mec.biz.dal.entity.Employee;
+import com.ym.mec.biz.dal.entity.VipGroup;
 import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.biz.service.StudentManageService;
 import com.ym.mec.biz.service.StudentRegistrationService;

+ 1 - 1
mec-web/src/main/resources/application.yml

@@ -31,7 +31,7 @@ spring:
   datasource:
     name: test
     url: jdbc:mysql://47.99.212.176:3306/mec_dev?useUnicode=true&characterEncoding=UTF8&serverTimezone=Asia/Shanghai&allowMultiQueries=true
-#    url: jdbc:mysql://47.99.212.176:3306/mec_data_online?useUnicode=true&characterEncoding=UTF8&serverTimezone=Asia/Shanghai
+#    url: jdbc:mysql://47.99.212.176:3306/mec_data_online?useUnicode=true&characterEncoding=UTF8&serverTimezone=Asia/Shanghai&allowMultiQueries=true
 #    username: dayaData
 #    password: dayaDataOnline2019
     username: mec_dev