فهرست منبع

Merge remote-tracking branch 'origin/saas' into saas

zouxuan 3 سال پیش
والد
کامیت
6f7371b61e

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

@@ -22,7 +22,7 @@ public interface IndexBaseMonthDataDao extends BaseDAO<Long, IndexBaseMonthData>
                                 @Param("dataType")IndexDataType dataType);
 
     int deleteWithMonthAndType(@Param("months") Collection months,
-                               @Param("dataType")IndexDataType dataType);
+                               @Param("dataType")IndexDataType dataType,@Param("tenantId") Integer tenantId);
 
     IndexBaseMonthData getOrganDataWithDayAndDataType(@Param("organId") Integer organId,
                                                       @Param("day") String day,

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

@@ -12,7 +12,7 @@ public interface QuestionnaireQuestionItemDao extends BaseDAO<Long, Questionnair
 
     void batchInsert(@Param("questionItemList") List<QuestionnaireQuestionItem> questionItemList,
                      @Param("questionId") Long questionId,
-                     @Param("topicId") Integer topicId);
+                     @Param("topicId") Integer topicId, @Param("tenantId") Integer tenantId);
 
     void batchDelByQuestionIdList(@Param("questionIdList") List<Long> delQuestionnaireQuestionIdList);
 

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

@@ -90,7 +90,7 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
 	@Transactional(rollbackFor = Exception.class)
 	public void add(Employee employee){
 		SysUser user = teacherDao.getUserWithPhone(employee.getPhone());
-		Integer tenantId = TenantContextHolder.getTenantId();
+		Integer tenantId = employee.getTenantId();
 		if(user != null && user.getId() != null){
 			checkTenantId(tenantId,user.getTenantId());
 			Employee employee1 = employeeDao.get(user.getId());

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

@@ -608,7 +608,7 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 			dataList.add(new IndexBaseMonthData(date, organId, tenantId));
 		}
 		if(!IndexDataType.NEWLY_STUDENT_NUM.equals(indexDataType)&&!IndexDataType.QUIT_MUSIC_GROUP_STUDENT_NUM.equals(indexDataType)){
-			indexBaseMonthDataDao.deleteWithMonthAndType(Arrays.asList(dayStr), indexDataType);
+			indexBaseMonthDataDao.deleteWithMonthAndType(Arrays.asList(dayStr), indexDataType, tenantId);
 		}
 		if(!CollectionUtils.isEmpty(dataList)){
 			indexBaseMonthDataDao.batchInsertWithDataType(dataList, indexDataType);

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

@@ -55,7 +55,7 @@ public class QuestionnaireTopicServiceImpl extends BaseServiceImpl<Integer, Ques
 				Long questionId = questionnaireQuestion.getId();
 				List<QuestionnaireQuestionItem> questionItemList = questionnaireQuestion.getQuestionnaireQuestionItemList();
 				if(questionItemList != null && questionItemList.size() > 0){
-					questionnaireQuestionItemDao.batchInsert(questionItemList,questionId,topicId);
+					questionnaireQuestionItemDao.batchInsert(questionItemList,questionId,topicId, questionnaireTopic.getTenantId());
 				}
 			}
 		}
@@ -101,7 +101,7 @@ public class QuestionnaireTopicServiceImpl extends BaseServiceImpl<Integer, Ques
 						//获取删除的答案
 						List<QuestionnaireQuestionItem> insertItemList = questionItemList.stream().filter(e -> e.getId() == null).collect(Collectors.toList());
 						if(insertItemList != null && insertItemList.size() > 0){
-							questionnaireQuestionItemDao.batchInsert(insertItemList,questionId,topicId);
+							questionnaireQuestionItemDao.batchInsert(insertItemList,questionId,topicId,questionnaireTopic.getTenantId());
 						}
 					}
 				}
@@ -115,7 +115,7 @@ public class QuestionnaireTopicServiceImpl extends BaseServiceImpl<Integer, Ques
 					Long questionId = question.getId();
 					List<QuestionnaireQuestionItem> questionItemList = question.getQuestionnaireQuestionItemList();
 					if(questionItemList != null && questionItemList.size() > 0){
-						questionnaireQuestionItemDao.batchInsert(questionItemList,questionId,topicId);
+						questionnaireQuestionItemDao.batchInsert(questionItemList,questionId,topicId,questionnaireTopic.getTenantId());
 					}
 				}
 			}

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

@@ -303,6 +303,7 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 	@Async
 	public void batchSendMessage(MessageSender messageSender, MessageTypeEnum type, Map<Integer, String> receivers, Date triggerTime, Integer readStatus,
 			String url,String jpushType, Object... args) {
+		LOGGER.info("batchSendMessage {}, type {}, receivers {} ", messageSender, type, receivers);
 		if (receivers == null || receivers.size() == 0) {
 			LOGGER.error("接收地址不能为空");
 			return;
@@ -312,10 +313,9 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 
 		// email data from database load, 使用接收者 tenantId, 假设发送者和接收者为同一机构
 		if (Objects.equals(messageSender.getSendMode(), "EMAIL")) {
-			Integer userId = receivers.keySet().stream().findFirst().orElse(-1);
-			loadEmailInfo(userId);
+			LOGGER.info("batch 发送邮件 {} ", simpleUserDto.getTenantId());
+			loadEmailInfo(simpleUserDto.getTenantId());
 			debugMode = false;
-			LOGGER.info("batch 发送邮件 {} ", userId);
 		}
 		if(StringUtils.isNotEmpty(jpushType) && jpushType == "STUDENT"){
 			//如果不是缴费信息
@@ -450,6 +450,7 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 	@Override
 	@Async
 	public void sendMessage(MessageSender messageSender, Integer userId, String title, String content, String receiver, Date triggerTime, Integer readStatus, String url, String group,String jpushType) {
+		LOGGER.info("batchSendMessage {}, userId {}, receivers {} ", messageSender, userId, receiver);
 		if (StringUtils.isBlank(receiver)) {
 			throw new BizException("接收地址不能为空");
 		}
@@ -490,14 +491,13 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 		addMessage(receivers, title, content, triggerTime, mode, status, errorMsg, readStatus, url, null,jpushType);
 	}
 
-	private void loadEmailInfo(Integer userId) {
-		SysUser user = sysUserFeignService.queryUserById(userId);
-		if (user == null) {
-			LOGGER.error("用户Id {} 找不到用户", userId);
-			return;
-		}
+	private void loadEmailInfo(Integer tenantId) {
 		try {
-			SysEmail email1 = sysEmailService.getOne(new WrapperUtil<SysEmail>().hasEq("tenant_id_", user.getTenantId()).queryWrapper());
+			SysEmail email1 = sysEmailService.getOne(new WrapperUtil<SysEmail>().hasEq("tenant_id_", tenantId).queryWrapper());
+			if (email1 == null) {
+				LOGGER.error("未找到邮件配置 tenantId" + tenantId);
+				throw new RuntimeException("未找到邮件配置 tenantId" + tenantId);
+			}
 			messageSenderPluginContext.sysEmail.setHostName(email1.getHostName());
 			messageSenderPluginContext.sysEmail.setSmtpPort(email1.getSmtpPort());
 			messageSenderPluginContext.sysEmail.setUserName(email1.getUserName());

+ 11 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantInfoServiceImpl.java

@@ -639,13 +639,22 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
                 .map(TenantInfoDto::getPhone)
                 .map(sysUserFeignService::queryUserByMobile)
                 .orElse(null);
+        TenantInfo phone = this.getOne(new WrapperUtil<TenantInfo>().queryWrapper()
+                .eq("phone_", dto.getPhone()));
+        if (Objects.nonNull(phone)) {
+            throwPhoneBizEx(bucket);
+        }
         if (Objects.nonNull(sysUser)) {
-            bucket.delete();
-            throw new BizException("该手机号已被注册!");
+            throwPhoneBizEx(bucket);
         }
         return bucket;
     }
 
+    private void throwPhoneBizEx(RBucket<Object> bucket) {
+        bucket.delete();
+        throw new BizException("该手机号已被注册!");
+    }
+
     /**
      * set机构Id 并执行一个操作
      *

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

@@ -105,7 +105,7 @@
 
 	<delete id="deleteWithMonthAndType">
 		DELETE FROM index_base_month_data
-		WHERE DATE_FORMAT(month_, '%Y-%m-%d') IN
+		WHERE tenant_id_ = #{tenantId} and DATE_FORMAT(month_, '%Y-%m-%d') IN
 		<foreach collection="months" item="month" open="(" close=")" separator=",">
 			#{month}
 		</foreach>