From c72156587ad51a022b2e3fced4701c8c9785302f Mon Sep 17 00:00:00 2001
From: mark <mark18340872469@163.com>
Date: 星期日, 09 十月 2022 16:31:30 +0800
Subject: [PATCH] 请求拦截器 小改
---
src/views/personalCenter/components/OrderMng.vue | 783 ++++++++++++++++++++++++++++++++++++-------------------
1 files changed, 505 insertions(+), 278 deletions(-)
diff --git a/src/views/personalCenter/components/OrderMng.vue b/src/views/personalCenter/components/OrderMng.vue
index a803d5d..b366e26 100644
--- a/src/views/personalCenter/components/OrderMng.vue
+++ b/src/views/personalCenter/components/OrderMng.vue
@@ -5,7 +5,11 @@
<div class="left">
<div class="id">
璁㈠崟缂栧彿/浜у搧鍚嶇О
- <el-input v-model="inputText" placeholder="璇疯緭鍏�"></el-input>
+ <el-input
+ style="width: 140px"
+ v-model="inputText"
+ placeholder="璇疯緭鍏�"
+ ></el-input>
</div>
<div class="cluster">
@@ -13,20 +17,38 @@
<el-date-picker
size="small"
v-model="searchTime"
- @change="save"
+ @change="searchingBtn"
type="datetimerange"
start-placeholder="寮�濮嬫棩鏈�"
end-placeholder="缁撴潫鏃ユ湡"
:default-time="['00:00:00', '23:59:59']"
+ style="width: 212px"
></el-date-picker>
+ </div>
+
+ <div class="id">
+ 鐘舵��
+ <el-select
+ class="selectStatus"
+ v-model="status"
+ @change="searchingBtn"
+ >
+ <el-option label="鍏ㄩ儴" :value="-10"></el-option>
+ <el-option label="宸插彇娑�" :value="-1"></el-option>
+ <el-option label="鏈笅鍗�" :value="0"></el-option>
+ <el-option label="寰呮敮浠�" :value="1"></el-option>
+ <el-option label="宸叉敮浠�" :value="2"></el-option>
+ <el-option label="瀹℃牳涓�" :value="11"></el-option>
+ <el-option label="宸查┏鍥�" :value="12"></el-option>
+ </el-select>
</div>
</div>
<div class="right">
- <div class="button searchBtn" @click="save">鎼滅储</div>
- <div class="button resetBtn" @click="save">閲嶇疆</div>
+ <div class="button searchBtn" @click="searchingBtn">鎼滅储</div>
+ <div class="button resetBtn" @click="clearSearch">閲嶇疆</div>
</div>
- <div class="to-excel">
+ <div class="to-excel" @click="exportList">
<span class="iconfont"></span> <span>瀵煎嚭</span>
</div>
</div>
@@ -47,29 +69,59 @@
}}</template>
</el-table-column>
<el-table-column
- prop="name"
- label="濮撳悕"
+ prop="sn"
+ label="璁㈠崟缂栧彿"
show-overflow-tooltip
></el-table-column>
- <el-table-column
- prop="phone"
- label="鎵嬫満鍙�"
- show-overflow-tooltip
- ></el-table-column>
- <el-table-column prop="userType" label="鐢ㄦ埛绫诲瀷"></el-table-column>
- <el-table-column prop="duration" label="鎺堟潈鏃堕暱"></el-table-column>
- <el-table-column prop="authList" label="鏉冮檺"></el-table-column>
-
- <el-table-column label="鐘舵��">
+ <el-table-column label="浜у搧鍚嶇О" show-overflow-tooltip>
<template slot-scope="scope">
- <div v-if="scope.row.isBind == 1" class="status green">宸茬粦瀹�</div>
- <div v-else class="status">鏈粦瀹�</div>
+ {{ scope.row.products[0].productName }}
</template>
</el-table-column>
-
- <el-table-column label="鎿嶄綔">
+ <el-table-column
+ prop="createTime"
+ label="鍒涘缓鏃堕棿"
+ show-overflow-tooltip
+ sortable
+ width="180"
+ ></el-table-column>
+ <!-- <el-table-column
+ prop="orderMoney"
+ label="璁㈠崟閲戦(鍏�)"
+ sortable
+ width="140"
+ ></el-table-column>
+ <el-table-column label="鏀粯鏂瑰紡">
<template slot-scope="scope">
- <span class="option" @click="showDetail(scope.row)">璁㈠崟璇︽儏</span>
+ <div v-if="scope.row.payMethod == 0">灏氭湭鏀粯</div>
+ <div v-if="scope.row.payMethod == 1">绾夸笅姹囨</div>
+ <div v-if="scope.row.payMethod == 2">鏀粯瀹�</div>
+ <div v-if="scope.row.payMethod == 3">寰俊</div>
+ <div v-if="scope.row.payMethod == 4">鏀粯瀹漺ap绔�</div>
+ <div v-if="scope.row.payMethod == 5">0鍏冩敮浠�</div>
+ </template>
+ </el-table-column> -->
+ <el-table-column
+ prop="status"
+ label="璁㈠崟鐘舵��"
+ sortable
+ ></el-table-column>
+
+ <el-table-column label="鎿嶄綔" width="140">
+ <template slot-scope="scope">
+ <span class="option" @click="showDetail(scope.row)">璇︽儏</span>
+ <span
+ class="option"
+ v-if="scope.row.status === '寰呮敮浠�'"
+ @click="showPayBox(scope.row.id)"
+ >鏀粯</span
+ >
+ <span
+ class="option"
+ v-if="scope.row.status === '寰呮敮浠�'"
+ @click="cancel(scope.row.id)"
+ >鍙栨秷</span
+ >
</template>
</el-table-column>
</el-table>
@@ -86,16 +138,23 @@
></el-pagination>
</div>
</div>
+
+ <ConfirmOrder
+ v-if="showOrder"
+ :orderId="orderId"
+ @close="closeBox"
+ ></ConfirmOrder>
</div>
+
<div class="order-detail" v-else>
<div class="banner">
- <span class="iconfont"></span> <span class="t">璁㈠崟璇︽儏</span>
+ <span class="iconfont" @click="back"></span>
+ <span class="t">璁㈠崟璇︽儏</span>
</div>
<div class="block">
<div class="head-name">璁㈠崟淇℃伅</div>
<div class="order-general-view">
-
<div class="detail-list">
<div class="item">
<label>璁㈠崟缂栧彿锛�</label>
@@ -109,199 +168,169 @@
<label>鍒涘缓浜猴細</label>
<span>{{ form.createUserName }}</span>
</div>
- <div class="item">
+ <!-- <div class="item">
<label>浠樻鏂瑰紡锛�</label>
<span>{{ form.source == 0 ? "婵�娲荤爜涓嬭浇" : "绾夸笂璐拱" }}</span>
- </div>
+ </div> -->
<div class="item">
<label>璁㈠崟鐘舵�侊細</label>
<span>{{ form.status }}</span>
</div>
-
- <div class="item">
+
+ <!-- <div class="item">
<label>璁㈠崟閲戦锛�</label>
<span>{{
form.source == 0 ? "--" : "锟� " + form.orderMoney + " 鍏�"
}}</span>
- </div>
+ </div> -->
</div>
</div>
</div>
<div class="block">
<div class="head-name">璁㈠崟璇︽儏</div>
- <el-table
- id="multipleTable"
- ref="multipleTable"
- tooltip-effect="dark"
- :data="form.products"
- style="width: 100%"
- :fit="true"
- :max-height="tableHeight"
- :default-sort="{ prop: 'createTime', order: 'descending' }"
- @selection-change="handleSelectionChange"
- >
- <el-table-column prop="productName" label="浜у搧鍚嶇О" width="220"></el-table-column>
- <el-table-column prop="productTypeName" label="浜у搧绫诲瀷" width="140"></el-table-column>
- <el-table-column prop="productVersion" label="鐗堟湰鍙�" width="140"></el-table-column>
- <el-table-column label="閰嶇疆璇︽儏" min-width="180">
- <template slot-scope="scope">
- <div style="text-align: left">
- <p v-if="scope.row.productType != 3 && scope.row.productType != 4 && scope.row.modules.length">
- 妯″潡锛�
- <span v-for="item in scope.row.modules" :key="item">{{ item + " " }}</span>
- </p>
- <p v-if="scope.row.productBaseDetail.hasChUnitPrice">
- 閫氶亾鏁伴噺锛�
- <span>{{ scope.row.ChCount }}</span>
- </p>
- <p v-if="scope.row.productBaseDetail.hasAuthPrice">
- 鎺堟潈鏁伴噺锛�
- <span>{{ scope.row.authCount }}</span>
- </p>
- <p v-if="scope.row.productType != 3 && scope.row.productType != 4 && scope.row.sdks.length">
- 绠楁硶锛�
- <span v-for="item in scope.row.sdks" :key="item">{{ item + " " }}</span>
- </p>
- <p>
- 鏈嶅姟鏃堕暱锛�
- <span>{{ scope.row.serveYear + "骞�" }}</span>
- </p>
- </div>
- </template>
- </el-table-column>
- <el-table-column prop="devCount" label="鏁伴噺" width="110"></el-table-column>
- <el-table-column label="鏈嶅姟璧锋鏃堕棿" min-width="180">
- <template slot-scope="scope">
- <p>{{ scope.row.startTime }}</p>
- <p>{{ scope.row.endTime }}</p>
- </template>
- </el-table-column>
- <el-table-column label="閲戦" prop="price" width="130">
- <template slot-scope="scope">{{ form.source == 0 ? "--" : "锟� " + scope.row.price + " 鍏�" }}</template>
- </el-table-column>
- <el-table-column label="鎿嶄綔" min-width="200">
- <template slot-scope="scope">
- <div class="operation">
- <span style="cursor: pointer" @click="downLoadEnclosure(scope.row)" v-if="scope.row.appendix.length"
- >涓嬭浇闄勪欢</span
- >
- <span
- style="cursor: pointer"
- v-if="scope.row.orderStatus == 2 && (scope.row.productType == 3 || scope.row.productType == 4)"
- @click="downLoadSoftware(scope.row)"
- >涓嬭浇杞欢</span
- >
- <span
- style="cursor: pointer"
- v-if="scope.row.orderStatus == 2 && (scope.row.productType == 2 || scope.row.productType == 1)"
- @click="downLoadSoftware(scope.row)"
- >涓嬭浇瀹夎鍖�</span
- >
- <span
- style="cursor: pointer"
- v-if="scope.row.orderStatus == 2 && scope.row.productType == 5"
- @click="downLoadAuth(scope.row)"
- >涓嬭浇浜у搧瀵嗛挜</span
- >
- <span style="cursor: pointer" v-if="scope.row.productType != 2" @click="toDevice(scope.row)"
- >鏌ョ湅璁惧</span
- >
- </div>
- </template>
- </el-table-column>
- </el-table>
+ <el-table
+ id="multipleTable"
+ ref="multipleTable"
+ tooltip-effect="dark"
+ :data="form.products"
+ style="width: 100%"
+ :fit="true"
+ :default-sort="{ prop: 'createTime', order: 'descending' }"
+ v-if="showTable"
+ >
+ <el-table-column prop="productName" label="浜у搧鍚嶇О"></el-table-column>
+
+ <!-- <el-table-column label="閰嶇疆璇︽儏">
+ <template slot-scope="scope">
+ <div style="text-align: left">
+ <p
+ v-if="
+ scope.row.productType != 3 &&
+ scope.row.productType != 4 &&
+ scope.row.modules.length
+ "
+ >
+ 妯″潡锛�
+ <span v-for="item in scope.row.modules" :key="item">{{
+ item + " "
+ }}</span>
+ </p>
+ <p v-if="scope.row.productBaseDetail.hasChUnitPrice">
+ 閫氶亾鏁伴噺锛�
+ <span>{{ scope.row.ChCount }}</span>
+ </p>
+ <p v-if="scope.row.productBaseDetail.hasAuthPrice">
+ 鎺堟潈鏁伴噺锛�
+ <span>{{ scope.row.authCount }}</span>
+ </p>
+ <p
+ v-if="
+ scope.row.productType != 3 &&
+ scope.row.productType != 4 &&
+ scope.row.sdks.length
+ "
+ >
+ 绠楁硶锛�
+ <span v-for="item in scope.row.sdks" :key="item">{{
+ item + " "
+ }}</span>
+ </p>
+ <p>
+ 鏈嶅姟鏃堕暱锛�
+ <span>{{ scope.row.serveYear + "骞�" }}</span>
+ </p>
+ </div>
+ </template>
+ </el-table-column> -->
+ <el-table-column prop="devCount" label="鏁伴噺"></el-table-column>
+ <!-- <el-table-column label="鏈嶅姟璧锋鏃堕棿">
+ <template slot-scope="scope">
+ <p>{{ scope.row.startTime }}</p>
+ <p>{{ scope.row.endTime }}</p>
+ </template>
+ </el-table-column> -->
+ <el-table-column label="閲戦">
+ <template slot-scope="scope">{{
+ form.source == 0 ? "--" : "锟� " + scope.row.price + " 鍏�"
+ }}</template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔">
+ <template slot-scope="scope">
+ <div
+ v-if="scope.row.url"
+ class="downloadLink button"
+ @click="download(scope.row.url)"
+ style="color: blue; cursor: pointer"
+ >
+ 涓嬭浇
+ </div>
+ </template>
+ </el-table-column>
+ </el-table>
</div>
- <div class="block">
+ <!-- <div class="block">
<div class="head-name">鏀粯淇℃伅</div>
- <el-table
- tooltip-effect="dark"
- :data="form.payInfo"
- :fit="true"
- :max-height="tableHeight"
- :default-sort="{ prop: 'createTime', order: 'descending' }"
- :span-method="tableSpanMethod"
- >
- <el-table-column prop="payMethod" label="鏀粯娓犻亾" width="150">
- <template slot-scope="scope">
- <div v-if="scope.row.payMethod == 1">绾夸笅姹囨</div>
- <div v-if="scope.row.payMethod == 2">鏀粯瀹�</div>
- <div v-if="scope.row.payMethod == 3">寰俊</div>
- </template>
- </el-table-column>
- <!-- <el-table-column prop="payTime" label="浠樻鏃堕棿" align="center" min-width="150" ></el-table-column> -->
- <el-table-column prop="updateTime" label="浠樻鏃堕棿" width="180"></el-table-column>
- <el-table-column prop="payMoney" label="浠樻閲戦" width="150"></el-table-column>
- <el-table-column
- prop="tradeNo"
- label="闄勪欢鍑瘉鍙�/娴佹按鍙�"
- v-if="form.payMethod == 2"
- width="200"
- ></el-table-column>
- <el-table-column prop="payAccount" label="浠樻璐﹀彿" width="190"></el-table-column>
- <el-table-column label="浠樻鍗曚綅/濮撳悕" prop="payUser" width="220"></el-table-column>
- <el-table-column label="鏌ョ湅浠樻鍑瘉" width="200">
- <template slot-scope="scope">
- <div>
- <el-image
- style="width: 100px"
- :fit="imageFit"
- :src="`/httpImage/${scope.row.appendix}`"
- :preview-src-list="[`/httpImage/${scope.row.appendix}`]"
- ></el-image>
- </div>
- </template>
- </el-table-column>
- <el-table-column label="瀹℃牳鐘舵��" width="180">
- <template slot-scope="scope">
- <div>
- <span v-if="scope.row.orderStatus == 11">瀹℃牳涓�</span>
- <span v-if="scope.row.orderStatus == 12">宸查┏鍥�</span>
- <span v-if="scope.row.orderStatus == 2">瀹℃牳閫氳繃</span>
- </div>
- </template>
- </el-table-column>
- <el-table-column label="鎿嶄綔" min-width="170">
- <template slot-scope="scope">
- <div v-if="scope.row.orderStatus !== 2">
- <span class="cursor-pointer" @click="checkOrder(1)">瀹℃牳閫氳繃</span>
- <span class="cursor-pointer" @click="checkOrder(2)">椹冲洖</span>
- </div>
- <span v-else>-</span>
- </template>
- </el-table-column>
- </el-table>
- </div>
+ <el-table
+ tooltip-effect="dark"
+ :data="form.payInfo"
+ :fit="true"
+ :default-sort="{ prop: 'createTime', order: 'descending' }"
+ v-if="showTable"
+ >
+ <el-table-column prop="payMethod" label="鏀粯娓犻亾" min-width="80">
+ <template slot-scope="scope">
+ <div v-if="scope.row.payMethod == 0">灏氭湭鏀粯</div>
+ <div v-if="scope.row.payMethod == 1">绾夸笅姹囨</div>
+ <div v-if="scope.row.payMethod == 2">鏀粯瀹�</div>
+ <div v-if="scope.row.payMethod == 3">寰俊</div>
+ <div v-if="scope.row.payMethod == 4">鏀粯瀹漺ap绔�</div>
+ <div v-if="scope.row.payMethod == 5">0鍏冩敮浠�</div>
+ </template>
+ </el-table-column>
+ <el-table-column prop="updateTime" label="浠樻鏃堕棿"></el-table-column>
+ <el-table-column prop="payMoney" label="浠樻閲戦"></el-table-column>
+
+ <el-table-column prop="payAccount" label="浠樻璐﹀彿"></el-table-column>
+ <el-table-column label="浠樻鍗曚綅/濮撳悕" prop="payUser"></el-table-column>
+ <el-table-column label="鏌ョ湅浠樻鍑瘉">
+ <template slot-scope="scope">
+ <div class="link" @click="openImg(scope.row.appendix)">
+ 鏌ョ湅浠樻鍑瘉
+ </div>
+ </template>
+ </el-table-column>
+ </el-table>
+ </div> -->
</div>
</template>
<script>
-// import Steps from "./Steps";
-// import StepsCard from "./StepCard";
-// import TreeBox from "./TreeBox";
+import { getOrders, getAuthFile, cancelOrder } from "@/api/order";
+import { getOrderById } from "@/api/product";
+import ConfirmOrder from "@/views/productDetail/components/ConfirmOrder";
+
export default {
- components: {},
+ components: {
+ ConfirmOrder,
+ },
+ created() {
+ let type = sessionStorage.getItem("type");
+ if (type) {
+ this.status = +type;
+ sessionStorage.removeItem("type");
+ }
+ this.searchingBtn();
+ },
data() {
return {
- searchTime: [
- this.$moment().format("YYYY-MM-DD 00:00:00"),
- this.$moment().format("YYYY-MM-DD HH:mm:ss"),
- ], //鎼滅储鏃堕棿
+ searchTime: [], //鎼滅储鏃堕棿
page: 1,
size: 10, //鍒嗛〉鐩稿叧
inputText: "", //杈撳叆妗嗗唴瀹�
activeStep: 0,
activeIndex: 0,
total: 0, //鎬绘暟
- dataList: [
- {
- name: "basic",
- phone: "1121313232",
- userType: "涓汉",
- duration: "姘镐箙",
- authList: "闆嗙兢1锛岄泦缇�2",
- isBind: 1,
- },
- ],
+ dataList: [],
isShowAdd: false, //鏄惁灞曠ず鏂板寮圭獥
isShowUnbind: false, //鏄惁灞曠ず瑙g粦寮圭獥
unbindId: "",
@@ -318,76 +347,110 @@
cluster: null, //閫変腑鐨勯泦缇ょ被鍨�
showQuit: false, //灞曠ず閫�鍑洪泦缇ょ殑寮圭獥
showJoin: false, //灞曠ず鍔犲叆闆嗙兢鐨勫脊绐�
- activeEquipment: null, //澶勭悊涓殑璁惧
+ form: {}, //澶勭悊涓殑璁惧
isShowDetail: false,
- form: {
- id: "",
- createTime: "",
- createUserName: "",
- payTime: "",
- payMethod: "",
- payAble: 0,
- orderMoney: 0,
- price: "",
- serveYear: 1,
- source: 0,
- status: "",
- products: [],
- activeCodes: [],
- payInfo: [],
- },
+ showTable: false,
+ orderId: "",
+ showOrder: false,
+ status: -10,
};
},
methods: {
- goback() {
- this.isShowAdd = false;
- this.activeIndex = 0;
- },
- goto(i) {
- this.activeIndex = i;
- },
- // 璺冲埌璁惧璇︽儏
- checkDetail(row) {
- this.$router.push({
- path: "/equipmentDetail",
- query: {
- id: row.devId,
- ip: row.devIp,
- port: row.serverPort,
- ndid: row.id,
- },
- });
- },
-
- // 璺冲埌绠楁硶璇︽儏
- algorithmDetail(row) {
- this.$router.push({
- path: "/algorithmDetail",
- query: {
- id: row.devId,
- ip: row.devIp,
- port: row.serverPort,
- },
- });
- },
-
// 鏌ヨ鍒楄〃
-
- save() {},
+ searchingBtn() {
+ let param = {
+ page: this.page,
+ size: this.size,
+ startTime: this.searchTime ? this.searchTime[0] : "",
+ endTime: this.searchTime ? this.searchTime[1] : "",
+ inputText: this.inputText,
+ productBaseId: "0",
+ orderName: "",
+ orderType: "",
+ status: this.status,
+ };
+ getOrders(param)
+ .then((res) => {
+ this.dataList = res.data.list.map((item, indez) => {
+ let status = "";
+ switch (item.orderStatus) {
+ case -1:
+ status = "宸插彇娑�";
+ break;
+ case 0:
+ status = "鏈笅鍗�";
+ break;
+ case 1:
+ status = "寰呮敮浠�";
+ break;
+ case 2:
+ status = "宸叉敮浠�";
+ break;
+ case 11:
+ status = "瀹℃牳涓�";
+ break;
+ case 12:
+ status = "宸查┏鍥�";
+ break;
+ default:
+ status = "";
+ }
+ let name = "";
+ let downFlag = false;
+ let products = [];
+ item.products.forEach((every, index) => {
+ // 鍒ゆ柇鏈鍗曟槸鍚﹀瓨鍦ㄥ彲涓嬭浇鐨勫唴瀹癸紙杞欢锛宻dk锛�
+ if (every.productType == 1 || every.productType == 3) {
+ downFlag = true;
+ }
+ // 褰掔被浜у搧鍜屾縺娲荤爜浠ヤ緵涓嬭浇
+ products.push({
+ productId: every.productId,
+ productName: every.productName,
+ activateCode: every.activateCode,
+ productTypeName: every.productTypeName,
+ });
+ if (index == 0) {
+ name += every.productName + "(" + every.productTypeName + ")";
+ } else {
+ name +=
+ " / " + every.productName + "(" + every.productTypeName + ")";
+ }
+ });
+ return {
+ id: item.id,
+ sn: item.sn,
+ name: name,
+ source: item.source == 0 ? "婵�娲荤爜涓嬭浇" : "绾夸笂璐拱",
+ createTime: item.createTime,
+ status: status,
+ orderStatus: item.orderStatus,
+ orderMoney: item.orderMoney,
+ payMethod: item.payMethod,
+ code:
+ item.products.length > 1 ? "-" : item.products[0].activateCode,
+ canDownLoad: downFlag,
+ products: products,
+ };
+ });
+ this.total = res.data.total;
+ if (res.data.total <= this.size) {
+ this.page = 1;
+ }
+ })
+ .catch((err) => {
+ this.$notify.error(err.msg);
+ });
+ },
//鍒嗛〉鍔熻兘
handleSizeChange(size) {
this.size = size;
+ this.searchingBtn();
},
//鍒嗛〉鍔熻兘
refrash(page) {
this.page = page;
- },
-
- //瑙g粦鎸夐挳
- Untying(row) {
- console.log(row);
- this.unbindId = row.id;
- this.isShowUnbind = true;
+ this.searchingBtn();
},
//鑾峰緱榛樿鏃堕棿
@@ -408,35 +471,189 @@
];
},
- //鍏抽棴鏂板寮圭獥
- closeAddBox() {
- this.isShowAdd = false;
- },
- // 鍏抽棴瑙g粦寮圭獥
- closeUnbindBox() {
- this.isShowUnbind = false;
- },
-
- //瑙g粦鎴愬姛鍥炶皟
- reflash() {
- this.isShowUnbind = false;
- },
-
clearSearch() {
- this.searchTime = this.getDateInit();
+ debugger;
+ this.searchTime = [];
+ debugger;
this.inputText = "";
+ this.searchingBtn();
},
- //閫�鍑洪泦缇�
- quitCluster(equipment) {
- this.activeEquipment = equipment;
- this.showQuit = true;
+ showDetail(order) {
+ getOrderById(order.id).then((res) => {
+ if (res.success) {
+ let status = "";
+ switch (res.data.orderInfo.orderStatus) {
+ case -1:
+ status = "宸插彇娑�";
+ break;
+ case 0:
+ status = "鏈笅鍗�";
+ break;
+ case 1:
+ status = "宸蹭笅鍗�,寰呮敮浠�";
+ break;
+ case 2:
+ status = "宸叉敮浠�";
+ break;
+ default:
+ status = "";
+ }
+
+ let prod = res.data.orderInfo.products.map((item) => {
+ // 绠楀嚭璧峰鏈嶅姟鏃堕棿
+ let year = res.data.orderInfo.createTime.split("-")[0];
+ let endTime =
+ parseInt(year) +
+ item.serveYear +
+ res.data.orderInfo.createTime.slice(4);
+ return {
+ productId: item.productId,
+ productName: item.productName,
+ productType: item.productType,
+ orderStatus: res.data.orderInfo.orderStatus,
+ productTypeName: item.productTypeName,
+ productVersion: item.productVersion,
+ modules: item.moduleNames,
+ sdks: item.sdkNames,
+ appendix: item.appendix,
+ serveYear: item.serveYear,
+ ChCount: item.ChCount,
+ authCount: item.authCount,
+ devCount: item.devCount,
+ price: res.data.orderInfo.orderMoney,
+ startTime: res.data.orderInfo.createTime,
+ endTime: endTime,
+ deviceIds: item.devIdList,
+ code: item.activateCode,
+ productBaseDetail: item.productBaseDetail,
+ };
+ });
+ let codes = res.data.orderInfo.products.map((item) => {
+ return {
+ productId: item.productId,
+ productName: item.productName,
+ code: item.activateCode,
+ deviceIds: item.deviceIds,
+ status: item.codeStatus == 0 ? "鏈縺娲�" : "宸叉縺娲�",
+ activeTime: item.activeTime,
+ devCount: item.devCount,
+ usedCount: item.usedCount,
+ };
+ });
+ let payInfo = res.data.orderInfo.payCerts.map((item) => {
+ return {
+ appendix: item.appendix,
+ payMethod: res.data.orderInfo.payMethod,
+ payTime: res.data.orderInfo.payTime,
+ updateTime: item.updateTime,
+ payAccount: item.payAccount,
+ payMoney: item.payMoney,
+ payUser: item.payUser,
+ tradeNo: res.data.orderInfo.tradeNo,
+ orderStatus: res.data.orderInfo.orderStatus,
+ };
+ });
+ this.form = {
+ id: res.data.orderInfo.id,
+ createTime: res.data.orderInfo.createTime,
+ createUserName: res.data.orderInfo.createUserName,
+ orderMoney: res.data.orderInfo.orderMoney,
+ orderStatus: res.data.orderInfo.orderStatus,
+ status: status,
+ sn: res.data.orderInfo.sn,
+ source: res.data.orderInfo.source,
+ payMethod: "鏀粯瀹�",
+ price: "-",
+ payAble: "-",
+ payTime: "-",
+ products: prod,
+ activeCodes: codes,
+ payInfo: payInfo,
+ };
+ this.isShowDetail = true;
+ this.$nextTick(() => {
+ this.showTable = true;
+ });
+ }
+ });
},
- //鍔犲叆闆嗙兢
- showDetail(equipment) {
- this.activeEquipment = equipment;
- this.isShowDetail = true;
+ back() {
+ this.isShowDetail = false;
+ this.searchingBtn();
+ },
+
+ openImg(url) {
+ window.open("/httpImage/" + url);
+ },
+
+ async exportList() {
+ let param = {
+ page: this.page,
+ size: this.size,
+ startTime: this.searchTime ? this.searchTime[0] : "",
+ endTime: this.searchTime ? this.searchTime[1] : "",
+ inputText: this.inputText,
+ productBaseId: "0",
+ orderName: "",
+ orderType: "",
+ status: 0,
+ };
+
+ const result = await getAuthFile(param);
+
+ console.log(result);
+
+ var blob = new Blob([result.body.data], {
+ type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8",
+ }),
+ Temp = document.createElement("a");
+
+ Temp.href = window.URL.createObjectURL(blob);
+
+ console.log(result);
+ console.log(result.fileName);
+
+ Temp.download = window.decodeURI(result.fileName);
+
+ Temp.setAttribute("download", result.fileName);
+
+ document.body.appendChild(Temp);
+
+ Temp.click();
+
+ document.body.removeChild(Temp);
+
+ window.URL.revokeObjectURL(Temp);
+ },
+
+ showPayBox(id) {
+ this.showOrder = true;
+ this.orderId = id;
+ },
+
+ cancel(id) {
+ cancelOrder("/saas/api-s/saasOrder/cancel/" + id).then((res) => {
+ if (res && res.success) {
+ this.$notify({
+ type: "success",
+ message: "璁㈠崟鍙栨秷鎴愬姛",
+ duration: 2500,
+ offset: 57,
+ });
+ this.searchingBtn();
+ }
+ });
+ },
+
+ closeBox() {
+ this.showOrder = false;
+ this.searchingBtn();
+ },
+
+ download(url) {
+ window.location.href(url);
},
},
mounted() {},
@@ -465,9 +682,6 @@
margin-right: 10px;
}
}
- .steps {
- }
-
.searchBtn {
width: 60px;
height: 32px;
@@ -476,7 +690,7 @@
color: #fff;
background: #0065ff;
border-radius: 3px;
- margin-right: 20px;
+ margin-right: 10px;
}
.right {
display: flex;
@@ -492,7 +706,8 @@
color: #fff;
align-items: center;
justify-content: center;
- margin-left: 195px;
+ margin-left: 20px;
+ cursor: pointer;
}
.resetBtn {
width: 60px;
@@ -550,6 +765,12 @@
border-color: #0065ff;
}
}
+ }
+
+ .selectStatus {
+ margin: 0 10px;
+ margin-right: 30px;
+ width: 100px;
}
.el-input ::v-deep {
@@ -779,6 +1000,7 @@
.iconfont {
margin-right: 10px;
font-size: 18px;
+ cursor: pointer;
}
.t {
font-size: 16px;
@@ -789,7 +1011,7 @@
}
.block {
box-sizing: border-box;
- padding: 20px ;
+ padding: 20px;
padding-bottom: 30px;
margin-bottom: 24px;
background: #ffffff;
@@ -818,20 +1040,21 @@
text-align: left;
.item {
width: 25%;
- // margin: 15px 0 0;
- margin-top: 30px;
+ // margin: 15px 0 0;
+ margin-top: 30px;
label {
height: 20px;
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
- line-height: 20px;color: #666666;
+ line-height: 20px;
+ color: #666666;
}
span {
height: 20px;
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 700;
- color: #3D3D3D;
+ color: #3d3d3d;
line-height: 20px;
}
}
@@ -860,4 +1083,8 @@
border-color: #0065ff;
}
+.link {
+ color: #0065ff;
+ cursor: pointer;
+}
</style>
\ No newline at end of file
--
Gitblit v1.8.0