@@ -2,6 +2,7 @@ import { VaultInvestOrder } from "ponder:schema";
22import type { Event } from "ponder:registry" ;
33import { Service , mixinCommonStatics } from "./Service" ;
44import { serviceLog } from "../helpers/logger" ;
5+ import { bigintMax } from "../helpers/bigintMath" ;
56
67/**
78 * Service class for managing VaultInvestOrder entities.
@@ -23,8 +24,9 @@ export class VaultInvestOrderService extends mixinCommonStatics(
2324 */
2425 public depositRequest ( requestedAssetsAmount : bigint ) {
2526 serviceLog ( `Adding requested assets amount ${ requestedAssetsAmount } to vault invest order` ) ;
26- this . data . requestedAssetsAmount =
27- ( this . data . requestedAssetsAmount ?? 0n ) + requestedAssetsAmount ;
27+ const previousRequestedAssetsAmount = this . data . requestedAssetsAmount ?? 0n ;
28+ const newRequestedAssetsAmount = previousRequestedAssetsAmount + requestedAssetsAmount ;
29+ this . data . requestedAssetsAmount = newRequestedAssetsAmount ;
2830 return this ;
2931 }
3032
@@ -35,8 +37,9 @@ export class VaultInvestOrderService extends mixinCommonStatics(
3537 */
3638 public claimableDeposit ( claimableAssetsAmount : bigint ) {
3739 serviceLog ( `Adding claimable assets amount ${ claimableAssetsAmount } to vault invest order` ) ;
38- this . data . claimableAssetsAmount =
39- ( this . data . claimableAssetsAmount ?? 0n ) + claimableAssetsAmount ;
40+ const previousClaimableAssetsAmount = this . data . claimableAssetsAmount ?? 0n ;
41+ const newClaimableAssetsAmount = previousClaimableAssetsAmount + claimableAssetsAmount ;
42+ this . data . claimableAssetsAmount = newClaimableAssetsAmount ;
4043 return this ;
4144 }
4245
@@ -47,8 +50,12 @@ export class VaultInvestOrderService extends mixinCommonStatics(
4750 */
4851 public deposit ( assetsAmount : bigint ) {
4952 serviceLog ( `Depositing assets amount ${ assetsAmount } into vault invest order` ) ;
50- this . data . requestedAssetsAmount = ( this . data . requestedAssetsAmount ?? 0n ) - assetsAmount ;
51- this . data . claimableAssetsAmount = ( this . data . claimableAssetsAmount ?? 0n ) - assetsAmount ;
53+ const previousRequestedAssetsAmount = this . data . requestedAssetsAmount ?? 0n ;
54+ const newRequestedAssetsAmount = previousRequestedAssetsAmount - assetsAmount ;
55+ this . data . requestedAssetsAmount = bigintMax ( newRequestedAssetsAmount , 0n ) ;
56+ const previousClaimableAssetsAmount = this . data . claimableAssetsAmount ?? 0n ;
57+ const newClaimableAssetsAmount = previousClaimableAssetsAmount - assetsAmount ;
58+ this . data . claimableAssetsAmount = bigintMax ( newClaimableAssetsAmount , 0n ) ;
5259 return this ;
5360 }
5461
0 commit comments