fillFeeBP in SwapOrderStatus
This commit is contained in:
@@ -75,6 +75,7 @@ SwapOrder
|
||||
@dataclass
|
||||
class SwapStatus:
|
||||
# this is an elaborated version of the on-chain status
|
||||
fillFeeBP: int
|
||||
state: SwapOrderState
|
||||
start: int
|
||||
ocoGroup: Optional[int]
|
||||
@@ -96,37 +97,40 @@ class SwapOrderStatus(SwapStatus):
|
||||
@staticmethod
|
||||
def load(obj):
|
||||
order = SwapOrder.load(obj[0])
|
||||
state = SwapOrderState(obj[1])
|
||||
start = obj[2]
|
||||
ocoGroup = None if obj[3] == NO_OCO else obj[3]
|
||||
filledIn = int(obj[4])
|
||||
filledOut = int(obj[5])
|
||||
trancheFilledIn = [int(f) for f in obj[6]]
|
||||
trancheFilledOut = [int(f) for f in obj[7]]
|
||||
return SwapOrderStatus(order, state, start, ocoGroup, filledIn, filledOut, trancheFilledIn, trancheFilledOut)
|
||||
fillFeeBP = int(obj[1])
|
||||
state = SwapOrderState(obj[2])
|
||||
start = obj[3]
|
||||
ocoGroup = None if obj[4] == NO_OCO else obj[4]
|
||||
filledIn = int(obj[5])
|
||||
filledOut = int(obj[6])
|
||||
trancheFilledIn = [int(f) for f in obj[7]]
|
||||
trancheFilledOut = [int(f) for f in obj[8]]
|
||||
return SwapOrderStatus(order, fillFeeBP, state, start, ocoGroup, filledIn, filledOut, trancheFilledIn, trancheFilledOut)
|
||||
|
||||
@staticmethod
|
||||
def load_from_chain(obj):
|
||||
# 0 SwapOrder order;
|
||||
# 1 bool canceled;
|
||||
# 2 uint32 start;
|
||||
# 3 uint64 ocoGroup;
|
||||
# 4 uint256 filled; // total
|
||||
# 5 uint256[] trancheFilled; // sum(trancheFilled) == filled
|
||||
# 1 int fillFeeBP
|
||||
# 2 bool canceled;
|
||||
# 3 uint32 start;
|
||||
# 4 uint64 ocoGroup;
|
||||
# 5 uint256 filled; // total
|
||||
# 6 uint256[] trancheFilled; // sum(trancheFilled) == filled
|
||||
|
||||
order = SwapOrder.load(obj[0])
|
||||
state = SwapOrderState.Canceled if obj[1] else SwapOrderState.Open
|
||||
start = obj[2]
|
||||
ocoGroup = None if obj[3] == NO_OCO else obj[3]
|
||||
fillFeeBP = obj[1]
|
||||
state = SwapOrderState.Canceled if obj[2] else SwapOrderState.Open
|
||||
start = obj[3]
|
||||
ocoGroup = None if obj[4] == NO_OCO else obj[4]
|
||||
# we ignore any fill values from the on-chain struct, because we will subsequently detect the DexorderSwapFilled events and add them in
|
||||
filledIn = 0
|
||||
filledOut = 0
|
||||
trancheFilledIn = [0 for _ in range(len(obj[5]))]
|
||||
trancheFilledOut = [0 for _ in range(len(obj[5]))]
|
||||
return SwapOrderStatus(order, state, start, ocoGroup, filledIn, filledOut, trancheFilledIn, trancheFilledOut)
|
||||
trancheFilledIn = [0 for _ in range(len(obj[6]))]
|
||||
trancheFilledOut = [0 for _ in range(len(obj[6]))]
|
||||
return SwapOrderStatus(order, fillFeeBP, state, start, ocoGroup, filledIn, filledOut, trancheFilledIn, trancheFilledOut)
|
||||
|
||||
def dump(self):
|
||||
return (self.order.dump(), self.state.value, self.start, self.ocoGroup,
|
||||
return (self.order.dump(), self.fillFeeBP, self.state.value, self.start, self.ocoGroup,
|
||||
str(self.filledIn), str(self.filledOut),
|
||||
[str(f) for f in self.trancheFilledIn], [str(f) for f in self.trancheFilledOut])
|
||||
|
||||
|
||||
Reference in New Issue
Block a user