This commit is contained in:
parent
668a71df67
commit
e594023894
|
@ -167,7 +167,7 @@ export const asyncRoutes = [
|
||||||
component: () => import('@/views/order/product'),
|
component: () => import('@/views/order/product'),
|
||||||
name: 'productNameList',
|
name: 'productNameList',
|
||||||
meta: {
|
meta: {
|
||||||
title: '产品统计列表',
|
title: '产品统计',
|
||||||
roles: ['order_pub', 'editor']
|
roles: ['order_pub', 'editor']
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
<el-row :gutter="40" class="panel-group">
|
<el-row :gutter="40" class="panel-group">
|
||||||
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
||||||
<div class="card-panel">
|
<div class="card-panel">
|
||||||
<div class="card-panel-icon-wrapper icon-people">
|
<div class="card-panel-icon-wrapper icon-shopping">
|
||||||
<svg-icon icon-class="peoples" class-name="card-panel-icon" />
|
<svg-icon icon-class="shopping" class-name="card-panel-icon" />
|
||||||
</div>
|
</div>
|
||||||
<div class="card-panel-description">
|
<div class="card-panel-description">
|
||||||
<div class="card-panel-text">
|
<div class="card-panel-text">
|
||||||
|
@ -15,7 +15,20 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
||||||
<div class="card-panel">
|
<div class="card-panel">
|
||||||
<div class="card-panel-icon-wrapper icon-message">
|
<div class="card-panel-icon-wrapper icon-money3">
|
||||||
|
<svg-icon icon-class="money" class-name="card-panel-icon" />
|
||||||
|
</div>
|
||||||
|
<div class="card-panel-description">
|
||||||
|
<div class="card-panel-text">
|
||||||
|
订单总额
|
||||||
|
</div>
|
||||||
|
<count-to :start-val="0" :end-val="total" :duration="10" class="card-panel-num" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
||||||
|
<div class="card-panel">
|
||||||
|
<div class="card-panel-icon-wrapper icon-message2">
|
||||||
<svg-icon icon-class="message" class-name="card-panel-icon" />
|
<svg-icon icon-class="message" class-name="card-panel-icon" />
|
||||||
</div>
|
</div>
|
||||||
<div class="card-panel-description">
|
<div class="card-panel-description">
|
||||||
|
@ -28,8 +41,8 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
||||||
<div class="card-panel">
|
<div class="card-panel">
|
||||||
<div class="card-panel-icon-wrapper icon-money">
|
<div class="card-panel-icon-wrapper icon-message">
|
||||||
<svg-icon icon-class="money" class-name="card-panel-icon" />
|
<svg-icon icon-class="message" class-name="card-panel-icon" />
|
||||||
</div>
|
</div>
|
||||||
<div class="card-panel-description">
|
<div class="card-panel-description">
|
||||||
<div class="card-panel-text">
|
<div class="card-panel-text">
|
||||||
|
@ -41,21 +54,8 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
||||||
<div class="card-panel">
|
<div class="card-panel">
|
||||||
<div class="card-panel-icon-wrapper icon-shopping">
|
<div class="card-panel-icon-wrapper icon-skill">
|
||||||
<svg-icon icon-class="shopping" class-name="card-panel-icon" />
|
<svg-icon icon-class="skill" class-name="card-panel-icon" />
|
||||||
</div>
|
|
||||||
<div class="card-panel-description">
|
|
||||||
<div class="card-panel-text">
|
|
||||||
订单总额
|
|
||||||
</div>
|
|
||||||
<count-to :start-val="0" :end-val="total" :duration="10" class="card-panel-num" />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</el-col>
|
|
||||||
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
|
||||||
<div class="card-panel">
|
|
||||||
<div class="card-panel-icon-wrapper icon-shopping">
|
|
||||||
<svg-icon icon-class="shopping" class-name="card-panel-icon" />
|
|
||||||
</div>
|
</div>
|
||||||
<div class="card-panel-description">
|
<div class="card-panel-description">
|
||||||
<div class="card-panel-text">
|
<div class="card-panel-text">
|
||||||
|
@ -67,8 +67,8 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
||||||
<div class="card-panel">
|
<div class="card-panel">
|
||||||
<div class="card-panel-icon-wrapper icon-shopping">
|
<div class="card-panel-icon-wrapper icon-money2">
|
||||||
<svg-icon icon-class="shopping" class-name="card-panel-icon" />
|
<svg-icon icon-class="money" class-name="card-panel-icon" />
|
||||||
</div>
|
</div>
|
||||||
<div class="card-panel-description">
|
<div class="card-panel-description">
|
||||||
<div class="card-panel-text">
|
<div class="card-panel-text">
|
||||||
|
@ -80,8 +80,8 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
||||||
<div class="card-panel">
|
<div class="card-panel">
|
||||||
<div class="card-panel-icon-wrapper icon-shopping">
|
<div class="card-panel-icon-wrapper icon-documentation">
|
||||||
<svg-icon icon-class="shopping" class-name="card-panel-icon" />
|
<svg-icon icon-class="documentation" class-name="card-panel-icon" />
|
||||||
</div>
|
</div>
|
||||||
<div class="card-panel-description">
|
<div class="card-panel-description">
|
||||||
<div class="card-panel-text">
|
<div class="card-panel-text">
|
||||||
|
@ -93,8 +93,8 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
||||||
<div class="card-panel">
|
<div class="card-panel">
|
||||||
<div class="card-panel-icon-wrapper icon-shopping">
|
<div class="card-panel-icon-wrapper icon-money">
|
||||||
<svg-icon icon-class="shopping" class-name="card-panel-icon" />
|
<svg-icon icon-class="money" class-name="card-panel-icon" />
|
||||||
</div>
|
</div>
|
||||||
<div class="card-panel-description">
|
<div class="card-panel-description">
|
||||||
<div class="card-panel-text">
|
<div class="card-panel-text">
|
||||||
|
@ -182,13 +182,36 @@ export default {
|
||||||
background: #36a3f7;
|
background: #36a3f7;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.icon-message2 {
|
||||||
|
background: #656768;
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-skill {
|
||||||
|
background: #7fd554;
|
||||||
|
}
|
||||||
|
|
||||||
.icon-money {
|
.icon-money {
|
||||||
background: #f4516c;
|
background: #f4516c;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.icon-money2 {
|
||||||
|
background: #7fd554;
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-money3 {
|
||||||
|
background: #34bfa3;
|
||||||
|
}
|
||||||
|
|
||||||
.icon-shopping {
|
.icon-shopping {
|
||||||
background: #34bfa3
|
background: #34bfa3
|
||||||
}
|
}
|
||||||
|
.icon-documentation {
|
||||||
|
background: #f4516c
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-documentation2 {
|
||||||
|
background: #d972e4
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-people {
|
.icon-people {
|
||||||
|
@ -199,6 +222,18 @@ export default {
|
||||||
color: #36a3f7;
|
color: #36a3f7;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.icon-money2 {
|
||||||
|
color: #7fd554;
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-money3 {
|
||||||
|
color: #34bfa3;
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-skill {
|
||||||
|
color: #7fd554;
|
||||||
|
}
|
||||||
|
|
||||||
.icon-money {
|
.icon-money {
|
||||||
color: #f4516c;
|
color: #f4516c;
|
||||||
}
|
}
|
||||||
|
@ -206,6 +241,13 @@ export default {
|
||||||
.icon-shopping {
|
.icon-shopping {
|
||||||
color: #34bfa3
|
color: #34bfa3
|
||||||
}
|
}
|
||||||
|
.icon-documentation {
|
||||||
|
color: #f4516c
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-documentation2 {
|
||||||
|
background: #d972e4
|
||||||
|
}
|
||||||
|
|
||||||
.card-panel-icon-wrapper {
|
.card-panel-icon-wrapper {
|
||||||
float: left;
|
float: left;
|
||||||
|
|
|
@ -30,8 +30,8 @@
|
||||||
<el-button v-if="scope.row.self ==0 && scope.row.status == 0" type="success" size="small" icon="el-icon-close" @click="onRefuse(scope.row)">
|
<el-button v-if="scope.row.self ==0 && scope.row.status == 0" type="success" size="small" icon="el-icon-close" @click="onRefuse(scope.row)">
|
||||||
拒绝
|
拒绝
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-if="scope.row.self ==3 && scope.row.status == 0" type="success" size="small" icon="el-icon-close" @click="onCancel(scope.row)">
|
<el-button v-if="scope.row.self ==3 && scope.row.status == 0" type="info" size="small" icon="el-icon-close" @click="onCancel(scope.row)">
|
||||||
取消
|
取消流转
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
|
@ -74,7 +74,7 @@
|
||||||
|
|
||||||
<el-table-column align="center" fixed width="200" label="操作">
|
<el-table-column align="center" fixed width="200" label="操作">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button type="success" size="small" icon="el-icon-refresh" @click="onCirculation(scope.row)">
|
<el-button :type="scope.row.backs&&scope.row.backs.status==0? types[7] : types[4]" size="small" icon="el-icon-refresh" @click="onCirculation(scope.row)">
|
||||||
{{ scope.row.backs&&scope.row.backs.status==0?'流转中':'流转出' }}
|
{{ scope.row.backs&&scope.row.backs.status==0?'流转中':'流转出' }}
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button :type="types[scope.row.order_status]" size="small" icon="el-icon-edit" @click="onInfo(scope.row)">
|
<el-button :type="types[scope.row.order_status]" size="small" icon="el-icon-edit" @click="onInfo(scope.row)">
|
||||||
|
@ -397,7 +397,7 @@ export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
active: 'follow',
|
active: 'follow',
|
||||||
types: { 0: '', 1: '', 2: '', 3: 'primary', 4: 'success', 5: 'warning' },
|
types: { 0: '', 1: '', 2: '', 3: 'primary', 4: 'success', 5: 'warning', 6: 'danger', 7: 'info' },
|
||||||
types2: { 1: 'primary', 2: 'success', 3: 'warning' },
|
types2: { 1: 'primary', 2: 'success', 3: 'warning' },
|
||||||
status_arr: ['待跟进', '跟进中', '已核销', '核销失败', '放弃跟单'],
|
status_arr: ['待跟进', '跟进中', '已核销', '核销失败', '放弃跟单'],
|
||||||
type_arr: ['-', '收益', '支出'],
|
type_arr: ['-', '收益', '支出'],
|
||||||
|
|
|
@ -22,23 +22,41 @@
|
||||||
|
|
||||||
<el-table-column align="center" label="产品名称" width="220" prop="product_name" />
|
<el-table-column align="center" label="产品名称" width="220" prop="product_name" />
|
||||||
|
|
||||||
<el-table-column align="center" label="平台" width="80" prop="os" />
|
<el-table-column align="center" label="平台" width="80" prop="os">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-tag type="warning" v-if="scope.row.os === 1">美团</el-tag>
|
||||||
|
<el-tag type="success" v-if="scope.row.os === 2">快手</el-tag>
|
||||||
|
<el-tag type="primary" v-if="scope.row.os === 3">抖音</el-tag>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column align="center" label="订单数" width="80" prop="all" />
|
<el-table-column align="center" fixed label="订单数" width="80" prop="all" />
|
||||||
|
|
||||||
<el-table-column align="center" label="订单金额" width="180" prop="total" />
|
<el-table-column align="center" label="订单金额" width="100">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.total ? parseFloat(scope.row.total)/100 : 0 }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column align="center" width="500px" label="待跟进" prop="wait" />
|
<el-table-column align="center" width="100px" label="待跟进" prop="wait" />
|
||||||
|
|
||||||
<el-table-column width="138px" align="center" label="跟进中" prop="doing" />
|
<el-table-column width="100px" align="center" label="跟进中" prop="doing" />
|
||||||
|
|
||||||
<el-table-column align="center" width="500px" label="核销数" prop="asset" />
|
<el-table-column align="center" width="100px" label="核销数" prop="asset" />
|
||||||
|
|
||||||
<el-table-column width="138px" align="center" label="核销金额" prop="asset_price" />
|
<el-table-column width="100px" align="center" label="核销金额">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.asset_price ? parseFloat(scope.row.asset_price)/100 : 0 }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column align="center" width="500px" label="退款数" prop="asset" />
|
<el-table-column align="center" width="100px" label="退款数" prop="refund" />
|
||||||
|
|
||||||
<el-table-column width="138px" align="center" label="退款金额" prop="asset_price" />
|
<el-table-column width="100px" align="center" label="退款金额">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.refund_price ? parseFloat(scope.row.refund_price)/100 : 0 }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
|
|
|
@ -189,6 +189,7 @@ class IndexController extends base
|
||||||
{
|
{
|
||||||
$limit = $request->get('limit', 10);
|
$limit = $request->get('limit', 10);
|
||||||
$product_name = $request->get('product_name');
|
$product_name = $request->get('product_name');
|
||||||
|
$os = $request->get('os_status');
|
||||||
$list = Orders::where('admin_id',$request->admin->id)
|
$list = Orders::where('admin_id',$request->admin->id)
|
||||||
->fieldRaw('
|
->fieldRaw('
|
||||||
os,product_name,
|
os,product_name,
|
||||||
|
@ -209,6 +210,9 @@ class IndexController extends base
|
||||||
')
|
')
|
||||||
->group('os,product_name')
|
->group('os,product_name')
|
||||||
->order('total desc');
|
->order('total desc');
|
||||||
|
if (!empty($os)){
|
||||||
|
$list = $list->where('os',$os);
|
||||||
|
}
|
||||||
if (!empty($product_name)){
|
if (!empty($product_name)){
|
||||||
$list = $list->where('product_name','like','%'.$product_name.'%');
|
$list = $list->where('product_name','like','%'.$product_name.'%');
|
||||||
}
|
}
|
||||||
|
|
|
@ -47,7 +47,7 @@ class OrderController extends base
|
||||||
|
|
||||||
$mobile = $request->get('mobile');
|
$mobile = $request->get('mobile');
|
||||||
if($mobile){
|
if($mobile){
|
||||||
$query->where('mobile', $mobile);
|
$query->where('mobile','like', '%'.$mobile.'%');
|
||||||
}
|
}
|
||||||
|
|
||||||
$zhubo = $request->get('zhubo');
|
$zhubo = $request->get('zhubo');
|
||||||
|
|
Loading…
Reference in New Issue