diff --git a/BE/src/asset/asset.controller.ts b/BE/src/asset/asset.controller.ts index df72e33d..48a68e4d 100644 --- a/BE/src/asset/asset.controller.ts +++ b/BE/src/asset/asset.controller.ts @@ -89,4 +89,9 @@ export class AssetController { async updateAllAssets() { await this.assetService.updateAllAssets(); } + + @Cron('0 8 * * 1-5') + async updatePrevTotalAsset() { + await this.assetService.updatePrevTotalAsset(); + } } diff --git a/BE/src/asset/asset.service.ts b/BE/src/asset/asset.service.ts index c081b694..a9c37c0d 100644 --- a/BE/src/asset/asset.service.ts +++ b/BE/src/asset/asset.service.ts @@ -125,7 +125,6 @@ export class AssetService { total_profit: asset.cash_balance + totalPrice - 10000000, total_profit_rate: (asset.cash_balance + totalPrice - 10000000) / 100000, last_updated: new Date(), - prev_total_asset: asset.total_asset, }; return this.assetRepository.save(updatedAsset); } @@ -162,4 +161,11 @@ export class AssetService { this.stockPriceSocketService.unsubscribeByCode(userStock.stock_code), ); } + + async updatePrevTotalAsset() { + await this.assetRepository.update( + {}, + { prev_total_asset: () => 'total_asset' }, + ); + } } diff --git a/BE/src/ranking/ranking.service.ts b/BE/src/ranking/ranking.service.ts index b7559f8f..b5782877 100644 --- a/BE/src/ranking/ranking.service.ts +++ b/BE/src/ranking/ranking.service.ts @@ -104,7 +104,7 @@ export class RankingService { }; } - @Cron('0 16 * * 1-5') + @Cron('*/1 * * * 1-5') async updateRanking() { const [profitRateRanking, assetRanking] = await Promise.all([ this.calculateRanking(SortType.PROFIT_RATE), diff --git a/FE/src/components/Mypage/MyStocksList.tsx b/FE/src/components/Mypage/MyStocksList.tsx index 51db4fa6..8b83dc94 100644 --- a/FE/src/components/Mypage/MyStocksList.tsx +++ b/FE/src/components/Mypage/MyStocksList.tsx @@ -1,3 +1,4 @@ +import { useNavigate } from 'react-router-dom'; import { MyStockListUnit } from 'types'; import { calcYield } from 'utils/common'; @@ -6,6 +7,12 @@ type MyStocksListProps = { }; export default function MyStocksList({ stocks }: MyStocksListProps) { + const navigation = useNavigate(); + + const handleClick = (code: string) => { + navigation(`/stocks/${code}`); + }; + return (
@@ -23,7 +30,11 @@ export default function MyStocksList({ stocks }: MyStocksListProps) { const stockYield = calcYield(avg_price, +stck_prpr); return ( -
  • +
  • handleClick(code)} + >

    {name}

    {code}