|
@@ -1,97 +1,50 @@
|
|
|
<template>
|
|
<template>
|
|
|
- <!-- 交易图表 -->
|
|
|
|
|
- <div class="chart-container">
|
|
|
|
|
- <div class="chart-content"></div>
|
|
|
|
|
- <div class="chart-tips">
|
|
|
|
|
- <a-tabs class="chartTabs" v-model:activeKey="activeKey">
|
|
|
|
|
- <a-tab-pane key="1" tab="卖挂">
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="chartRow">
|
|
|
|
|
- <div class="left">江**铜</div>
|
|
|
|
|
- <div class="middle">6287</div>
|
|
|
|
|
- <div class="right">30</div>
|
|
|
|
|
- </div>
|
|
|
|
|
- </a-tab-pane>
|
|
|
|
|
- <a-tab-pane key="2" tab="买挂">Tab 2</a-tab-pane>
|
|
|
|
|
- <a-tab-pane key="3" tab="成交">Tab 3</a-tab-pane>
|
|
|
|
|
- </a-tabs>
|
|
|
|
|
- <div @click="watchMore" class="watchMore">查看更多</div>
|
|
|
|
|
- </div>
|
|
|
|
|
|
|
+ <!-- 交易图表 -->
|
|
|
|
|
+ <div class="chart-container">
|
|
|
|
|
+ <div class="chart-content"></div>
|
|
|
|
|
+ <div class="chart-tips">
|
|
|
|
|
+ <a-tabs class="chartTabs"
|
|
|
|
|
+ v-model:activeKey="activeKey"
|
|
|
|
|
+ @change="change">
|
|
|
|
|
+ <a-tab-pane key="1"
|
|
|
|
|
+ ref="tabRef1"
|
|
|
|
|
+ tab="卖挂">
|
|
|
|
|
+ <div class="chartRow"
|
|
|
|
|
+ v-for="(item, index) in sellList"
|
|
|
|
|
+ :key="index + '11'">
|
|
|
|
|
+ <div class="left">{{item.username}}</div>
|
|
|
|
|
+ <div class="middle">{{item.orderqty}}</div>
|
|
|
|
|
+ <div class="right">{{item.orderprice}}</div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </a-tab-pane>
|
|
|
|
|
+ <a-tab-pane key="2"
|
|
|
|
|
+ class="chartTabs"
|
|
|
|
|
+ tab="买挂">
|
|
|
|
|
+ <div class="chartRow"
|
|
|
|
|
+ v-for="(item, index) in buyList"
|
|
|
|
|
+ :key="index + '11'">
|
|
|
|
|
+ <div class="left">{{item.username}}</div>
|
|
|
|
|
+ <div class="middle">{{item.orderqty}}</div>
|
|
|
|
|
+ <div class="right">{{item.orderprice}}</div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </a-tab-pane>
|
|
|
|
|
+ <a-tab-pane key="3"
|
|
|
|
|
+ class="chartTabs"
|
|
|
|
|
+ tab="成交">
|
|
|
|
|
+ 成交
|
|
|
|
|
+ <div class="chartRow"
|
|
|
|
|
+ v-for="(item, index) in tradedList"
|
|
|
|
|
+ :key="index + '11'">
|
|
|
|
|
+ <div class="left">{{formatTime(item.TS, 'hm')}}</div>
|
|
|
|
|
+ <div class="middle">{{item.PE}}</div>
|
|
|
|
|
+ <div class="right">{{item.Vol}}</div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </a-tab-pane>
|
|
|
|
|
+ </a-tabs>
|
|
|
|
|
+ <div @click="watchMore"
|
|
|
|
|
+ class="watchMore">查看更多</div>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
+ </div>
|
|
|
</template>
|
|
</template>
|
|
|
|
|
|
|
|
<script lang="ts">
|
|
<script lang="ts">
|
|
@@ -103,12 +56,10 @@ import { QueryHistoryTikDatasRsp, QueryQuoteDayRsp } from '@/services/go/quote/i
|
|
|
import { QueryDeliveryRelationRsp } from '@/services/go/delivery/interface';
|
|
import { QueryDeliveryRelationRsp } from '@/services/go/delivery/interface';
|
|
|
import { QueryHistoryTikDatas } from '@/services/go/quote';
|
|
import { QueryHistoryTikDatas } from '@/services/go/quote';
|
|
|
import { ComponentType } from '../../setup';
|
|
import { ComponentType } from '../../setup';
|
|
|
-
|
|
|
|
|
-const columnsList = [
|
|
|
|
|
- { title: '时间', key: 'TS', dataIndex: 'TS', align: 'center' },
|
|
|
|
|
- { title: '成交价', key: 'Vol', dataIndex: 'Vol', align: 'center' },
|
|
|
|
|
- { title: '成交量', key: 'PE', dataIndex: 'PE', align: 'center' },
|
|
|
|
|
-];
|
|
|
|
|
|
|
+import { WrTradeOrderDetailReq } from '@/services/go/wrtrade/interface';
|
|
|
|
|
+import { useQueryData } from '@/common/setup/request';
|
|
|
|
|
+import { queryWrTradeOrderDetail } from '@/services/go/wrtrade';
|
|
|
|
|
+import { formatTime } from '@/common/methods';
|
|
|
|
|
|
|
|
export default defineComponent({
|
|
export default defineComponent({
|
|
|
emits: ['cancel', 'update'],
|
|
emits: ['cancel', 'update'],
|
|
@@ -128,48 +79,43 @@ export default defineComponent({
|
|
|
const type: ComponentType = activeKey.value === '3' ? ComponentType.tradeDetail : ComponentType.marketContent;
|
|
const type: ComponentType = activeKey.value === '3' ? ComponentType.tradeDetail : ComponentType.marketContent;
|
|
|
context.emit('update', type);
|
|
context.emit('update', type);
|
|
|
}
|
|
}
|
|
|
- const param = {
|
|
|
|
|
- goodsCode: props.deliverGoods.goodscode,
|
|
|
|
|
|
|
+ const { goodsid, goodscode } = props.deliverGoods;
|
|
|
|
|
+ // 买挂
|
|
|
|
|
+ const param: WrTradeOrderDetailReq = {
|
|
|
|
|
+ buyorsell: 0,
|
|
|
|
|
+ goodsid,
|
|
|
|
|
+ };
|
|
|
|
|
+ const { list: buyList, update: buyUpdate } = useQueryData(queryWrTradeOrderDetail, param);
|
|
|
|
|
+
|
|
|
|
|
+ // 卖挂
|
|
|
|
|
+ const sellParam: WrTradeOrderDetailReq = {
|
|
|
|
|
+ buyorsell: 1,
|
|
|
|
|
+ goodsid,
|
|
|
};
|
|
};
|
|
|
- const tableList = ref<QueryHistoryTikDatasRsp[][]>([]);
|
|
|
|
|
- QueryHistoryTikDatas(param).then((res) => {
|
|
|
|
|
- tableList.value = getHisList(res);
|
|
|
|
|
- });
|
|
|
|
|
- function getHisList(list: QueryHistoryTikDatasRsp[]) {
|
|
|
|
|
- const len = list.length;
|
|
|
|
|
- const result: QueryHistoryTikDatasRsp[][] = [[], [], []];
|
|
|
|
|
- if (len) {
|
|
|
|
|
- if (len === 1) {
|
|
|
|
|
- result[0] = list;
|
|
|
|
|
- } else if (len === 2) {
|
|
|
|
|
- result[0].push(list[0]);
|
|
|
|
|
- result[1].push(list[1]);
|
|
|
|
|
- } else {
|
|
|
|
|
- const temp = Math.floor(len / 3);
|
|
|
|
|
- result[0] = list.slice(0, temp);
|
|
|
|
|
- result[1] = list.slice(temp, 2 * temp);
|
|
|
|
|
- result[2] = list.slice(temp * 2, temp * 3);
|
|
|
|
|
- const last = len - temp;
|
|
|
|
|
- if (last) {
|
|
|
|
|
- if (last === 1) {
|
|
|
|
|
- result[0].push(list[len - 1]);
|
|
|
|
|
- } else {
|
|
|
|
|
- result[0].push(list[len - 2]);
|
|
|
|
|
- result[1].push(list[len - 1]);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ const { list: sellList, update: sellUpdate } = useQueryData(queryWrTradeOrderDetail, sellParam);
|
|
|
|
|
+
|
|
|
|
|
+ // 成交
|
|
|
|
|
+ const { list: tradedList, update: tradedUpdate } = useQueryData(QueryHistoryTikDatas, { goodsCode: goodscode });
|
|
|
|
|
+ function change(activeKey: string) {
|
|
|
|
|
+ if (activeKey === '1') {
|
|
|
|
|
+ sellUpdate();
|
|
|
|
|
+ } else if (activeKey === '2') {
|
|
|
|
|
+ buyUpdate();
|
|
|
|
|
+ } else {
|
|
|
|
|
+ tradedUpdate();
|
|
|
}
|
|
}
|
|
|
- return result;
|
|
|
|
|
}
|
|
}
|
|
|
return {
|
|
return {
|
|
|
cancel,
|
|
cancel,
|
|
|
visible,
|
|
visible,
|
|
|
- tableList,
|
|
|
|
|
- columnsList,
|
|
|
|
|
|
|
+ buyList,
|
|
|
|
|
+ sellList,
|
|
|
|
|
+ tradedList,
|
|
|
|
|
+ change,
|
|
|
loading,
|
|
loading,
|
|
|
activeKey,
|
|
activeKey,
|
|
|
watchMore,
|
|
watchMore,
|
|
|
|
|
+ formatTime,
|
|
|
};
|
|
};
|
|
|
},
|
|
},
|
|
|
});
|
|
});
|