|
@@ -1,15 +1,18 @@
|
|
|
package com.cyksj.service.corp.impl;
|
|
package com.cyksj.service.corp.impl;
|
|
|
|
|
|
|
|
|
|
+import cn.hutool.core.collection.CollUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.cyksj.common.constant.Constant;
|
|
import com.cyksj.common.constant.Constant;
|
|
|
import com.cyksj.common.exception.BusinessRuntimeException;
|
|
import com.cyksj.common.exception.BusinessRuntimeException;
|
|
|
import com.cyksj.common.util.Jsons;
|
|
import com.cyksj.common.util.Jsons;
|
|
|
|
|
+import com.cyksj.mapper.SysCorpFollowRelateMapper;
|
|
|
import com.cyksj.mapper.corp.CorpCustomerAcquisitionLinkMapper;
|
|
import com.cyksj.mapper.corp.CorpCustomerAcquisitionLinkMapper;
|
|
|
import com.cyksj.mapper.corp.CorpCustomerAcquisitionLinkPopularizeMapper;
|
|
import com.cyksj.mapper.corp.CorpCustomerAcquisitionLinkPopularizeMapper;
|
|
|
import com.cyksj.model.entity.CorpCustomerAcquisitionLink;
|
|
import com.cyksj.model.entity.CorpCustomerAcquisitionLink;
|
|
|
import com.cyksj.model.entity.CorpCustomerAcquisitionLinkPopularize;
|
|
import com.cyksj.model.entity.CorpCustomerAcquisitionLinkPopularize;
|
|
|
|
|
+import com.cyksj.model.entity.SysCorpFollowRelate;
|
|
|
import com.cyksj.model.request.corp.link.Range;
|
|
import com.cyksj.model.request.corp.link.Range;
|
|
|
import com.cyksj.model.request.corp.link.WxCpLinkAdd;
|
|
import com.cyksj.model.request.corp.link.WxCpLinkAdd;
|
|
|
import com.cyksj.model.request.corp.link.WxCpLinkAddResp;
|
|
import com.cyksj.model.request.corp.link.WxCpLinkAddResp;
|
|
@@ -26,6 +29,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
import java.util.Optional;
|
|
import java.util.Optional;
|
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* @author chan
|
|
* @author chan
|
|
@@ -42,6 +46,8 @@ public class CorpCustomerAcquisitionLinkServiceImpl extends ServiceImpl<CorpCust
|
|
|
|
|
|
|
|
private final SysCorpServiceRelateService sysCorpServiceRelateService;
|
|
private final SysCorpServiceRelateService sysCorpServiceRelateService;
|
|
|
|
|
|
|
|
|
|
+ private final SysCorpFollowRelateMapper sysCorpFollowRelateMapper;
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
@Transactional(rollbackFor = Throwable.class)
|
|
@Transactional(rollbackFor = Throwable.class)
|
|
|
public void add(CorpCustomerAcquisitionLink corpCustomerAcquisitionLink) throws Exception {
|
|
public void add(CorpCustomerAcquisitionLink corpCustomerAcquisitionLink) throws Exception {
|
|
@@ -126,4 +132,18 @@ public class CorpCustomerAcquisitionLinkServiceImpl extends ServiceImpl<CorpCust
|
|
|
//立即执行客服值班定时任务
|
|
//立即执行客服值班定时任务
|
|
|
XxlJobUtil.executeMarkDynamicRuleTagJob(XxlJobInfo.getExecuteTaskInstance(Constant.CORP_LINK_JOB_ID, StrUtil.EMPTY).toString());
|
|
XxlJobUtil.executeMarkDynamicRuleTagJob(XxlJobInfo.getExecuteTaskInstance(Constant.CORP_LINK_JOB_ID, StrUtil.EMPTY).toString());
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public void syncDutyLinkUrl() {
|
|
|
|
|
+ //获取目前可用值班客服
|
|
|
|
|
+ List<SysCorpFollowRelate> sysCorpFollowRelates = sysCorpFollowRelateMapper.selectList(Wrappers.lambdaQuery(SysCorpFollowRelate.class)
|
|
|
|
|
+ .eq(SysCorpFollowRelate::getStatus, 1)
|
|
|
|
|
+ .eq(SysCorpFollowRelate::getDeleted, 1));
|
|
|
|
|
+ List<String> userIds = sysCorpFollowRelates.stream().map((e) -> e.getId().toString()).collect(Collectors.toList());
|
|
|
|
|
+ if (CollUtil.isNotEmpty(userIds)) {
|
|
|
|
|
+ this.update(Wrappers.lambdaUpdate(CorpCustomerAcquisitionLink.class)
|
|
|
|
|
+ .eq(CorpCustomerAcquisitionLink::getUserList, userIds)
|
|
|
|
|
+ .eq(CorpCustomerAcquisitionLink::getIsDuty, 1));
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|