异步去更新线索状态

master
wujingtao 2 years ago
parent 2e82d8f104
commit 1bee99b8ed

@ -6,6 +6,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.annotation.EnableScheduling;
/**
@ -14,6 +15,7 @@ import org.springframework.scheduling.annotation.EnableScheduling;
* @author q
* @date 2021/11/11
*/
@EnableAsync
@EnableScheduling
@EnableSwagger2Doc
@EnableJpaAuditing

@ -1,19 +1,14 @@
package com.baiye.modules.telemarkting.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.text.CharSequenceUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.RandomUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import com.baiye.constant.DefaultNumberConstants;
import com.baiye.exception.BadRequestException;
import com.baiye.feign.SourceClueClient;
import com.baiye.http.CommonResponse;
import com.baiye.model.dto.SendWebSocketDTO;
import com.baiye.model.enums.CallStatusEnum;
import com.baiye.modules.system.domain.Clue;
import com.baiye.modules.telemarkting.dao.AllCallInfoRepository;
@ -24,23 +19,18 @@ import com.baiye.modules.telemarkting.entity.CallClueInfo;
import com.baiye.modules.telemarkting.entity.ClueMiddle;
import com.baiye.modules.telemarkting.entity.ExtensionNumber;
import com.baiye.modules.telemarkting.entity.dto.*;
import com.baiye.modules.telemarkting.entity.vo.CallRecordsVO;
import com.baiye.modules.telemarkting.httpRequest.AxbRequest;
import com.baiye.modules.telemarkting.httpRequest.DoubleCallReq;
import com.baiye.modules.telemarkting.httpRequest.RollCallReq;
import com.baiye.modules.telemarkting.service.TelephoneCallService;
import com.baiye.socket.WebSocketServer;
import com.baiye.util.SecurityUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.Objects;
import java.util.concurrent.CompletableFuture;
/**
* @author wjt
@ -131,10 +121,14 @@ public class TelephoneCallServiceImpl implements TelephoneCallService {
callClueRepository.updateByStatus(status, userDate);
allCallInfoRepository.updateByStatus(status, sessionId);
//更新资源通话状态
updateSourceCallStatus(userDate, DefaultNumberConstants.TWO_NUMBER);
CompletableFuture.runAsync(() -> {
updateSourceCallStatus(userDate, DefaultNumberConstants.TWO_NUMBER);
});
} else {
//更新资源通话状态
updateSourceCallStatus(userDate,DefaultNumberConstants.ONE_NUMBER);
CompletableFuture.runAsync(() -> {
updateSourceCallStatus(userDate, DefaultNumberConstants.ONE_NUMBER);
});
}
}
@ -268,12 +262,15 @@ public class TelephoneCallServiceImpl implements TelephoneCallService {
allCallInfo.setStatus(DefaultNumberConstants.TWO_NUMBER);
allCallInfo.setDuration(Integer.valueOf(rollCallBackDTO.getDuration()));
//更新资源通话状态
updateSourceCallStatus(allCallInfo.getClueId(), DefaultNumberConstants.TWO_NUMBER);
}else {
CompletableFuture.runAsync(() -> {
updateSourceCallStatus(allCallInfo.getClueId(), DefaultNumberConstants.TWO_NUMBER);
});
} else {
//更新资源通话状态
updateSourceCallStatus(allCallInfo.getClueId(), DefaultNumberConstants.ONE_NUMBER);
CompletableFuture.runAsync(() -> {
updateSourceCallStatus(allCallInfo.getClueId(), DefaultNumberConstants.ONE_NUMBER);
});
}
}
allCallInfoRepository.save(allCallInfo);
}
@ -283,7 +280,7 @@ public class TelephoneCallServiceImpl implements TelephoneCallService {
*
*
* @param clueId ID
* @param status 1 2
* @param status 1 2
*/
private void updateSourceCallStatus(Long clueId, Integer status) {
ClueMiddle clueMiddle = new ClueMiddle();

Loading…
Cancel
Save