Commit c6874dc8 authored by zhuang_cong's avatar zhuang_cong

update

parent ad6d858d
export const AsstesRecordType = {
export const AssetsRecordType = {
ALIPAY_IN: 1,
ALIPAY_OUT: 2,
WX_IN: 3,
......@@ -25,95 +25,95 @@ export const AsstesRecordType = {
}
export const AssetsRecordTypeObj = {
[AsstesRecordType.ALIPAY_IN]: {
[AssetsRecordType.ALIPAY_IN]: {
label: "支付宝",
symbol: "+"
},
[AsstesRecordType.ALIPAY_OUT]: {
[AssetsRecordType.ALIPAY_OUT]: {
label: "支付宝",
symbol: "+"
},
[AsstesRecordType.WX_IN]: {
[AssetsRecordType.WX_IN]: {
label: "微信支付",
symbol: "+"
},
[AsstesRecordType.WX_OUT]: {
[AssetsRecordType.WX_OUT]: {
label: "微信支付",
symbol: "-"
},
[AsstesRecordType.COIN_IN]: {
[AssetsRecordType.COIN_IN]: {
label: "数字资产转入",
symbol: "+"
},
[AsstesRecordType.COIN_OUT]: {
[AssetsRecordType.COIN_OUT]: {
label: "数字资产转出",
symbol: "-"
},
[AsstesRecordType.RECHARGE]: {
[AssetsRecordType.RECHARGE]: {
label: "充值",
symbol: "+"
},
[AsstesRecordType.WITHDRAW_CASH]: {
[AssetsRecordType.WITHDRAW_CASH]: {
label: "提现",
symbol: "-"
},
[AsstesRecordType.PAY]: {
[AssetsRecordType.PAY]: {
label: "支付",
symbol: "-"
},
[AsstesRecordType.REFUND]: {
[AssetsRecordType.REFUND]: {
label: "退款",
symbol: "+"
},
[AsstesRecordType.SALE]: {
[AssetsRecordType.SALE]: {
label: "销售",
symbol: "+"
},
[AsstesRecordType.RELEASE]: {
[AssetsRecordType.RELEASE]: {
label: "发行",
symbol: "+"
},
[AsstesRecordType.ADD_RELEASE]: {
[AssetsRecordType.ADD_RELEASE]: {
label: "增发",
symbol: "+"
},
[AsstesRecordType.RECOVERY]: {
[AssetsRecordType.RECOVERY]: {
label: "回收",
symbol: "-"
},
[AsstesRecordType.REDUCE_RELEASE]: {
[AssetsRecordType.REDUCE_RELEASE]: {
label: "减发",
symbol: "-"
},
[AsstesRecordType.WITHDRAW_COIN]: {
[AssetsRecordType.WITHDRAW_COIN]: {
label: "提币",
symbol: "-"
},
[AsstesRecordType.DEDUCTION]: {
[AssetsRecordType.DEDUCTION]: {
label: "扣除",
symbol: "-"
},
[AsstesRecordType.WITHDRAW_GOODS]: {
[AssetsRecordType.WITHDRAW_GOODS]: {
label: "提货",
symbol: "-"
},
[AsstesRecordType.COMMENT_REWARD]: {
[AssetsRecordType.COMMENT_REWARD]: {
label: "评论奖励",
symbol: "+"
},
[AsstesRecordType.TRANSFER_GIFT_IN]: {
[AssetsRecordType.TRANSFER_GIFT_IN]: {
label: "转赠",
symbol: "+"
},
[AsstesRecordType.TRANSFER_GIFT_OUT]: {
[AssetsRecordType.TRANSFER_GIFT_OUT]: {
label: "转赠",
symbol: "-"
},
[AsstesRecordType.INVITE_REGISTER_REWARD]: {
[AssetsRecordType.INVITE_REGISTER_REWARD]: {
label: "邀请注册奖励",
symbol: "+"
},
[AsstesRecordType.REGISTER_REWARD]: {
[AssetsRecordType.REGISTER_REWARD]: {
label: "注册奖励",
symbol: "+"
},
......@@ -123,3 +123,22 @@ export const TransferType = {
SINGLE: 1,
PACKAGE: 2
}
export const AssetsRecordStatus = {
FAIL: 1,
SUCCESS: 2,
CONFIRM: 3
}
export const AssetsRecordStatusObj = {
[AssetsRecordStatus.FAIL]: {
label: "失败",
},
[AssetsRecordStatus.SUCCESS]: {
label: "成功",
},
[AssetsRecordStatus.CONFIRM]: {
label: "确认中",
},
}
\ No newline at end of file
......@@ -97,6 +97,7 @@ const ViewsCom = {
IntegralDetail: () => import("@/views/user-center/assets/integral/detail"),
IntegralTransfer: () => import("@/views/user-center/assets/integral/transfer"),
IntegralCollection: () => import("@/views/user-center/assets/integral/collection"),
AssetsRecordDetail: () => import("@/views/user-center/assets/record-detail"),
// 优惠券
CouponList: () => import("@/views/user-center/coupon/index"),
......@@ -658,6 +659,15 @@ const routes = [
name: 'integral-collection',
component: ViewsCom.IntegralCollection,
},
{
path: '/user-center/assets/record-detail',
name: 'assets-record-detail',
component: ViewsCom.AssetsRecordDetail,
meta: {
showNavBar: true,
title: "交易记录详情"
},
},
// 优惠券
{
path: '/user-center/coupon/list',
......
......@@ -94,6 +94,7 @@
:skuId="skuId"
:tab="item"
:index="tabIndex"
:assets="userAssets"
/>
</van-swipe-item>
</van-swipe>
......
......@@ -6,13 +6,18 @@
:up="upOptions"
>
<div class="list-wrap">
<div class="list-item" v-for="item of ListData" :key="item.id">
<div
class="list-item"
v-for="item of ListData"
:key="item.id"
@click="goRecordDetail(item)"
>
<div class="item-top flex-default">
<div class="number" :class="{ reduce: item.type === 18 }">
<div class="number" :class="{ reduce: item.typeObj.symbol == '-' }">
{{ AssetsRecordTypeObj[item.type].symbol }}{{ item.amount }}
</div>
<div class="status" :class="{ fail: item.status === 1 }">
{{ item.status === 1 ? "失败" : "成功" }}
<div class="status" :class="{ fail: item.status == AssetsRecordStatus.FAIL }">
{{ AssetsRecordStatusObj[item.status].label }}
</div>
</div>
<div class="item-footer flex-default">
......@@ -32,19 +37,27 @@
<script>
import { MescrollMixin, MescrollMoreItemMixin } from "@/mixins";
import { formatTime } from "@/utils/common";
import { AssetsRecordType, AssetsRecordTypeObj } from "@/enums";
import {
AssetsRecordType,
AssetsRecordTypeObj,
AssetsRecordStatus,
AssetsRecordStatusObj,
} from "@/enums";
export default {
mixins: [MescrollMixin, MescrollMoreItemMixin],
props: {
coin: String,
tab: Object,
index: Number,
skuId: String
skuId: String,
assets: Object,
},
data() {
return {
AssetsRecordType,
AssetsRecordTypeObj,
AssetsRecordStatus,
AssetsRecordStatusObj,
downOptions: {
autoShowLoading: false,
auto: false,
......@@ -80,9 +93,15 @@ export default {
payment: this.tab.payment,
page: page.num,
size: page.size,
skuId: this.skuId
skuId: this.skuId,
},
success: (res) => {
if (res.data) {
res.data.forEach((item) => {
item.typeObj = { ...AssetsRecordTypeObj[item.type] } || {};
});
}
if (page.num == 1) {
this.ListData = res.data;
} else {
......@@ -104,6 +123,44 @@ export default {
upCallback(page) {
this.requestData(page);
},
goRecordDetail(item) {
let data = {
title: this.assets.skuVo.name,
num: (item.typeObj.symbol || "") + item.amount,
status: AssetsRecordStatusObj[item.status].label,
infoList: [
{ label: "交易类型", val: item.typeObj.label },
{ label: "TokenID", val: this.assets.coin },
{ label: "交易时间", val: formatTime(item.createTime) },
],
};
if (item.status == AssetsRecordStatus.SUCCESS && item.hash) {
data.infoList.push({ label: "交易哈希", val: item.hash, hash: true });
}
if (!item.note) {
item.note = "--";
}
switch (+item.type) {
case AssetsRecordType.TRANSFER_GIFT_IN:
data.infoList = data.infoList.concat([
{ label: "转赠人地址", val: item.otherSide },
{ label: "受赠人地址", val: this.assets.address },
{ label: "备注", val: item.note },
]);
break;
case AssetsRecordType.TRANSFER_GIFT_OUT:
data.infoList = data.infoList.concat([
{ label: "转赠人地址", val: this.assets.address },
{ label: "受赠人地址", val: item.otherSide },
{ label: "备注", val: item.note },
]);
break;
default:
break;
}
this.$router.push({ name: "assets-record-detail", query: data });
},
},
};
</script>
......
<template>
<div class="assets-record-detail-con bg-grey">
<div class="detail-con">
<p class="name">{{ data.title }}</p>
<p class="num">{{ data.num }}</p>
<p class="status">{{ data.status }}</p>
<div class="info-con">
<div
class="info-item"
v-for="(item, index) of data.infoList"
:key="`info-item-${index}`"
>
<div class="label">{{ item.label }}</div>
<div
class="val"
:class="{ 'hash-link': item.hash && !!item.val }"
@click="handleClick(item)"
>
{{ item.val || "--" }}
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
data: {
infoList: [],
},
};
},
methods: {
handleClick(item) {
// if (item.hash && item.val) {
// this.goChainExploreTxDetail(item.val);
// }
},
},
mounted() {
this.data = this.$route.query;
},
};
</script>
<style lang="less">
.assets-record-detail-con {
padding: 0 16px;
> .detail-con {
margin-top: 50px;
padding: 30px 20px;
background: #ffffff;
border-radius: 6px;
> .name {
text-align: center;
font-weight: bold;
font-size: 14px;
margin-bottom: 15px;
}
> .num {
text-align: center;
font-size: 30px;
margin-bottom: 12px;
font-family: DINAlternate-Bold;
}
> .status {
text-align: center;
color: #999999;
font-size: 14px;
margin-bottom: 20px;
}
> .info-con {
padding-top: 20px;
border-top: 1px solid #f1f1f1;
.info-item {
display: flex;
align-items: flex-start;
margin-bottom: 12px;
}
.info-item .label {
width: 70px;
margin-right: 20px;
color: #666666;
font-size: 14px;
}
.info-item .val {
flex: 1;
word-break: break-all;
font-size: 14px;
// &.hash-link {
// color: #4a9bf7;
// }
}
}
}
}
</style>
\ No newline at end of file
......@@ -64,8 +64,8 @@ module.exports = {
// target: 'http://172.22.20.64:8100/root'
// target: 'http://172.22.17.176:12008'
// target: 'http://172.22.17.108:12008'
target: 'https://mall.inmvo.com/root'
// target: 'https://testym.8n.cn/root'
// target: 'https://mall.inmvo.com/root'
target: 'https://testym.8n.cn/root'
},
'/chat': {
pathRewrite: {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment