orderspec refactor for server and web
This commit is contained in:
25
order.js
25
order.js
@@ -1,10 +1,9 @@
|
||||
import {orderFilled, orderStatuses, vaultOpenOrders} from "./cache.js"
|
||||
import {applyFills} from "../web/src/blockchain/common.js"
|
||||
import {dbpool} from "./db.js";
|
||||
import {dbpool, sql} from "./db.js";
|
||||
|
||||
|
||||
export function sendVaultOrders( socket, chainId, vault ) {
|
||||
|
||||
vaultOpenOrders.get(chainId, vault).then(async (orderIndexes)=>{
|
||||
const statuses = {}
|
||||
if( orderIndexes !== null ) {
|
||||
@@ -29,10 +28,10 @@ export function sendVaultOrders( socket, chainId, vault ) {
|
||||
await Promise.all(proms)
|
||||
const result = []
|
||||
for( const index of Object.keys(statuses).sort())
|
||||
result.push([index, statuses[index]])
|
||||
result.push([parseInt(index), statuses[index]])
|
||||
socket.emit('os', chainId, vault, result)
|
||||
})
|
||||
})
|
||||
}).catch((reason)=>console.error('Could not send orders', reason))
|
||||
}
|
||||
|
||||
export function unsubVaultOrders( socket, chainId, vault ) {
|
||||
@@ -56,13 +55,17 @@ async function fillOrderStatus( chainId, orderKey, status ) {
|
||||
}
|
||||
|
||||
export async function recentOrders( socket, chainId, vault, limit=25 ) {
|
||||
const db = await dbpool.connect()
|
||||
const sql =
|
||||
`select oi.order_index, sd.value from seriesdict sd, orderindex oi
|
||||
where oi.chain=${chainId} and oi.vault='${vault}'
|
||||
and sd.series='o' and sd.key=concat('${vault}','|',to_char(oi.order_index, 'FM00000'))
|
||||
order by oi.order_index desc limit ${limit}`;
|
||||
const query = await db.query(sql)
|
||||
const query = await sql(
|
||||
`select oi.order_index, sd.value
|
||||
from seriesdict sd,
|
||||
orderindex oi
|
||||
where oi.chain = ${chainId}
|
||||
and oi.vault = '${vault}'
|
||||
and sd.series = 'o'
|
||||
and sd.key = concat('${vault}', '|', to_char(oi.order_index, 'FM00000'))
|
||||
order by oi.order_index desc
|
||||
limit ${limit}`
|
||||
)
|
||||
const result = []
|
||||
for( const {order_index, value} of query.rows)
|
||||
result.push([order_index,JSON.parse(value)])
|
||||
|
||||
Reference in New Issue
Block a user