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

commit status active inactive

parent 499eb4dc
package com.viettel.campaign.repository; package com.viettel.campaign.repository;
import com.viettel.campaign.model.CampaignCompleteCode; import com.viettel.campaign.model.CampaignCompleteCode;
import com.viettel.campaign.web.dto.ResultDTO;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaRepository;
...@@ -10,7 +11,6 @@ import org.springframework.data.repository.query.Param; ...@@ -10,7 +11,6 @@ import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@Repository
public interface CampaignCompleteCodeRepository extends JpaRepository<CampaignCompleteCode, Long> { public interface CampaignCompleteCodeRepository extends JpaRepository<CampaignCompleteCode, Long> {
Page<CampaignCompleteCode> findAll(Pageable pageable); Page<CampaignCompleteCode> findAll(Pageable pageable);
...@@ -20,9 +20,12 @@ public interface CampaignCompleteCodeRepository extends JpaRepository<CampaignCo ...@@ -20,9 +20,12 @@ public interface CampaignCompleteCodeRepository extends JpaRepository<CampaignCo
List<CampaignCompleteCode> findByCompleteNameContains(String name, Pageable pageable); List<CampaignCompleteCode> findByCompleteNameContains(String name, Pageable pageable);
@Modifying
@Query("update CampaignCompleteCode c set c.status=0 where c.campaignCompleteCodeId=:id")
int deleted(@Param("id") Long id);
@Modifying @Modifying
@Query("delete from CampaignCompleteCode c where c.campaignCompleteCodeId in (:ids)") @Query("update CampaignCompleteCode c set c.status=0 where c.campaignCompleteCodeId in (:ids)")
int deleteds(@Param("ids") List<Long> ids); int deleteds(@Param("ids") List<Long> ids);
......
package com.viettel.campaign.repository;
import com.viettel.campaign.web.dto.ResultDTO;
public interface CampaignCompleteCodeRepositoryCustom {
ResultDTO updateStatusById(Long id);
}
package com.viettel.campaign.repository.impl;
import com.viettel.campaign.model.CampaignCompleteCode;
import com.viettel.campaign.repository.CampaignCompleteCodeRepository;
import com.viettel.campaign.utils.Constants;
import com.viettel.campaign.utils.HibernateUtil;
import com.viettel.campaign.utils.SQLBuilder;
import com.viettel.campaign.web.dto.CampaignCompleteCodeDTO;
import com.viettel.campaign.web.dto.ResultDTO;
import org.hibernate.Query;
import org.hibernate.SQLQuery;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.transform.Transformers;
import org.hibernate.type.BigDecimalType;
import org.hibernate.type.LongType;
import org.hibernate.type.ShortType;
import org.hibernate.type.StringType;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Example;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
import javax.persistence.EntityManager;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
public class CampaignCompleteCodeRepositoryIpml implements CampaignCompleteCodeRepository {
@Autowired
EntityManager entityManager;
CampaignCompleteCodeRepository campaignCompleteCodeRepository;
private Logger log = LoggerFactory.getLogger(CampaignCompleteCodeRepositoryIpml.class);
@Override
public Page<CampaignCompleteCode> findAll(Pageable pageable) {
// Page<CampaignCompleteCode>
// try {
//
// } catch (Exception e) {
//
// }
return null;
}
@Override
public List<CampaignCompleteCode> findByName(String name, Pageable pageable) {
SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
Session session = sessionFactory.openSession();
session.beginTransaction();
List<CampaignCompleteCode> resultList = null;
try {
StringBuilder sql = new StringBuilder(SQLBuilder.getSqlQueryById(SQLBuilder.SQL_MODULE_CAMPAIGN_STATUS_MNG, "search-campaign-status-by-params"));
SQLQuery query = session.createSQLQuery(sql.toString());
query.setParameter(":p_name", name);
// add SCalar
query.addScalar("campaignId", new LongType());
query.addScalar("completeValue", new StringType());
query.addScalar("completeName", new StringType());
query.addScalar("completeType", new StringType());
query.addScalar("chanel", new ShortType());
query.addScalar("description", new StringType());
query.addScalar("status", new ShortType());
query.addScalar("chanel", new BigDecimalType());
query.setResultTransformer(Transformers.aliasToBean(CampaignCompleteCodeDTO.class));
resultList = query.list();
} catch (Exception e) {
session.close();
log.error(e.getMessage(), e);
}
return resultList;
}
@Override
public List<CampaignCompleteCode> findByCompleteNameContains(String name, Pageable pageable) {
return campaignCompleteCodeRepository.findByCompleteNameContains(name, pageable);
}
@Override
public int deleteds(List<Long> ids) {
return 0;
}
@Override
public List<CampaignCompleteCode> findAll() {
return campaignCompleteCodeRepository.findAll();
}
@Override
public List<CampaignCompleteCode> findAll(Sort sort) {
return campaignCompleteCodeRepository.findAll();
}
@Override
public List<CampaignCompleteCode> findAllById(Iterable<Long> iterable) {
return null;
}
@Override
public long count() {
return 0;
}
@Override
@Transactional
public void deleteById(Long id) {
ResultDTO result = new ResultDTO();
try {
// update Status = 0 cho cái ID truyền vào
CampaignCompleteCode entity = entityManager.find(CampaignCompleteCode.class, id);
// set giá trị Status = 0 --> tương đương với inactive
entity.setStatus(new Short("0"));
entityManager.merge(entity);
} catch (Exception e) {
log.error(e.getMessage(), e);
}
}
@Override
public void delete(CampaignCompleteCode campaignCompleteCode) {
}
@Override
public void deleteAll(Iterable<? extends CampaignCompleteCode> iterable) {
}
@Override
public void deleteAll() {
}
@Override
public <S extends CampaignCompleteCode> S save(S s) {
return null;
}
@Override
public <S extends CampaignCompleteCode> List<S> saveAll(Iterable<S> iterable) {
return null;
}
@Override
public Optional<CampaignCompleteCode> findById(Long aLong) {
return Optional.empty();
}
@Override
public boolean existsById(Long aLong) {
return false;
}
@Override
public void flush() {
}
@Override
public <S extends CampaignCompleteCode> S saveAndFlush(S s) {
return null;
}
@Override
public void deleteInBatch(Iterable<CampaignCompleteCode> iterable) {
}
@Override
public void deleteAllInBatch() {
}
@Override
public CampaignCompleteCode getOne(Long aLong) {
return null;
}
@Override
public <S extends CampaignCompleteCode> Optional<S> findOne(Example<S> example) {
return Optional.empty();
}
@Override
public <S extends CampaignCompleteCode> List<S> findAll(Example<S> example) {
return null;
}
@Override
public <S extends CampaignCompleteCode> List<S> findAll(Example<S> example, Sort sort) {
return null;
}
@Override
public <S extends CampaignCompleteCode> Page<S> findAll(Example<S> example, Pageable pageable) {
return null;
}
@Override
public <S extends CampaignCompleteCode> long count(Example<S> example) {
return 0;
}
@Override
public <S extends CampaignCompleteCode> boolean exists(Example<S> example) {
return false;
}
}
package com.viettel.campaign.repository.impl;
import com.viettel.campaign.model.CampaignCompleteCode;
import com.viettel.campaign.repository.CampaignCompleteCodeRepositoryCustom;
import com.viettel.campaign.web.dto.ResultDTO;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
import javax.persistence.EntityManager;
import java.util.List;
@Repository
public class CampaignCompleteCompleteCodeRepositoryIpml implements CampaignCompleteCodeRepositoryCustom {
@Autowired
EntityManager entityManager;
private Logger log = LoggerFactory.getLogger(CampaignCompleteCompleteCodeRepositoryIpml.class);
@Override
@Transactional
public ResultDTO updateStatusById(Long id) {
ResultDTO dto = new ResultDTO();
try {
CampaignCompleteCode e = entityManager.find(CampaignCompleteCode.class, id);
e.setStatus(new Short("0")); // set status = 0 --> khong hoat dong
entityManager.merge(e);
dto.setErrorCode("00");
} catch (Exception e) {
log.error(e.getMessage(), e);
dto.setErrorCode("01");
dto.setDescription(e.getMessage());
}
return dto;
}
}
package com.viettel.campaign.service; package com.viettel.campaign.service;
import com.viettel.campaign.repository.CampaignCompleteCodeRepositoryCustom;
import com.viettel.campaign.utils.Constants; import com.viettel.campaign.utils.Constants;
import com.viettel.campaign.web.dto.CampaignCompleteCodeDTO; import com.viettel.campaign.web.dto.CampaignCompleteCodeDTO;
import com.viettel.campaign.web.dto.ResultDTO; import com.viettel.campaign.web.dto.ResultDTO;
...@@ -22,6 +23,10 @@ public class CampaignCompleteCodeServiceImpl implements CampaignCompleteCodeServ ...@@ -22,6 +23,10 @@ public class CampaignCompleteCodeServiceImpl implements CampaignCompleteCodeServ
@Autowired @Autowired
CampaignCompleteCodeRepository completeCodeRepository; CampaignCompleteCodeRepository completeCodeRepository;
@Autowired
CampaignCompleteCodeRepositoryCustom repositoryCustom;
@Override @Override
public Map listAllCompleteCode(int page, int pageSize, String sort) { public Map listAllCompleteCode(int page, int pageSize, String sort) {
Map result = new HashMap(); Map result = new HashMap();
...@@ -122,21 +127,22 @@ public class CampaignCompleteCodeServiceImpl implements CampaignCompleteCodeServ ...@@ -122,21 +127,22 @@ public class CampaignCompleteCodeServiceImpl implements CampaignCompleteCodeServ
return resultDTO; return resultDTO;
} }
@Transactional @Transactional
@Override @Override
public ResultDTO deleteList(List<Long> completeCodeDtos) { public ResultDTO deleteList(List<Long> completeCodeDtos) {
ResultDTO resultDTO = new ResultDTO(); ResultDTO resultDTO = new ResultDTO();
CampaignCompleteCode campaignCompleteCode = new CampaignCompleteCode();
try {
completeCodeRepository.deleteds(completeCodeDtos);
campaignCompleteCode = completeCodeRepository.save(campaignCompleteCode);
resultDTO.setErrorCode(Constants.ApiErrorCode.SUCCESS);
resultDTO.setDescription(Constants.ApiErrorDesc.SUCCESS);
// for (int i = 0; i < completeCodeDtos.size(); i++) { } catch (Exception e) {
try { resultDTO.setErrorCode("-1");
completeCodeRepository.deleteds(completeCodeDtos); return resultDTO;
resultDTO.setErrorCode(Constants.ApiErrorCode.SUCCESS); }
resultDTO.setDescription(Constants.ApiErrorDesc.SUCCESS);
} catch (Exception e) {
resultDTO.setErrorCode("-1");
return resultDTO;
}
// } // }
resultDTO.setErrorCode("0"); resultDTO.setErrorCode("0");
...@@ -144,19 +150,8 @@ public class CampaignCompleteCodeServiceImpl implements CampaignCompleteCodeServ ...@@ -144,19 +150,8 @@ public class CampaignCompleteCodeServiceImpl implements CampaignCompleteCodeServ
} }
@Override @Override
public ResultDTO deleteById(Long id) {
ResultDTO result = new ResultDTO();
try {
completeCodeRepository.deleteById(id);
result.setErrorCode(Constants.Status.ACTIVE_STR);
result.setDescription(Constants.Status.ACTIVE_STR);
} catch (Exception e) { public ResultDTO deleteById(Long id) {
result.setErrorCode("-1"); return repositoryCustom.updateStatusById(id);
return result;
}
result.setErrorCode("0");
return result;
} }
} }
...@@ -84,8 +84,8 @@ public class CampaignCompleteCodeController { ...@@ -84,8 +84,8 @@ public class CampaignCompleteCodeController {
ResultDTO resultDTO = completeCodeService.deleteList(completeCodeDtos); ResultDTO resultDTO = completeCodeService.deleteList(completeCodeDtos);
return new ResponseEntity<>(resultDTO, HttpStatus.OK); return new ResponseEntity<>(resultDTO, HttpStatus.OK);
} }
@CrossOrigin(origins = "*")
@PostMapping("/deleteById/{id}") @PostMapping("/deleteById")
@ResponseBody @ResponseBody
public ResultDTO deleteById(@RequestParam("id") Long id){ public ResultDTO deleteById(@RequestParam("id") Long id){
ResultDTO resultDTO = new ResultDTO(); ResultDTO resultDTO = new ResultDTO();
......
...@@ -11,6 +11,7 @@ SELECT ...@@ -11,6 +11,7 @@ SELECT
FROM CAMPAIGN_COMPLETE_CODE a FROM CAMPAIGN_COMPLETE_CODE a
LEFT JOIN CAMPAIGN b ON a.CAMPAIGN_ID = b.CAMPAIGN_ID LEFT JOIN CAMPAIGN b ON a.CAMPAIGN_ID = b.CAMPAIGN_ID
LEFT JOIN AP_PARAM c ON a.CAMPAIGN_TYPE = to_char(c.AP_PARAM_ID) LEFT JOIN AP_PARAM c ON a.CAMPAIGN_TYPE = to_char(c.AP_PARAM_ID);
SELECT max(COMPLETE_VALUE) ,COMPANY_SITE_ID from CAMPAIGN_COMPLETE_CODE where COMPANY_SITE_ID = : p_site_id GROUP BY COMPANY_SITE_ID
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