Commit 2f325328 authored by Vu Duy Anh's avatar Vu Duy Anh

anhvd commit

parents 8b5ff8ff 5569a655
This diff is collapsed.
......@@ -132,10 +132,10 @@ public class CampaignExecuteRepositoryImp implements CampaignExecuteRepository {
sql.append(" from dual");
sql.append(" connect by level <= regexp_count(:p_list_record_status, ',') +1");
sql.append(" ),");
sql.append(" campaign_id_list as (");
sql.append(" select trim (regexp_substr(:p_list_campaign_id, '[^,]+', 1, level)) campaign_id");
sql.append(" campaign_code_list as (");
sql.append(" select trim (regexp_substr(:p_list_campaign_code, '[^,]+', 1, level)) campaign_code");
sql.append(" from dual");
sql.append(" connect by level <= regexp_count(:p_list_campaign_id, ',') +1");
sql.append(" connect by level <= regexp_count(:p_list_campaign_code, ',') +1");
sql.append(" ),");
sql.append(" data_temp as (");
sql.append(" select a.contact_cust_result_id contactCustResultId,");
......@@ -168,7 +168,7 @@ public class CampaignExecuteRepositoryImp implements CampaignExecuteRepository {
sql.append(" and to_char(a.call_status) in (select survey_status from survey_status_list)");
sql.append(" and to_char(a.status) in (select record_status from record_status_list)");
sql.append(" and (:p_phone_number is null or to_char(a.phone_number) like '%'||:p_phone_number||'%')");
sql.append(" and (:p_list_campaign_id is null or b.campaign_code in (select campaign_id from campaign_id_list))");
sql.append(" and (:p_list_campaign_code is null or b.campaign_code in (select campaign_code from campaign_code_list))");
sql.append(" and (:p_campaign_name is null or upper(b.campaign_name) like '%'||:p_campaign_name||'%')");
sql.append(" and (:p_user_name is null or upper(c.user_name) like '%'||:p_user_name||'%')");
sql.append(" ),");
......@@ -194,7 +194,7 @@ public class CampaignExecuteRepositoryImp implements CampaignExecuteRepository {
query.setParameter("p_list_record_status", dto.getRecordStatus());
query.setParameter("p_call_time_from", dto.getCallTimeFrom());
query.setParameter("p_call_time_to", dto.getCallTimeTo());
query.setParameter("p_list_campaign_id", dto.getCampaignId());
query.setParameter("p_list_campaign_code", dto.getCampaignCode());
query.setParameter("p_phone_number", dto.getPhoneNumber());
query.setParameter("p_campaign_name", DataUtil.isNullOrEmpty(dto.getCampaignName()) ? null : dto.getCampaignName().toUpperCase());
query.setParameter("p_user_name", DataUtil.isNullOrEmpty(dto.getAgentId()) ? null : dto.getAgentId().toUpperCase());
......@@ -223,10 +223,10 @@ public class CampaignExecuteRepositoryImp implements CampaignExecuteRepository {
total = list.get(0).getTotalRow();
}
for (ContactCusResDTO contactCusResDTO : list) {
if (!"AGENT".equals(dto.getRoleUser())) {
if (!"AGENT".equals(dto.getRoleUser())) { // ko phải nhân viên
contactCusResDTO.setEnableEdit(true);
} else {
if ("2".equals(contactCusResDTO.getRecordStatus())) {
if ("2".equals(contactCusResDTO.getRecordStatus())) {// là nhân viên thường
contactCusResDTO.setEnableEdit(true);
} else if ("1".equals(contactCusResDTO.getRecordStatus()) && isLower24Hour(contactCusResDTO.getCreateTime())) {
contactCusResDTO.setEnableEdit(true);
......@@ -282,10 +282,10 @@ public class CampaignExecuteRepositoryImp implements CampaignExecuteRepository {
sb.append(" from dual");
sb.append(" connect by level <= regexp_count(:p_list_record_status, ',') +1");
sb.append(" ),");
sb.append(" campaign_id_list as (");
sb.append(" select trim (regexp_substr(:p_list_campaign_id, '[^,]+', 1, level)) campaign_id");
sb.append(" campaign_code_list as (");
sb.append(" select trim (regexp_substr(:p_list_campaign_code, '[^,]+', 1, level)) campaign_code");
sb.append(" from dual");
sb.append(" connect by level <= regexp_count(:p_list_campaign_id, ',') +1");
sb.append(" connect by level <= regexp_count(:p_list_campaign_code, ',') +1");
sb.append(" ),");
sb.append(" data_temp as (");
sb.append(" select a.contact_cust_result_id contactCustResultId,");
......@@ -318,7 +318,7 @@ public class CampaignExecuteRepositoryImp implements CampaignExecuteRepository {
sb.append(" and to_char(a.call_status) in (select survey_status from survey_status_list)");
sb.append(" and to_char(a.status) in (select record_status from record_status_list)");
sb.append(" and (:p_phone_number is null or to_char(a.phone_number) like '%'||:p_phone_number||'%')");
sb.append(" and (:p_list_campaign_id is null or b.campaign_code in (select campaign_id from campaign_id_list))");
sb.append(" and (:p_list_campaign_code is null or b.campaign_code in (select campaign_code from campaign_code_list))");
sb.append(" and (:p_campaign_name is null or upper(b.campaign_name) like '%'||:p_campaign_name||'%')");
sb.append(" and (:p_user_name is null or upper(c.user_name) like '%'||:p_user_name||'%')");
sb.append(" ),");
......@@ -330,24 +330,6 @@ public class CampaignExecuteRepositoryImp implements CampaignExecuteRepository {
sb.append(" select campaignCode, createTime, campaignName, userName, phoneNumber, customerName, startCall, contactStatus, surveyStatus, status, recordStatus, callTime from data");
sb.append(" where :p_page_size = 0 or (row_ >= ((:p_page_number - 1) * :p_page_size + 1) and row_ < (:p_page_number * :p_page_size + 1))");
// params.put("p_company_site_id", dto.getCompanySiteId());
// params.put("p_customer_id", dto.getCustomerId());
// params.put("p_date_from", dto.getFromDate());
// params.put("p_date_to", dto.getToDate());
// params.put("p_list_compaign_type", dto.getCampaignType());
// params.put("p_list_contact_status", dto.getContactStatus());
// params.put("p_list_survey_status", dto.getSurveyStatus());
// params.put("p_list_record_status", dto.getRecordStatus());
// params.put("p_call_time_from", dto.getCallTimeFrom());
// params.put("p_call_time_to", dto.getCallTimeTo());
// params.put("p_list_campaign_id", dto.getCampaignId());
// params.put("p_phone_number", dto.getPhoneNumber());
// params.put("p_campaign_name", DataUtil.isNullOrEmpty(dto.getCampaignName()) ? null : dto.getCampaignName().toUpperCase());
// params.put("p_user_name", DataUtil.isNullOrEmpty(dto.getAgentId()) ? null : dto.getAgentId().toUpperCase());
// params.put("p_page_number", dto.getPage().toString());
// params.put("p_page_size", "0");
//
// list = namedParameterJdbcTemplate.query(sb.toString(), params, BeanPropertyRowMapper.newInstance(ContactCusResDTO.class));
SQLQuery query = session.createSQLQuery(sb.toString());
query.setParameter("p_company_site_id", dto.getCompanySiteId());
query.setParameter("p_customer_id", dto.getCustomerId());
......@@ -359,7 +341,7 @@ public class CampaignExecuteRepositoryImp implements CampaignExecuteRepository {
query.setParameter("p_list_record_status", dto.getRecordStatus());
query.setParameter("p_call_time_from", dto.getCallTimeFrom());
query.setParameter("p_call_time_to", dto.getCallTimeTo());
query.setParameter("p_list_campaign_id", dto.getCampaignId());
query.setParameter("p_list_campaign_code", dto.getCampaignCode());
query.setParameter("p_phone_number", dto.getPhoneNumber());
query.setParameter("p_campaign_name", DataUtil.isNullOrEmpty(dto.getCampaignName()) ? null : dto.getCampaignName().toUpperCase());
query.setParameter("p_user_name", DataUtil.isNullOrEmpty(dto.getAgentId()) ? null : dto.getAgentId().toUpperCase());
......
......@@ -274,28 +274,43 @@ public class CampaignRepositoryImpl implements CampaignRepositoryCustom {
}
try {
StringBuilder sb = new StringBuilder();
sb.append(" SELECT CAMPAIGN_ID campaignId, " +
" CAMPAIGN_CODE campaignCode, " +
" CAMPAIGN_NAME campaignName, " +
" START_TIME startTime," +
" END_TIME endTime, " +
" STATUS status " +
" FROM CAMPAIGN" +
" WHERE COMPANY_SITE_ID = :p_company_site_id AND STATUS <> -1 ");
if (!DataUtil.isNullOrEmpty(requestDto.getCampaignCode())) {
sb.append(" AND CAMPAIGN_CODE LIKE :p_code ");
}
sb.append(" ORDER BY START_TIME DESC ");
// sb.append(" SELECT CAMPAIGN_ID campaignId, " +
// " CAMPAIGN_CODE campaignCode, " +
// " CAMPAIGN_NAME campaignName, " +
// " START_TIME startTime," +
// " END_TIME endTime, " +
// " STATUS status " +
// " FROM CAMPAIGN" +
// " WHERE COMPANY_SITE_ID = :p_company_site_id AND STATUS <> -1 ");
// if (!DataUtil.isNullOrEmpty(requestDto.getCampaignCode())) {
// sb.append(" AND CAMPAIGN_CODE LIKE :p_code ");
// }
// sb.append(" ORDER BY START_TIME DESC ");
// SQLQuery query = session.createSQLQuery(sb.toString());
// query.setParameter("p_company_site_id", requestDto.getCompanySiteId());
// if (!DataUtil.isNullOrEmpty(requestDto.getCampaignCode())) {
// query.setParameter("p_code", "%" +
// requestDto.getCampaignCode().toUpperCase()
// .replace("\\", "\\\\")
// .replaceAll("%", "\\\\%")
// .replaceAll("_", "\\\\_")
// + "%");
// }
sb.append(" SELECT CAMPAIGN_ID campaignId," +
"CAMPAIGN_CODE campaignCode, " +
"CAMPAIGN_NAME campaignName, " +
"START_TIME startTime, " +
"END_TIME endTime, " +
"STATUS status " +
"FROM CAMPAIGN " +
"WHERE COMPANY_SITE_ID = :p_company_site_id " +
" AND STATUS <> -1 " +
" AND (:p_code is null or upper(CAMPAIGN_CODE) LIKE '%'||:p_code||'%')" +
"ORDER BY START_TIME DESC");
SQLQuery query = session.createSQLQuery(sb.toString());
query.setParameter("p_company_site_id", requestDto.getCompanySiteId());
if (!DataUtil.isNullOrEmpty(requestDto.getCampaignCode())) {
query.setParameter("p_code", "%" +
requestDto.getCampaignCode().toUpperCase()
.replace("\\", "\\\\")
.replaceAll("%", "\\\\%")
.replaceAll("_", "\\\\_")
+ "%");
}
query.setParameter("p_code", DataUtil.isNullOrEmpty(requestDto.getCampaignCode()) ? null : requestDto.getCampaignCode().toUpperCase());
query.addScalar("campaignId", new LongType());
query.addScalar("campaignCode", new StringType());
query.addScalar("campaignName", new StringType());
......@@ -711,8 +726,8 @@ public class CampaignRepositoryImpl implements CampaignRepositoryCustom {
sb.append(" where a.status = 1");
sb.append(" and (:p_cus_list_code is null or upper(a.customer_list_code) like '%'||:p_cus_list_code||'%')");
sb.append(" and (:p_cus_list_name is null or upper(a.customer_list_name) like '%'||:p_cus_list_name||'%')");
sb.append(" and (a.create_at <= to_date(:p_to_date, 'DD/MM/YYYY'))");
sb.append(" and (a.create_at >= to_date(:p_from_date, 'DD/MM/YYYY'))");
sb.append(" and (:p_to_date is null or (a.create_at <= to_date(:p_to_date, 'DD/MM/YYYY')))");
sb.append(" and (:p_from_date is null or (a.create_at >= to_date(:p_from_date, 'DD/MM/YYYY')))");
sb.append(" and (a.company_site_id = :p_company_site_id)");
sb.append(" and (a.customer_list_id not in (select CUSTOMER_LIST_ID from campaign_customer_id))");
sb.append(" ),");
......@@ -724,23 +739,13 @@ public class CampaignRepositoryImpl implements CampaignRepositoryCustom {
sb.append(" )");
sb.append(" select a.customerListId, a.customerListCode, a.customerListName, a.totalCusList, a.totalCusActive, a.totalCusLock, a.totalCusDnc, totalRow from data a, count_data");
sb.append(" where row_ >= ((:p_page_number - 1) * :p_page_size + 1) and row_ < (:p_page_number * :p_page_size + 1)");
// params.put("p_campaign_id", dto.getCampaignId());
// params.put("p_cus_list_code", DataUtil.isNullOrEmpty(dto.getCustListCode()) ? null : dto.getCustListCode().toUpperCase());
// params.put("p_cus_list_name", DataUtil.isNullOrEmpty(dto.getCustListName()) ? null : dto.getCustListName().toUpperCase());
// params.put("p_to_date", dto.getCreateTimeTo());
// params.put("p_from_date", dto.getCreateTimeFr());
// params.put("p_company_site_id", dto.getCompanySiteId());
// params.put("p_page_number", dto.getPage().toString());
// params.put("p_page_size", dto.getPageSize().toString());
//
// list = namedParameterJdbcTemplate.query(sb.toString(), params, BeanPropertyRowMapper.newInstance(CustomerListDTO.class));
SQLQuery query = session.createSQLQuery(sb.toString());
query.setParameter("p_company_site_id", dto.getCompanySiteId());
query.setParameter("p_campaign_id", dto.getCampaignId());
query.setParameter("p_cus_list_code", DataUtil.isNullOrEmpty(dto.getCustListCode()) ? null : dto.getCustListCode().toUpperCase());
query.setParameter("p_cus_list_name", DataUtil.isNullOrEmpty(dto.getCustListName()) ? null : dto.getCustListName().toUpperCase());
query.setParameter("p_to_date", dto.getCreateTimeTo());
query.setParameter("p_from_date", dto.getCreateTimeFr());
query.setParameter("p_to_date", DataUtil.isNullOrEmpty(dto.getCustListCode()) ? null : dto.getCreateTimeTo());
query.setParameter("p_from_date", DataUtil.isNullOrEmpty(dto.getCustListCode()) ? null : dto.getCreateTimeFr());
query.setParameter("p_page_number", dto.getPage());
query.setParameter("p_page_size", dto.getPageSize());
......
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