Commit bc43ea80 authored by Phạm Duy Phi's avatar Phạm Duy Phi

phipd commit

parent ac971245
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -31,27 +31,27 @@ public class CorsFilter implements Filter { ...@@ -31,27 +31,27 @@ public class CorsFilter implements Filter {
HttpServletRequest request = (HttpServletRequest) req; HttpServletRequest request = (HttpServletRequest) req;
// chain.doFilter(req, resp); chain.doFilter(req, resp);
if ("OPTIONS".equalsIgnoreCase(request.getMethod())) { // if ("OPTIONS".equalsIgnoreCase(request.getMethod())) {
chain.doFilter(req, resp); // chain.doFilter(req, resp);
return; // return;
} // }
if ("/".equals(request.getRequestURI())) { // if ("/".equals(request.getRequestURI())) {
chain.doFilter(req, resp); // chain.doFilter(req, resp);
return; // return;
} // }
String xAuthToken = request.getHeader("X-Auth-Token"); // String xAuthToken = request.getHeader("X-Auth-Token");
if (xAuthToken == null || "".equals(xAuthToken)) { // if (xAuthToken == null || "".equals(xAuthToken)) {
response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "The token is null."); // response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "The token is null.");
return; // return;
} // }
Object obj = RedisUtil.getInstance().get(xAuthToken); // Object obj = RedisUtil.getInstance().get(xAuthToken);
if (obj instanceof UserSession) { // if (obj instanceof UserSession) {
chain.doFilter(req, resp); // chain.doFilter(req, resp);
} else { // } else {
response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "The token is invalid."); // response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "The token is invalid.");
} // }
} }
@Override @Override
......
package com.viettel.campaign.repository.ccms_full;
import com.viettel.campaign.web.dto.request_dto.CampaignCustomerListColumnRequestDTO;
import java.util.List;
public interface CampaignCustomerListColumnRepositoryCustom {
List<CampaignCustomerListColumnRequestDTO> getCustomerInfor(Long companySiteId, Long customerId, Long campaignId);
}
package com.viettel.campaign.repository.ccms_full.impl;
import com.viettel.campaign.repository.ccms_full.CampaignCustomerListColumnRepositoryCustom;
import com.viettel.campaign.utils.Constants;
import com.viettel.campaign.utils.HibernateUtil;
import com.viettel.campaign.web.dto.ResultDTO;
import com.viettel.campaign.web.dto.request_dto.CampaignCustomerListColumnRequestDTO;
import org.hibernate.SQLQuery;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.transform.Transformers;
import org.hibernate.type.DateType;
import org.hibernate.type.LongType;
import org.hibernate.type.ShortType;
import org.hibernate.type.StringType;
import org.springframework.stereotype.Repository;
import java.util.ArrayList;
import java.util.List;
@Repository
public class CampaignCustomerListColumnRepositoryImpl implements CampaignCustomerListColumnRepositoryCustom {
@Override
public List<CampaignCustomerListColumnRequestDTO> getCustomerInfor(Long companySiteId, Long customerId, Long campaignId) {
ResultDTO result = new ResultDTO();
SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
List<CampaignCustomerListColumnRequestDTO> data = new ArrayList<>();
Session session = sessionFactory.openSession();
session.beginTransaction();
try {
StringBuilder sb = new StringBuilder();
sb.append("SELECT");
sb.append(" a.CUSTOMIZE_FIELD_TITLE customizeFieldTitle,");
sb.append(" b.VALUE_TEXT valueText,");
sb.append(" b.VALUE_NUMBER valueNumber,");
sb.append(" b.VALUE_DATE valueDate,");
sb.append(" b.VALUE_CHECKBOX valueCheckbox,");
sb.append(" c.TYPE type,");
sb.append(" d.NAME valueCombobox");
sb.append(" FROM CAMPAIGN_CUSTOMERLIST_COLUMN a");
sb.append(" JOIN CUSTOMIZE_FIELD_OBJECT b");
sb.append(" ON a.CUSTOMIZE_FIELD_ID = b.CUSTOMIZE_FIELDS_ID");
sb.append(" JOIN CUSTOMIZE_FIELDS c");
sb.append(" ON a.CUSTOMIZE_FIELD_ID = c.CUSTOMIZE_FIELD_ID");
sb.append(" LEFT JOIN CUSTOMIZE_FIELD_OPTION_VALUE d");
sb.append(" ON b.FIELD_OPTION_VALUE_ID = d.FIELD_OPTION_VALUE_ID");
sb.append(" WHERE 1 = 1");
sb.append(" AND b.FUNCTION_CODE = 'CUSTOMER'");
sb.append(" AND a.COMPANY_SITE_ID = :p_company_site_id");
sb.append(" AND b.OBJECT_ID = :p_customer_id");
sb.append(" AND a.CAMPAIGN_ID = :p_campaign_id");
SQLQuery query = session.createSQLQuery(sb.toString());
query.setParameter("p_company_site_id", companySiteId);
query.setParameter("p_customer_id", customerId);
query.setParameter("p_campaign_id", campaignId);
query.addScalar("customizeFieldTitle", new StringType());
query.addScalar("valueText", new StringType());
query.addScalar("valueNumber", new LongType());
query.addScalar("valueDate", new DateType());
query.addScalar("valueCheckbox", new ShortType());
query.addScalar("type", new StringType());
query.addScalar("valueCombobox", new StringType());
query.setResultTransformer(Transformers.aliasToBean(CampaignCustomerListColumnRequestDTO.class));
data = query.list();
} catch (Exception e) {
result.setErrorCode(Constants.ApiErrorCode.ERROR);
result.setDescription(Constants.ApiErrorDesc.ERROR);
} finally {
session.close();
}
return data;
}
}
...@@ -39,4 +39,6 @@ public interface CampaignExecuteService { ...@@ -39,4 +39,6 @@ public interface CampaignExecuteService {
ResultDTO countRecallCustomer(Long companySiteId, Long agentId); ResultDTO countRecallCustomer(Long companySiteId, Long agentId);
ResultDTO getCustomerRecall(Long campaignId, Long customerId); ResultDTO getCustomerRecall(Long campaignId, Long customerId);
ResultDTO getCustomerInfor(Long companySiteId, Long customerId, Long campaignId);
} }
...@@ -221,7 +221,13 @@ public class AgentsServiceImpl implements AgentsService { ...@@ -221,7 +221,13 @@ public class AgentsServiceImpl implements AgentsService {
try { try {
if (campaignAgentDTO != null) { if (campaignAgentDTO != null) {
// insert // insert
campaignAgent = campaignAgentMapper.toPersistenceBean(campaignAgentDTO); campaignAgent.setAgentId(campaignAgentDTO.getAgentId());
campaignAgent.setStatus(0);
campaignAgent.setReSchedule(0L);
campaignAgent.setFilterType((short) 0);
campaignAgent.setCompanySiteId(campaignAgentDTO.getCompanySiteId());
campaignAgent.setCampaignId(campaignAgentDTO.getCampaignId());
campaignAgentRepository.save(campaignAgent); campaignAgentRepository.save(campaignAgent);
resultDTO.setErrorCode(Constants.ApiErrorCode.SUCCESS); resultDTO.setErrorCode(Constants.ApiErrorCode.SUCCESS);
......
...@@ -7,11 +7,9 @@ import com.viettel.campaign.model.ccms_full.ContactCustResult; ...@@ -7,11 +7,9 @@ import com.viettel.campaign.model.ccms_full.ContactCustResult;
import com.viettel.campaign.repository.acd_full.AgentsRepository; import com.viettel.campaign.repository.acd_full.AgentsRepository;
import com.viettel.campaign.repository.ccms_full.*; 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.*;
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.*;
import com.viettel.campaign.web.dto.request_dto.CampaignCustomerListColumnRequestDTO;
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 com.viettel.econtact.filter.UserSession;
import org.apache.poi.ss.usermodel.*; import org.apache.poi.ss.usermodel.*;
...@@ -63,6 +61,9 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService { ...@@ -63,6 +61,9 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
@Autowired @Autowired
TimeRangeDialModeRepository rangeDialModeRepository; TimeRangeDialModeRepository rangeDialModeRepository;
@Autowired
CampaignCustomerListColumnRepositoryCustom campaignCustomerListColumnRepositoryCustom;
//<editor-fold: hungtt> //<editor-fold: hungtt>
@Override @Override
@Transactional(DataSourceQualify.CCMS_FULL) @Transactional(DataSourceQualify.CCMS_FULL)
...@@ -533,4 +534,26 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService { ...@@ -533,4 +534,26 @@ public class CampaignExecuteServiceImp implements CampaignExecuteService {
return resultDTO; return resultDTO;
} }
@Override
public ResultDTO getCustomerInfor(Long companySiteId, Long customerId, Long campaignId) {
ResultDTO resultDTO = new ResultDTO();
if (DataUtil.isNullOrZero(companySiteId)) {
resultDTO.setErrorCode(Constants.ApiErrorCode.ERROR);
resultDTO.setDescription(Constants.ApiErrorDesc.ERROR);
return resultDTO;
}
try {
List<CampaignCustomerListColumnRequestDTO> data = campaignCustomerListColumnRepositoryCustom.getCustomerInfor(companySiteId, customerId, campaignId);
resultDTO.setErrorCode(Constants.ApiErrorCode.SUCCESS);
resultDTO.setDescription(Constants.ApiErrorDesc.SUCCESS);
resultDTO.setData(data);
} catch (Exception e) {
resultDTO.setErrorCode(Constants.ApiErrorCode.ERROR);
resultDTO.setDescription(Constants.ApiErrorDesc.ERROR);
}
return resultDTO;
}
} }
package com.viettel.campaign.web.dto.request_dto;
import lombok.Getter;
import lombok.Setter;
import java.util.Date;
@Getter
@Setter
public class CampaignCustomerListColumnRequestDTO {
private String customizeFieldTitle;
private String valueText;
private Long valueNumber;
private Date valueDate;
private Short valueCheckbox;
private String type;
private String valueCombobox;
}
...@@ -260,4 +260,11 @@ public class CampaignController { ...@@ -260,4 +260,11 @@ public class CampaignController {
ResultDTO result = campaignService.renewCampaign(campaignDTO); ResultDTO result = campaignService.renewCampaign(campaignDTO);
return new ResponseEntity<>(result, HttpStatus.OK); return new ResponseEntity<>(result, HttpStatus.OK);
} }
@GetMapping("/getCustomerInfor")
@ResponseBody
public ResponseEntity getCustomerInfor(@RequestParam("companySiteId") Long companySiteId, @RequestParam("customerId") Long customerId, @RequestParam("campaignId") Long campaignId) {
ResultDTO result = campaignExecuteService.getCustomerInfor(companySiteId, customerId, campaignId);
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