| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- package com.loan.system.repository;
- import com.loan.system.domain.entity.LoanCase;
- import com.loan.system.domain.entity.User;
- import org.springframework.data.domain.Page;
- import org.springframework.data.domain.Pageable;
- import org.springframework.data.jpa.repository.JpaRepository;
- import org.springframework.data.jpa.repository.Modifying;
- import org.springframework.data.jpa.repository.Query;
- import org.springframework.data.repository.query.Param;
- import org.springframework.transaction.annotation.Transactional;
- import java.util.List;
- /**
- * @author EdwinXu
- * @date 2020/9/2 - 15:35
- * @Description
- */
- public interface LoanRepository extends JpaRepository<LoanCase,Long> {
- Page<LoanCase> findByIsCompleteAndIsDelete(Boolean isComplete, boolean isDelete, Pageable pageable);
- @Transactional
- @Modifying
- @Query("UPDATE LoanCase l SET " +
- "l.customerId = CASE WHEN :#{#loanCase.customerId} IS NOT NULL THEN :#{#loanCase.customerId} ELSE l.customerId END, " +
- "l.businessType = CASE WHEN :#{#loanCase.businessType} IS NOT NULL THEN :#{#loanCase.businessType} ELSE l.businessType END, " +
- "l.businessAttrs = CASE WHEN :#{#loanCase.businessAttrs} IS NOT NULL THEN :#{#loanCase.businessAttrs} ELSE l.businessAttrs END, " +
- "l.channelName = CASE WHEN :#{#loanCase.channelName} IS NOT NULL THEN :#{#loanCase.channelName} ELSE l.channelName END, " +
- "l.recommenderId = CASE WHEN :#{#loanCase.recommenderId} IS NOT NULL THEN :#{#loanCase.recommenderId} ELSE l.recommenderId END, " +
- "l.totalLoanAmount = CASE WHEN :#{#loanCase.totalLoanAmount} IS NOT NULL THEN :#{#loanCase.totalLoanAmount} ELSE l.totalLoanAmount END, " +
- "l.isComplete = CASE WHEN :#{#loanCase.isComplete} IS NOT NULL THEN :#{#loanCase.isComplete} ELSE l.isComplete END, " +
- "l.updateTime = CASE WHEN :#{#loanCase.updateTime} IS NOT NULL THEN :#{#loanCase.updateTime} ELSE l.updateTime END " +
- "WHERE l.id = :caseId")
- void updateLoanCaseById(@Param("loanCase") LoanCase loanCase, @Param("caseId") Long caseId);
- @Query("SELECT l FROM LoanCase l WHERE l.id = :caseId and l.isDelete = :isDelete")
- LoanCase findLoanCaseById(Long caseId, boolean isDelete);
- @Modifying
- @Transactional
- @Query("update LoanCase set updateTime = ?3 where id = ?1 and isDelete = ?2")
- void updateUpdatetimeByIdAndIsDeleted(Long id,boolean isDelete,String updateTime);
- @Modifying
- @Transactional
- @Query("UPDATE LoanCase SET updateTime = ?3, isDelete = ?2 WHERE id = ?1 AND isDelete = ?2")
- void logic_delete(Long id, boolean isDelete, String updateTime);
- Boolean existsByIdAndIsDelete(Long caseId, boolean isDelete);
- }
|