|
@@ -1,5 +1,6 @@
|
|
|
package com.ruoyi.system.service.impl;
|
|
|
|
|
|
+import com.alibaba.fastjson2.JSON;
|
|
|
import com.ruoyi.common.config.AppCfg;
|
|
|
import com.ruoyi.common.core.domain.model.LoginUser;
|
|
|
import com.ruoyi.common.core.domain.model.WeChatUser;
|
|
@@ -9,7 +10,6 @@ import com.ruoyi.common.enums.SysYesNo;
|
|
|
import com.ruoyi.common.exception.ServiceException;
|
|
|
import com.ruoyi.common.utils.DateUtils;
|
|
|
import com.ruoyi.common.utils.SecurityUtils;
|
|
|
-import com.ruoyi.common.utils.StreamUtils;
|
|
|
import com.ruoyi.common.utils.StringUtils;
|
|
|
import com.ruoyi.common.utils.bean.BeanValidators;
|
|
|
import com.ruoyi.system.domain.CpsContentInfo;
|
|
@@ -21,7 +21,6 @@ import com.ruoyi.system.mapper.CpsMeetingEnterpriseTripInfoMapper;
|
|
|
import com.ruoyi.system.mapper.CpsMeetingUsrMapper;
|
|
|
import com.ruoyi.system.mapper.CpsUsrApplyMapper;
|
|
|
import com.ruoyi.system.service.ICpsMeetingUsrService;
|
|
|
-import io.foldright.cffu.CompletableFutureUtils;
|
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
|
import org.slf4j.Logger;
|
|
@@ -30,11 +29,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.validation.Validator;
|
|
|
-import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.concurrent.CompletableFuture;
|
|
|
-import java.util.concurrent.ExecutionException;
|
|
|
import java.util.concurrent.ScheduledExecutorService;
|
|
|
|
|
|
/**
|
|
@@ -182,53 +177,33 @@ public class CpsMeetingUsrServiceImpl implements ICpsMeetingUsrService {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void usrMeetingRegister(CpsUsrApply user) throws ExecutionException, InterruptedException {
|
|
|
- CompletableFuture<List<List<CpsUsrApply>>> registersFetures = CompletableFutureUtils.allResultsOf(CompletableFuture.supplyAsync(() -> cpsUsrApplyMapper.selectCpsUsrApplyList(new CpsUsrApply() {{
|
|
|
+ public void usrMeetingRegister(CpsUsrApply user) {
|
|
|
+ List<CpsUsrApply> cpsUsrApplies = cpsUsrApplyMapper.selectCpsUsrApplyList(new CpsUsrApply() {{
|
|
|
setTel(user.getTel());
|
|
|
setApplyType(MeetingType.MEETING.getCode());
|
|
|
setReviewState(ReviewStatus.PASS.getCode());
|
|
|
- }}), executor), CompletableFuture.supplyAsync(() -> cpsUsrApplyMapper.selectCpsUsrApplyList(new CpsUsrApply() {{
|
|
|
- setTel(user.getTel());
|
|
|
- setApplyType(MeetingType.CONFERENCE.getCode());
|
|
|
- setReviewState(ReviewStatus.PASS.getCode());
|
|
|
- }}), executor));
|
|
|
-
|
|
|
- List<List<CpsUsrApply>> registers = registersFetures.get();
|
|
|
- List<CpsUsrApply> allRegisters = new ArrayList<>();
|
|
|
- for (List<CpsUsrApply> register : registers) {
|
|
|
- if (CollectionUtils.isNotEmpty(register)) {
|
|
|
- allRegisters.addAll(register);
|
|
|
- }
|
|
|
- }
|
|
|
- Map<String, List<CpsUsrApply>> stringListMap = StreamUtils.groupByKey(allRegisters, CpsUsrApply::getApplyType);
|
|
|
- if (CollectionUtils.isNotEmpty(stringListMap.get(MeetingType.MEETING.getCode()))) {
|
|
|
+ }});
|
|
|
+ if (CollectionUtils.isNotEmpty(cpsUsrApplies)) {
|
|
|
throw new ServiceException("该手机号已经报名,请勿反复报名");
|
|
|
}
|
|
|
- if (MeetingType.CONFERENCE.getCode().equals(user.getApplyType()) && CollectionUtils.isNotEmpty(stringListMap.get(MeetingType.CONFERENCE.getCode()))) {
|
|
|
- throw new ServiceException("该手机号已经参与会场调研,请勿反复报名");
|
|
|
- }
|
|
|
LoginUser loginUser = SecurityUtils.getLoginUser();
|
|
|
user.setUpdateBy(loginUser.getUsername());
|
|
|
user.setReviewState(ReviewStatus.WAIT.getCode());
|
|
|
user.setUsrWechatId(loginUser.getUserId());
|
|
|
+ user.setApplyType(MeetingType.MEETING.getCode());
|
|
|
+ user.setDeptId(appCfg.getRoleTopDeptId());
|
|
|
if (SysYesNo.YES.getCode().equals(user.getConferenceFlag())) {
|
|
|
CpsContentInfo cpsContentInfo = contentInfoMapper.selectCpsContentInfoById(user.getContentId());
|
|
|
user.setContentTitle(cpsContentInfo.getTitle());
|
|
|
- user.setApplyType(MeetingType.CONFERENCE.getCode());
|
|
|
- user.setConferenceFlag(SysYesNo.NO.getCode());
|
|
|
- user.setDeptId(cpsContentInfo.getDeptId());
|
|
|
- cpsUsrApplyMapper.insertCpsUsrApplyOrUpdate(user);
|
|
|
- user.setConferenceFlag(SysYesNo.YES.getCode());
|
|
|
- user.setApplyType(MeetingType.MEETING.getCode());
|
|
|
- user.setConferenceRel(user.getId());
|
|
|
- user.setDeptId(appCfg.getRoleTopDeptId());
|
|
|
- cpsUsrApplyMapper.insertCpsUsrApplyOrUpdate(user);
|
|
|
- return;
|
|
|
}
|
|
|
- user.setApplyType(MeetingType.MEETING.getCode());
|
|
|
+ if (SysYesNo.YES.getCode().equals(user.getThemeFlag())) {
|
|
|
+ CpsContentInfo cpsContentInfo = contentInfoMapper.selectCpsContentInfoById(user.getThemeId());
|
|
|
+ user.setThemeTitle(cpsContentInfo.getTitle());
|
|
|
+ }
|
|
|
+ user.setFollowsJson(JSON.toJSONString(user.getFollows()));
|
|
|
user.setConferenceRel(null);
|
|
|
user.setReviewMsg("");
|
|
|
- user.setDeptId(appCfg.getRoleTopDeptId());
|
|
|
+
|
|
|
cpsUsrApplyMapper.insertCpsUsrApplyOrUpdate(user);
|
|
|
}
|
|
|
|
|
@@ -266,7 +241,7 @@ public class CpsMeetingUsrServiceImpl implements ICpsMeetingUsrService {
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
failureNum++;
|
|
|
- log.info("导入用户失败:%s", e.getMessage());
|
|
|
+ log.info("导入用户失败:%s" , e.getMessage());
|
|
|
failureMsg.append(e.getMessage());
|
|
|
}
|
|
|
}
|