Commit e5991be9 authored by Tu Bach's avatar Tu Bach

tubn campaign execute

parent 316ef4e4
......@@ -24,7 +24,7 @@ public interface CampaignExecuteService {
List<ContactCustResultDTO> getContactCustById(CampaignRequestDTO dto);
//</editor-fold>
ResultDTO searchCampaignExecute(CampaignRequestDTO requestDto);
ResultDTO searchCampaignExecute(CampaignRequestDTO requestDto, String xAuthToken);
ResultDTO getExecuteCampaign(CampaignRequestDTO requestDto);
......
......@@ -10,9 +10,11 @@ import com.viettel.campaign.repository.ccms_full.*;
import com.viettel.campaign.service.CampaignExecuteService;
import com.viettel.campaign.utils.BundleUtils;
import com.viettel.campaign.utils.Constants;
import com.viettel.campaign.utils.RedisUtil;
import com.viettel.campaign.utils.SQLBuilder;
import com.viettel.campaign.web.dto.*;
import com.viettel.campaign.web.dto.request_dto.CampaignRequestDTO;
import com.viettel.econtact.filter.UserSession;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
......@@ -23,6 +25,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
import java.util.*;
......@@ -226,9 +229,10 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
//</editor-fold: hungtt>
@Override
public ResultDTO searchCampaignExecute(CampaignRequestDTO requestDto) {
public ResultDTO searchCampaignExecute(CampaignRequestDTO requestDto, String xAuthToken) {
ResultDTO result = new ResultDTO();
Map data = new HashMap();
UserSession userSession = (UserSession) RedisUtil.getInstance().get(xAuthToken);
Integer count = campaignExecuteRepository.searchCampaignExecute(requestDto, null).size();
......@@ -293,9 +297,8 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
//TimeZoneDialMode zoneDialMode = zoneDialModeRepository.findDialModeAtCurrent(Long.parseLong(dto.getCampaignId()), Long.parseLong(dto.getCompanySiteId()));
//TimeRangeDialMode rangeDialMode = rangeDialModeRepository.findDialModeAtCurrent(Long.parseLong(dto.getCampaignId()), Long.parseLong(dto.getCompanySiteId()));
List<CampaignCustomerDTO> lst = new ArrayList<>();
// Khách hàng đến thời điểm hẹn gọi lại và là khách hàng mà chính NSD hẹn gọi lại
StringBuilder sb = new StringBuilder();
StringBuilder sb = new StringBuilder();
sb.append("SELECT CC.CUSTOMER_ID AS customerId");
sb.append(" FROM CAMPAIGN_CUSTOMER CC");
sb.append(" LEFT JOIN CCMS_FULL.RECEIVE_CUST_LOG CL ON CC.CUSTOMER_ID = CL.CUSTOMER_ID");
......@@ -315,9 +318,7 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
sb.append(" AND CC.RECALL_TIME + NUMTODSINTERVAL(:dungSai, 'MINUTE') >= SYSDATE");
sb.append(" AND CC.AGENT_ID = :agentId");
StringBuilder sb2 = new StringBuilder();
sb2.append("SELECT CC.CUSTOMER_ID AS customerId");
sb2.append(" FROM CCMS_FULL.CAMPAIGN_CUSTOMER CC");
sb2.append(" LEFT JOIN CCMS_FULL.RECEIVE_CUST_LOG CL ON CC.CUSTOMER_ID = CL.CUSTOMER_ID");
......@@ -339,7 +340,6 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
sb2.append(" AND (AG.CAMPAIGN_SYSTEM_STATUS IS NULL OR AG.CAMPAIGN_SYSTEM_STATUS <> 'AVAILABLE')");
StringBuilder sb3 = new StringBuilder();
sb3.append("SELECT CC.CUSTOMER_ID AS customerId");
sb3.append(" FROM CAMPAIGN_CUSTOMER CC");
sb3.append(" LEFT JOIN RECEIVE_CUST_LOG CL ON CC.CUSTOMER_ID = CL.CUSTOMER_ID");
......@@ -358,7 +358,6 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
sb3.append(" AND CC.RECALL_TIME + NUMTODSINTERVAL(:dungSai, 'MINUTE') <= SYSDATE");
StringBuilder sb4 = new StringBuilder();
sb4.append("SELECT CC.CUSTOMER_ID AS customerId ");
sb4.append(" FROM CAMPAIGN_CUSTOMER CC");
sb4.append(" INNER JOIN CUSTOMER C ON CC.CUSTOMER_ID = C.CUSTOMER_ID");
......@@ -374,7 +373,6 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
sb4.append(" AND C.IPCC_STATUS = 'active'");
StringBuilder sb5 = new StringBuilder();
sb5.append("SELECT CC.CUSTOMER_ID AS customerId");
sb5.append(" FROM CAMPAIGN_CUSTOMER CC");
sb5.append(" LEFT JOIN CCMS_FULL.RECEIVE_CUST_LOG CL ON CC.CUSTOMER_ID = CL.CUSTOMER_ID");
......@@ -395,14 +393,13 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
sb5.append(" AND C.CALL_ALLOWED = 1");
sb5.append(" AND C.IPCC_STATUS = 'active'");
String getExecuteCus1Str = sb.toString();
String getExecuteCus2Str = sb2.toString();
String getExecuteCus3Str = sb3.toString();
String getExecuteCus4Str = sb4.toString();
String getExecuteCus5Str = sb5.toString();
// Khách hàng đến thời điểm hẹn gọi lại và là khách hàng mà chính NSD hẹn gọi lại
List<CampaignCustomerDTO> lst1 = campaignCustomerRepository.getDataCampaignCustomer(dto, getExecuteCus1Str);
if (lst1.size() > 0) {
lst = lst1;
......
package com.viettel.campaign.web.rest;
import com.sun.deploy.net.HttpRequest;
import com.viettel.campaign.model.ccms_full.TimeRangeDialMode;
import com.viettel.campaign.model.ccms_full.TimeZoneDialMode;
import com.viettel.campaign.service.CampaignExecuteService;
......@@ -11,10 +12,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.sleuth.instrument.reactor.ReactorSleuth;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.http.*;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
......@@ -40,8 +38,9 @@ public class CampaignController {
@PostMapping("/searchCampaignExecute")
@ResponseBody
public ResponseEntity<ResultDTO> searchCampaignExecute(@RequestBody CampaignRequestDTO requestDto) {
ResultDTO result = campaignExecuteService.searchCampaignExecute(requestDto);
public ResponseEntity<ResultDTO> searchCampaignExecute(@RequestBody CampaignRequestDTO requestDto, HttpServletRequest request) {
String xAuthToken = request.getHeader("X-Auth-Token");
ResultDTO result = campaignExecuteService.searchCampaignExecute(requestDto, xAuthToken);
return new ResponseEntity<>(result, HttpStatus.OK);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment