Commit 2be63431 authored by đinh thị đầm's avatar đinh thị đầm

search filter customize

parent 985b8da2
...@@ -14,7 +14,7 @@ import java.util.List; ...@@ -14,7 +14,7 @@ import java.util.List;
@Repository @Repository
public interface CampaignCfgRepository extends JpaRepository<CampaignCfg, Long>{ public interface CampaignCfgRepository extends JpaRepository<CampaignCfg, Long>{
@Query(" select u FROM CampaignCfg u WHERE u.status = 1 and u.completeValue not in (1,2,3,4)") @Query("FROM CampaignCfg u WHERE u.status = 1 AND u.completeValue NOT IN (1,2,3,4)")
Page<CampaignCfg> findAll(Pageable pageable); Page<CampaignCfg> findAll(Pageable pageable);
......
...@@ -14,4 +14,5 @@ public interface CampaignCustomerListRepository extends JpaRepository<CampaignCu ...@@ -14,4 +14,5 @@ public interface CampaignCustomerListRepository extends JpaRepository<CampaignCu
@Query("select count (c.campaignId) from CampaignCustomerList c where c.customerListId in (:ids)") @Query("select count (c.campaignId) from CampaignCustomerList c where c.customerListId in (:ids)")
Long campaignIdsCount(@Param("ids") List<Long> ids); Long campaignIdsCount(@Param("ids") List<Long> ids);
} }
...@@ -2,6 +2,7 @@ package com.viettel.campaign.repository.ccms_full; ...@@ -2,6 +2,7 @@ package com.viettel.campaign.repository.ccms_full;
import com.viettel.campaign.config.DataSourceQualify; import com.viettel.campaign.config.DataSourceQualify;
import com.viettel.campaign.model.ccms_full.CampaignCustomer; import com.viettel.campaign.model.ccms_full.CampaignCustomer;
import com.viettel.campaign.model.ccms_full.Customer;
import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query; import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
...@@ -10,6 +11,7 @@ import org.springframework.transaction.annotation.Transactional; ...@@ -10,6 +11,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.util.List; import java.util.List;
@Repository @Repository
@Transactional(DataSourceQualify.CCMS_FULL) @Transactional(DataSourceQualify.CCMS_FULL)
public interface CampaignCustomerRepository extends JpaRepository<CampaignCustomer, Long>, CampaignCustomerRepositoryCustom { public interface CampaignCustomerRepository extends JpaRepository<CampaignCustomer, Long>, CampaignCustomerRepositoryCustom {
...@@ -35,4 +37,29 @@ public interface CampaignCustomerRepository extends JpaRepository<CampaignCustom ...@@ -35,4 +37,29 @@ public interface CampaignCustomerRepository extends JpaRepository<CampaignCustom
Long getCustomerRecall(@Param("campaignId") Long campaignId, @Param("customerId") Long customerId); Long getCustomerRecall(@Param("campaignId") Long campaignId, @Param("customerId") Long customerId);
CampaignCustomer findCampaignCustomerByCampaignCustomerId(Long id); CampaignCustomer findCampaignCustomerByCampaignCustomerId(Long id);
@Query(value = "select C.NAME, " +
"C.EMAIL, " +
"C.PLACE_OF_BIRTH, " +
"C.AREA_CODE, " +
"C.COMPANY_NAME, " +
"C.CURRENT_ADDRESS, " +
"C.CUSTOMER_TYPE, " +
"C.DATE_OF_BIRTH, " +
"C.CUSTOMER_ID,"+
"C.USERNAME,"+
"C.GENDER, CF.TITLE " +
// " from CAMPAIGN_COMPLETE_CODE cm " +
"from CUSTOMER C " +
"left join CUSTOMIZE_FIELDS CF " +
"on C.CUSTOMER_ID = CF.CUSTOMIZE_FIELD_ID "+
"where CF.FUNCTION_CODE = 'CUSTORMER' and c.STATUS =1 and CF.ACTIVE =1 and CF.SITE_ID =?"
, nativeQuery = true)
Long searchCustomer(@Param("site_id") Long pSiteId);
} }
...@@ -81,6 +81,8 @@ public class CampaignCfgServiceImpl implements CampaignCfgService { ...@@ -81,6 +81,8 @@ public class CampaignCfgServiceImpl implements CampaignCfgService {
sb.append(" where 1 = 1"); sb.append(" where 1 = 1");
sb.append(" AND STATUS = 1"); sb.append(" AND STATUS = 1");
sb.append(" and COMPANY_SITE_ID = :p_company_site_id"); sb.append(" and COMPANY_SITE_ID = :p_company_site_id");
sb.append(" and COMPLETE_VALUE not in (1,2,3,4)");
sb.append("ORDER BY to_number(COMPLETE_VALUE) ");
......
...@@ -12,7 +12,6 @@ import com.viettel.campaign.utils.DataUtil; ...@@ -12,7 +12,6 @@ import com.viettel.campaign.utils.DataUtil;
import com.viettel.campaign.utils.WorkBookBuilder; import com.viettel.campaign.utils.WorkBookBuilder;
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 oracle.jdbc.driver.Const;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
import org.apache.poi.ss.usermodel.*; import org.apache.poi.ss.usermodel.*;
......
...@@ -44,6 +44,9 @@ import javax.persistence.EntityManager; ...@@ -44,6 +44,9 @@ import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext; import javax.persistence.PersistenceContext;
import javax.persistence.Query; import javax.persistence.Query;
import javax.persistence.criteria.CriteriaQuery; import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.JoinType;
import javax.persistence.criteria.ListJoin;
import javax.persistence.criteria.Root;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.io.FileInputStream; import java.io.FileInputStream;
import java.io.FileOutputStream; import java.io.FileOutputStream;
...@@ -1107,6 +1110,7 @@ public class CustomerServiceImpl implements CustomerService { ...@@ -1107,6 +1110,7 @@ public class CustomerServiceImpl implements CustomerService {
CriteriaQuery<Customer> query; CriteriaQuery<Customer> query;
query = getCriteriaQuery(queryString, visitor); query = getCriteriaQuery(queryString, visitor);
List<Customer> resultList = entityManager.createQuery(query).getResultList(); List<Customer> resultList = entityManager.createQuery(query).getResultList();
Root<Customer> customer = query.from(Customer.class);
if (resultList == null || resultList.isEmpty()){ if (resultList == null || resultList.isEmpty()){
return Collections.emptyList(); return Collections.emptyList();
} }
...@@ -1120,6 +1124,7 @@ public class CustomerServiceImpl implements CustomerService { ...@@ -1120,6 +1124,7 @@ public class CustomerServiceImpl implements CustomerService {
query = getCriteriaQuery(queryString, visitor); query = getCriteriaQuery(queryString, visitor);
return entityManager.createQuery(query).getSingleResult(); return entityManager.createQuery(query).getSingleResult();
} }
private <T> CriteriaQuery<T> getCriteriaQuery(String queryString, RSQLVisitor<CriteriaQuery<T>, EntityManager> visitor) { private <T> CriteriaQuery<T> getCriteriaQuery(String queryString, RSQLVisitor<CriteriaQuery<T>, EntityManager> visitor) {
Node rootNode; Node rootNode;
......
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