Browse Source

Merge remote-tracking branch 'origin/master'

周箭河 5 năm trước cách đây
mục cha
commit
bb5fcdeecd

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/EmployeeDao.java

@@ -41,6 +41,9 @@ public interface EmployeeDao extends BaseDAO<Integer, Employee> {
      */
     int updateUserLockStatus(@Param("userID") Long userID);
 
+
+    void updateUserLock(@Param("userID") Long userID, @Param("status") int status);
+
     /**
      * @Author: Joburgess
      * @Date: 2019/9/25

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/EmployeeServiceImpl.java

@@ -143,14 +143,20 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
 
 	@Override
 	public void employeeOperate(Long employeeId, EmployeeOperateEnum operate) {
+		Employee employee = employeeDao.get(employeeId.intValue());
 		switch (operate){
 			case RESET_PASSWORD:
 				employeeDao.updatePassword(employeeId,new BCryptPasswordEncoder().encode(ParamEnum.INIT_PASSWORD.getCode().toString()));
 				break;
 			case LOCK_UNLOCK:
+				SysUser sysUser = sysUserFeignService.queryUserById(employee.getUserId());
+				if(employee.getDemissionDate() != null && sysUser.getLockFlag() == 1){
+					throw new BizException("操作失败:离职员工不允许解冻");
+				}
 				employeeDao.updateUserLockStatus(employeeId);
 				break;
 			case DEMISSION:
+				employeeDao.updateUserLock(employeeId,1);
 				employeeDao.updateUserDemissionDate(employeeId);
 				break;
 			case REINSTATE:

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

@@ -90,6 +90,9 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
 		if(Objects.isNull(courseSchedule)){
 			throw new BizException("请指定课程");
 		}
+		if(TeachModeEnum.ONLINE.equals(courseSchedule.getTeachMode())){
+			throw new BizException("线上课程请进入房间授课");
+		}
 		Date date = new Date();
 		SysConfig attendanceTimeRange;
 		if(courseSchedule.getGroupType().equals(GroupType.MUSIC)){
@@ -203,8 +206,6 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
 			teacherAttendance= new TeacherAttendance();
 			teacherAttendance.setTeacherId(sysUser.getId());
 			teacherAttendance.setCreateTime(date);
-		}else if(teacherAttendance.getSignInTime() != null && teacherAttendance.getSignOutTime() != null){
-			return;
 		}
 
 		teacherAttendance.setSignInTime(courseSchedule.getStartClassTime());

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

@@ -144,6 +144,9 @@
     <update id="updateUserDemissionDate">
         UPDATE employee SET demission_date_ = IF(demission_date_ IS NULL,now(),NULL) WHERE user_id_=#{userID}
     </update>
+    <update id="updateUserLock">
+        UPDATE sys_user SET lock_flag_ = #{status} WHERE id_=#{userID}
+    </update>
 
     <!-- 根据主键删除一条记录 -->
     <delete id="delete">

+ 5 - 1
mec-im/src/main/java/com/ym/service/Impl/RoomServiceImpl.java

@@ -24,6 +24,7 @@ import com.ym.mec.biz.dal.entity.TeacherAttendance;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.biz.dal.enums.SignStatusEnum;
 import com.ym.mec.biz.dal.enums.StudentAttendanceStatusEnum;
+import com.ym.mec.biz.dal.enums.TeachModeEnum;
 import com.ym.mec.biz.service.StudentAttendanceService;
 import com.ym.mec.biz.service.SysConfigService;
 import com.ym.mec.biz.service.TeacherAttendanceService;
@@ -128,6 +129,9 @@ public class RoomServiceImpl implements RoomService {
         String userId = sysUser.getId().toString();
         Teacher teacher = teacherDao.get(Integer.parseInt(userId));
         CourseSchedule courseSchedule = courseScheduleDao.get(Long.parseLong(roomId));
+        if(courseSchedule.getTeachMode() == TeachModeEnum.OFFLINE){
+            throw new BizException("加入失败:线下课不允许此操作");
+        }
         if(teacher != null && userId.equals(courseSchedule.getActualTeacherId())){
             courseScheduleStudentPaymentDao.adjustPlayMidi(Long.parseLong(roomId),null,null);
             userName = sysUser.getRealName();
@@ -1509,4 +1513,4 @@ public class RoomServiceImpl implements RoomService {
         }
         return result;
     }
-}
+}