package com.izouma.nineth.repo; import com.izouma.nineth.domain.UserBalance; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; import org.springframework.data.jpa.repository.Modifying; import org.springframework.data.jpa.repository.Query; import javax.transaction.Transactional; import java.math.BigDecimal; import java.util.List; import java.util.Optional; public interface UserBalanceRepo extends JpaRepository, JpaSpecificationExecutor { List findByBalanceGreaterThan(BigDecimal balance); List findByLockedFalseAndBalanceGreaterThanOrderByUserId(BigDecimal balance); @Query("update UserBalance u set u.locked = false, u.lockTime = null, u.lockReason = null where u.userId = ?1") @Modifying @Transactional int unlock(Long userId); Optional findByUserId(Long userId); }