goldenChat base source add
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcAppSettings;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
@Repository
|
||||
public interface GcAppSettingsRepository extends JpaRepository<GcAppSettings, Long> {
|
||||
|
||||
Optional<GcAppSettings> findByDeviceId(String deviceId);
|
||||
|
||||
Optional<GcAppSettings> findByUserId(Long userId);
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcBacktestResult;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface GcBacktestResultRepository extends JpaRepository<GcBacktestResult, Long> {
|
||||
List<GcBacktestResult> findByDeviceIdOrderByCreatedAtDesc(String deviceId);
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcBacktestSettings;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
public interface GcBacktestSettingsRepository extends JpaRepository<GcBacktestSettings, Long> {
|
||||
Optional<GcBacktestSettings> findFirstByDeviceIdOrderByUpdatedAtDesc(String deviceId);
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcChartWorkspace;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
public interface GcChartWorkspaceRepository extends JpaRepository<GcChartWorkspace, Long> {
|
||||
|
||||
Optional<GcChartWorkspace> findByUserId(Long userId);
|
||||
|
||||
Optional<GcChartWorkspace> findByDeviceId(String deviceId);
|
||||
|
||||
@Query("SELECT w FROM GcChartWorkspace w LEFT JOIN FETCH w.slots WHERE w.userId = :userId")
|
||||
Optional<GcChartWorkspace> findWithSlotsByUserId(Long userId);
|
||||
|
||||
@Query("SELECT w FROM GcChartWorkspace w LEFT JOIN FETCH w.slots WHERE w.deviceId = :deviceId")
|
||||
Optional<GcChartWorkspace> findWithSlotsByDeviceId(String deviceId);
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcFcmToken;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
public interface GcFcmTokenRepository extends JpaRepository<GcFcmToken, Long> {
|
||||
|
||||
Optional<GcFcmToken> findByToken(String token);
|
||||
|
||||
List<GcFcmToken> findByActiveTrue();
|
||||
|
||||
List<GcFcmToken> findByDeviceIdAndActiveTrue(String deviceId);
|
||||
|
||||
void deleteByDeviceId(String deviceId);
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcHoldings;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface GcHoldingsRepository extends JpaRepository<GcHoldings, Long> {
|
||||
List<GcHoldings> findByUserIdOrderByDisplayOrderAsc(Long userId);
|
||||
List<GcHoldings> findByDeviceIdOrderByDisplayOrderAsc(String deviceId);
|
||||
void deleteByUserIdAndSymbol(Long userId, String symbol);
|
||||
void deleteByDeviceIdAndSymbol(String deviceId, String symbol);
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcIndicatorSettings;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
@Repository
|
||||
public interface GcIndicatorSettingsRepository extends JpaRepository<GcIndicatorSettings, Long> {
|
||||
|
||||
Optional<GcIndicatorSettings> findByDeviceId(String deviceId);
|
||||
|
||||
Optional<GcIndicatorSettings> findByUserId(Long userId);
|
||||
}
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcLiveStrategySettings;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
import org.springframework.data.repository.query.Param;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
public interface GcLiveStrategySettingsRepository
|
||||
extends JpaRepository<GcLiveStrategySettings, Long> {
|
||||
|
||||
Optional<GcLiveStrategySettings> findByUserIdAndMarket(Long userId, String market);
|
||||
|
||||
Optional<GcLiveStrategySettings> findByDeviceIdAndMarket(String deviceId, String market);
|
||||
|
||||
/** isLiveCheck = true 인 모든 설정 (스케줄러 순회용) */
|
||||
List<GcLiveStrategySettings> findAllByIsLiveCheckTrue();
|
||||
|
||||
/** 디바이스별 실시간 체크 ON 설정 */
|
||||
List<GcLiveStrategySettings> findByDeviceIdAndIsLiveCheckTrue(String deviceId);
|
||||
|
||||
/** 유저별 실시간 체크 ON 설정 */
|
||||
List<GcLiveStrategySettings> findByUserIdAndIsLiveCheckTrue(Long userId);
|
||||
|
||||
/** 특정 마켓의 활성 설정 전체 (여러 디바이스가 동일 마켓 구독 시) */
|
||||
@Query("SELECT s FROM GcLiveStrategySettings s WHERE s.market = :market AND s.isLiveCheck = true")
|
||||
List<GcLiveStrategySettings> findActiveByMarket(@Param("market") String market);
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcLiveTrade;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
public interface GcLiveTradeRepository extends JpaRepository<GcLiveTrade, Long> {
|
||||
List<GcLiveTrade> findTop100ByDeviceIdOrderByCreatedAtDesc(String deviceId);
|
||||
Optional<GcLiveTrade> findTopByDeviceIdAndSymbolAndSideOrderByCreatedAtDesc(
|
||||
String deviceId, String symbol, String side);
|
||||
List<GcLiveTrade> findBySymbolAndSideOrderByCreatedAtDesc(String symbol, String side);
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcPaperAccount;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
public interface GcPaperAccountRepository extends JpaRepository<GcPaperAccount, Long> {
|
||||
Optional<GcPaperAccount> findByDeviceId(String deviceId);
|
||||
Optional<GcPaperAccount> findByUserId(Long userId);
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcPaperPosition;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
public interface GcPaperPositionRepository extends JpaRepository<GcPaperPosition, Long> {
|
||||
List<GcPaperPosition> findByAccountIdOrderBySymbolAsc(Long accountId);
|
||||
Optional<GcPaperPosition> findByAccountIdAndSymbol(Long accountId, String symbol);
|
||||
/** 실시간 손절/익절 — 종목별 보유 포지션 전체 */
|
||||
List<GcPaperPosition> findBySymbolAndQuantityGreaterThan(String symbol, java.math.BigDecimal minQty);
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcPaperTrade;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface GcPaperTradeRepository extends JpaRepository<GcPaperTrade, Long> {
|
||||
List<GcPaperTrade> findTop100ByAccountIdOrderByCreatedAtDesc(Long accountId);
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcRoleMenuPermission;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface GcRoleMenuPermissionRepository extends JpaRepository<GcRoleMenuPermission, Long> {
|
||||
List<GcRoleMenuPermission> findByRole(String role);
|
||||
void deleteByRole(String role);
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcStrategy;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface GcStrategyRepository extends JpaRepository<GcStrategy, Long> {
|
||||
|
||||
/** 사용자 ID 기준 전략 목록 조회 */
|
||||
List<GcStrategy> findByUserIdOrderByUpdatedAtDesc(Long userId);
|
||||
|
||||
/** 기기 ID 기준 전략 목록 조회 (비회원) */
|
||||
List<GcStrategy> findByDeviceIdOrderByUpdatedAtDesc(String deviceId);
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcTradeSignal;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface GcTradeSignalRepository extends JpaRepository<GcTradeSignal, Long> {
|
||||
|
||||
List<GcTradeSignal> findByDeviceIdOrderByCreatedAtDesc(String deviceId);
|
||||
List<GcTradeSignal> findByUserIdOrderByCreatedAtDesc(Long userId);
|
||||
List<GcTradeSignal> findByDeviceIdAndMarketOrderByCreatedAtDesc(String deviceId, String market);
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcUser;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
public interface GcUserRepository extends JpaRepository<GcUser, Long> {
|
||||
Optional<GcUser> findByUsername(String username);
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.goldenchart.repository;
|
||||
|
||||
import com.goldenchart.entity.GcWatchlist;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface GcWatchlistRepository extends JpaRepository<GcWatchlist, Long> {
|
||||
List<GcWatchlist> findByUserIdOrderByDisplayOrderAsc(Long userId);
|
||||
List<GcWatchlist> findByDeviceIdOrderByDisplayOrderAsc(String deviceId);
|
||||
void deleteByUserIdAndSymbol(Long userId, String symbol);
|
||||
void deleteByDeviceIdAndSymbol(String deviceId, String symbol);
|
||||
}
|
||||
Reference in New Issue
Block a user