Commit e5991be9 authored by Tu Bach's avatar Tu Bach

tubn campaign execute

parent 316ef4e4
...@@ -24,7 +24,7 @@ public interface CampaignExecuteService { ...@@ -24,7 +24,7 @@ public interface CampaignExecuteService {
List<ContactCustResultDTO> getContactCustById(CampaignRequestDTO dto); List<ContactCustResultDTO> getContactCustById(CampaignRequestDTO dto);
//</editor-fold> //</editor-fold>
ResultDTO searchCampaignExecute(CampaignRequestDTO requestDto); ResultDTO searchCampaignExecute(CampaignRequestDTO requestDto, String xAuthToken);
ResultDTO getExecuteCampaign(CampaignRequestDTO requestDto); ResultDTO getExecuteCampaign(CampaignRequestDTO requestDto);
......
...@@ -10,9 +10,11 @@ import com.viettel.campaign.repository.ccms_full.*; ...@@ -10,9 +10,11 @@ import com.viettel.campaign.repository.ccms_full.*;
import com.viettel.campaign.service.CampaignExecuteService; import com.viettel.campaign.service.CampaignExecuteService;
import com.viettel.campaign.utils.BundleUtils; import com.viettel.campaign.utils.BundleUtils;
import com.viettel.campaign.utils.Constants; import com.viettel.campaign.utils.Constants;
import com.viettel.campaign.utils.RedisUtil;
import com.viettel.campaign.utils.SQLBuilder; import com.viettel.campaign.utils.SQLBuilder;
import com.viettel.campaign.web.dto.*; import com.viettel.campaign.web.dto.*;
import com.viettel.campaign.web.dto.request_dto.CampaignRequestDTO; 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.usermodel.*;
import org.apache.poi.ss.util.CellRangeAddress; import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook;
...@@ -23,6 +25,7 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -23,6 +25,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
...@@ -226,9 +229,10 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService { ...@@ -226,9 +229,10 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
//</editor-fold: hungtt> //</editor-fold: hungtt>
@Override @Override
public ResultDTO searchCampaignExecute(CampaignRequestDTO requestDto) { public ResultDTO searchCampaignExecute(CampaignRequestDTO requestDto, String xAuthToken) {
ResultDTO result = new ResultDTO(); ResultDTO result = new ResultDTO();
Map data = new HashMap(); Map data = new HashMap();
UserSession userSession = (UserSession) RedisUtil.getInstance().get(xAuthToken);
Integer count = campaignExecuteRepository.searchCampaignExecute(requestDto, null).size(); Integer count = campaignExecuteRepository.searchCampaignExecute(requestDto, null).size();
...@@ -293,9 +297,8 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService { ...@@ -293,9 +297,8 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
//TimeZoneDialMode zoneDialMode = zoneDialModeRepository.findDialModeAtCurrent(Long.parseLong(dto.getCampaignId()), Long.parseLong(dto.getCompanySiteId())); //TimeZoneDialMode zoneDialMode = zoneDialModeRepository.findDialModeAtCurrent(Long.parseLong(dto.getCampaignId()), Long.parseLong(dto.getCompanySiteId()));
//TimeRangeDialMode rangeDialMode = rangeDialModeRepository.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<>(); 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("SELECT CC.CUSTOMER_ID AS customerId");
sb.append(" FROM CAMPAIGN_CUSTOMER CC"); sb.append(" FROM CAMPAIGN_CUSTOMER CC");
sb.append(" LEFT JOIN CCMS_FULL.RECEIVE_CUST_LOG CL ON CC.CUSTOMER_ID = CL.CUSTOMER_ID"); 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 { ...@@ -315,9 +318,7 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
sb.append(" AND CC.RECALL_TIME + NUMTODSINTERVAL(:dungSai, 'MINUTE') >= SYSDATE"); sb.append(" AND CC.RECALL_TIME + NUMTODSINTERVAL(:dungSai, 'MINUTE') >= SYSDATE");
sb.append(" AND CC.AGENT_ID = :agentId"); sb.append(" AND CC.AGENT_ID = :agentId");
StringBuilder sb2 = new StringBuilder(); StringBuilder sb2 = new StringBuilder();
sb2.append("SELECT CC.CUSTOMER_ID AS customerId"); sb2.append("SELECT CC.CUSTOMER_ID AS customerId");
sb2.append(" FROM CCMS_FULL.CAMPAIGN_CUSTOMER CC"); 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"); 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 { ...@@ -339,7 +340,6 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
sb2.append(" AND (AG.CAMPAIGN_SYSTEM_STATUS IS NULL OR AG.CAMPAIGN_SYSTEM_STATUS <> 'AVAILABLE')"); sb2.append(" AND (AG.CAMPAIGN_SYSTEM_STATUS IS NULL OR AG.CAMPAIGN_SYSTEM_STATUS <> 'AVAILABLE')");
StringBuilder sb3 = new StringBuilder(); StringBuilder sb3 = new StringBuilder();
sb3.append("SELECT CC.CUSTOMER_ID AS customerId"); sb3.append("SELECT CC.CUSTOMER_ID AS customerId");
sb3.append(" FROM CAMPAIGN_CUSTOMER CC"); sb3.append(" FROM CAMPAIGN_CUSTOMER CC");
sb3.append(" LEFT JOIN RECEIVE_CUST_LOG CL ON CC.CUSTOMER_ID = CL.CUSTOMER_ID"); sb3.append(" LEFT JOIN RECEIVE_CUST_LOG CL ON CC.CUSTOMER_ID = CL.CUSTOMER_ID");
...@@ -358,7 +358,6 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService { ...@@ -358,7 +358,6 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
sb3.append(" AND CC.RECALL_TIME + NUMTODSINTERVAL(:dungSai, 'MINUTE') <= SYSDATE"); sb3.append(" AND CC.RECALL_TIME + NUMTODSINTERVAL(:dungSai, 'MINUTE') <= SYSDATE");
StringBuilder sb4 = new StringBuilder(); StringBuilder sb4 = new StringBuilder();
sb4.append("SELECT CC.CUSTOMER_ID AS customerId "); sb4.append("SELECT CC.CUSTOMER_ID AS customerId ");
sb4.append(" FROM CAMPAIGN_CUSTOMER CC"); sb4.append(" FROM CAMPAIGN_CUSTOMER CC");
sb4.append(" INNER JOIN CUSTOMER C ON CC.CUSTOMER_ID = C.CUSTOMER_ID"); sb4.append(" INNER JOIN CUSTOMER C ON CC.CUSTOMER_ID = C.CUSTOMER_ID");
...@@ -374,7 +373,6 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService { ...@@ -374,7 +373,6 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
sb4.append(" AND C.IPCC_STATUS = 'active'"); sb4.append(" AND C.IPCC_STATUS = 'active'");
StringBuilder sb5 = new StringBuilder(); StringBuilder sb5 = new StringBuilder();
sb5.append("SELECT CC.CUSTOMER_ID AS customerId"); sb5.append("SELECT CC.CUSTOMER_ID AS customerId");
sb5.append(" FROM CAMPAIGN_CUSTOMER CC"); sb5.append(" FROM CAMPAIGN_CUSTOMER CC");
sb5.append(" LEFT JOIN CCMS_FULL.RECEIVE_CUST_LOG CL ON CC.CUSTOMER_ID = CL.CUSTOMER_ID"); 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 { ...@@ -395,14 +393,13 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
sb5.append(" AND C.CALL_ALLOWED = 1"); sb5.append(" AND C.CALL_ALLOWED = 1");
sb5.append(" AND C.IPCC_STATUS = 'active'"); sb5.append(" AND C.IPCC_STATUS = 'active'");
String getExecuteCus1Str = sb.toString(); String getExecuteCus1Str = sb.toString();
String getExecuteCus2Str = sb2.toString(); String getExecuteCus2Str = sb2.toString();
String getExecuteCus3Str = sb3.toString(); String getExecuteCus3Str = sb3.toString();
String getExecuteCus4Str = sb4.toString(); String getExecuteCus4Str = sb4.toString();
String getExecuteCus5Str = sb5.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); List<CampaignCustomerDTO> lst1 = campaignCustomerRepository.getDataCampaignCustomer(dto, getExecuteCus1Str);
if (lst1.size() > 0) { if (lst1.size() > 0) {
lst = lst1; lst = lst1;
......
package com.viettel.campaign.web.rest; 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.TimeRangeDialMode;
import com.viettel.campaign.model.ccms_full.TimeZoneDialMode; import com.viettel.campaign.model.ccms_full.TimeZoneDialMode;
import com.viettel.campaign.service.CampaignExecuteService; import com.viettel.campaign.service.CampaignExecuteService;
...@@ -11,10 +12,7 @@ import org.slf4j.Logger; ...@@ -11,10 +12,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.sleuth.instrument.reactor.ReactorSleuth; import org.springframework.cloud.sleuth.instrument.reactor.ReactorSleuth;
import org.springframework.http.HttpHeaders; import org.springframework.http.*;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
...@@ -40,8 +38,9 @@ public class CampaignController { ...@@ -40,8 +38,9 @@ public class CampaignController {
@PostMapping("/searchCampaignExecute") @PostMapping("/searchCampaignExecute")
@ResponseBody @ResponseBody
public ResponseEntity<ResultDTO> searchCampaignExecute(@RequestBody CampaignRequestDTO requestDto) { public ResponseEntity<ResultDTO> searchCampaignExecute(@RequestBody CampaignRequestDTO requestDto, HttpServletRequest request) {
ResultDTO result = campaignExecuteService.searchCampaignExecute(requestDto); String xAuthToken = request.getHeader("X-Auth-Token");
ResultDTO result = campaignExecuteService.searchCampaignExecute(requestDto, xAuthToken);
return new ResponseEntity<>(result, HttpStatus.OK); 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