CollectionPrivilegeRepo.java 1.4 KB

12345678910111213141516171819202122232425262728293031323334
  1. package com.izouma.nineth.repo;
  2. import com.izouma.nineth.domain.CollectionPrivilege;
  3. import org.springframework.cache.annotation.CacheEvict;
  4. import org.springframework.data.jpa.repository.JpaRepository;
  5. import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
  6. import org.springframework.data.jpa.repository.Modifying;
  7. import org.springframework.data.jpa.repository.Query;
  8. import javax.annotation.Nonnull;
  9. import javax.transaction.Transactional;
  10. public interface CollectionPrivilegeRepo extends JpaRepository<CollectionPrivilege, Long>, JpaSpecificationExecutor<CollectionPrivilege> {
  11. @Query("update CollectionPrivilege t set t.del = true where t.id = ?1")
  12. @Modifying
  13. @Transactional
  14. void softDelete(Long id);
  15. CollectionPrivilege findByCollectionId(Long collectionId);
  16. @Transactional
  17. @Modifying
  18. @Query(value = "update collection_privilege c set c.collection_id = ?2, c.head_bg = ?3, c.max_collection = ?4, " +
  19. "c.showroom_bg = ?5, c.vip = ?6 where c.id = ?1", nativeQuery = true)
  20. @CacheEvict(value = {"collectionInfo"}, allEntries = true)
  21. void update(@Nonnull Long id, Long collectionId, String headBg, Integer maxCollection, String showroomBg, boolean vip);
  22. @Transactional
  23. @Modifying
  24. @CacheEvict(value = {"collectionInfo"}, allEntries = true)
  25. CollectionPrivilege save(CollectionPrivilege record);
  26. CollectionPrivilege findByCompanyCollectionId(Long collectionId);
  27. }