Browse Source

更新

master
j1ack 2 years ago
parent
commit
68ac2ed48b
  1. 118
      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. 42
      src/views/otc/otcStoreRechargeOrder/index.vue
  6. 4
      src/views/user/mail/index.vue

118
src/views/dashboard/PieChartCreate.vue

@ -13,11 +13,14 @@
</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"
v-if="isNaN(Math.floor((chartData.collectionSuccessOrderNum / chartData.collectionTotalOrder) * 100)) != true">{{ Math.floor((chartData.collectionSuccessOrderNum
/ chartData.collectionTotalOrder) * 100) }}%</span>
<span class="slot-font1" v-else>0%</span>
</demo> </demo>
</div> --> </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>
@ -39,29 +42,33 @@
<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"
v-if="isNaN(Math.floor((chartData.collectionSuccessPrice / chartData.collectionAllPrice) * 100)) != true">{{ Math.floor((chartData.collectionSuccessPrice
/ chartData.collectionAllPrice) * 100) }}%</span>
<span class="slot-font1" v-else>0%</span>
</demo> </demo>
</div> --> </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: {
@ -300,34 +327,6 @@ export default {
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" />

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

@ -40,9 +40,10 @@
</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"
:default-time="['00:00:00', '23:59:59']"></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -108,8 +109,8 @@
</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>
<!-- 处理当前订单 --> <!-- 处理当前订单 -->
@ -164,17 +165,17 @@ 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,26 +245,25 @@ 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