Browse Source

更新

master
j1ack 2 years ago
parent
commit
68ac2ed48b
  1. 184
      src/views/dashboard/PieChartCreate.vue
  2. 15
      src/views/dashboard/demo.vue
  3. 2
      src/views/otc/otcStore/index.vue
  4. 2
      src/views/otc/otcStoreDaiFuOrder/index.vue
  5. 230
      src/views/otc/otcStoreRechargeOrder/index.vue
  6. 4
      src/views/user/mail/index.vue

184
src/views/dashboard/PieChartCreate.vue

@ -13,14 +13,17 @@
</span> </span>
</div> </div>
<!-- <div class="module"> <div class="module">
<demo :rate="chartData.collectionSuccessOrderNum / chartData.collectionTotalOrder" :circleColor="'#46F2BC'"> <demo :rate="chartData.collectionSuccessOrderNum / chartData.collectionTotalOrder" :circleColor="'#46F2BC'">
<span class="slot-font1">{{Math.floor((chartData.collectionSuccessOrderNum / chartData.collectionTotalOrder) * 100)}}%</span> <span class="slot-font1"
</demo> v-if="isNaN(Math.floor((chartData.collectionSuccessOrderNum / chartData.collectionTotalOrder) * 100)) != true">{{ Math.floor((chartData.collectionSuccessOrderNum
</div> --> / chartData.collectionTotalOrder) * 100) }}%</span>
<span class="slot-font1" v-else>0%</span>
</demo>
</div>
<div class="pieCon1 center" id="myChart1" style="width:150px;height:150px;margin-bottom: 15px;"></div> <div class="pieCon1 center" id="myChart1" style="width:150px;height:150px;margin-bottom: 15px;"></div>
<div class="center"> <div class="center">
<count-to :start-val="0" :end-val="chartData.collectionSuccessOrderNum" :duration="3600" <count-to :start-val="0" :end-val="chartData.collectionSuccessOrderNum" :duration="3600"
class="card-panel-num" /> class="card-panel-num" />
@ -38,30 +41,34 @@
</span> </span>
<span class="t2"> <span class="t2">
总金额 总金额
<span v-if="chartData.collectionAllPrice>=10000">{{ NumberDiv(chartData.collectionAllPrice,10000) }}</span> <span v-if="chartData.collectionAllPrice >= 10000">{{ NumberDiv(chartData.collectionAllPrice, 10000) }}</span>
<span v-else>{{ chartData.collectionAllPrice }}</span> <span v-else>{{ chartData.collectionAllPrice }}</span>
<span v-if="chartData.collectionAllPrice>=10000">万元</span> <span v-if="chartData.collectionAllPrice >= 10000">万元</span>
<span v-else></span> <span v-else></span>
</span> </span>
</div> </div>
<!-- <div class="module"> <div class="module">
<demo :rate="chartData.collectionSuccessPrice / chartData.collectionAllPrice" :circleColor="'#FFD670'"> <demo :rate="chartData.collectionSuccessPrice / chartData.collectionAllPrice" :circleColor="'#FFD670'">
<span class="slot-font1">{{Math.floor((chartData.collectionSuccessPrice / chartData.collectionAllPrice) * 100)}}%</span> <span class="slot-font1"
</demo> v-if="isNaN(Math.floor((chartData.collectionSuccessPrice / chartData.collectionAllPrice) * 100)) != true">{{ Math.floor((chartData.collectionSuccessPrice
</div> --> / chartData.collectionAllPrice) * 100) }}%</span>
<span class="slot-font1" v-else>0%</span>
</demo>
</div>
<div class="pieCon1 center" id="myChart2" style="width:150px;height:150px;margin-bottom: 15px;"></div> <div class="pieCon1 center" id="myChart2" style="width:150px;height:150px;margin-bottom: 15px;"></div>
<div class="center"> <div class="center">
<count-to :start-val="0" :end-val="chartData.collectionSuccessPrice/10000" :duration="3600" <count-to :start-val="0" :end-val="chartData.collectionSuccessPrice / 10000" :duration="3600"
class="card-panel-num" v-if="chartData.collectionSuccessPrice>=10000" :decimals="2" /> class="card-panel-num" v-if="chartData.collectionSuccessPrice >= 10000" :decimals="2" />
<count-to :start-val="0" :end-val="chartData.collectionSuccessPrice" :duration="3600" <count-to :start-val="0" :end-val="chartData.collectionSuccessPrice" :duration="3600" class="card-panel-num"
class="card-panel-num" v-else :decimals="2" /> v-else :decimals="2" />
<span style="font-size:14px;color:rgba(125, 140, 161, 1)" v-if="chartData.collectionSuccessPrice>=10000">万元</span> <span style="font-size:14px;color:rgba(125, 140, 161, 1)"
v-if="chartData.collectionSuccessPrice >= 10000">万元</span>
<span style="font-size:14px;color:rgba(125, 140, 161, 1)" v-else></span> <span style="font-size:14px;color:rgba(125, 140, 161, 1)" v-else></span>
</div> </div>
@ -78,6 +85,18 @@
总订单{{ chartData.paymentTotalOrder }} 总订单{{ chartData.paymentTotalOrder }}
</span> </span>
</div> </div>
<div class="module">
<demo :rate="chartData.paymentSuccessOrderNum / chartData.paymentTotalOrder" :circleColor="'#FF939D'">
<span class="slot-font1"
v-if="isNaN(Math.floor((chartData.paymentSuccessOrderNum / chartData.paymentTotalOrder) * 100)) != true">{{
Math.floor((chartData.paymentSuccessOrderNum / chartData.paymentTotalOrder) * 100) }}%</span>
<span class="slot-font1" v-else>0%</span>
</demo>
</div>
<div class="pieCon1 center" id="myChart3" style="width:150px;height:150px;margin-bottom: 15px;"></div> <div class="pieCon1 center" id="myChart3" style="width:150px;height:150px;margin-bottom: 15px;"></div>
<div class="center"> <div class="center">
<count-to :start-val="0" :end-val="chartData.paymentSuccessOrderNum" :duration="3600" class="card-panel-num" /> <count-to :start-val="0" :end-val="chartData.paymentSuccessOrderNum" :duration="3600" class="card-panel-num" />
@ -95,22 +114,32 @@
</span> </span>
<span class="t2"> <span class="t2">
总金额 总金额
<span v-if="chartData.paymentAllPrice>=10000">{{ NumberDiv(chartData.paymentAllPrice,10000) }}</span> <span v-if="chartData.paymentAllPrice >= 10000">{{ NumberDiv(chartData.paymentAllPrice, 10000) }}</span>
<span v-else>{{ chartData.paymentAllPrice }}</span> <span v-else>{{ chartData.paymentAllPrice }}</span>
<span v-if="chartData.paymentAllPrice>=10000">万元</span> <span v-if="chartData.paymentAllPrice >= 10000">万元</span>
<span v-else></span> <span v-else></span>
</span> </span>
</div> </div>
<div class="module">
<demo :rate="chartData.paymentSuccessPrice / chartData.paymentAllPrice" :circleColor="'#FFD670'">
<span class="slot-font1"
v-if="isNaN(Math.floor((chartData.paymentSuccessPrice / chartData.paymentAllPrice) * 100)) != true">{{
Math.floor((chartData.paymentSuccessPrice / chartData.paymentAllPrice) * 100) }}%</span>
<span class="slot-font1" v-else>0%</span>
</demo>
</div>
<div class="pieCon1 center" id="myChart4" style="width:150px;height:150px;margin-bottom: 15px;"></div> <div class="pieCon1 center" id="myChart4" style="width:150px;height:150px;margin-bottom: 15px;"></div>
<div class="center"> <div class="center">
<count-to :start-val="0" :end-val="chartData.paymentSuccessPrice/10000" :duration="3600" <count-to :start-val="0" :end-val="chartData.paymentSuccessPrice / 10000" :duration="3600" class="card-panel-num"
class="card-panel-num" v-if="chartData.paymentSuccessPrice>=10000" :decimals="2" /> v-if="chartData.paymentSuccessPrice >= 10000" :decimals="2" />
<count-to :start-val="0" :end-val="chartData.paymentSuccessPrice" :duration="3600" <count-to :start-val="0" :end-val="chartData.paymentSuccessPrice" :duration="3600" class="card-panel-num" v-else
class="card-panel-num" v-else :decimals="2" /> :decimals="2" />
<span style="font-size:14px;color:rgba(125, 140, 161, 1)" v-if="chartData.paymentSuccessPrice>=10000">万元</span> <span style="font-size:14px;color:rgba(125, 140, 161, 1)" v-if="chartData.paymentSuccessPrice >= 10000">万元</span>
<span style="font-size:14px;color:rgba(125, 140, 161, 1)" v-else></span> <span style="font-size:14px;color:rgba(125, 140, 161, 1)" v-else></span>
</div> </div>
@ -205,11 +234,9 @@ export default {
let title; let title;
if (this.chartData.collectionSuccessOrderNum) { if (this.chartData.collectionSuccessOrderNum) {
title = Math.floor((this.chartData.collectionSuccessOrderNum / this.chartData.collectionTotalOrder) * 100) + '%' title = Math.floor((this.chartData.collectionSuccessOrderNum / this.chartData.collectionTotalOrder) * 100) + '%'
console.log(Math.floor((this.chartData.collectionSuccessOrderNum / this.chartData.collectionTotalOrder) * 100))
} else { } else {
title = 0 + '%' title = 0 + '%'
} }
this.myChart = echarts.init(document.getElementById('myChart1')) this.myChart = echarts.init(document.getElementById('myChart1'))
this.myChart.setOption({ this.myChart.setOption({
title: { title: {
@ -266,68 +293,40 @@ export default {
silent: 'true', silent: 'true',
data: [ data: [
{ {
name: '', name: '',
value: Math.floor((this.chartData.collectionSuccessOrderNum / this.chartData.collectionTotalOrder) * 100), value: Math.floor((this.chartData.collectionSuccessOrderNum / this.chartData.collectionTotalOrder) * 100),
itemStyle: { itemStyle: {
normal: { normal: {
color: { color: {
// //
colorStops: [ colorStops: [
{ {
offset: 0, offset: 0,
color: "#46F2BC" // 0% color: "#46F2BC" // 0%
}, },
{ {
offset: 0.5, offset: 0.5,
color: "#2ED383" // 0% color: "#2ED383" // 0%
}, },
{ {
offset: 0.7, offset: 0.7,
color: "#2ED383" // 0% color: "#2ED383" // 0%
}, },
{ {
offset: 1, offset: 1,
color: "#46F2BC" // 100% color: "#46F2BC" // 100%
} }
] ]
},
}, },
}, },
}, }],
}],
coordinateSystem: 'polar', coordinateSystem: 'polar',
roundCap: true, roundCap: true,
barWidth: 15, barWidth: 15,
barGap: '-100%', // barGap: '-100%', //
z: 2, z: 2,
}, },
// {
// type: 'bar',
// silent: 'true',
// data: [
// {
// name: '',
// value: Math.floor((this.chartData.collectionSuccessOrderNum / this.chartData.collectionTotalOrder) * 100),
// itemStyle: {
// normal: {
// color: {
// //
// colorStops: [
// {
// offset: 1,
// color: "red" // 0%
// },
// ]
// },
// },
// },
// },
// ],
// coordinateSystem: 'polar',
// roundCap: true,
// barWidth: 1,
// barGap: '-100%', //
// z: 3,
// },
{ // { //
type: 'bar', type: 'bar',
silent: 'true', silent: 'true',
@ -702,27 +701,29 @@ export default {
} }
</script> </script>
<style scoped> <style scoped>
.page-box { .page-box {
width: 100%; width: 100%;
height: 100%; height: 100%;
overflow: auto; overflow: auto;
} }
.main-box { .main-box {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
width: 100%; width: 100%;
} }
.module { .module {
width: 100%; /* width: 100%;
height: 100%; height: 100%; */
box-sizing: border-box; box-sizing: border-box;
padding: 20px; padding: 20px;
position: absolute; position: absolute;
left: 135px; left: 118px;
z-index: 9999; z-index: 99;
top: 67px; top: 69px;
} }
.slot-bg { .slot-bg {
display: flex; display: flex;
align-items: center; align-items: center;
@ -732,11 +733,13 @@ export default {
border-radius: 50%; border-radius: 50%;
background: #fbedea; background: #fbedea;
} }
.slot-font1 { .slot-font1 {
color: #333; color: #333;
font-size: 20px; font-size: 20px;
font-weight: bold; font-weight: bold;
} }
.slot-font2 { .slot-font2 {
color: #e45638; color: #e45638;
font-size: 20px; font-size: 20px;
@ -770,5 +773,4 @@ export default {
font-family: PingFang TC; font-family: PingFang TC;
font-size: 13px; font-size: 13px;
font-weight: 400; font-weight: 400;
} }</style>
</style>

15
src/views/dashboard/demo.vue

@ -44,7 +44,8 @@
let obj = Object.assign({}, this.defaultConfig, this.config); let obj = Object.assign({}, this.defaultConfig, this.config);
let rotate = `rotate(${360 * rate}deg)`; let rotate = `rotate(${360 * rate}deg)`;
let chartRotate = obj.clockwise ? "rotateY(0deg)" : "rotateY(180deg)"; let chartRotate = obj.clockwise ? "rotateY(0deg)" : "rotateY(180deg)";
let showEyes = obj.showEyes ? 1 : 0; // obj.showEyes ?
let showEyes = isNaN(this.rate)!=true&&Math.floor(this.rate * 100)>=1 ? 1 : 0;
return { return {
"--background-image": `conic-gradient(${obj.startColor} 0%, ${obj.endColor} ${endPos}, transparent ${endPos})`, "--background-image": `conic-gradient(${obj.startColor} 0%, ${obj.endColor} ${endPos}, transparent ${endPos})`,
"--border-width": obj.borderWidth, "--border-width": obj.borderWidth,
@ -52,7 +53,7 @@
"--pointer-rotate": rotate, "--pointer-rotate": rotate,
"--background-color": obj.borderBackground, "--background-color": obj.borderBackground,
"--center-gap-bg": obj.centerCircleBg, "--center-gap-bg": obj.centerCircleBg,
"--circle-color": obj.circleColor, "--circle-color": this.circleColor,
"--clockwise-wise": chartRotate, "--clockwise-wise": chartRotate,
"--show-eyes": showEyes, "--show-eyes": showEyes,
"--eyes-size": obj.eyesSize, "--eyes-size": obj.eyesSize,
@ -82,8 +83,8 @@
<style scoped> <style scoped>
.chart-box { .chart-box {
position: relative; position: relative;
width: 110px; width: 106px;
height: 110px; height: 106px;
} }
/* 核心代码、控制进度条样式及进度 */ /* 核心代码、控制进度条样式及进度 */
.outer-box { .outer-box {
@ -133,15 +134,16 @@
content: ""; content: "";
position: absolute; position: absolute;
left: 0%; left: 0%;
top: -6px; top: -8px;
width: var(--dot-width); width: var(--dot-width);
height: var(--dot-width); height: var(--dot-width);
border-radius: 50%; border-radius: 50%;
background: var(--circle-color);
transform: translate(-50%, -50%); transform: translate(-50%, -50%);
background: var(--circle-color); background: var(--circle-color);
border: 1px solid #FFFFFF; border: 1px solid #FFFFFF;
box-shadow: 0px 0px 6px 0px #00000040; box-shadow: 0px 0px 6px 0px #00000040;
opacity: var(--show-eyes);
} }
/* 进度条结尾处添加一个小眼睛,背景白色 */ /* 进度条结尾处添加一个小眼睛,背景白色 */
.pointer-box::before { .pointer-box::before {
@ -154,7 +156,6 @@ box-shadow: 0px 0px 6px 0px #00000040;
border-radius: 50%; border-radius: 50%;
transform: translate(-50%, -50%); transform: translate(-50%, -50%);
z-index: 1; z-index: 1;
opacity: var(--show-eyes);
} }

2
src/views/otc/otcStore/index.vue

@ -33,7 +33,7 @@
<div class="bg bg-white"> <div class="bg bg-white">
<el-row :gutter="10" class="m-b-16"> <el-row :gutter="10" class="m-b-16">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="primary" icon="" size="medium" @click="handleAdd('', 'add')">新增商户</el-button> <el-button type="primary" icon="" size="medium" @click="handleAdd('', 'add')">新增</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>

2
src/views/otc/otcStoreDaiFuOrder/index.vue

@ -60,7 +60,7 @@
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table :data="infoList" v-loading="loading" :row-class-name="tableRowClassName"> <el-table :data="infoList" v-loading="loading">
<el-table-column label="平台订单号" align="center" prop="noOrder" /> <el-table-column label="平台订单号" align="center" prop="noOrder" />

230
src/views/otc/otcStoreRechargeOrder/index.vue

@ -1,116 +1,117 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<div class="search_con m-b-28"> <div class="search_con m-b-28">
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="108px"> <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="108px">
<el-form-item label="平台订单号" prop="orderNo"> <el-form-item label="平台订单号" prop="orderNo">
<el-input v-model="queryParams.orderNo" placeholder="请输入平台订单号" clearable size="medium" <el-input v-model="queryParams.orderNo" placeholder="请输入平台订单号" clearable size="medium"
@keyup.enter.native="handleQuery" /> @keyup.enter.native="handleQuery" />
</el-form-item> </el-form-item>
<el-form-item label="商户订单号" prop="outTradeNo"> <el-form-item label="商户订单号" prop="outTradeNo">
<el-input v-model="queryParams.outTradeNo" placeholder="请输入商户订单号" clearable size="medium" <el-input v-model="queryParams.outTradeNo" placeholder="请输入商户订单号" clearable size="medium"
@keyup.enter.native="handleQuery" /> @keyup.enter.native="handleQuery" />
</el-form-item> </el-form-item>
<el-form-item label="付款地址" prop="payAddress"> <el-form-item label="付款地址" prop="payAddress">
<el-input v-model="queryParams.payAddress" placeholder="请输入付款地址" clearable size="medium" <el-input v-model="queryParams.payAddress" placeholder="请输入付款地址" clearable size="medium"
@keyup.enter.native="handleQuery" /> @keyup.enter.native="handleQuery" />
</el-form-item> </el-form-item>
<el-form-item label="支付商户名" prop="merchantName"> <el-form-item label="支付商户名" prop="merchantName">
<el-input v-model="queryParams.merchantName" placeholder="请输入支付商户名" clearable size="medium" <el-input v-model="queryParams.merchantName" placeholder="请输入支付商户名" clearable size="medium"
@keyup.enter.native="handleQuery" /> @keyup.enter.native="handleQuery" />
</el-form-item> </el-form-item>
<el-form-item label="订单金额" prop="tranAmt"> <el-form-item label="订单金额" prop="tranAmt">
<el-input v-model="queryParams.tranAmt" placeholder="请输入订单金额" clearable size="medium" <el-input v-model="queryParams.tranAmt" placeholder="请输入订单金额" clearable size="medium"
@keyup.enter.native="handleQuery" /> @keyup.enter.native="handleQuery" />
</el-form-item> </el-form-item>
<el-form-item label="订单状态" prop="orderStatus"> <el-form-item label="订单状态" prop="orderStatus">
<el-select v-model="queryParams.orderStatus" placeholder="请选择状态" clearable size="medium"> <el-select v-model="queryParams.orderStatus" placeholder="请选择状态" clearable size="medium">
<el-option v-for="dict in sysOrderStatus" :key="dict.dictValue" :label="dict.dictLabel" <el-option v-for="dict in sysOrderStatus" :key="dict.dictValue" :label="dict.dictLabel"
:value="dict.dictValue" /> :value="dict.dictValue" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<!-- <el-form-item label="订单来源" prop="sourceType"> <!-- <el-form-item label="订单来源" prop="sourceType">
<el-select v-model="queryParams.sourceType" placeholder="请选择订单来源" clearable size="medium"> <el-select v-model="queryParams.sourceType" placeholder="请选择订单来源" clearable size="medium">
<el-option v-for="dict in sourceTypeOptions" :key="dict.dictValue" :label="dict.dictLabel" <el-option v-for="dict in sourceTypeOptions" :key="dict.dictValue" :label="dict.dictLabel"
:value="dict.dictValue" /> :value="dict.dictValue" />
</el-select> </el-select>
</el-form-item> --> </el-form-item> -->
<el-form-item label="创建时间"> <el-form-item label="创建时间">
<el-date-picker v-model="dateRange" size="medium" style="width: 340px" value-format="yyyy-MM-dd HH:mm:ss" <el-date-picker v-model="dateRange" size="medium" style="width: 340px"
type="datetimerange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" value-format="yyyy-MM-dd HH:mm:ss" type="datetimerange" range-separator="-" start-placeholder="开始日期"
:unlink-panels="true" :default-time="['00:00:00', '23:59:59']"></el-date-picker> end-placeholder="结束日期" :unlink-panels="true"
</el-form-item> :default-time="['00:00:00', '23:59:59']"></el-date-picker>
</el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" size="medium" @click="handleQuery">搜索</el-button> <el-button type="primary" size="medium" @click="handleQuery">搜索</el-button>
<el-button size="medium" @click="resetQuery">重置</el-button> <el-button size="medium" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
</div> </div>
<div class="bg bg-white"> <div class="bg bg-white">
<el-row :gutter="10" class="m-b-16"> <el-row :gutter="10" class="m-b-16">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="primary" size="medium" @click="handleExport">导出</el-button> <el-button type="primary" size="medium" @click="handleExport">导出</el-button>
<el-button type="primary" size="medium" @click="handleTest">测试下单</el-button> <el-button type="primary" size="medium" @click="handleTest">测试下单</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table v-loading="loading" :data="otcCoinList"> <el-table v-loading="loading" :data="otcCoinList">
<el-table-column label="平台订单号" align="center" prop="orderNo" /> <el-table-column label="平台订单号" align="center" prop="orderNo" />
<el-table-column label="商户订单号" align="center" prop="outTradeNo" /> <el-table-column label="商户订单号" align="center" prop="outTradeNo" />
<el-table-column label="商户编号" align="center" prop="merchantNo" /> <el-table-column label="商户编号" align="center" prop="merchantNo" />
<el-table-column :label="'订单金额'" align="center" prop="tranAmt"> <el-table-column :label="'订单金额'" align="center" prop="tranAmt">
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.tranAmt }} {{ scope.row.tranAmt }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="'实付金额'" align="center" prop="payAmt"> <el-table-column :label="'实付金额'" align="center" prop="payAmt">
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.payAmt }} {{ scope.row.payAmt }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="地址" align="center" prop="address" /> <el-table-column label="地址" align="center" prop="address" />
<el-table-column label="付款地址" align="center" prop="payAddress" /> <el-table-column label="付款地址" align="center" prop="payAddress" />
<el-table-column label="支付商户名" align="center" prop="merchantName" /> <el-table-column label="支付商户名" align="center" prop="merchantName" />
<el-table-column :label="'商户费率(%)'" align="center" prop="merchantSingleFee"> <el-table-column :label="'商户费率(%)'" align="center" prop="merchantSingleFee">
<template slot-scope="scope"> <template slot-scope="scope">
{{ parseFloat(NumberMul(scope.row.merchantRate, 100)).toFixed(2) }} {{ parseFloat(NumberMul(scope.row.merchantRate, 100)).toFixed(2) }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="'商户单笔手续费'" align="center" prop="merchantSingleFee"> <el-table-column :label="'商户单笔手续费'" align="center" prop="merchantSingleFee">
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.merchantSingleFee }} {{ scope.row.merchantSingleFee }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="异步通知状态" align="center" prop="notifyStatus" :formatter="notifyStatusFormat" /> <el-table-column label="异步通知状态" align="center" prop="notifyStatus" :formatter="notifyStatusFormat" />
<el-table-column label="订单来源" align="center" prop="sourceType" :formatter="sourceTypeFormat" /> <el-table-column label="订单来源" align="center" prop="sourceType" :formatter="sourceTypeFormat" />
<!-- <el-table-column label="变动来源" align="center" prop="source" :formatter="sysOrderStatusFormat" /> --> <!-- <el-table-column label="变动来源" align="center" prop="source" :formatter="sysOrderStatusFormat" /> -->
<el-table-column :label="'变动来源'" align="center" prop="merchantSingleFee"> <el-table-column :label="'变动来源'" align="center" prop="merchantSingleFee">
<template slot-scope="scope"> <template slot-scope="scope">
<span :style="classObje(scope.row.orderStatus)"> {{ sysOrderStatusFormat(scope.row) }}</span> <span :style="classObje(scope.row.orderStatus)"> {{ sysOrderStatusFormat(scope.row) }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="创建时间" align="center" prop="createTime" min-width="180" /> <el-table-column label="创建时间" align="center" prop="createTime" min-width="180" />
<!-- <el-table-column label="更新时间" align="center" prop="updateTime" min-width="180" /> --> <!-- <el-table-column label="更新时间" align="center" prop="updateTime" min-width="180" /> -->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="medium" type="text" style=" ;" v-if="scope.row.orderStatus == 1" <el-button size="medium" type="text" style=" ;" v-if="scope.row.orderStatus == 1"
@click="handleOrder(scope.row)">手工处理</el-button> @click="handleOrder(scope.row)">手工处理</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
@pagination="getList" /> :limit.sync="queryParams.pageSize" @pagination="getList" />
</div> </div>
<!-- 处理当前订单 --> <!-- 处理当前订单 -->
<el-dialog v-dialogDrag title="手工处理" :visible.sync="open" width="500px" append-to-body :close-on-click-modal="false" <el-dialog v-dialogDrag title="手工处理" :visible.sync="open" width="500px" append-to-body :close-on-click-modal="false"
@ -164,18 +165,18 @@ export default {
name: "otcStoreRechargeOrder", name: "otcStoreRechargeOrder",
components: { components: {
}, },
computed:{ computed: {
classObje(status){ classObje(status) {
return(status)=>{ return (status) => {
if(status==1){ if (status == 1) {
return {'color':'#FF7C1E'} return { 'color': '#FF7C1E' }
} }
if(status==2){ if (status == 2) {
return {'color':'#50BC92'} return { 'color': '#50BC92' }
} }
if(status==3){ if (status == 3) {
return {'color':'#ED5059'} return { 'color': '#ED5059' }
} }
} }
} }
}, },
@ -244,27 +245,26 @@ export default {
}, },
created() { created() {
this.getList(); this.getList();
this.getDicts("notify_status").then(response => { this.getDicts("notify_status").then(response => {
this.notifyStatusOptions = response.data; this.notifyStatusOptions = response.data;
this.notifyStatusOptions.unshift({ this.notifyStatusOptions.unshift({
dictLabel:'全部', dictLabel: '全部',
dictValue:null, dictValue: null,
}); });
}); });
this.getDicts("sys_source_type").then(response => { this.getDicts("sys_source_type").then(response => {
this.sourceTypeOptions = response.data; this.sourceTypeOptions = response.data;
this.sourceTypeOptions.unshift({ this.sourceTypeOptions.unshift({
dictLabel:'全部', dictLabel: '全部',
dictValue:null, dictValue: null,
}); });
}); });
this.getDicts("sys_order_status").then(response => { this.getDicts("sys_order_status").then(response => {
this.sysOrderStatus = response.data; this.sysOrderStatus = response.data;
this.sysOrderStatus.unshift({ this.sysOrderStatus.unshift({
dictLabel:'全部', dictLabel: '全部',
dictValue:null, dictValue: null,
}); });
}); });
this.init(); this.init();
}, },

4
src/views/user/mail/index.vue

@ -34,7 +34,7 @@
</el-form-item> </el-form-item>
<el-form-item label="状态" prop="mailState"> <el-form-item label="状态" prop="dataStatus">
<el-select v-model="queryParams.dataStatus" placeholder="请选择状态" clearable size="medium"> <el-select v-model="queryParams.dataStatus" placeholder="请选择状态" clearable size="medium">
<el-option <el-option
v-for="dict in dataStatusOptions" v-for="dict in dataStatusOptions"
@ -45,7 +45,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="模板类型" prop="mailState"> <el-form-item label="模板类型" prop="mailType">
<el-select v-model="queryParams.mailType" placeholder="请选择模板类型" clearable size="medium"> <el-select v-model="queryParams.mailType" placeholder="请选择模板类型" clearable size="medium">
<el-option <el-option
v-for="dict in mailTypeOptions" v-for="dict in mailTypeOptions"

Loading…
Cancel
Save