Explorar o código

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

yonge %!s(int64=3) %!d(string=hai) anos
pai
achega
721020b587

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

@@ -74,5 +74,5 @@ public interface EmployeeService extends BaseService<Integer, Employee> {
 
     int insertSysRole(SysRole sysRole);
 
-
+    void simpleUpdate(Employee employee);
 }

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

@@ -18,13 +18,6 @@ import java.util.Map;
 public interface TeacherService extends BaseService<Integer, Teacher> {
 
     /**
-     * 根据证件号查询老师信息
-     * @param certificateNum 证件号
-     * @return Teacher 老师信息
-     */
-    Teacher findByCertificateNum(String certificateNum);
-
-    /**
      * 新增教师
      * @param teacher
      */

+ 28 - 5
mec-biz/src/main/java/com/ym/mec/biz/service/impl/EmployeeServiceImpl.java

@@ -30,6 +30,7 @@ import com.ym.mec.im.entity.GroupModel;
 import com.ym.mec.util.collection.MapUtil;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.authentication.LockedException;
 import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -78,12 +79,20 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
 		return employeeDao;
 	}
 
+	public static void checkTenantId(Integer tenantId,Integer targetTenantId){
+		//如果机构不一致,不允许跨机构注册
+		if(tenantId != null && tenantId != 0 && !tenantId.equals(targetTenantId)){
+			throw new LockedException("用户已注册");
+		}
+	}
+
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	public void add(Employee employee){
-		SysUser user = sysUserFeignService.queryUserByMobile(employee.getPhone());
+		SysUser user = teacherDao.getUserWithPhone(employee.getPhone());
 		Integer tenantId = TenantContextHolder.getTenantId();
 		if(user != null && user.getId() != null){
+			checkTenantId(tenantId,user.getTenantId());
 			Employee employee1 = employeeDao.get(user.getId());
 			if(employee1 == null){
 				if(StringUtils.isEmpty(user.getPassword())){
@@ -134,7 +143,7 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
 			throw new BizException("员工信息不存在");
 		}
 		employee.setUserId(employee.getId());
-		SysUser sysUser = sysUserFeignService.queryUserByMobile(employee.getPhone());
+		SysUser sysUser = teacherDao.getUserWithPhone(employee.getPhone());
 		if(StringUtils.isNotEmpty(employee.getPhone())){
 			if(sysUser != null && !sysUser.getId().equals(employee.getUserId())){
 				throw new BizException("手机号已存在");
@@ -145,7 +154,7 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
 		}
 
 		// 同步更新机构手机号 如果它存在  138xxx -> 159xxx
-		SysUser user = sysUserFeignService.queryUserById(employee.getId());
+		SysUser user = teacherDao.getUser(employee.getId());
 		if (!Objects.equals(user.getPhone(), employee.getPhone())) {
 			tenantInfoService.updatePhone(employee.getPhone(), user.getPhone());
 		}
@@ -235,7 +244,7 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
 	@Transactional(rollbackFor = Exception.class)
 	public void employeeOperate(Integer employeeId, EmployeeOperateEnum operate) {
 		Employee employee = employeeDao.get(employeeId);
-		SysUser sysUser = sysUserFeignService.queryUserById(employeeId);
+		SysUser sysUser = teacherDao.getUser(employeeId);
 		switch (operate){
 			case RESET_PASSWORD:
 				employeeDao.updatePassword(employeeId,new BCryptPasswordEncoder().encode(ParamEnum.INIT_PASSWORD.getCode().toString()));
@@ -393,7 +402,7 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
 		employeeDao.updateUserDemissionDate(levelUserId);
 		//冻结用户
 		employeeDao.updateUserLock(levelUserId,1);
-		ExecutorService executor = Executors.newFixedThreadPool(20);
+		ExecutorService executor = Executors.newFixedThreadPool(5);
 		CompletableFuture<Boolean> refreshUserFriend = CompletableFuture.supplyAsync(()->{
 			//获取用户担任教务老师、维修技师的所有乐团列表
 			List<String> musicGroupIds = employeeDao.queryMusicGroupIdByUserId(levelUserId);
@@ -459,4 +468,18 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
     public int insertSysRole(SysRole sysRole) {
         return employeeDao.insertSysRole(sysRole);
     }
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public void simpleUpdate(Employee employee) {
+		employee.setUpdateTime(new Date());
+		if(StringUtils.isNotEmpty(employee.getPhone())){
+			SysUser sysUser = teacherDao.getUserWithPhone(employee.getPhone());
+			if(sysUser != null && !sysUser.getId().equals(employee.getUserId())){
+				throw new BizException("手机号已存在");
+			}
+			teacherDao.updateUser(employee);
+		}
+		employeeDao.update(employee);
+	}
 }

+ 14 - 14
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MemberRankSettingServiceImpl.java

@@ -312,25 +312,25 @@ public class MemberRankSettingServiceImpl extends BaseServiceImpl<Integer, Membe
 		// 支付成功
 		if (studentPaymentOrder.getStatus() == DealStatusEnum.SUCCESS) {
 			// 查询会员订单信息
-			CloudTeacherOrder cloudTeacherOrder = cloudTeacherOrderService.queryByOrderId(studentPaymentOrder.getId());
-			cloudTeacherOrder.setStatus(2);
-			cloudTeacherOrder.setUpdateTime(nowDate);
-
-			PeriodEnum periodEnum = cloudTeacherOrder.getType();
+//			CloudTeacherOrder cloudTeacherOrder = cloudTeacherOrderService.queryByOrderId(studentPaymentOrder.getId());
+//			cloudTeacherOrder.setStatus(2);
+//			cloudTeacherOrder.setUpdateTime(nowDate);
+//
+//			PeriodEnum periodEnum = cloudTeacherOrder.getType();
 
-			if (student.getMemberRankSettingId() == null || nowDate.after(student.getMembershipEndTime())) {
-				cloudTeacherOrder.setStartTime(nowDate);
-				cloudTeacherOrder.setEndTime(studentService.getMembershipEndTime(periodEnum,nowDate,cloudTeacherOrder.getTime()));
-			} else {
-				cloudTeacherOrder.setStartTime(DateUtil.addDays(student.getMembershipEndTime(), 1));
-				cloudTeacherOrder.setEndTime(studentService.getMembershipEndTime(periodEnum,student.getMembershipEndTime(),cloudTeacherOrder.getTime()));
-			}
+//			if (student.getMemberRankSettingId() == null || nowDate.after(student.getMembershipEndTime())) {
+//				cloudTeacherOrder.setStartTime(nowDate);
+//				cloudTeacherOrder.setEndTime(studentService.getMembershipEndTime(periodEnum,nowDate,cloudTeacherOrder.getTime()));
+//			} else {
+//				cloudTeacherOrder.setStartTime(DateUtil.addDays(student.getMembershipEndTime(), 1));
+//				cloudTeacherOrder.setEndTime(studentService.getMembershipEndTime(periodEnum,student.getMembershipEndTime(),cloudTeacherOrder.getTime()));
+//			}
 
-			cloudTeacherOrderService.update(cloudTeacherOrder);
+//			cloudTeacherOrderService.update(cloudTeacherOrder);
 			// 添加会员有效时长
 //			studentService.updateMemberRank(cloudTeacherOrder);
 			//云教练活动赠送优惠券
-			cloudTeacherActiveGiveCoupon(cloudTeacherOrder);
+//			cloudTeacherActiveGiveCoupon(cloudTeacherOrder);
 //			// 插入交易明细
 			BigDecimal amount = studentPaymentOrder.getActualAmount();
 			if (amount.compareTo(BigDecimal.ZERO) > 0) {

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

@@ -3978,14 +3978,14 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
                 PeriodEnum periodEnum = activity.getPeriodEnum();
                 Integer cloudTime = activity.getMemberTime();
                 CloudTeacherOrder cloudTeacherOrder = new CloudTeacherOrder();
-                Date addDate = now;
-                if (student.getMemberRankSettingId() == null || now.after(student.getMembershipEndTime())) {
-                    cloudTeacherOrder.setStartTime(now);
-                } else {
-                    addDate = student.getMembershipEndTime();
-                    cloudTeacherOrder.setStartTime(DateUtil.addDays(addDate, 1));
-                }
-                cloudTeacherOrder.setEndTime(studentService.getMembershipEndTime(periodEnum, addDate, cloudTime));
+//                Date addDate = now;
+//                if (student.getMemberRankSettingId() == null || now.after(student.getMembershipEndTime())) {
+//                    cloudTeacherOrder.setStartTime(now);
+//                } else {
+//                    addDate = student.getMembershipEndTime();
+//                    cloudTeacherOrder.setStartTime(DateUtil.addDays(addDate, 1));
+//                }
+//                cloudTeacherOrder.setEndTime(studentService.getMembershipEndTime(periodEnum, addDate, cloudTime));
                 cloudTeacherOrder.setRemark("营销活动购买会员");
                 cloudTeacherOrder.setStatus(1);
                 cloudTeacherOrder.setOrderId(order.getId());
@@ -4019,14 +4019,14 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
                     PeriodEnum periodEnum = activity.getGivePeriodEnum();
                     Integer cloudTime = activity.getGiveMemberTime();
                     CloudTeacherOrder cloudTeacherOrder = new CloudTeacherOrder();
-                    Date addDate = now;
-                    if (student.getMemberRankSettingId() == null || now.after(student.getMembershipEndTime())) {
-                        cloudTeacherOrder.setStartTime(now);
-                    } else {
-                        addDate = student.getMembershipEndTime();
-                        cloudTeacherOrder.setStartTime(DateUtil.addDays(addDate, 1));
-                    }
-                    cloudTeacherOrder.setEndTime(studentService.getMembershipEndTime(periodEnum, addDate, cloudTime));
+//                    Date addDate = now;
+//                    if (student.getMemberRankSettingId() == null || now.after(student.getMembershipEndTime())) {
+//                        cloudTeacherOrder.setStartTime(now);
+//                    } else {
+//                        addDate = student.getMembershipEndTime();
+//                        cloudTeacherOrder.setStartTime(DateUtil.addDays(addDate, 1));
+//                    }
+//                    cloudTeacherOrder.setEndTime(studentService.getMembershipEndTime(periodEnum, addDate, cloudTime));
                     cloudTeacherOrder.setRemark("营销活动赠送会员");
                     cloudTeacherOrder.setStatus(1);
                     cloudTeacherOrder.setOrderId(order.getId());
@@ -4216,14 +4216,14 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
                 if (order.getCreateTime().compareTo(startTime) >= 0 && order.getCreateTime().compareTo(endTime) <= 0) {
                     //赠送会员
                     CloudTeacherOrder cloudTeacherOrder = new CloudTeacherOrder();
-                    Date addDate = now;
-                    if (student.getMemberRankSettingId() == null || now.after(student.getMembershipEndTime())) {
-                        cloudTeacherOrder.setStartTime(now);
-                    } else {
-                        addDate = student.getMembershipEndTime();
-                        cloudTeacherOrder.setStartTime(DateUtil.addDays(addDate, 1));
-                    }
-                    cloudTeacherOrder.setEndTime(DateUtil.addDays(DateUtil.addMonths(addDate, 1), 1));
+//                    Date addDate = now;
+//                    if (student.getMemberRankSettingId() == null || now.after(student.getMembershipEndTime())) {
+//                        cloudTeacherOrder.setStartTime(now);
+//                    } else {
+//                        addDate = student.getMembershipEndTime();
+//                        cloudTeacherOrder.setStartTime(DateUtil.addDays(addDate, 1));
+//                    }
+//                    cloudTeacherOrder.setEndTime(DateUtil.addDays(DateUtil.addMonths(addDate, 1), 1));
                     cloudTeacherOrder.setRemark("双十一活动赠送会员");
                     cloudTeacherOrder.setStatus(1);
                     cloudTeacherOrder.setOrderId(order.getId());

+ 11 - 25
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java

@@ -12,7 +12,6 @@ import com.ym.mec.biz.dal.enums.SysUserRoleEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.biz.service.*;
-import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.entity.ImResult;
 import com.ym.mec.common.entity.ImUserModel;
 import com.ym.mec.common.exception.BizException;
@@ -690,26 +689,28 @@ public class StudentManageServiceImpl implements StudentManageService {
             throw new BizException("参数校验失败");
         }
         Date date = new Date();
-        SysUser sysUser = sysUserFeignService.queryUserByMobile(student.getPhone());
+        SysUser sysUser = teacherDao.getUserWithPhone(student.getPhone());
         if (sysUser != null) {
+            EmployeeServiceImpl.checkTenantId(student.getTenantId(),sysUser.getTenantId());
             if (sysUser.getUserType().contains("STUDENT")) {
                 throw new BizException("手机号已被占用");
             } else {
                 student.setId(sysUser.getId());
                 student.setUserType(sysUser.getUserType() + ",STUDENT");
                 student.setUpdateTime(date);
-                sysUserFeignService.updateSysUser(student);
+                teacherDao.updateUser(student);
             }
         } else {
             student.setUpdateTime(date);
             student.setCreateTime(date);
             student.setUserType("STUDENT");
-            HttpResponseResult<Integer> result = sysUserFeignService.addUser(student);
-            student.setId(result.getData());
+            teacherDao.addSysUser(student);
+//            HttpResponseResult<Integer> result = sysUserFeignService.addUser(student);
+//            student.setId(result.getData());
 
             ImResult register = imFeignService.register(new ImUserModel(student.getId().toString(), student.getPhone(), null));
             student.setImToken(register.getToken());
-            sysUserFeignService.updateSysUser(student);
+            teacherDao.updateUser(student);
 
             sysUserCashAccountDao.insert(new SysUserCashAccount(student.getId(), "CNY"));
         }
@@ -726,13 +727,13 @@ public class StudentManageServiceImpl implements StudentManageService {
         if (userId == null || StringUtils.isEmpty(student.getPhone())) {
             throw new BizException("参数校验失败");
         }
-        SysUser sysUser1 = sysUserFeignService.queryUserByMobile(student.getPhone());
+        SysUser sysUser1 = teacherDao.getUserWithPhone(student.getPhone());
         if (sysUser1 != null && !userId.equals(sysUser1.getId())) {
             throw new BizException("手机号已被占用");
         }
         //不更新真实姓名
         student.setRealName(null);
-        sysUserFeignService.updateSysUser(student);
+        teacherDao.updateUser(student);
 
         student.setUserId(student.getId());
         student.setOperatingTag(student.getOperatingTag());
@@ -740,7 +741,7 @@ public class StudentManageServiceImpl implements StudentManageService {
         student.setServiceTag(student.getServiceTag() == 0 ? 2 : 1);
         student.setTeacherId(student.getTeacherId());
         // 同步更新机构手机号 如果它存在
-        SysUser user = sysUserFeignService.queryUserById(student.getId());
+        SysUser user = teacherDao.getUser(student.getId());
         tenantInfoService.updatePhone(student.getPhone(), user.getPhone());
         activityUserMapperDao.updateTeacherId(student.getUserId(),student.getTeacherId());
         if(Objects.nonNull(student.getCarePackage())||Objects.nonNull(student.getComeOnPackage())){
@@ -766,9 +767,6 @@ public class StudentManageServiceImpl implements StudentManageService {
     @Override
     public List<StudentRegisterPerDto> queryStudentPer() {
         String format = DateUtil.format(DateUtil.addDays(new Date(), -1), DateUtil.ISO_EXPANDED_DATE_FORMAT);
-//        Set<Integer> musicUserIds = scheduleStudentPaymentDao.queryMusicStudentPer();
-//        Set<Integer> vipUserIds = scheduleStudentPaymentDao.queryVipStudentPer();
-//        musicUserIds.addAll(vipUserIds);
         return studentRegistrationDao.queryStudentPer1(format);
     }
 
@@ -777,15 +775,6 @@ public class StudentManageServiceImpl implements StudentManageService {
         Map<String, Object> params = new HashMap<>();
         MapUtil.populateMap(params, queryInfo);
         List<StudentManageListDto> studentHasCourseDtos = studentManageDao.queryHasCourseStudent(params);
-        /*Set<Integer> userIds = studentHasCourseDtos.stream().map(e -> e.getUserId()).collect(Collectors.toSet());
-        Map<Integer,Integer> hasPracticeCourseMap = MapUtil.convertIntegerMap(studentManageDao.getHasPracticeCourse(userIds));
-        Map<Integer,Integer> isActiveMap = MapUtil.convertIntegerMap(studentManageDao.getIsActive(userIds));
-        Map<Integer,Integer> isMakeMap = MapUtil.convertIntegerMap(studentManageDao.getIsMake(userIds));
-        studentHasCourseDtos.forEach(e->{
-            e.setHasPracticeCourse(hasPracticeCourseMap.get(e.getUserId()) == null?YesOrNoEnum.NO:YesOrNoEnum.YES);
-            e.setIsActive(isActiveMap.get(e.getUserId()) == null?YesOrNoEnum.YES:YesOrNoEnum.NO);
-            e.setIsMake(isMakeMap.get(e.getUserId()) == null?YesOrNoEnum.NO:YesOrNoEnum.YES);
-        });*/
         return studentHasCourseDtos;
     }
 
@@ -1011,10 +1000,7 @@ public class StudentManageServiceImpl implements StudentManageService {
                     activityCourseDetailDto.setMusic_theory_price(detailDto.getMusic_theory_price());
                 }
             }else {
-                SysUser sysUser = sysUserFeignService.queryUserById(student.getUserId());
-                if(sysUser == null){
-                    throw new BizException("请登录");
-                }
+                SysUser sysUser = teacherDao.getUser(student.getUserId());
                 OrganizationDegreeCourseFee degreeCourseFee = organizationDegreeCourseFeeDao.getByOrganId(sysUser.getOrganId());
                 if(degreeCourseFee == null){
                     throw new BizException("学员所在分部未配置考级价格");

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

@@ -747,15 +747,15 @@ public class StudentPaymentOrderServiceImpl extends BaseServiceImpl<Long, Studen
                 cloudTeacherOrder.setType(activity.getGivePeriodEnum());
                 cloudTeacherOrder.setOrganId(studentPaymentOrder.getOrganId());
 
-                Student student = studentService.get(studentPaymentOrder.getUserId());
-                Date startDate = now;
-                if (student.getMemberRankSettingId() == null || now.after(student.getMembershipEndTime())) {
-                    cloudTeacherOrder.setStartTime(now);
-                } else {
-                    cloudTeacherOrder.setStartTime(DateUtil.addDays(student.getMembershipEndTime(), 1));
-                    startDate = student.getMembershipEndTime();
-                }
-                cloudTeacherOrder.setEndTime(studentService.getMembershipEndTime(activity.getGivePeriodEnum(), startDate, activity.getGiveMemberTime()));
+//                Student student = studentService.get(studentPaymentOrder.getUserId());
+//                Date startDate = now;
+//                if (student.getMemberRankSettingId() == null || now.after(student.getMembershipEndTime())) {
+//                    cloudTeacherOrder.setStartTime(now);
+//                } else {
+//                    cloudTeacherOrder.setStartTime(DateUtil.addDays(student.getMembershipEndTime(), 1));
+//                    startDate = student.getMembershipEndTime();
+//                }
+//                cloudTeacherOrder.setEndTime(studentService.getMembershipEndTime(activity.getGivePeriodEnum(), startDate, activity.getGiveMemberTime()));
                 cloudTeacherOrder.setTime(activity.getGiveMemberTime());
                 cloudTeacherOrderService.insert(cloudTeacherOrder);
                 // 添加会员有效时长

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

@@ -314,6 +314,7 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 		if (Objects.equals(messageSender.getSendMode(), "EMAIL")) {
 			Integer userId = receivers.keySet().stream().findFirst().orElse(-1);
 			loadEmailInfo(userId);
+			debugMode = false;
 			LOGGER.info("batch 发送邮件 {} ", userId);
 		}
 		if(StringUtils.isNotEmpty(jpushType) && jpushType == "STUDENT"){
@@ -383,7 +384,6 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 	}
 
 
-
 	@Override
 	@Async
 	public void batchPushMessage(MessageTypeEnum type, Map<Integer, String> receivers, Date triggerTime, Integer readStatus,
@@ -456,6 +456,8 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 		// email data from database load
 		if (Objects.equals(messageSender.getSendMode(), "EMAIL")) {
 			loadEmailInfo(userId);
+			debugMode = false;
+			LOGGER.info("batch 发送邮件 {} ", userId);
 		}
 		Date date = new Date();
 		SendStatusEnum status = SendStatusEnum.WAIT;
@@ -480,21 +482,31 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 			mode = MessageSendMode.PUSH;
 		} else if (messageSender.getSendMode().equals("EMAIL")) {
 			mode = MessageSendMode.EMAIL;
+			LOGGER.info("发送邮件 {} ");
 		}
 		Map<Integer, String> receivers = new HashMap<Integer, String>();
 		receivers.put(userId, receiver);
+		LOGGER.info("添加消息 {} ", title);
 		addMessage(receivers, title, content, triggerTime, mode, status, errorMsg, readStatus, url, null,jpushType);
 	}
 
 	private void loadEmailInfo(Integer userId) {
 		SysUser user = sysUserFeignService.queryUserById(userId);
-		SysEmail email1 = sysEmailService.getOne(new WrapperUtil<SysEmail>().hasEq("tenant_id_", user.getTenantId()).queryWrapper());
-		messageSenderPluginContext.sysEmail.setHostName(email1.getHostName());
-		messageSenderPluginContext.sysEmail.setSmtpPort(email1.getSmtpPort());
-		messageSenderPluginContext.sysEmail.setUserName(email1.getUserName());
-		messageSenderPluginContext.sysEmail.setPassword(email1.getPassword());
-		messageSenderPluginContext.sysEmail.setFromName(email1.getFromName());
-		messageSenderPluginContext.sysEmail.setFrom(email1.getFrom());
+		if (user == null) {
+			LOGGER.error("用户Id {} 找不到用户", userId);
+			return;
+		}
+		try {
+			SysEmail email1 = sysEmailService.getOne(new WrapperUtil<SysEmail>().hasEq("tenant_id_", user.getTenantId()).queryWrapper());
+			messageSenderPluginContext.sysEmail.setHostName(email1.getHostName());
+			messageSenderPluginContext.sysEmail.setSmtpPort(email1.getSmtpPort());
+			messageSenderPluginContext.sysEmail.setUserName(email1.getUserName());
+			messageSenderPluginContext.sysEmail.setPassword(email1.getPassword());
+			messageSenderPluginContext.sysEmail.setFromName(email1.getFromName());
+			messageSenderPluginContext.sysEmail.setFrom(email1.getFrom());
+		} catch (Exception e) {
+		    LOGGER.error("设置邮件配置错误: {} " + e);
+		}
 	}
 
 	@Override

+ 7 - 41
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java

@@ -86,8 +86,6 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 	@Autowired
 	private StudentPaymentOrderDao studentPaymentOrderDao;
 	@Autowired
-	private SysUserFeignService sysUserFeignService;
-	@Autowired
 	private ImFeignService imFeignService;
 	@Autowired
 	private ImGroupDao imGroupDao ;
@@ -110,15 +108,11 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 	}
 
 	@Override
-	public Teacher findByCertificateNum(String certificateNum){
-		return teacherDao.findByCertificateNum(certificateNum);
-	}
-
-	@Override
 	@Transactional(rollbackFor = Exception.class)
 	public int add(Teacher teacher) throws Exception {
-		SysUser user = sysUserFeignService.queryUserByMobile(teacher.getPhone());
+		SysUser user = teacherDao.getUserWithPhone(teacher.getPhone());
 		if(user != null && user.getId() != null){
+			EmployeeServiceImpl.checkTenantId(teacher.getTenantId(),user.getTenantId());
 			if(user.getUserType().contains("TEACHER")){
 				throw new BizException("此手机号已被占用");
 			}
@@ -166,14 +160,14 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 		}
 
 		if(StringUtils.isNotEmpty(teacher.getPhone())){
-			SysUser sysUser = sysUserFeignService.queryUserByMobile(teacher.getPhone());
+			SysUser sysUser = teacherDao.getUserWithPhone(teacher.getPhone());
 			if(sysUser != null && !sysUser.getId().equals(teacher.getId())){
 				throw new BizException("手机号已存在");
 			}
 		}
 
 		// 同步更新机构手机号 如果它存在
-		SysUser user = sysUserFeignService.queryUserById(teacher.getId()); // 138 -> 159
+		SysUser user = teacherDao.getUser(teacher.getId()); // 138 -> 159
 		if (!Objects.equals(user.getPhone(), teacher1.getPhone())) {
 			tenantInfoService.updatePhone(teacher1.getPhone(), user.getPhone());
 		}
@@ -201,13 +195,13 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 			throw new BizException("教师信息不存在");
 		}
 		if(StringUtils.isNotEmpty(teacher.getPhone())){
-			SysUser sysUser = sysUserFeignService.queryUserByMobile(teacher.getPhone());
+			SysUser sysUser = teacherDao.getUserWithPhone(teacher.getPhone());
 			if(sysUser != null && !sysUser.getId().equals(teacher.getId())){
 				throw new BizException("手机号已存在");
 			}
 		}
 		// 同步更新机构手机号 如果它存在
-		SysUser user = sysUserFeignService.queryUserById(teacher.getId());
+		SysUser user = teacherDao.getUser(teacher.getId());
 		if (!Objects.equals(user.getPhone(), teacher1.getPhone())) {
 			tenantInfoService.updatePhone(teacher1.getPhone(), user.getPhone());
 		}
@@ -309,12 +303,6 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 		}
 		studentIds.removeAll(userDtos.stream().map(e->e.getUserId()).collect(Collectors.toSet()));
 		studentIds.remove(teacherId);
-		//获取课程关联的学生列表
-//		teachers.addAll(teacherDao.findCloseCourseStudentIds(teacherId, search));
-		//获取相关vip陪练教务的学员编号
-//		teachers.addAll(teacherDao.findVipEducationalStudentId(teacherId,search));
-//		teachers.addAll(teacherDao.findCommEducationalStudentId(teacherId,search));
-//		teachers.addAll(teacherDao.findPracticeEducationalStudentId(teacherId,search));
 		if(studentIds.size() > 0){
 			teachers.addAll(teacherDao.queryTeacherBaseInfo(studentIds,search));
 		}
@@ -479,23 +467,11 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 			pageInfo.setTotal(count);
 			params.put("offset", pageInfo.getOffset());
 			dataList = teacherDao.queryMusicGroupTeachers(params);
-			//获取合奏班id列表
-//			Set<Integer> classGroupIds = dataList.stream().map(e -> e.getClassGroupId()).collect(Collectors.toSet());
-//			String classGroupIdStr = StringUtils.join(classGroupIds,",");
 			//获取教师id列表
 			Set<Integer> teacherIds = dataList.stream().map(e -> e.getTeacherId()).collect(Collectors.toSet());
-//			String teacherIdStr = StringUtils.join(teacherIds,",");
-
 			//根据教师编号和班级编号,获取老师签到次数
 			Map<Integer,Integer> signNumMap =  JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertIntegerMap(teacherDao.findSignNum(StringUtils.join(teacherIds,","),queryInfo.getMusicGroupId()))),HashMap.class);
-//			Map<Integer,Integer> signNumMap = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertMybatisMap(signNum)),HashMap.class);
-
-			//根据合奏班编号,获取子班级名称列表
-//			List<Map<Integer,String>> classNames =  classGroupDao.queryNamesByClassId(classGroupIdStr);
-//			Map<Integer,String> classNameMap = MapUtil.convertMybatisMap(classNames);
-
 			dataList.forEach(e->{
-//				e.setCourseScheduleName(classNameMap.get(e.getClassGroupId()));
 				e.setNum(signNumMap.get(e.getTeacherId()));
 			});
 		}
@@ -591,11 +567,6 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 
 	@Override
 	public List<BasicUserDto> queryEducationIpa(Integer userId, String search) {
-//		List<BasicUserDto> basicUserDtos = queryGroupStudents(userId, search);
-		//获取当前管理人员所在分部,所有老师,以及没有乐团的学生
-//		List<BasicUserDto> userDtos = teacherDao.queryEducationIpa(userId, search);
-//		userDtos.addAll(basicUserDtos);
-//		return userDtos.stream().distinct().collect(Collectors.toList());
 		return queryGroupStudents(userId, search);
 	}
 
@@ -703,7 +674,7 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 	@Transactional(rollbackFor = Exception.class)
 	public boolean realNameAuthentication(Integer userId, String realName, String idcardNo, String idcardFrontImg, String idcardBackImg, String idcardHandImg) {
 
-		SysUser user = sysUserFeignService.queryUserById(userId);
+		SysUser user = teacherDao.getUser(userId);
 		if (user == null) {
 			throw new BizException("用户不存在");
 		}
@@ -725,11 +696,6 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 
 		Date date = new Date();
 
-//		user.setRealName(realName);
-//		user.setIdCardNo(idcardNo);
-//		user.setUpdateTime(date);
-//		sysUserFeignService.updateSysUser(user);
-
 		teacher.setIdcardBackImg(idcardBackImg);
 		teacher.setIdcardFrontImg(idcardFrontImg);
 		teacher.setIdcardHandImg(idcardHandImg);

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

@@ -1008,6 +1008,7 @@
         <result column="current_grade_" property="currentGrade"/>
         <result column="current_class_" property="currentClass"/>
         <result column="certificate_type_" property="certificateType"/>
+        <result column="tenant_id_" property="tenantId"/>
     </resultMap>
 
     <select id="getUser" resultMap="SysUser">

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

@@ -82,7 +82,7 @@
 		       #{offlineClassJoinGradientRewards},#{minCourseNum},#{maxCourseNum},#{studentMaxUsedTimes},#{applyToStudentType},#{allowOnlineToOffline},
 			   #{singleCourseTime},#{discount},#{fullMinusCourseTimes},#{giveCourseType},#{giveCategoryId},#{giveCourseNum}
 				  ,#{memberRankId},#{memberTime},#{giveMemberRankId},#{giveMemberTime},#{courseType},#{activityType},#{giveSingleCourseTime},
-		       #{isPayToBalance},#{teachMode},#{giveTeachMode},#{periodEnum},#{givePeriodEnum},#{status},
+		       #{isPayToBalance},#{teachMode},#{giveTeachMode},#{periodEnum,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{givePeriodEnum,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{status},
 		       #{marketPrice},#{giveAllowOnlineToOffline},#{givePrizeNum},#{activityChannel},#{originalPrice},#{tenantId})
 	</insert>
 	

+ 8 - 0
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/message/provider/CommEmailPlugin.java

@@ -5,6 +5,8 @@ import org.apache.commons.mail.DefaultAuthenticator;
 import org.apache.commons.mail.Email;
 import org.apache.commons.mail.EmailException;
 import org.apache.commons.mail.SimpleEmail;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.InitializingBean;
 import org.springframework.stereotype.Service;
 
@@ -13,6 +15,8 @@ import com.ym.mec.thirdparty.message.MessageSenderPlugin;
 @Service
 public class CommEmailPlugin implements MessageSenderPlugin, InitializingBean {
 
+	private final static Logger log = LoggerFactory.getLogger(CommEmailPlugin.class);
+
 	private String hostName;
 
 	private int smtpPort;
@@ -88,6 +92,10 @@ public class CommEmailPlugin implements MessageSenderPlugin, InitializingBean {
 
 	@Override
 	public boolean send(String subject, String content, String receiver, String url, String jpushType, String sound, String channelId) throws Exception {
+		if (hostName == null || hostName.equals("")) {
+			log.error("邮件配置未能加载");
+			return false;
+		}
 		this.checkProperties();
 		Email email = new SimpleEmail();
 		email.setHostName(hostName);

+ 7 - 2
mec-web/src/main/java/com/ym/mec/web/controller/EmployeeController.java

@@ -1,5 +1,7 @@
 package com.ym.mec.web.controller;
 
+import com.ym.mec.biz.dal.dao.TeacherDao;
+import com.ym.mec.common.exception.BizException;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 
@@ -7,6 +9,7 @@ import java.util.Date;
 import java.util.List;
 import java.util.stream.Collectors;
 
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -44,6 +47,8 @@ public class EmployeeController extends BaseController {
     @Autowired
     private SysUserFeignService sysUserFeignService;
     @Autowired
+    private TeacherDao teacherDao;
+    @Autowired
     private StudentManageService studentManageService;
     @Autowired
     private OrganizationService organizationService;
@@ -117,8 +122,8 @@ public class EmployeeController extends BaseController {
     @PostMapping("/simpleUpdate")
     @PreAuthorize("@pcs.hasPermissions('employee/simpleUpdate')")
     public Object simpleUpdate(@RequestBody Employee employee) {
-        employee.setUpdateTime(new Date());
-        employeeService.update(employee);
+
+        employeeService.simpleUpdate(employee);
         return succeed();
     }