Documentation ¶
Index ¶
- Constants
- type Block
- type CancelEvent
- type CheckPoint
- type CutOffEvent
- type CutOffPairEvent
- type FillEvent
- type FilledOrder
- type Order
- type PageResult
- type RdsService
- type RdsServiceImpl
- func (s *RdsServiceImpl) Add(item interface{}) error
- func (s *RdsServiceImpl) Del(item interface{}) error
- func (s *RdsServiceImpl) DelPendingTxEntity(hash string) error
- func (s *RdsServiceImpl) DelPendingTxView(hash string) error
- func (s *RdsServiceImpl) FillsPageQuery(query map[string]interface{}, pageIndex, pageSize int) (res PageResult, err error)
- func (s *RdsServiceImpl) FindAll(item interface{}) error
- func (s *RdsServiceImpl) FindBlockByHash(blockhash common.Hash) (*Block, error)
- func (s *RdsServiceImpl) FindFillEvent(txhash string, FillIndex int64) (*FillEvent, error)
- func (s *RdsServiceImpl) FindFillsByRingHash(ringHash common.Hash) ([]FillEvent, error)
- func (s *RdsServiceImpl) FindLatestBlock() (*Block, error)
- func (s *RdsServiceImpl) FindPendingTxEntity(hash string) (TransactionEntity, error)
- func (s *RdsServiceImpl) FindRingMined(txhash string) (*RingMinedEvent, error)
- func (s *RdsServiceImpl) FindTxEntity(txhash string, logIndex int64) (TransactionEntity, error)
- func (s *RdsServiceImpl) FindWhiteListUserByAddress(address common.Address) (*WhiteList, error)
- func (s *RdsServiceImpl) First(item interface{}) error
- func (s *RdsServiceImpl) GetCancelEvent(txhash common.Hash) (CancelEvent, error)
- func (s *RdsServiceImpl) GetCancelForkEvents(from, to int64) ([]CancelEvent, error)
- func (s *RdsServiceImpl) GetCutoffEvent(txhash common.Hash) (CutOffEvent, error)
- func (s *RdsServiceImpl) GetCutoffForkEvents(from, to int64) ([]CutOffEvent, error)
- func (s *RdsServiceImpl) GetCutoffOrders(owner common.Address, cutoffTime *big.Int) ([]Order, error)
- func (s *RdsServiceImpl) GetCutoffPairEvent(txhash common.Hash) (CutOffPairEvent, error)
- func (s *RdsServiceImpl) GetCutoffPairForkEvents(from, to int64) ([]CutOffPairEvent, error)
- func (s *RdsServiceImpl) GetCutoffPairOrders(owner, token1, token2 common.Address, cutoffTime *big.Int) ([]Order, error)
- func (s *RdsServiceImpl) GetFillForkEvents(from, to int64) ([]FillEvent, error)
- func (s *RdsServiceImpl) GetFilledOrderByRinghash(ringhash common.Hash) ([]*FilledOrder, error)
- func (s *RdsServiceImpl) GetFrozenAmount(owner common.Address, token common.Address, statusSet []types.OrderStatus, ...) ([]Order, error)
- func (s *RdsServiceImpl) GetFrozenLrcFee(owner common.Address, statusSet []types.OrderStatus) ([]Order, error)
- func (s *RdsServiceImpl) GetLatestFills(query map[string]interface{}, limit int) (res []FillEvent, err error)
- func (s *RdsServiceImpl) GetOrderBook(delegate, tokenS, tokenB common.Address, length int) ([]Order, error)
- func (s *RdsServiceImpl) GetOrderByHash(orderhash common.Hash) (*Order, error)
- func (s *RdsServiceImpl) GetOrdersByHash(orderhashs []string) (map[string]Order, error)
- func (s *RdsServiceImpl) GetOrdersForMiner(protocol, tokenS, tokenB string, length int, filterStatus []types.OrderStatus, ...) ([]*Order, error)
- func (s *RdsServiceImpl) GetPendingTxEntity(from string, nonce int64) ([]TransactionEntity, error)
- func (s *RdsServiceImpl) GetPendingTxViewByOwner(owner string) ([]TransactionView, error)
- func (s *RdsServiceImpl) GetRingForSubmitByHash(ringhash common.Hash) (ringForSubmit RingSubmitInfo, err error)
- func (s *RdsServiceImpl) GetRingHashesByTxHash(txHash common.Hash) ([]*RingSubmitInfo, error)
- func (s *RdsServiceImpl) GetRingminedMethods(lastId int, limit int) ([]RingMinedEvent, error)
- func (s *RdsServiceImpl) GetTransactionById(id int) (Transaction, error)
- func (s *RdsServiceImpl) GetTxEntity(hashlist []string) ([]TransactionEntity, error)
- func (s *RdsServiceImpl) GetTxViewByOwner(owner string, symbol string, status types.TxStatus, typ txtyp.TxType, ...) ([]TransactionView, error)
- func (s *RdsServiceImpl) GetTxViewByOwnerAndHashs(owner string, hashs []string) ([]TransactionView, error)
- func (s *RdsServiceImpl) GetTxViewCountByOwner(owner string, symbol string, status types.TxStatus, typ txtyp.TxType) (int, error)
- func (s *RdsServiceImpl) GetWhiteList() ([]WhiteList, error)
- func (s *RdsServiceImpl) Last(item interface{}) error
- func (s *RdsServiceImpl) MarkMinerOrders(filterOrderhashs []string, blockNumber int64) error
- func (s *RdsServiceImpl) OrderPageQuery(query map[string]interface{}, statusList []int, pageIndex, pageSize int) (PageResult, error)
- func (s *RdsServiceImpl) Prepare()
- func (s *RdsServiceImpl) QueryCheckPointByType(businessType string) (point CheckPoint, err error)
- func (s *RdsServiceImpl) QueryRecentFills(market, owner string, start int64, end int64) (fills []FillEvent, err error)
- func (s *RdsServiceImpl) RingMinedPageQuery(query map[string]interface{}, pageIndex, pageSize int) (res PageResult, err error)
- func (s *RdsServiceImpl) RollBackCancel(from, to int64) error
- func (s *RdsServiceImpl) RollBackCutoff(from, to int64) error
- func (s *RdsServiceImpl) RollBackCutoffPair(from, to int64) error
- func (s *RdsServiceImpl) RollBackFill(from, to int64) error
- func (s *RdsServiceImpl) RollBackRingMined(from, to int64) error
- func (s *RdsServiceImpl) RollBackTxEntity(from, to int64) error
- func (s *RdsServiceImpl) RollBackTxView(from, to int64) error
- func (s *RdsServiceImpl) Save(item interface{}) error
- func (s *RdsServiceImpl) SaveBlock(latest *Block) error
- func (s *RdsServiceImpl) SetCutOffOrders(orderHashList []common.Hash, blockNumber *big.Int) error
- func (s *RdsServiceImpl) SetForkBlock(from, to int64) error
- func (s *RdsServiceImpl) SetPendingTxEntityFailed(hashlist []string) error
- func (s *RdsServiceImpl) SetPendingTxViewFailed(hashlist []string) error
- func (s *RdsServiceImpl) TrendQueryByInterval(intervals, market string, start, end int64) (trends []Trend, err error)
- func (s *RdsServiceImpl) TrendQueryByTime(intervals, market string, start, end int64) (trends []Trend, err error)
- func (s *RdsServiceImpl) TrendQueryForProof(mkt, interval string, start int64) (trends []Trend, err error)
- func (s *RdsServiceImpl) TrendQueryLatest(query Trend, pageIndex, pageSize int) (trends []Trend, err error)
- func (s *RdsServiceImpl) UpdateBroadcastTimeByHash(hash string, bt int) error
- func (s *RdsServiceImpl) UpdateOrderWhileCancel(hash common.Hash, status types.OrderStatus, ...) error
- func (s *RdsServiceImpl) UpdateOrderWhileFill(hash common.Hash, status types.OrderStatus, ...) error
- func (s *RdsServiceImpl) UpdateOrderWhileRollbackCutoff(orderhash common.Hash, status types.OrderStatus, blockNumber *big.Int) error
- func (s *RdsServiceImpl) UpdateRingSubmitInfoResult(submitResult *types.RingSubmitResultEvent) error
- func (s *RdsServiceImpl) UpdateRingSubmitInfoSubmitUsedGas(txHash string, usedGas *big.Int) error
- type RingMinedEvent
- type RingSubmitInfo
- type Transaction
- type TransactionEntity
- type TransactionView
- type Trend
- type WhiteList
Constants ¶
const (
TrendUpdateType = "last_trend__proof_time"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Block ¶
type Block struct { ID int `gorm:"column:id;primary_key"` BlockNumber int64 `gorm:"column:block_number;type:bigint"` BlockHash string `gorm:"column:block_hash;type:varchar(82)"` ParentHash string `gorm:"column:parent_hash;type:varchar(82)"` CreateTime int64 `gorm:"column:create_time"` Fork bool `gorm:"column:fork;"` }
func (*Block) ConvertDown ¶
convert types/block to dao/block
type CancelEvent ¶
type CancelEvent struct { ID int `gorm:"column:id;primary_key;"` Protocol string `gorm:"column:contract_address;type:varchar(42)"` DelegateAddress string `gorm:"column:delegate_address;type:varchar(42)"` OrderHash string `gorm:"column:order_hash;type:varchar(82)"` TxHash string `gorm:"column:tx_hash;type:varchar(82)"` BlockNumber int64 `gorm:"column:block_number"` CreateTime int64 `gorm:"column:create_time"` AmountCancelled string `gorm:"column:amount_cancelled;type:varchar(40)"` LogIndex int64 `gorm:"column:log_index"` Fork bool `gorm:"column:fork"` }
func (*CancelEvent) ConvertDown ¶
func (e *CancelEvent) ConvertDown(src *types.OrderCancelledEvent) error
convert chainClient/orderCancelledEvent to dao/CancelEvent
func (*CancelEvent) ConvertUp ¶
func (e *CancelEvent) ConvertUp(dst *types.OrderCancelledEvent) error
convert dao/cancelEvent to types/cancelEvent
type CheckPoint ¶
type CheckPoint struct { ID int `gorm:"column:id;primary_key;"` BusinessType string `gorm:"column:business_type;type:varchar(42);unique_index"` CheckPoint int64 `gorm:"column:check_point;type:bigint"` CreateTime int64 `gorm:"column:create_time;type:bigint"` ModifyTime int64 `gorm:"column:modify_time;type:bigint"` }
common check point table
type CutOffEvent ¶
type CutOffEvent struct { ID int `gorm:"column:id;primary_key;"` Protocol string `gorm:"column:contract_address;type:varchar(42)"` DelegateAddress string `gorm:"column:delegate_address;type:varchar(42)"` Owner string `gorm:"column:owner;type:varchar(42)"` TxHash string `gorm:"column:tx_hash;type:varchar(82)"` OrderHashList string `gorm:"column:order_hash_list;type:text"` BlockNumber int64 `gorm:"column:block_number"` Cutoff int64 `gorm:"column:cutoff"` LogIndex int64 `gorm:"column:log_index"` Fork bool `gorm:"column:fork"` CreateTime int64 `gorm:"column:create_time"` }
todo(fuk): rename table
func (*CutOffEvent) ConvertDown ¶
func (e *CutOffEvent) ConvertDown(src *types.CutoffEvent) error
convert types/cutoffEvent to dao/CancelEvent
func (*CutOffEvent) ConvertUp ¶
func (e *CutOffEvent) ConvertUp(dst *types.CutoffEvent) error
convert dao/cutoffEvent to types/cutoffEvent
type CutOffPairEvent ¶
type CutOffPairEvent struct { ID int `gorm:"column:id;primary_key;"` Protocol string `gorm:"column:contract_address;type:varchar(42)"` DelegateAddress string `gorm:"column:delegate_address;type:varchar(42)"` Owner string `gorm:"column:owner;type:varchar(42)"` Token1 string `gorm:"column:token1;type:varchar(42)"` Token2 string `gorm:"column:token2;type:varchar(42)"` TxHash string `gorm:"column:tx_hash;type:varchar(82)"` OrderHashList string `gorm:"column:order_hash_list;type:text"` BlockNumber int64 `gorm:"column:block_number"` LogIndex int64 `gorm:"column:log_index"` Cutoff int64 `gorm:"column:cutoff"` CreateTime int64 `gorm:"column:create_time"` Fork bool `gorm:"column:fork"` }
func (*CutOffPairEvent) ConvertDown ¶
func (e *CutOffPairEvent) ConvertDown(src *types.CutoffPairEvent) error
convert types/cutoffPairEvent to dao/cutoffPairEvent
func (*CutOffPairEvent) ConvertUp ¶
func (e *CutOffPairEvent) ConvertUp(dst *types.CutoffPairEvent) error
convert dao/cutoffPairEvent to types/cutoffPairEvent
type FillEvent ¶
type FillEvent struct { ID int `gorm:"column:id;primary_key;" json:"id"` Protocol string `gorm:"column:contract_address;type:varchar(42)" json:"protocol"` DelegateAddress string `gorm:"column:delegate_address;type:varchar(42)" json:"delegateAddress"` Owner string `gorm:"column:owner;type:varchar(42)" json:"owner"` RingIndex int64 `gorm:"column:ring_index;" json:"ringIndex"` BlockNumber int64 `gorm:"column:block_number" json:"blockNumber"` CreateTime int64 `gorm:"column:create_time" json:"createTime"` RingHash string `gorm:"column:ring_hash;varchar(82)" json:"ringHash"` FillIndex int64 `gorm:"column:fill_index" json:"fillIndex"` TxHash string `gorm:"column:tx_hash;type:varchar(82)" json:"txHash"` PreOrderHash string `gorm:"column:pre_order_hash;varchar(82)" json:"preOrderHash"` NextOrderHash string `gorm:"column:next_order_hash;varchar(82)" json:"nextOrderHash"` OrderHash string `gorm:"column:order_hash;type:varchar(82)" json:"orderHash"` AmountS string `gorm:"column:amount_s;type:varchar(40)" json:"amountS"` AmountB string `gorm:"column:amount_b;type:varchar(40)" json:"amountB"` TokenS string `gorm:"column:token_s;type:varchar(42)" json:"tokenS"` TokenB string `gorm:"column:token_b;type:varchar(42)" json:"tokenB"` LrcReward string `gorm:"column:lrc_reward;type:varchar(40)" json:"lrcReward"` LrcFee string `gorm:"column:lrc_fee;type:varchar(40)" json:"lrcFee"` SplitS string `gorm:"column:split_s;type:varchar(40)" json:"splitS"` SplitB string `gorm:"column:split_b;type:varchar(40)" json:"splitB"` Market string `gorm:"column:market;type:varchar(42)" json:"market"` LogIndex int64 `gorm:"column:log_index"` Fork bool `gorm:"column:fork"` Side string `gorm:"column:side" json:"side"` OrderType string `gorm:"column:order_type" json:"orderType"` }
func (*FillEvent) ConvertDown ¶
func (f *FillEvent) ConvertDown(src *types.OrderFilledEvent) error
convert chainclient/orderFilledEvent to dao/fill
type FilledOrder ¶
type FilledOrder struct { ID int `gorm:"column:id;primary_key;"` RingHash string `gorm:"column:ringhash;type:varchar(82)"` OrderHash string `gorm:"column:orderhash;type:varchar(82)"` FeeSelection uint8 `gorm:"column:fee_selection" json:"feeSelection"` RateAmountS string `gorm:"column:rate_amount_s;type:text" json:"rateAmountS"` AvailableAmountS string `gorm:"column:available_amount_s;type:text"json:"availableAmountS"` AvailableAmountB string `gorm:"column:available_amount_b;type:text"` FillAmountS string `gorm:"column:fill_amount_s;type:text" json:"fillAmountS"` FillAmountB string `gorm:"column:fill_amount_b;type:text" json:"fillAmountB"` LrcReward string `gorm:"column:lrc_reward;type:text" json:"lrcReward"` LrcFee string `gorm:"column:lrc_fee;type:text" json:"lrcFee"` FeeS string `gorm:"column:fee_s;type:text" json:"feeS"` LegalFee string `gorm:"column:legal_fee;type:text" json:"legalFee"` SPrice string `gorm:"column:s_price;type:text" json:"sPrice"` BPrice string `gorm:"column:b_price;type:text" json:"sPrice"` }
func (*FilledOrder) ConvertDown ¶
func (daoFilledOrder *FilledOrder) ConvertDown(filledOrder *types.FilledOrder, ringhash common.Hash) error
func (*FilledOrder) ConvertUp ¶
func (daoFilledOrder *FilledOrder) ConvertUp(filledOrder *types.FilledOrder, rds RdsService) error
type Order ¶
type Order struct { ID int `gorm:"column:id;primary_key;"` Protocol string `gorm:"column:protocol;type:varchar(42)"` DelegateAddress string `gorm:"column:delegate_address;type:varchar(42)"` Owner string `gorm:"column:owner;type:varchar(42)"` AuthAddress string `gorm:"column:auth_address;type:varchar(42)"` PrivateKey string `gorm:"column:priv_key;type:varchar(128)"` WalletAddress string `gorm:"column:wallet_address;type:varchar(42)"` OrderHash string `gorm:"column:order_hash;type:varchar(82)"` TokenS string `gorm:"column:token_s;type:varchar(42)"` TokenB string `gorm:"column:token_b;type:varchar(42)"` AmountS string `gorm:"column:amount_s;type:varchar(40)"` AmountB string `gorm:"column:amount_b;type:varchar(40)"` CreateTime int64 `gorm:"column:create_time;type:bigint"` ValidSince int64 `gorm:"column:valid_since;type:bigint"` ValidUntil int64 `gorm:"column:valid_until;type:bigint"` LrcFee string `gorm:"column:lrc_fee;type:varchar(40)"` BuyNoMoreThanAmountB bool `gorm:"column:buy_nomore_than_amountb"` MarginSplitPercentage uint8 `gorm:"column:margin_split_percentage;type:tinyint(4)"` V uint8 `gorm:"column:v;type:tinyint(4)"` R string `gorm:"column:r;type:varchar(66)"` S string `gorm:"column:s;type:varchar(66)"` PowNonce uint64 `gorm:"column:pow_nonce;type:bigint"` Price float64 `gorm:"column:price;type:decimal(28,16);"` UpdatedBlock int64 `gorm:"column:updated_block;type:bigint"` DealtAmountS string `gorm:"column:dealt_amount_s;type:varchar(40)"` DealtAmountB string `gorm:"column:dealt_amount_b;type:varchar(40)"` CancelledAmountS string `gorm:"column:cancelled_amount_s;type:varchar(40)"` CancelledAmountB string `gorm:"column:cancelled_amount_b;type:varchar(40)"` SplitAmountS string `gorm:"column:split_amount_s;type:varchar(40)"` SplitAmountB string `gorm:"column:split_amount_b;type:varchar(40)"` Status uint8 `gorm:"column:status;type:tinyint(4)"` MinerBlockMark int64 `gorm:"column:miner_block_mark;type:bigint"` BroadcastTime int `gorm:"column:broadcast_time;type:bigint"` Market string `gorm:"column:market;type:varchar(40)"` Side string `gorm:"column:side;type:varchar(40)` OrderType string `gorm:"column:order_type;type:varchar(40)` }
func (*Order) ConvertDown ¶
func (o *Order) ConvertDown(state *types.OrderState) error
convert types/orderState to dao/order
type PageResult ¶
type RdsService ¶
type RdsService interface { // create tables Prepare() // base functions Add(item interface{}) error Del(item interface{}) error First(item interface{}) error Last(item interface{}) error Save(item interface{}) error FindAll(item interface{}) error // ring mined table FindRingMined(txhash string) (*RingMinedEvent, error) RollBackRingMined(from, to int64) error // order table GetOrderByHash(orderhash common.Hash) (*Order, error) GetOrdersByHash(orderhashs []string) (map[string]Order, error) MarkMinerOrders(filterOrderhashs []string, blockNumber int64) error GetOrdersForMiner(protocol, tokenS, tokenB string, length int, filterStatus []types.OrderStatus, reservedTime, startBlockNumber, endBlockNumber int64) ([]*Order, error) GetCutoffOrders(owner common.Address, cutoffTime *big.Int) ([]Order, error) GetCutoffPairOrders(owner, token1, token2 common.Address, cutoffTime *big.Int) ([]Order, error) SetCutOffOrders(orderHashList []common.Hash, blockNumber *big.Int) error GetOrderBook(protocol, tokenS, tokenB common.Address, length int) ([]Order, error) OrderPageQuery(query map[string]interface{}, statusList []int, pageIndex, pageSize int) (PageResult, error) UpdateBroadcastTimeByHash(hash string, bt int) error UpdateOrderWhileRollbackCutoff(orderhash common.Hash, status types.OrderStatus, blockNumber *big.Int) error UpdateOrderWhileFill(hash common.Hash, status types.OrderStatus, dealtAmountS, dealtAmountB, splitAmountS, splitAmountB, blockNumber *big.Int) error UpdateOrderWhileCancel(hash common.Hash, status types.OrderStatus, cancelledAmountS, cancelledAmountB, blockNumber *big.Int) error GetFrozenAmount(owner common.Address, token common.Address, statusSet []types.OrderStatus, delegateAddress common.Address) ([]Order, error) GetFrozenLrcFee(owner common.Address, statusSet []types.OrderStatus) ([]Order, error) // block table FindBlockByHash(blockhash common.Hash) (*Block, error) FindLatestBlock() (*Block, error) SetForkBlock(from, to int64) error SaveBlock(latest *Block) error // fill event table FindFillEvent(txhash string, FillIndex int64) (*FillEvent, error) QueryRecentFills(mkt, owner string, start int64, end int64) (fills []FillEvent, err error) GetFillForkEvents(from, to int64) ([]FillEvent, error) RollBackFill(from, to int64) error FillsPageQuery(query map[string]interface{}, pageIndex, pageSize int) (res PageResult, err error) GetLatestFills(query map[string]interface{}, limit int) (res []FillEvent, err error) FindFillsByRingHash(ringHash common.Hash) ([]FillEvent, error) // cancel event table GetCancelEvent(txhash common.Hash) (CancelEvent, error) RollBackCancel(from, to int64) error GetCancelForkEvents(from, to int64) ([]CancelEvent, error) // cutoff event table GetCutoffEvent(txhash common.Hash) (CutOffEvent, error) GetCutoffForkEvents(from, to int64) ([]CutOffEvent, error) RollBackCutoff(from, to int64) error // cutoffpair event table GetCutoffPairEvent(txhash common.Hash) (CutOffPairEvent, error) GetCutoffPairForkEvents(from, to int64) ([]CutOffPairEvent, error) RollBackCutoffPair(from, to int64) error // trend table TrendQueryLatest(query Trend, pageIndex, pageSize int) (trends []Trend, err error) TrendQueryByTime(intervals, market string, start, end int64) (trends []Trend, err error) TrendQueryByInterval(intervals, market string, start, end int64) (trends []Trend, err error) TrendQueryForProof(mkt string, interval string, start int64) (trends []Trend, err error) // white list GetWhiteList() ([]WhiteList, error) FindWhiteListUserByAddress(address common.Address) (*WhiteList, error) UpdateRingSubmitInfoResult(submitResult *types.RingSubmitResultEvent) error GetRingForSubmitByHash(ringhash common.Hash) (RingSubmitInfo, error) GetRingHashesByTxHash(txHash common.Hash) ([]*RingSubmitInfo, error) RingMinedPageQuery(query map[string]interface{}, pageIndex, pageSize int) (res PageResult, err error) GetRingminedMethods(lastId int, limit int) ([]RingMinedEvent, error) GetFilledOrderByRinghash(ringhash common.Hash) ([]*FilledOrder, error) // transactions GetTransactionById(id int) (Transaction, error) // transactionEntity FindPendingTxEntity(hash string) (TransactionEntity, error) FindTxEntity(txhash string, logIndex int64) (TransactionEntity, error) GetTxEntity(hashlist []string) ([]TransactionEntity, error) GetPendingTxEntity(from string, nonce int64) ([]TransactionEntity, error) SetPendingTxEntityFailed(hashlist []string) error DelPendingTxEntity(hash string) error RollBackTxEntity(from, to int64) error // transactionView DelPendingTxView(hash string) error SetPendingTxViewFailed(hashlist []string) error GetTxViewByOwnerAndHashs(owner string, hashs []string) ([]TransactionView, error) GetPendingTxViewByOwner(owner string) ([]TransactionView, error) GetTxViewCountByOwner(owner string, symbol string, status types.TxStatus, typ txtyp.TxType) (int, error) GetTxViewByOwner(owner string, symbol string, status types.TxStatus, typ txtyp.TxType, limit, offset int) ([]TransactionView, error) RollBackTxView(from, to int64) error // checkpoint QueryCheckPointByType(businessType string) (point CheckPoint, err error) }
type RdsServiceImpl ¶
type RdsServiceImpl struct {
// contains filtered or unexported fields
}
func NewRdsService ¶
func NewRdsService(options config.MysqlOptions) *RdsServiceImpl
func (*RdsServiceImpl) DelPendingTxEntity ¶
func (s *RdsServiceImpl) DelPendingTxEntity(hash string) error
根据hash&status删除pending tx
func (*RdsServiceImpl) DelPendingTxView ¶
func (s *RdsServiceImpl) DelPendingTxView(hash string) error
根据hash删除pending tx
func (*RdsServiceImpl) FillsPageQuery ¶
func (s *RdsServiceImpl) FillsPageQuery(query map[string]interface{}, pageIndex, pageSize int) (res PageResult, err error)
func (*RdsServiceImpl) FindAll ¶
func (s *RdsServiceImpl) FindAll(item interface{}) error
find all items in table where primary key > 0
func (*RdsServiceImpl) FindBlockByHash ¶
func (s *RdsServiceImpl) FindBlockByHash(blockhash common.Hash) (*Block, error)
func (*RdsServiceImpl) FindFillEvent ¶
func (s *RdsServiceImpl) FindFillEvent(txhash string, FillIndex int64) (*FillEvent, error)
func (*RdsServiceImpl) FindFillsByRingHash ¶
func (s *RdsServiceImpl) FindFillsByRingHash(ringHash common.Hash) ([]FillEvent, error)
func (*RdsServiceImpl) FindLatestBlock ¶
func (s *RdsServiceImpl) FindLatestBlock() (*Block, error)
func (*RdsServiceImpl) FindPendingTxEntity ¶
func (s *RdsServiceImpl) FindPendingTxEntity(hash string) (TransactionEntity, error)
根据hash查询pending tx
func (*RdsServiceImpl) FindRingMined ¶
func (s *RdsServiceImpl) FindRingMined(txhash string) (*RingMinedEvent, error)
func (*RdsServiceImpl) FindTxEntity ¶
func (s *RdsServiceImpl) FindTxEntity(txhash string, logIndex int64) (TransactionEntity, error)
根据hash&logIndex查找唯一tx
func (*RdsServiceImpl) FindWhiteListUserByAddress ¶
func (s *RdsServiceImpl) FindWhiteListUserByAddress(address common.Address) (*WhiteList, error)
func (*RdsServiceImpl) First ¶
func (s *RdsServiceImpl) First(item interface{}) error
select first item order by primary key asc
func (*RdsServiceImpl) GetCancelEvent ¶
func (s *RdsServiceImpl) GetCancelEvent(txhash common.Hash) (CancelEvent, error)
func (*RdsServiceImpl) GetCancelForkEvents ¶
func (s *RdsServiceImpl) GetCancelForkEvents(from, to int64) ([]CancelEvent, error)
func (*RdsServiceImpl) GetCutoffEvent ¶
func (s *RdsServiceImpl) GetCutoffEvent(txhash common.Hash) (CutOffEvent, error)
func (*RdsServiceImpl) GetCutoffForkEvents ¶
func (s *RdsServiceImpl) GetCutoffForkEvents(from, to int64) ([]CutOffEvent, error)
func (*RdsServiceImpl) GetCutoffOrders ¶
func (*RdsServiceImpl) GetCutoffPairEvent ¶
func (s *RdsServiceImpl) GetCutoffPairEvent(txhash common.Hash) (CutOffPairEvent, error)
func (*RdsServiceImpl) GetCutoffPairForkEvents ¶
func (s *RdsServiceImpl) GetCutoffPairForkEvents(from, to int64) ([]CutOffPairEvent, error)
func (*RdsServiceImpl) GetCutoffPairOrders ¶
func (*RdsServiceImpl) GetFillForkEvents ¶
func (s *RdsServiceImpl) GetFillForkEvents(from, to int64) ([]FillEvent, error)
func (*RdsServiceImpl) GetFilledOrderByRinghash ¶
func (s *RdsServiceImpl) GetFilledOrderByRinghash(ringhash common.Hash) ([]*FilledOrder, error)
func (*RdsServiceImpl) GetFrozenAmount ¶
func (*RdsServiceImpl) GetFrozenLrcFee ¶
func (s *RdsServiceImpl) GetFrozenLrcFee(owner common.Address, statusSet []types.OrderStatus) ([]Order, error)
func (*RdsServiceImpl) GetLatestFills ¶
func (s *RdsServiceImpl) GetLatestFills(query map[string]interface{}, limit int) (res []FillEvent, err error)
func (*RdsServiceImpl) GetOrderBook ¶
func (*RdsServiceImpl) GetOrderByHash ¶
func (s *RdsServiceImpl) GetOrderByHash(orderhash common.Hash) (*Order, error)
func (*RdsServiceImpl) GetOrdersByHash ¶
func (s *RdsServiceImpl) GetOrdersByHash(orderhashs []string) (map[string]Order, error)
func (*RdsServiceImpl) GetOrdersForMiner ¶
func (s *RdsServiceImpl) GetOrdersForMiner(protocol, tokenS, tokenB string, length int, filterStatus []types.OrderStatus, reservedTime, startBlockNumber, endBlockNumber int64) ([]*Order, error)
func (*RdsServiceImpl) GetPendingTxEntity ¶
func (s *RdsServiceImpl) GetPendingTxEntity(from string, nonce int64) ([]TransactionEntity, error)
根据交易发起者from地址及nonce获取pending tx
func (*RdsServiceImpl) GetPendingTxViewByOwner ¶
func (s *RdsServiceImpl) GetPendingTxViewByOwner(owner string) ([]TransactionView, error)
func (*RdsServiceImpl) GetRingForSubmitByHash ¶
func (s *RdsServiceImpl) GetRingForSubmitByHash(ringhash common.Hash) (ringForSubmit RingSubmitInfo, err error)
func (*RdsServiceImpl) GetRingHashesByTxHash ¶
func (s *RdsServiceImpl) GetRingHashesByTxHash(txHash common.Hash) ([]*RingSubmitInfo, error)
func (*RdsServiceImpl) GetRingminedMethods ¶
func (s *RdsServiceImpl) GetRingminedMethods(lastId int, limit int) ([]RingMinedEvent, error)
func (*RdsServiceImpl) GetTransactionById ¶
func (s *RdsServiceImpl) GetTransactionById(id int) (Transaction, error)
func (*RdsServiceImpl) GetTxEntity ¶
func (s *RdsServiceImpl) GetTxEntity(hashlist []string) ([]TransactionEntity, error)
func (*RdsServiceImpl) GetTxViewByOwner ¶
func (s *RdsServiceImpl) GetTxViewByOwner(owner string, symbol string, status types.TxStatus, typ txtyp.TxType, limit, offset int) ([]TransactionView, error)
func (*RdsServiceImpl) GetTxViewByOwnerAndHashs ¶
func (s *RdsServiceImpl) GetTxViewByOwnerAndHashs(owner string, hashs []string) ([]TransactionView, error)
////////// read related
func (*RdsServiceImpl) GetTxViewCountByOwner ¶
func (*RdsServiceImpl) GetWhiteList ¶
func (s *RdsServiceImpl) GetWhiteList() ([]WhiteList, error)
func (*RdsServiceImpl) Last ¶
func (s *RdsServiceImpl) Last(item interface{}) error
select the last item order by primary key asc
func (*RdsServiceImpl) MarkMinerOrders ¶
func (s *RdsServiceImpl) MarkMinerOrders(filterOrderhashs []string, blockNumber int64) error
func (*RdsServiceImpl) OrderPageQuery ¶
func (s *RdsServiceImpl) OrderPageQuery(query map[string]interface{}, statusList []int, pageIndex, pageSize int) (PageResult, error)
func (*RdsServiceImpl) Prepare ¶
func (s *RdsServiceImpl) Prepare()
func (*RdsServiceImpl) QueryCheckPointByType ¶
func (s *RdsServiceImpl) QueryCheckPointByType(businessType string) (point CheckPoint, err error)
func (*RdsServiceImpl) QueryRecentFills ¶
func (*RdsServiceImpl) RingMinedPageQuery ¶
func (s *RdsServiceImpl) RingMinedPageQuery(query map[string]interface{}, pageIndex, pageSize int) (res PageResult, err error)
func (*RdsServiceImpl) RollBackCancel ¶
func (s *RdsServiceImpl) RollBackCancel(from, to int64) error
func (*RdsServiceImpl) RollBackCutoff ¶
func (s *RdsServiceImpl) RollBackCutoff(from, to int64) error
func (*RdsServiceImpl) RollBackCutoffPair ¶
func (s *RdsServiceImpl) RollBackCutoffPair(from, to int64) error
func (*RdsServiceImpl) RollBackFill ¶
func (s *RdsServiceImpl) RollBackFill(from, to int64) error
func (*RdsServiceImpl) RollBackRingMined ¶
func (s *RdsServiceImpl) RollBackRingMined(from, to int64) error
func (*RdsServiceImpl) RollBackTxEntity ¶
func (s *RdsServiceImpl) RollBackTxEntity(from, to int64) error
func (*RdsServiceImpl) RollBackTxView ¶
func (s *RdsServiceImpl) RollBackTxView(from, to int64) error
func (*RdsServiceImpl) Save ¶
func (s *RdsServiceImpl) Save(item interface{}) error
update single item
func (*RdsServiceImpl) SaveBlock ¶
func (s *RdsServiceImpl) SaveBlock(latest *Block) error
func (*RdsServiceImpl) SetCutOffOrders ¶
func (*RdsServiceImpl) SetForkBlock ¶
func (s *RdsServiceImpl) SetForkBlock(from, to int64) error
func (*RdsServiceImpl) SetPendingTxEntityFailed ¶
func (s *RdsServiceImpl) SetPendingTxEntityFailed(hashlist []string) error
func (*RdsServiceImpl) SetPendingTxViewFailed ¶
func (s *RdsServiceImpl) SetPendingTxViewFailed(hashlist []string) error
更新交易发起者相同nonce下tx为failed
func (*RdsServiceImpl) TrendQueryByInterval ¶
func (s *RdsServiceImpl) TrendQueryByInterval(intervals, market string, start, end int64) (trends []Trend, err error)
func (*RdsServiceImpl) TrendQueryByTime ¶
func (s *RdsServiceImpl) TrendQueryByTime(intervals, market string, start, end int64) (trends []Trend, err error)
func (*RdsServiceImpl) TrendQueryForProof ¶
func (s *RdsServiceImpl) TrendQueryForProof(mkt, interval string, start int64) (trends []Trend, err error)
func (*RdsServiceImpl) TrendQueryLatest ¶
func (s *RdsServiceImpl) TrendQueryLatest(query Trend, pageIndex, pageSize int) (trends []Trend, err error)
func (*RdsServiceImpl) UpdateBroadcastTimeByHash ¶
func (s *RdsServiceImpl) UpdateBroadcastTimeByHash(hash string, bt int) error
func (*RdsServiceImpl) UpdateOrderWhileCancel ¶
func (s *RdsServiceImpl) UpdateOrderWhileCancel(hash common.Hash, status types.OrderStatus, cancelledAmountS, cancelledAmountB, blockNumber *big.Int) error
func (*RdsServiceImpl) UpdateOrderWhileFill ¶
func (s *RdsServiceImpl) UpdateOrderWhileFill(hash common.Hash, status types.OrderStatus, dealtAmountS, dealtAmountB, splitAmountS, splitAmountB, blockNumber *big.Int) error
func (*RdsServiceImpl) UpdateOrderWhileRollbackCutoff ¶
func (s *RdsServiceImpl) UpdateOrderWhileRollbackCutoff(orderhash common.Hash, status types.OrderStatus, blockNumber *big.Int) error
func (*RdsServiceImpl) UpdateRingSubmitInfoResult ¶
func (s *RdsServiceImpl) UpdateRingSubmitInfoResult(submitResult *types.RingSubmitResultEvent) error
func (*RdsServiceImpl) UpdateRingSubmitInfoSubmitUsedGas ¶
func (s *RdsServiceImpl) UpdateRingSubmitInfoSubmitUsedGas(txHash string, usedGas *big.Int) error
type RingMinedEvent ¶
type RingMinedEvent struct { ID int `gorm:"column:id;primary_key" json:"id"` Protocol string `gorm:"column:contract_address;type:varchar(42)" json:"protocol"` DelegateAddress string `gorm:"column:delegate_address;type:varchar(42)" json:"delegateAddress"` RingIndex string `gorm:"column:ring_index;type:varchar(40)" json:"ringIndex"` RingHash string `gorm:"column:ring_hash;type:varchar(82)" json:"ringHash"` TxHash string `gorm:"column:tx_hash;type:varchar(82)" json:"txHash"` Miner string `gorm:"column:miner;type:varchar(42);" json:"miner"` FeeRecipient string `gorm:"column:fee_recipient;type:varchar(42)" json:"feeRecipient"` IsRinghashReserved bool `gorm:"column:is_ring_hash_reserved;" json:"isRinghashReserved"` BlockNumber int64 `gorm:"column:block_number;type:bigint" json:"blockNumber"` TotalLrcFee string `gorm:"column:total_lrc_fee;type:varchar(40)" json:"totalLrcFee"` TradeAmount int `gorm:"column:trade_amount" json:"tradeAmount"` Time int64 `gorm:"column:time;type:bigint" json:"timestamp"` Fork bool `gorm:"column:fork"` Status uint8 `gorm:"column:status;type:tinyint(4)"` GasLimit string `gorm:"column:gas_limit;type:varchar(50)"` GasUsed string `gorm:"column:gas_used;type:varchar(50)"` GasPrice string `gorm:"column:gas_price;type:varchar(50)"` Err string `gorm:"column:err;type:text" json:"err"` }
todo(fuk): delete field isRinghashReserved
func (*RingMinedEvent) ConvertDown ¶
func (r *RingMinedEvent) ConvertDown(event *types.RingMinedEvent) error
func (*RingMinedEvent) ConvertUp ¶
func (r *RingMinedEvent) ConvertUp(event *types.RingMinedEvent) error
func (*RingMinedEvent) FromSubmitRingMethod ¶
func (r *RingMinedEvent) FromSubmitRingMethod(event *types.SubmitRingMethodEvent) error
type RingSubmitInfo ¶
type RingSubmitInfo struct { ID int `gorm:"column:id;primary_key;"` RingHash string `gorm:"column:ringhash;type:varchar(82)"` UniqueId string `gorm:"column:unique_id;type:varchar(82)"` ProtocolAddress string `gorm:"column:protocol_address;type:varchar(42)"` OrdersCount int64 `gorm:"column:order_count;type:bigint"` ProtocolData string `gorm:"column:protocol_data;type:text"` ProtocolGas string `gorm:"column:protocol_gas;type:varchar(50)"` ProtocolGasPrice string `gorm:"column:protocol_gas_price;type:varchar(50)"` ProtocolUsedGas string `gorm:"column:protocol_used_gas;type:varchar(50)"` ProtocolTxHash string `gorm:"column:protocol_tx_hash;type:varchar(82)"` Status int `gorm:"column:status;type:int"` RingIndex string `gorm:"column:ring_index;type:varchar(50)"` BlockNumber string `gorm:"column:block_number;type:varchar(50)"` Miner string `gorm:"column:miner;type:varchar(42)"` Err string `gorm:"column:err;type:text"` CreateTime time.Time `gorm:"column:create_time;type:TIMESTAMP;default:CURRENT_TIMESTAMP"` }
func (*RingSubmitInfo) ConvertDown ¶
func (info *RingSubmitInfo) ConvertDown(typesInfo *types.RingSubmitInfo, err error) error
func (*RingSubmitInfo) ConvertUp ¶
func (info *RingSubmitInfo) ConvertUp(typesInfo *types.RingSubmitInfo) error
type Transaction ¶
type Transaction struct { ID int `gorm:"column:id;primary_key;"` Protocol string `gorm:"column:protocol;type:varchar(42)"` Symbol string `gorm:"column:symbol;type:varchar(20)"` Owner string `gorm:"column:owner;type:varchar(42)"` From string `gorm:"column:tx_from;type:varchar(42)"` To string `gorm:"column:tx_to;type:varchar(42)"` RawFrom string `gorm:"column:raw_from;type:varchar(42)"` RawTo string `gorm:"column:raw_to;type:varchar(42)"` TxHash string `gorm:"column:tx_hash;type:varchar(82)"` Content string `gorm:"column:content;type:text"` BlockNumber int64 `gorm:"column:block_number"` TxIndex int64 `gorm:"column:tx_index"` LogIndex int64 `gorm:"column:tx_log_index"` Value string `gorm:"column:amount;type:varchar(64)"` Type uint8 `gorm:"column:tx_type"` Status uint8 `gorm:"column:status"` GasLimit string `gorm:"column:gas_limit;type:varchar(40)"` GasUsed string `gorm:"column:gas_used;type:varchar(40)"` GasPrice string `gorm:"column:gas_price;type:varchar(40)"` Nonce string `gorm:"column:nonce;type:varchar(40)"` CreateTime int64 `gorm:"column:create_time"` UpdateTime int64 `gorm:"column:update_time"` Fork bool `gorm:"column:fork"` }
type TransactionEntity ¶
type TransactionEntity struct { ID int `gorm:"column:id;primary_key;" json:"id"` Protocol string `gorm:"column:protocol;type:varchar(42)" json:"protocol"` From string `gorm:"column:tx_from;type:varchar(42)" json:"from"` To string `gorm:"column:tx_to;type:varchar(42)" json:"to"` BlockNumber int64 `gorm:"column:block_number" json:"block_number"` TxHash string `gorm:"column:tx_hash;type:varchar(82)" json:"tx_hash"` LogIndex int64 `gorm:"column:tx_log_index" json:"log_index"` Value string `gorm:"column:amount;type:varchar(64)" json:"value"` Content string `gorm:"column:content;type:text" json:"content"` Status uint8 `gorm:"column:status" json:"status"` GasLimit string `gorm:"column:gas_limit;type:varchar(40)" json:"gas_limit"` GasUsed string `gorm:"column:gas_used;type:varchar(40)" json:"gas_used"` GasPrice string `gorm:"column:gas_price;type:varchar(40)" json:"gas_price"` Nonce int64 `gorm:"column:nonce" json:"nonce"` BlockTime int64 `gorm:"column:block_time" json:"block_time"` Fork bool `gorm:"column:fork" json:"fork"` }
txhash&logIndex unique, fork should be marked and never used it again
func (*TransactionEntity) ConvertDown ¶
func (tx *TransactionEntity) ConvertDown(src *txtyp.TransactionEntity) error
convert to txmanager/types/transactionEntity to dao/transactionEntity todo(fuk): judge nil fields
func (*TransactionEntity) ConvertUp ¶
func (tx *TransactionEntity) ConvertUp(dst *txtyp.TransactionEntity) error
convert dao/transactionEntity to txmanager/types/transactionEntity
type TransactionView ¶
type TransactionView struct { ID int `gorm:"column:id;primary_key;"` Symbol string `gorm:"column:symbol;type:varchar(20)"` Owner string `gorm:"column:owner;type:varchar(42)"` TxHash string `gorm:"column:tx_hash;type:varchar(82)"` BlockNumber int64 `gorm:"column:block_number"` LogIndex int64 `gorm:"column:tx_log_index"` Amount string `gorm:"column:amount;type:varchar(40)"` Nonce int64 `gorm:"column:nonce"` Type uint8 `gorm:"column:tx_type"` Status uint8 `gorm:"column:status"` CreateTime int64 `gorm:"column:create_time"` UpdateTime int64 `gorm:"column:update_time"` Fork bool `gorm:"column:fork"` }
func (*TransactionView) ConvertDown ¶
func (tx *TransactionView) ConvertDown(src *txtyp.TransactionView) error
convert types/transaction to dao/transaction todo(fuk): judge nil fields
func (*TransactionView) ConvertUp ¶
func (tx *TransactionView) ConvertUp(dst *txtyp.TransactionView) error
convert dao/transaction to types/transaction
type Trend ¶
type Trend struct { ID int `gorm:"column:id;primary_key;"` Market string `gorm:"column:market;type:varchar(42);unique_index:market_intervals_start"` Intervals string `gorm:"column:intervals;type:varchar(42);unique_index:market_intervals_start"` Vol float64 `gorm:"column:vol;type:float"` Amount float64 `gorm:"column:amount;type:float"` CreateTime int64 `gorm:"column:create_time;type:bigint"` UpdateTime int64 `gorm:"column:update_time;type:bigint"` Open float64 `gorm:"column:open;type:float"` Close float64 `gorm:"column:close;type:float"` High float64 `gorm:"column:high;type:float"` Low float64 `gorm:"column:low;type:float"` Start int64 `gorm:"column:start;type:bigint;unique_index:market_intervals_start"` End int64 `gorm:"column:end;type:bigint"` }
order amountS 上限1e30
type WhiteList ¶
type WhiteList struct { ID int `gorm:"column:id;primary_key;"` Owner string `gorm:"column:owner;varchar(42);unique_index"` CreateTime int64 `gorm:"column:create_time"` IsDeleted bool `gorm:"column:is_deleted"` }
func (*WhiteList) ConvertDown ¶
func (w *WhiteList) ConvertDown(src *types.WhiteListUser) error