2023-08-09 14:45:27 +08:00
|
|
|
|
<!DOCTYPE html>
|
|
|
|
|
<html lang="en">
|
|
|
|
|
|
|
|
|
|
<head>
|
|
|
|
|
<meta charset="UTF-8" />
|
|
|
|
|
<meta name="viewport"
|
|
|
|
|
content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0, user-scalable=0,viewport-fit=cover" />
|
|
|
|
|
<title>订单</title>
|
|
|
|
|
<script src="https://lsxdemall.oss-cn-beijing.aliyuncs.com/common/vue.min.js?v=1367936144322" type="text/javascript"
|
|
|
|
|
charset="utf-8"></script>
|
2023-12-28 18:06:33 +08:00
|
|
|
|
<script type="text/javascript"
|
|
|
|
|
src="https://lsxdemall.oss-cn-beijing.aliyuncs.com/common/axios.js?v=1367936144322"></script>
|
2024-04-11 03:05:05 +08:00
|
|
|
|
<script src="https://lsxdemall.oss-cn-beijing.aliyuncs.com/MarketingSystem/js/api2_0.js?v=1000"></script>
|
2023-08-09 14:45:27 +08:00
|
|
|
|
<script src="https://lsxdemall.oss-cn-beijing.aliyuncs.com/common/modelPop.js"></script>
|
|
|
|
|
<link rel="stylesheet"
|
|
|
|
|
href="https://lsxdemall.oss-cn-beijing.aliyuncs.com/MarketingSystem/css/exchange-order.css" />
|
|
|
|
|
<script src="https://lsxdemall.oss-cn-beijing.aliyuncs.com/common/tabs.js"></script>
|
|
|
|
|
</head>
|
|
|
|
|
|
|
|
|
|
<body>
|
|
|
|
|
<div id="app">
|
|
|
|
|
<!-- 弹出提示 -->
|
2023-08-11 17:29:25 +08:00
|
|
|
|
<img class="backPresTy" @click="location.href = './homepage.html'" v-if="goodsCount<2"
|
2023-12-28 18:06:33 +08:00
|
|
|
|
src=" https://lsxdemall.oss-cn-beijing.aliyuncs.com/MarketingSystem/img/backprepageBtn.png" alt="" />
|
2023-08-09 14:45:27 +08:00
|
|
|
|
<p class="nav-title">订单</p>
|
|
|
|
|
<div id="refresh" @touchstart="touchStart($event)" @touchmove="touchMove($event)"
|
|
|
|
|
@touchcancel="touchEnd($event)" @touchend="touchEnd($event)">
|
2023-12-28 18:06:33 +08:00
|
|
|
|
<img v-show="!!loadShowHeight" class="img-lodging"
|
|
|
|
|
src="https://lsxdemall.oss-cn-beijing.aliyuncs.com/MarketingSystem/img/img-logding.png" alt="" />
|
2023-08-09 14:45:27 +08:00
|
|
|
|
<div class="content" slot="content" @scroll="scrollBottom($event)">
|
2024-02-04 14:32:16 +08:00
|
|
|
|
<div class="content-item" v-for="item in orderList" :key="item.order_number" @click="toDetails(item)">
|
2023-08-09 14:45:27 +08:00
|
|
|
|
<div class="top">
|
|
|
|
|
<p class="time">{{item.create_time}}</p>
|
2023-12-28 18:06:33 +08:00
|
|
|
|
<p class="status" :style="{color:statusColor(item.status)}">
|
|
|
|
|
{{item.status_text}}
|
2023-08-09 14:45:27 +08:00
|
|
|
|
</p>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="middle">
|
2023-12-28 18:06:33 +08:00
|
|
|
|
<img :src="item.src" alt="" />
|
2023-08-09 14:45:27 +08:00
|
|
|
|
<div class="right">
|
|
|
|
|
<div class="title_originalPrice">
|
|
|
|
|
<p class="title">{{item.product_name}}</p>
|
|
|
|
|
</div>
|
|
|
|
|
<p class="id">订单编号:{{item.order_number}}</p>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="footer">
|
|
|
|
|
<p class="button-card b-l" @click="lookCard(item)"
|
2023-08-18 09:08:13 +08:00
|
|
|
|
v-if="item.status===2&&item.type===1&&item.product_type===2&&item.card_show==2">
|
2023-08-09 14:45:27 +08:00
|
|
|
|
查看卡密
|
|
|
|
|
</p>
|
|
|
|
|
<p class="button-card b-c-r b-l" @click="receiveFn(item)"
|
2024-02-05 11:53:19 +08:00
|
|
|
|
v-if="([0,1].includes(item.status)&&item.send_num<2||item.status===0&&item.send_num>1)&&[2,3].includes(item.type)&&[1,2,3].includes(item.channel)">
|
2023-12-28 18:06:33 +08:00
|
|
|
|
去领取
|
|
|
|
|
</p>
|
2023-08-09 14:45:27 +08:00
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<p class="noMore" v-if="total<limit&&orderList.length">没有更多了</p>
|
|
|
|
|
<!-- 空状态 -->
|
|
|
|
|
<div class="empty" v-if="!orderList.length&&!loadShowHeight">
|
2023-12-28 18:06:33 +08:00
|
|
|
|
<img src="https://lsxdemall.oss-cn-beijing.aliyuncs.com/MarketingSystem/img/order-empty.png"
|
|
|
|
|
alt="" />
|
2023-08-09 14:45:27 +08:00
|
|
|
|
<p>暂无订单</p>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<model-pop :show.sync="popShow" :cancel="isCancel" :title="popTitle" :status="popStatus" :text="popText"
|
|
|
|
|
:bottom_text="bottomText" @backFunction="backFunction">
|
|
|
|
|
</model-pop>
|
|
|
|
|
|
|
|
|
|
<!-- 单条弹出框 -->
|
|
|
|
|
<div class="prompt" :class="toastShow?'proactive':''">
|
|
|
|
|
{{this.toastTip}}
|
|
|
|
|
</div>
|
|
|
|
|
<tab-static-component :current="2" v-if="goodsCount>1"></tab-static-component>
|
|
|
|
|
</div>
|
|
|
|
|
<script>
|
2023-12-28 18:06:33 +08:00
|
|
|
|
const token = localStorage.getItem("token");
|
2023-08-09 14:45:27 +08:00
|
|
|
|
new Vue({
|
|
|
|
|
el: "#app",
|
2024-04-10 23:11:41 +08:00
|
|
|
|
data() {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
return {
|
|
|
|
|
limit: 15,
|
|
|
|
|
page: 1,
|
|
|
|
|
total: 0,
|
|
|
|
|
orderList: [],
|
|
|
|
|
|
|
|
|
|
/* 提示框状态 */
|
|
|
|
|
popShow: false,
|
2023-12-28 18:06:33 +08:00
|
|
|
|
popTitle: "",
|
|
|
|
|
popText: "",
|
2023-08-09 14:45:27 +08:00
|
|
|
|
popStatus: 1 /*1 成功 2提示 3失败 */,
|
2023-12-28 18:06:33 +08:00
|
|
|
|
bottomText: "" /*1 成功 2提示 3失败 */,
|
|
|
|
|
goodsCount: 0 /* 商品数量 */,
|
|
|
|
|
href: "" /* 支付链接 */,
|
2023-08-09 14:45:27 +08:00
|
|
|
|
isCancel: false,
|
|
|
|
|
|
|
|
|
|
/* toast */
|
2023-12-28 18:06:33 +08:00
|
|
|
|
toastShow: "",
|
|
|
|
|
toastTip: "",
|
2023-08-09 14:45:27 +08:00
|
|
|
|
redirect: false,
|
|
|
|
|
|
|
|
|
|
/* 加载 */
|
|
|
|
|
scrollTop: 0,
|
|
|
|
|
startY: 0,
|
|
|
|
|
loadShowHeight: 0,
|
2023-12-28 18:06:33 +08:00
|
|
|
|
loadFlag: false
|
2023-08-09 14:45:27 +08:00
|
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
components: {
|
|
|
|
|
tabStaticComponent,
|
2023-12-28 18:06:33 +08:00
|
|
|
|
modelPop
|
2023-08-09 14:45:27 +08:00
|
|
|
|
},
|
|
|
|
|
|
2024-04-10 23:11:41 +08:00
|
|
|
|
created() {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
this.getOrderList();
|
2023-12-28 18:06:33 +08:00
|
|
|
|
this.goodsCount = Number(sessionStorage.getItem("goodsCount"));
|
2023-08-09 14:45:27 +08:00
|
|
|
|
this.scrollTop =
|
|
|
|
|
document.documentElement.scrollTop || document.body.scrollTop;
|
2024-02-04 17:48:53 +08:00
|
|
|
|
|
|
|
|
|
window.addEventListener('pageshow', () => {
|
|
|
|
|
!this.loadShowHeight && this.getOrderList();
|
|
|
|
|
});
|
2023-08-09 14:45:27 +08:00
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
methods: {
|
|
|
|
|
/* 取消订单 */
|
2024-04-10 23:11:41 +08:00
|
|
|
|
cancelOrder({ order_number }) {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
this.order_number = order_number;
|
|
|
|
|
this.isCancel = true;
|
2023-12-28 18:06:33 +08:00
|
|
|
|
this.popFunction({
|
|
|
|
|
title: "温馨提示",
|
|
|
|
|
text: "是否确认取消订单",
|
|
|
|
|
status: 2,
|
|
|
|
|
b_text: "我知道了",
|
|
|
|
|
show: true
|
|
|
|
|
});
|
2023-08-09 14:45:27 +08:00
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
/* 根据不同状态展示 订单样式和表现 */
|
2024-04-10 23:11:41 +08:00
|
|
|
|
statusColor(status) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
const colorArray = [
|
|
|
|
|
"#f28542",
|
|
|
|
|
"#f28542",
|
|
|
|
|
"#44D27D",
|
|
|
|
|
"#fd553d",
|
|
|
|
|
"#fd553d",
|
|
|
|
|
"#aaaaaa",
|
|
|
|
|
"#fd553d"
|
|
|
|
|
];
|
2023-08-09 14:45:27 +08:00
|
|
|
|
return colorArray[status];
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
/*跳转起始页面*/
|
2024-04-10 23:11:41 +08:00
|
|
|
|
toPage() {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
let entryLink = localStorage.getItem("entryLink");
|
2023-08-09 14:45:27 +08:00
|
|
|
|
setTimeout(() => {
|
|
|
|
|
window.location.replace(entryLink);
|
|
|
|
|
}, 3 * 1000);
|
|
|
|
|
},
|
|
|
|
|
|
2024-02-04 14:32:16 +08:00
|
|
|
|
/*跳转详情*/
|
2024-04-10 23:11:41 +08:00
|
|
|
|
toDetails(order) {
|
2024-02-04 14:32:16 +08:00
|
|
|
|
sessionStorage.setItem('orderNumber', order.order_number);
|
|
|
|
|
switch (order.product_type) {
|
|
|
|
|
case 1:
|
|
|
|
|
window.location.href = './orderDetails/chargerOrder.html';
|
|
|
|
|
break;
|
|
|
|
|
case 2:
|
|
|
|
|
window.location.href = './orderDetails/cardOrder.html';
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
2023-08-09 14:45:27 +08:00
|
|
|
|
/* 领取红包和立减金 */
|
2024-04-10 23:11:41 +08:00
|
|
|
|
receiveFn(item) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
req
|
|
|
|
|
.axiosGet(`/key/order/getLink`, {
|
|
|
|
|
order_number: item.order_number,
|
|
|
|
|
token
|
|
|
|
|
})
|
|
|
|
|
.then(({ data, code, message }) => {
|
|
|
|
|
if (code === 200) {
|
|
|
|
|
this.toApp(item, data);
|
|
|
|
|
} else {
|
|
|
|
|
this.apiError(code, message);
|
|
|
|
|
}
|
|
|
|
|
});
|
2023-08-09 14:45:27 +08:00
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
/* 领取跳转逻辑 */
|
2024-04-10 23:11:41 +08:00
|
|
|
|
toApp(item, data) {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
let ua = navigator.userAgent.toLowerCase(); //判断用户打开链接环境
|
|
|
|
|
//领取立减金
|
|
|
|
|
if (item.type === 2) {
|
|
|
|
|
if (item.status == 5) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
return this.popFunction({
|
|
|
|
|
title: "温馨提示",
|
|
|
|
|
text: "立减金领取过期",
|
|
|
|
|
status: 2,
|
|
|
|
|
b_text: "我知道了",
|
|
|
|
|
show: true
|
|
|
|
|
});
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
|
|
|
|
if (item.channel == 1) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
if (item.goods.entity.receive_mode === 2) {
|
2024-02-05 11:51:19 +08:00
|
|
|
|
item.goods.available = 1;
|
2023-12-28 18:06:33 +08:00
|
|
|
|
/* H5 领取 */
|
|
|
|
|
sessionStorage.setItem(
|
|
|
|
|
"goodsInfo",
|
|
|
|
|
JSON.stringify(item.goods)
|
|
|
|
|
);
|
|
|
|
|
location.href = "./zfb-reduce.html";
|
2023-08-09 14:45:27 +08:00
|
|
|
|
} else {
|
2024-02-24 19:58:47 +08:00
|
|
|
|
let bankLink = '';
|
|
|
|
|
if (item.is_group == 2) {
|
|
|
|
|
bankLink = encodeURIComponent(
|
|
|
|
|
window.location.origin +
|
|
|
|
|
"/alipay.html?orderNumber=" +
|
|
|
|
|
data.order_number
|
|
|
|
|
);
|
|
|
|
|
} else {
|
|
|
|
|
bankLink = encodeURIComponent(
|
|
|
|
|
window.location.origin +
|
|
|
|
|
`/combiningAlipay.html?codeBatchId=${item.goods.code_batch_id}&token=${token}`
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
2023-12-28 18:06:33 +08:00
|
|
|
|
let link =
|
2024-04-18 09:26:36 +08:00
|
|
|
|
"https://openapi.1688sup.com/alipay/oauth?jump=" + bankLink;
|
2023-11-17 18:02:54 +08:00
|
|
|
|
let ua = navigator.userAgent.toLowerCase(); //判断用户打开链接环境
|
2023-12-28 18:06:33 +08:00
|
|
|
|
if (
|
|
|
|
|
ua.indexOf("micromessenger") > -1 ||
|
|
|
|
|
ua.indexOf("baiduboxapp") > -1 ||
|
|
|
|
|
ua.indexOf("firefox") > -1
|
|
|
|
|
) {
|
2023-11-17 18:02:54 +08:00
|
|
|
|
//在微信内置环境、百度app打开,不能唤起支付宝
|
|
|
|
|
this.href = link;
|
2023-12-28 18:06:33 +08:00
|
|
|
|
this.popFunction({
|
|
|
|
|
title: "温馨提示",
|
|
|
|
|
text: `请复制链接,在其他浏览器打开`,
|
|
|
|
|
status: 2,
|
|
|
|
|
b_text: "点击复制",
|
|
|
|
|
show: true
|
|
|
|
|
});
|
2023-11-17 18:02:54 +08:00
|
|
|
|
} else {
|
|
|
|
|
//唤起支付宝
|
|
|
|
|
window.location.replace(link);
|
|
|
|
|
}
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (item.channel == 2) {
|
|
|
|
|
if (ua.indexOf("windows") > -1) {
|
|
|
|
|
this.href = data.redirect_url;
|
2023-12-28 18:06:33 +08:00
|
|
|
|
this.popFunction({
|
|
|
|
|
title: "温馨提示",
|
|
|
|
|
text: `请复制链接,在其他浏览器打开`,
|
|
|
|
|
status: 2,
|
|
|
|
|
b_text: "点击复制",
|
|
|
|
|
show: true
|
|
|
|
|
});
|
2023-08-09 14:45:27 +08:00
|
|
|
|
} else {
|
|
|
|
|
location.replace(data.redirect_url);
|
|
|
|
|
}
|
|
|
|
|
}
|
2024-02-05 11:51:19 +08:00
|
|
|
|
if (item.channel == 3) {
|
|
|
|
|
item.goods.available = 1;
|
|
|
|
|
/* H5 领取 */
|
|
|
|
|
sessionStorage.setItem(
|
|
|
|
|
"goodsInfo",
|
|
|
|
|
JSON.stringify(item.goods)
|
|
|
|
|
);
|
|
|
|
|
location.href = "./ysf-reduce.html";
|
|
|
|
|
}
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* 红包领取 */
|
|
|
|
|
if (item.type === 3) {
|
|
|
|
|
if (item.channel === 1) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
if (item.goods.entity.receive_mode === 2) {
|
2024-02-05 13:47:36 +08:00
|
|
|
|
item.goods.available = 1;
|
2023-12-28 18:06:33 +08:00
|
|
|
|
/* H5 领取 */
|
|
|
|
|
sessionStorage.setItem(
|
|
|
|
|
"goodsInfo",
|
|
|
|
|
JSON.stringify(item.goods)
|
|
|
|
|
);
|
|
|
|
|
location.href = "./zfb-redPackets.html";
|
2023-08-09 14:45:27 +08:00
|
|
|
|
} else {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
const aliPaysUrl = `alipays://platformapi/startapp?appId=2021004100663111&page=pages/index/index?order_number=${encodeURIComponent(
|
|
|
|
|
window.btoa(data.order_number)
|
|
|
|
|
)}`;
|
|
|
|
|
if (
|
|
|
|
|
isWx() ||
|
|
|
|
|
(ua.indexOf("android") > -1 &&
|
|
|
|
|
ua.indexOf("baiduboxapp") > -1) ||
|
|
|
|
|
ua.indexOf("windows") > -1
|
|
|
|
|
) {
|
2023-11-17 18:02:54 +08:00
|
|
|
|
this.href = aliPaysUrl;
|
2023-12-28 18:06:33 +08:00
|
|
|
|
this.popFunction({
|
|
|
|
|
title: "温馨提示",
|
|
|
|
|
text: `请复制链接,在其他浏览器打开`,
|
|
|
|
|
status: 2,
|
|
|
|
|
b_text: "点击复制",
|
|
|
|
|
show: true
|
|
|
|
|
});
|
2023-11-17 18:02:54 +08:00
|
|
|
|
} else {
|
|
|
|
|
location.replace(aliPaysUrl);
|
|
|
|
|
}
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (item.channel === 2) {
|
|
|
|
|
if (ua.indexOf("windows") > -1) {
|
|
|
|
|
this.href = data.redirect_url;
|
2023-12-28 18:06:33 +08:00
|
|
|
|
this.popFunction({
|
|
|
|
|
title: "温馨提示",
|
|
|
|
|
text: `请复制链接,在其他浏览器打开`,
|
|
|
|
|
status: 2,
|
|
|
|
|
b_text: "点击复制",
|
|
|
|
|
show: true
|
|
|
|
|
});
|
2023-08-09 14:45:27 +08:00
|
|
|
|
} else {
|
|
|
|
|
location.replace(data.redirect_url);
|
|
|
|
|
}
|
|
|
|
|
}
|
2024-02-05 14:20:58 +08:00
|
|
|
|
|
|
|
|
|
if (item.channel == 3) {
|
|
|
|
|
item.goods.available = 1;
|
|
|
|
|
/* H5 领取 */
|
|
|
|
|
sessionStorage.setItem(
|
|
|
|
|
"goodsInfo",
|
|
|
|
|
JSON.stringify(item.goods)
|
|
|
|
|
);
|
|
|
|
|
location.href = "./ysf.html";
|
|
|
|
|
}
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
/* 弹窗回调 */
|
2024-04-10 23:11:41 +08:00
|
|
|
|
backFunction(type) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
if (this.bottomText === "点击复制" && type) {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
var aux = document.createElement("input");
|
|
|
|
|
aux.setAttribute("value", this.href);
|
|
|
|
|
document.body.appendChild(aux);
|
|
|
|
|
aux.select();
|
|
|
|
|
document.execCommand("copy");
|
|
|
|
|
document.body.removeChild(aux);
|
2023-12-28 18:06:33 +08:00
|
|
|
|
this.openDialog("复制成功");
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* 取消订单 */
|
|
|
|
|
if (this.isCancel && type === 2) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
req
|
|
|
|
|
.axiosPut(
|
|
|
|
|
`/key/order/cancel/${this.order_number}?token=${token}`
|
|
|
|
|
)
|
|
|
|
|
.then(({ code, message }) => {
|
|
|
|
|
if (code === 200) {
|
|
|
|
|
this.getOrderList();
|
|
|
|
|
} else {
|
|
|
|
|
this.apiError(code, message);
|
|
|
|
|
}
|
|
|
|
|
});
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
/* 查看卡密 */
|
2024-04-10 23:11:41 +08:00
|
|
|
|
lookCard(item) {
|
2024-01-10 10:07:52 +08:00
|
|
|
|
sessionStorage.setItem("orderNumber", item.order_number);
|
2024-02-04 14:32:16 +08:00
|
|
|
|
window.location.href = "/orderDetails/cardOrder.html";
|
2023-08-09 14:45:27 +08:00
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
/* 统一控制弹窗 */
|
2024-04-10 23:11:41 +08:00
|
|
|
|
popFunction({ title, text, status, b_text, show }) {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
this.popTitle = title;
|
|
|
|
|
this.popText = text;
|
|
|
|
|
this.popStatus = status;
|
|
|
|
|
this.bottomText = b_text;
|
|
|
|
|
this.popShow = show;
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
// 单条弹框
|
2024-04-10 23:11:41 +08:00
|
|
|
|
openDialog(tip) {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
this.toastShow = true;
|
|
|
|
|
this.toastTip = tip;
|
|
|
|
|
setTimeout(() => {
|
|
|
|
|
this.toastShow = false;
|
2023-12-28 18:06:33 +08:00
|
|
|
|
this.toastTip = "";
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}, 3000);
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
/* ————————————————————————以下方法为数据订单数据获取和处理———————————————————————— */
|
2024-04-10 23:11:41 +08:00
|
|
|
|
scrollBottom(e) {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
let Scroll = e.target;
|
|
|
|
|
let scrollHeight = Scroll.scrollHeight - Scroll.clientHeight;
|
|
|
|
|
this.scrollTop = Scroll.scrollTop;
|
2023-12-28 18:06:33 +08:00
|
|
|
|
if (
|
|
|
|
|
scrollHeight - Scroll.scrollTop < 100 &&
|
|
|
|
|
!this.loadFlag &&
|
|
|
|
|
this.total === this.limit
|
|
|
|
|
) {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
this.loadFlag = true;
|
|
|
|
|
this.page++;
|
|
|
|
|
this.getOrderList(true);
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
/* 以下三个方法是下拉刷新 */
|
2024-04-10 23:11:41 +08:00
|
|
|
|
touchStart(e) {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
this.startY = e.targetTouches[0].pageY;
|
|
|
|
|
},
|
|
|
|
|
|
2024-04-10 23:11:41 +08:00
|
|
|
|
touchMove(e) {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
if (this.scrollTop == 0) {
|
|
|
|
|
let moveDistance = e.targetTouches[0].pageY - this.startY;
|
|
|
|
|
if (moveDistance > 0 && moveDistance <= 80) {
|
|
|
|
|
this.loadShowHeight = moveDistance;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
2024-04-10 23:11:41 +08:00
|
|
|
|
touchEnd() {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
if (this.loadShowHeight >= 60) {
|
|
|
|
|
this.page = 1;
|
|
|
|
|
this.getOrderList();
|
|
|
|
|
} else {
|
|
|
|
|
this.loadShowHeight = 0;
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
/* 请求订单数据 */
|
2024-04-10 23:11:41 +08:00
|
|
|
|
getOrderList(isLodging) {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
/* 下拉 */
|
|
|
|
|
if (!isLodging) {
|
|
|
|
|
this.orderList = [];
|
|
|
|
|
this.loadShowHeight = true;
|
|
|
|
|
}
|
|
|
|
|
|
2023-12-28 18:06:33 +08:00
|
|
|
|
req
|
|
|
|
|
.axiosGet(`/key/order/queryList`, {
|
|
|
|
|
token,
|
|
|
|
|
page: this.page,
|
|
|
|
|
limit: this.limit
|
|
|
|
|
})
|
|
|
|
|
.then(({ data, code, message }) => {
|
|
|
|
|
if (code === 200) {
|
|
|
|
|
this.total = data.length;
|
|
|
|
|
data = data.map((item) => {
|
|
|
|
|
return this.refactorData(item);
|
|
|
|
|
});
|
|
|
|
|
if (!isLodging) {
|
|
|
|
|
setTimeout(() => {
|
|
|
|
|
this.loadShowHeight = 0;
|
|
|
|
|
this.orderList = data;
|
|
|
|
|
}, 1 * 1000);
|
|
|
|
|
}
|
|
|
|
|
if (isLodging && this.page > 1) {
|
|
|
|
|
this.orderList = this.orderList.concat(data);
|
|
|
|
|
this.loadFlag = false;
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
this.loadShowHeight = 0;
|
|
|
|
|
this.apiError(code, message);
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
2023-12-28 18:06:33 +08:00
|
|
|
|
});
|
2023-08-09 14:45:27 +08:00
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
/* 处理错误 */
|
2024-04-10 23:11:41 +08:00
|
|
|
|
apiError(code, message) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
this.popFunction({
|
|
|
|
|
title: "温馨提示",
|
|
|
|
|
text: message,
|
|
|
|
|
status: 3,
|
|
|
|
|
b_text: "我知道了",
|
|
|
|
|
show: true
|
|
|
|
|
});
|
2023-08-09 14:45:27 +08:00
|
|
|
|
if (code === 403) {
|
|
|
|
|
this.toPage();
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
/* 后端太懒 前端处理数据 */
|
2024-04-10 23:11:41 +08:00
|
|
|
|
refactorData(item) {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
/* type: 1兑换码 2立减金 3红包 */
|
|
|
|
|
/* channel: 1支付宝 2微信 3云闪付 */
|
2023-12-28 18:06:33 +08:00
|
|
|
|
const {
|
2023-08-09 14:45:27 +08:00
|
|
|
|
order_number,
|
|
|
|
|
create_time,
|
|
|
|
|
status_text,
|
|
|
|
|
status,
|
|
|
|
|
type,
|
2023-12-28 18:06:33 +08:00
|
|
|
|
product,
|
|
|
|
|
card_number,
|
2024-02-24 19:58:47 +08:00
|
|
|
|
card_password,
|
|
|
|
|
is_group
|
2023-12-28 18:06:33 +08:00
|
|
|
|
} = item;
|
|
|
|
|
const newItem = {
|
|
|
|
|
order_number,
|
|
|
|
|
create_time,
|
|
|
|
|
status_text,
|
|
|
|
|
status,
|
|
|
|
|
type
|
2023-08-09 14:45:27 +08:00
|
|
|
|
};
|
|
|
|
|
switch (type) {
|
|
|
|
|
case 1:
|
2023-12-28 18:06:33 +08:00
|
|
|
|
newItem["product_name"] = product.product_name;
|
|
|
|
|
newItem["src"] = product.show_url;
|
|
|
|
|
newItem["show_url"] = product.show_url;
|
|
|
|
|
newItem["product_type"] = product.product_type;
|
|
|
|
|
newItem["goods"] = product;
|
|
|
|
|
newItem["card_number"] = card_number;
|
|
|
|
|
newItem["card_password"] = card_password;
|
|
|
|
|
newItem["card_show"] = product.card_show;
|
2023-12-29 09:25:36 +08:00
|
|
|
|
newItem["send_num"] = 1;
|
2023-08-09 14:45:27 +08:00
|
|
|
|
break;
|
|
|
|
|
case 2:
|
|
|
|
|
const channel = product.entity.channel;
|
2023-12-28 18:06:33 +08:00
|
|
|
|
newItem["product_name"] = product.entity.batch_goods_name;
|
|
|
|
|
newItem["channel"] = channel;
|
2024-02-24 19:58:47 +08:00
|
|
|
|
newItem["is_group"] = is_group;
|
2023-12-28 18:06:33 +08:00
|
|
|
|
newItem["goods"] = product;
|
2023-12-29 09:25:36 +08:00
|
|
|
|
newItem["send_num"] = product.entity.send_num;
|
2023-08-09 14:45:27 +08:00
|
|
|
|
if (channel === 1) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
newItem["src"] =
|
|
|
|
|
"https://lsxdemall.oss-cn-beijing.aliyuncs.com/commonproductlogo/zfbreduce.png";
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
|
|
|
|
if (channel === 2) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
newItem["src"] =
|
|
|
|
|
"https://lsxdemall.oss-cn-beijing.aliyuncs.com/commonproductlogo/wxreduce.png";
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
|
|
|
|
if (channel === 3) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
newItem["src"] =
|
|
|
|
|
"https://lsxdemall.oss-cn-beijing.aliyuncs.com/MarketingSystem/img/logo_ysf.png";
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case 3:
|
|
|
|
|
const channels = product.entity.channel;
|
2023-12-28 18:06:33 +08:00
|
|
|
|
newItem["product_name"] = product.entity.batch_goods_name;
|
|
|
|
|
newItem["channel"] = channels;
|
|
|
|
|
newItem["goods"] = product;
|
2023-12-29 09:25:36 +08:00
|
|
|
|
newItem["send_num"] = 1;
|
2023-08-09 14:45:27 +08:00
|
|
|
|
if (channels === 1) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
newItem["src"] =
|
|
|
|
|
"https://lsxdemall.oss-cn-beijing.aliyuncs.com/MarketingSystem/img/redPacktes/alipay_icon.png";
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
|
|
|
|
if (channels === 2) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
newItem["src"] =
|
|
|
|
|
"https://lsxdemall.oss-cn-beijing.aliyuncs.com/MarketingSystem/img/redPacktes/wechat_icon.png";
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
|
|
|
|
if (channels === 3) {
|
2023-12-28 18:06:33 +08:00
|
|
|
|
newItem["src"] =
|
|
|
|
|
"https://lsxdemall.oss-cn-beijing.aliyuncs.com/MarketingSystem/img/logo_ysf.png";
|
2023-08-09 14:45:27 +08:00
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
return newItem;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
</script>
|
|
|
|
|
</body>
|
|
|
|
|
|
|
|
|
|
</html>
|