You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
207 lines
5.9 KiB
207 lines
5.9 KiB
<template>
|
|
<div>
|
|
<table class="table">
|
|
<thead>
|
|
<tr>
|
|
<th>{{$t('contract.a9')}}</th>
|
|
<th>{{$t('contract.b0')}}</th>
|
|
<th>{{$t('contract.b1')}}</th>
|
|
<th>{{$t('contract.b2')}}</th>
|
|
<th>{{$t('contract.b3')}}/{{$t('contract.b4')}}</th>
|
|
<th>{{$t('contract.b5')}}/{{$t('contract.b6')}}</th>
|
|
<th>{{$t('contract.b7')}}</th>
|
|
<th>{{$t('contract.b8')}}</th>
|
|
<th>{{$t('contract.j0')}}</th>
|
|
<!-- <th>{{$t('contract.k1')}}</th> -->
|
|
<th>{{$t('contract.b9')}}</th>
|
|
<!-- <th>{{$t('contract.c0')}}</th> -->
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr v-for="item in list" :key="item.id">
|
|
<td>{{ item.symbol }}/USDT</td>
|
|
<td>{{ item.lever_rate }}X</td>
|
|
<td>{{ item.updated_ats | parseTime}}</td>
|
|
<!-- <td>{{ item.created_at | parseTime}}</td> -->
|
|
<td>{{ cals(item.side, item.order_type) }}</td>
|
|
<td>{{ item.traded_amount }}/{{ item.amount }}</td>
|
|
<td>{{item.avg_price||'--'}}/{{ item.entrust_price || "--" }}</td>
|
|
<td>{{ item.margin * 1 }}</td>
|
|
<td>{{ item.fee * 1 }}</td>
|
|
<td :class="profite(item)">
|
|
{{item.profit||'--'}}
|
|
</td>
|
|
<!-- <td>
|
|
{{item.settle_profit||'--'}}
|
|
</td> -->
|
|
<td>{{ status(item.status) }}</td>
|
|
<!-- <td>
|
|
<button class="btn btn-sm btn-primary" @click="showDetail(item)">
|
|
{{$t('contract.g4')}}
|
|
</button>
|
|
</td> -->
|
|
</tr>
|
|
<tr v-if="!list.length">
|
|
<td colspan="12">
|
|
<no-record />
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<div class="p-2">
|
|
<el-pagination
|
|
layout="prev, pager, next"
|
|
:page-size="CurrentObj.per_page"
|
|
@current-change="changePageCurrent"
|
|
:total="CurrentObj.total"
|
|
></el-pagination>
|
|
</div>
|
|
<!-- 撤销 -->
|
|
<div
|
|
class="modal fade"
|
|
id="history"
|
|
tabindex="-1"
|
|
role="dialog"
|
|
aria-labelledby="backClose"
|
|
aria-hidden="true"
|
|
>
|
|
<div
|
|
class="modal-dialog modal-lg modal-dialog-centered modal-dialog-scrollable"
|
|
>
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<h5 class="modal-title" id="backClose">{{$t('contract.g5')}}</h5>
|
|
<button
|
|
type="button"
|
|
class="close"
|
|
data-dismiss="modal"
|
|
aria-label="Close"
|
|
>
|
|
<span aria-hidden="true">×</span>
|
|
</button>
|
|
</div>
|
|
<div class="modal-body">
|
|
<div class="markets-pair-list">
|
|
<table class="table">
|
|
<thead>
|
|
<tr>
|
|
<th>{{$t('contract.d8')}}</th>
|
|
<th>{{$t('contract.e1')}}</th>
|
|
<th>{{$t('contract.b8')}}</th>
|
|
<th>{{$t('contract.g6')}}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr v-for="item in order_details" :key="item.id">
|
|
<td>{{ item.unit_price }}</td>
|
|
<td>{{ item.trade_amount }}</td>
|
|
<td>{{ item.trade_buy_fee }}</td>
|
|
<td>{{ item.created_at }}</td>
|
|
</tr>
|
|
<tr v-if="!order_details.length">
|
|
<td colspan="4">
|
|
<no-record />
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
<script>
|
|
import Contract from "@/api/contract";
|
|
import math from "@/utils/class/math";
|
|
export default {
|
|
name: "history-commission",
|
|
props: {
|
|
symbol: {
|
|
default: "",
|
|
type: String,
|
|
required: false
|
|
}
|
|
},
|
|
data() {
|
|
return {
|
|
CurrentObj: {
|
|
page: 1
|
|
},
|
|
list: [],
|
|
order_details: []
|
|
};
|
|
},
|
|
computed: {},
|
|
created() {
|
|
this.getHistoryEntrust();
|
|
},
|
|
methods: {
|
|
status(status) {
|
|
switch (status) {
|
|
case 0:
|
|
return this.$t('contract.c6');
|
|
case 1:
|
|
return this.$t('contract.c7');
|
|
case 2:
|
|
return this.$t('contract.c8');
|
|
case 3:
|
|
return this.$t('contract.c9');
|
|
}
|
|
},
|
|
cals(side, order_type) {
|
|
// order_type - side
|
|
let map = {
|
|
"1-1": this.$t('contract.d0'),
|
|
"1-2": this.$t('contract.d1'),
|
|
"2-1": this.$t('contract.d2'),
|
|
"2-2": this.$t('contract.d3')
|
|
};
|
|
return map[`${side}-${order_type}`];
|
|
},
|
|
changePageCurrent(idx) {
|
|
this.CurrentObj.page = idx;
|
|
this.getHistoryEntrust();
|
|
},
|
|
getHistoryEntrust() {
|
|
let data = {
|
|
page: this.CurrentObj.page
|
|
};
|
|
Contract.getHistoryEntrust(data).then(res => {
|
|
this.list = res.data;
|
|
this.CurrentObj = res;
|
|
});
|
|
},
|
|
showDetail(item) {
|
|
Contract.getEntrustDealList({
|
|
entrust_id: item.id,
|
|
symbol: item.symbol
|
|
}).then(res => {
|
|
this.order_details = res;
|
|
$("#history").modal("show");
|
|
});
|
|
},
|
|
profite(item){
|
|
if(item && item.profit && item.profit.indexOf('-') === 0){
|
|
return 'red';
|
|
}else if(item.profit==null){
|
|
return 'white';
|
|
}else{
|
|
return 'green';
|
|
}
|
|
}
|
|
}
|
|
};
|
|
</script>
|
|
<style scoped>
|
|
.red{
|
|
color: red;
|
|
}
|
|
.green{
|
|
color: green;
|
|
}
|
|
.white{
|
|
color: #797979;
|
|
}
|
|
</style>
|