Commit b63f82c2 by huaying

fix: 客户订单

parent 065304d9
......@@ -64,7 +64,7 @@
/>
</template>
</el-select>
<el-button v-if="getCodeAuth('memberBatchImport')" :limit-code="getCode('memberBatchImport')" type="primary" @click="batchImport" style="margin-right:5px">批量导入修改</el-button>
<el-button v-if="getCodeAuth('memberBatchImport')" :limit-code="getCode('memberBatchImport')" type="primary" @click="batchImport" style="margin-right:5px">批量导入</el-button>
</el-form-item>
</el-form>
<!-- <div class="action-wrap">
......
......@@ -18,6 +18,7 @@
>
<el-form-item label="导入类型" prop="importValue">
<el-select
style="width: 460px"
v-model="formByImport.importValue"
placeholder="请选择导入类型"
@change="handleChangeType"
......@@ -39,21 +40,10 @@
<div class="dialogTips">
<h3><i class="el-icon-info"></i><span>导入规则</span></h3>
<p>
1. 通过导入Excel表格的形式变更GIC已存在的会员信息;不支持导入新会员数据
</p>
<p>
2. 仅支持.xlsx 文件的导入;每次导入数据量最多为10000条;文件大小不超过1M
</p>
<p>
3.
导入类型不同,文件模板也不同,请严格按照模板内容填入会员数据,否则将会报错
</p>
<p>
4. 请仔细核对需要变更的会员数据是否准确,否则GIC校验不通过将无法执行成功
</p>
<p>
5.
超管账号支持导入变更全部会员信息,已分权商户的子管理员账号仅可修改管辖范围内的会员信息
1. 仅支持.xlsx 文件的导入;每次导入数据量最多为10000条;文件大小不超过1M。<br/>
2. 导入类型不同,文件模板也不同,请严格按照模板内容填入会员数据,否则将会报错。<br/>
3. 请仔细核对需要变更的会员数据是否准确,否则GIC校验不通过将无法执行成功。<br/>
4. 超管账号支持导入变更全部会员信息,已分权商户的子管理员账号仅可新增、修改管辖范围内的会员信息。
</p>
</div>
<span slot="footer" class="dialog-footer">
......@@ -206,8 +196,8 @@ export default {
border: none;
}
.dialogTips {
padding-bottom: 8px;
padding-top: 22px;
padding-bottom: 24px;
padding-top: 20px;
border-top: 1px dashed #DCDFE6;
color: #909399;
h3 {
......@@ -225,6 +215,10 @@ export default {
}
p {
font-size: 12px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #909399;
line-height: 20px;
}
}
.success_icon {
......
<template>
<el-tabs v-model="activeName" class="order-tab">
<!-- <el-tab-pane label="全部订单(61)" name="all">用户管理</el-tab-pane> -->
<el-tab-pane :label="`门店订单(${orderCount.numOfSale || 0})`" name="store">
<div class="order-report">
<div class="order-report-item" v-for="(el, index) in storeOrderReport" :key="index">
<div class="order-report-label">{{ el.label }}</div>
<div class="order-report-value" v-if="el.type == 'int'">{{ el.value || 0 }}</div>
<div class="order-report-value" v-else-if="el.type == 'date'">{{ el.value | formatYMD }}</div>
<div class="order-report-value" v-else>{{ el.value | fomatFloat }}</div>
<div class="orderListBox">
<div class="orderListTop" v-if="activeName == 'store'">
<div class="order-report-title">消费数据概览</div>
<div class="order-report-content">
<div class="order-content-left">
<p style="margin-bottom: 13px;">
<img src="../../../static/img/编组 3@2x(1).png" alt="">
<span>全渠道</span>
</p>
<p>
<img src="../../../static/img/编组 3@2x.png" alt="">
<span>门店订单</span>
</p>
</div>
<div class="order-report">
<div class="order-report-item" v-for="(el, index) in storeOrderReport" :key="index">
<div class="order-report-label">{{ el.label }}</div>
<div class="order-report-value" v-if="el.type == 'int'">{{ el.value || 0 }}</div>
<div class="order-report-value" v-else-if="el.type == 'date'">{{ el.value | formatYMD }}</div>
<div class="order-report-value" v-else>{{ el.value | fomatFloat }}</div>
</div>
</div>
</div>
<order-table tab="store"></order-table>
</el-tab-pane>
<el-tab-pane :label="`达摩微商城(${orderCount.wechatMallNum || 0})`" name="demo">
<order-table tab="demo"></order-table>
</el-tab-pane>
<el-tab-pane :label="`微盟订单(${orderCount.weimobMallNum || 0})`" name="weimob">
<order-table tab="weimob"></order-table>
</el-tab-pane>
<el-tab-pane :label="`天猫订单(${orderCount.numOfTmall || 0})`" name="tmall">
<order-table tab="tmall"></order-table>
</el-tab-pane>
<el-tab-pane :label="`抖音订单(${orderCount.numOfDouYin || 0})`" name="douyin">
<order-table tab="douyin"></order-table>
</el-tab-pane>
<el-tab-pane :label="`其他订单(${orderCount.otherMallNum || 0})`" name="other">
<order-table tab="other"></order-table>
</el-tab-pane>
</el-tabs>
</div>
<el-tabs v-model="activeName" class="order-tab">
<!-- <el-tab-pane label="全部订单(61)" name="all">用户管理</el-tab-pane> -->
<el-tab-pane :label="`门店订单(${orderCount.numOfSale || 0})`" name="store">
<order-table tab="store"></order-table>
</el-tab-pane>
<el-tab-pane :label="`达摩微商城(${orderCount.wechatMallNum || 0})`" name="demo">
<order-table tab="demo"></order-table>
</el-tab-pane>
<el-tab-pane :label="`微盟订单(${orderCount.weimobMallNum || 0})`" name="weimob">
<order-table tab="weimob"></order-table>
</el-tab-pane>
<el-tab-pane :label="`天猫订单(${orderCount.numOfTmall || 0})`" name="tmall">
<order-table tab="tmall"></order-table>
</el-tab-pane>
<el-tab-pane :label="`抖音订单(${orderCount.numOfDouYin || 0})`" name="douyin">
<order-table tab="douyin"></order-table>
</el-tab-pane>
<el-tab-pane :label="`其他订单(${orderCount.otherMallNum || 0})`" name="other">
<order-table tab="other"></order-table>
</el-tab-pane>
</el-tabs>
</div>
</template>
<script>
......@@ -59,15 +76,15 @@ export default {
},
storeOrderReport: [
{ label: '消费总额(实付)', key: 'costFeePaid', type: 'amount', value: 0 },
{ label: '消费总额(应收)', key: 'costFee', type: 'amount', value: 0 },
{ label: '消费次数', key: 'costTimes', type: 'int', value: 0 },
{ label: '最近消费时间', key: 'lastCostTime', type: 'date', value: '' },
{ label: '客单价', key: 'avgCost', type: 'amount', value: 0 },
{ label: '连带率', key: 'relatedPercent', type: 'float', value: 0 },
{ label: '件单价', key: 'avgGoodsCost', type: 'amount', value: 0 },
{ label: '最高单笔(实付)', key: 'highCostPaid', type: 'amount', value: 0 },
{ label: '最高单笔(应收)', key: 'highCost', type: 'amount', value: 0 },
{ label: '平均折扣', key: 'avgDiscount', type: 'float', value: 0 },
{ label: '消费总额(应收)', key: 'costFee', type: 'amount', value: 0 },
{ label: '件单价', key: 'avgGoodsCost', type: 'amount', value: 0 },
{ label: '最高单笔(应收)', key: 'highCost', type: 'amount', value: 0 },
]
}
},
......@@ -100,13 +117,57 @@ export default {
</script>
<style lang="scss" scoped>
.orderListBox {
background: #FFFFFF;
.orderListTop {
background: #F7F8FA;
margin: 20px;
.order-report-title {
padding-left: 12px;
padding-top: 14px;
padding-bottom: 14px;
font-size: 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #303133;
line-height: 22px;
border-bottom: 1px solid #DCDFE6;
}
.order-report-content {
display: flex;
.order-content-left {
box-sizing: border-box;
padding: 47px 0 16px 12px;
width: 110px;
border-right: 1px solid #DCDFE6;
p {
display: flex;
height: 24px;
img {
width: 24px;
height: 24px;
margin-right: 6px;
}
span {
font-size: 14px;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #303133;
line-height: 24px;
}
}
}
}
}
}
.order-tab {
height: 100%;
/deep/ .el-tabs__header {
margin-bottom: 20px;
margin: 20px;
.el-tabs__nav-wrap {
padding: 0 20px;
// padding: 0 20px;
}
}
/deep/ .el-tabs__content {
......@@ -117,13 +178,14 @@ export default {
}
}
.order-report {
flex: 1;
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
padding: 20px 15px;
height: 86px;
background: #F7F8FA;
// background: #F7F8FA;
border-radius: 4px;
box-sizing: border-box;
.order-report-item {
......@@ -135,11 +197,11 @@ export default {
line-height: 20px;
}
.order-report-value {
margin-top: 5px;
font-size: 20px;
margin-top: 12px;
font-size: 18px;
font-weight: bold;
color: #303133;
line-height: 26px;
line-height: 21px;
font-family: DIN Alternate;
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment