Merge branch 'master' of gitee.com:beijing_hongye_huicheng/lilishop-ui

master
Chopper 2022-07-13 19:06:42 +08:00
commit 752c1086a0
10 changed files with 476 additions and 336 deletions

View File

@ -225,7 +225,6 @@ export default {
width: 1200px; width: 1200px;
margin: 15px auto; margin: 15px auto;
display: flex; display: flex;
overflow: scroll;
overflow-x: hidden; overflow-x: hidden;
flex-direction: row; flex-direction: row;
@ -310,6 +309,9 @@ export default {
.item-intro-img { .item-intro-img {
width: 100%; width: 100%;
min-height: 300px; min-height: 300px;
/deep/ img{
margin:0 auto;
}
} }
.item-intro-img img{ .item-intro-img img{
max-width: 1000px; max-width: 1000px;

View File

@ -1,5 +1,5 @@
<template> <template>
<div class="seckill"> <div class="seckill" v-if="goodsList.length">
<div class="aside hover-pointer" @click="goToSeckill"> <div class="aside hover-pointer" @click="goToSeckill">
<div class="title">{{ actName }}</div> <div class="title">{{ actName }}</div>
<div class="hour"> <div class="hour">

View File

@ -52,7 +52,7 @@ export default {
methods: { methods: {
getIndexData () { getIndexData () {
// //
indexData({ clientType: 'PC' }).then((res) => { indexData({ clientType: 'PC' }).then(async (res) => {
if (res.success) { if (res.success) {
let dataJson = JSON.parse(res.result.pageData); let dataJson = JSON.parse(res.result.pageData);
// //
@ -65,7 +65,7 @@ export default {
this.carouselLarge = true this.carouselLarge = true
this.carouselOpacity = true this.carouselOpacity = true
} else if (type === 'seckill') { } else if (type === 'seckill') {
let seckill = this.getListByDay() let seckill = await this.getListByDay()
dataJson.list[i].options.list = seckill dataJson.list[i].options.list = seckill
} }
} }

View File

@ -1,190 +1,293 @@
<template> <template>
<div class='wrapper'> <div class="wrapper">
<card _Title='我的分销'/> <card _Title="我的分销" />
<!-- 分销申请 --> <!-- 分销申请 -->
<div v-if="status === 0">
<Alert type="warning">分销商申请</Alert>
<Form ref="form" :model="applyForm" :rules="rules">
<FormItem label="姓名" prop="name">
<Input v-model="applyForm.name"></Input>
</FormItem>
<FormItem label="身份证号" prop="idNumber">
<Input v-model="applyForm.idNumber"></Input>
</FormItem>
<FormItem label="银行开户行" prop="settlementBankBranchName">
<Input v-model="applyForm.settlementBankBranchName"></Input>
</FormItem>
<FormItem label="银行开户名" prop="settlementBankAccountName">
<Input v-model="applyForm.settlementBankAccountName"></Input>
</FormItem>
<FormItem label="银行账号" prop="settlementBankAccountNum">
<Input v-model="applyForm.settlementBankAccountNum"></Input>
</FormItem>
<FormItem> <div v-if="status === 0">
<Button type="primary" :loading="applyLoading" @click="apply"></Button> <Alert type="warning">分销商申请</Alert>
</FormItem> <Form ref="form" :model="applyForm" :rules="rules">
</Form> <FormItem label="姓名" prop="name">
</div> <Input v-model="applyForm.name"></Input>
<!-- 分销审核 --> </FormItem>
<div v-if="status === 1"> <FormItem label="身份证号" prop="idNumber">
<Alert type="success"> <Input v-model="applyForm.idNumber"></Input>
您提交的信息正在审核 </FormItem>
<template slot="desc">提交认证申请后工作人员将在三个工作日进行核对完成审核</template> <FormItem label="银行开户行" prop="settlementBankBranchName">
</Alert> <Input v-model="applyForm.settlementBankBranchName"></Input>
</div> </FormItem>
<!-- 分销提现商品订单 --> <FormItem label="银行开户名" prop="settlementBankAccountName">
<div v-if="status === 2"> <Input v-model="applyForm.settlementBankAccountName"></Input>
<div class="box"> </FormItem>
<div class="mb_20 account-price"> <FormItem label="银行账号" prop="settlementBankAccountNum">
<span class="subTips">可提现金额</span> <Input v-model="applyForm.settlementBankAccountNum"></Input>
<span class="fontsize_48 global_color">{{ result.canRebate | unitPrice }}</span> </FormItem>
<span class="subTips">冻结金额</span>
<span class="">{{ result.commissionFrozen | unitPrice }}</span>
<Button type="primary" size="small" class="ml_20" @click="withdrawApplyModal = true">申请提现</Button>
</div>
</div>
<Tabs :value="tabName" @on-click="tabPaneChange">
<TabPane label="已选商品" name="goodsChecked">
<Table stripe :columns="goodsColumns" :data="goodsData.records">
<template slot-scope="{ row }" slot="name">
<div class="goods-msg" @click="linkTo(`/goodsDetail?skuId=${row.skuId}&goodsId=${row.goodsId}`)"><img style="vertical-align:top;" :src="row.thumbnail" width="60" height="60" alt="">&nbsp; {{row.goodsName}}</div>
</template>
<template slot-scope="{ row }" slot="price">
<span> {{ row.price | unitPrice }}</span>
</template>
<template slot-scope="{ row }" slot="commission">
<span> {{ row.commission | unitPrice }}</span>
</template>
<template slot-scope="{ row }" slot="action">
<Button type="success" size="small" style="margin-right: 5px" @click="fenxiao(row)"></Button>
<Button type="error" size="small" @click="selectGoods(row.id, false)">取消选择</Button>
</template>
</Table>
<div class="page-size">
<Page
:current="params.pageNumber"
:total="goodsData.total"
:page-size="params.pageSize"
@on-change="changePage"
size="small"
show-total
show-elevator
></Page>
</div>
</TabPane>
<TabPane label="未选商品" name="goodsUncheck">
<Table stripe :columns="goodsColumns" :data="goodsData.records">
<template slot-scope="{ row }" slot="name">
<div class="goods-msg" @click="linkTo(`/goodsDetail?skuId=${row.skuId}&goodsId=${row.goodsId}`)"><img style="vertical-align:top;" :src="row.thumbnail" width="60" height="60" alt="">&nbsp; {{row.goodsName}}</div>
</template>
<template slot-scope="{ row }" slot="price">
<span> {{ row.price | unitPrice }}</span>
</template>
<template slot-scope="{ row }" slot="commission">
<span> {{ row.commission | unitPrice }}</span>
</template>
<template slot-scope="{ row }" slot="action">
<Button type="primary" size="small" style="margin-right: 5px" @click="selectGoods(row.id, true)">选择商品</Button>
</template>
</Table>
<div class="page-size">
<Page
:current="params.pageNumber"
:total="goodsData.total"
:page-size="params.pageSize"
@on-change="changePage"
size="small"
show-total
show-elevator
></Page>
</div>
</TabPane>
<TabPane label="提现记录" name="log">
<Table stripe :columns="logColumns" :data="logData.records">
<template slot-scope="{ row }" slot="sn">
<span>{{row.sn}}</span>
</template>
<template slot-scope="{ row }" slot="time">
<span>{{row.createTime}}</span>
</template>
<template slot-scope="{ row }" slot="price">
<span v-if="row.distributionCashStatus == 'REFUSE'" style="color: green"> +{{ row.price | unitPrice }}</span>
<span v-else style="color: red"> -{{ row.price | unitPrice }}</span>
</template>
<template slot-scope="{ row }" slot="status">
<span> {{row.distributionCashStatus == "APPLY" ? "待处理" : row.distributionCashStatus == "PASS" ? "通过" : "拒绝"}}</span>
</template>
</Table>
<div class="page-size">
<Page
:current="logParams.pageNumber"
:total="logData.total"
:page-size="logParams.pageSize"
@on-change="changePageLog"
size="small"
show-total
show-elevator
></Page>
</div>
</TabPane>
</Tabs>
</div>
<!-- 未开放 -->
<div v-if="status === 3">
<Alert type="error">
分销功能暂未开启
<template slot="desc">提交认证申请后工作人员将在三个工作日进行核对完成审核</template>
</Alert>
</div>
<Modal v-model="withdrawApplyModal" width="530"> <FormItem>
<p slot="header"> <Button type="primary" :loading="applyLoading" @click="apply"
<Icon type="edit"></Icon> >提交申请</Button
<span>提现金额</span> >
</p> </FormItem>
<div> </Form>
<Input
v-model="withdrawPrice"
size="large"
number
maxlength="9"
><span slot="append"></span></Input>
</div>
<div slot="footer" style="text-align: center">
<Button type="primary" size="large" @click="withdraw"></Button>
</div>
</Modal>
<Modal v-model="qrcodeShow" title="分销商品" width="800">
<Alert type="warning">
下载二维码或者复制链接分享商品
</Alert>
<div style="width:200px;height:200px;border:1px solid #eee;">
<vue-qr :text="qrcode" :callback="qrcodeData" :margin="0" colorDark="#000" colorLight="#fff" :size="200"></vue-qr>
<Button class="download-btn" type="success" @click="downloadQrcode"></Button>
</div>
<div class="mt_10">商品链接<Input style="width:400px" v-model="qrcode"></Input></div>
</Modal>
</div> </div>
<!-- 分销审核 -->
<div v-if="status === 1">
<Alert type="success">
您提交的信息正在审核
<template slot="desc"
>提交认证申请后工作人员将在三个工作日进行核对完成审核</template
>
</Alert>
</div>
<!-- 分销提现商品订单 -->
<div v-if="status === 2">
<div class="tips">
<p>分销下线付款之后会生成分销订单</p>
<p>
冻结金额用户提现金额即为冻结金额审核通过后扣除冻结金额审核拒绝之后冻结金额返回可提现金额
</p>
<p>可提现金额分销订单佣金T+1解冻后可变为可提现金额</p>
</div>
<div class="box">
<div class="mb_20 account-price">
<span class="subTips">可提现金额</span>
<span class="fontsize_48 global_color"
>{{ result.canRebate | unitPrice }}</span
>
<span class="subTips">冻结金额</span>
<span class="">{{ result.commissionFrozen | unitPrice }}</span>
<span class="subTips">返利总金额</span>
<span class="">{{ result.rebateTotal | unitPrice }}</span>
<Button
type="primary"
size="small"
class="ml_20"
@click="withdrawApplyModal = true"
>申请提现</Button
>
</div>
</div>
<Tabs :value="tabName" @on-click="tabPaneChange">
<TabPane label="已选商品" name="goodsChecked">
<Table stripe :columns="goodsColumns" :data="goodsData.records">
<template slot-scope="{ row }" slot="name">
<div
class="goods-msg"
@click="
linkTo(
`/goodsDetail?skuId=${row.skuId}&goodsId=${row.goodsId}`
)
"
>
<img
style="vertical-align: top"
:src="row.thumbnail"
width="60"
height="60"
alt=""
/>&nbsp; {{ row.goodsName }}
</div>
</template>
<template slot-scope="{ row }" slot="price">
<span> {{ row.price | unitPrice }}</span>
</template>
<template slot-scope="{ row }" slot="commission">
<span> {{ row.commission | unitPrice }}</span>
</template>
<template slot-scope="{ row }" slot="action">
<Button
type="success"
size="small"
style="margin-right: 5px"
@click="fenxiao(row)"
>分销商品</Button
>
<Button
type="error"
size="small"
@click="selectGoods(row.id, false)"
>取消选择</Button
>
</template>
</Table>
<div class="page-size">
<Page
:current="params.pageNumber"
:total="goodsData.total"
:page-size="params.pageSize"
@on-change="changePage"
size="small"
show-total
show-elevator
></Page>
</div>
</TabPane>
<TabPane label="未选商品" name="goodsUncheck">
<Table stripe :columns="goodsColumns" :data="goodsData.records">
<template slot-scope="{ row }" slot="name">
<div
class="goods-msg"
@click="
linkTo(
`/goodsDetail?skuId=${row.skuId}&goodsId=${row.goodsId}`
)
"
>
<img
style="vertical-align: top"
:src="row.thumbnail"
width="60"
height="60"
alt=""
/>&nbsp; {{ row.goodsName }}
</div>
</template>
<template slot-scope="{ row }" slot="price">
<span> {{ row.price | unitPrice }}</span>
</template>
<template slot-scope="{ row }" slot="commission">
<span> {{ row.commission | unitPrice }}</span>
</template>
<template slot-scope="{ row }" slot="action">
<Button
type="primary"
size="small"
style="margin-right: 5px"
@click="selectGoods(row.id, true)"
>选择商品</Button
>
</template>
</Table>
<div class="page-size">
<Page
:current="params.pageNumber"
:total="goodsData.total"
:page-size="params.pageSize"
@on-change="changePage"
size="small"
show-total
show-elevator
></Page>
</div>
</TabPane>
<TabPane label="提现记录" name="log">
<Table stripe :columns="logColumns" :data="logData.records">
<template slot-scope="{ row }" slot="sn">
<span>{{ row.sn }}</span>
</template>
<template slot-scope="{ row }" slot="time">
<span>{{ row.createTime }}</span>
</template>
<template slot-scope="{ row }" slot="price">
<span
v-if="row.distributionCashStatus == 'VIA_AUDITING'"
style="color: green"
>
+{{ row.price | unitPrice }}</span
>
<span v-else style="color: red">
-{{ row.price | unitPrice }}</span
>
</template>
<template slot-scope="{ row }" slot="status">
<span>
{{
row.distributionCashStatus == "APPLY"
? "待处理"
: row.distributionCashStatus == "VIA_AUDITING"
? "通过"
: "拒绝"
}}</span
>
</template>
</Table>
<div class="page-size">
<Page
:current="logParams.pageNumber"
:total="logData.total"
:page-size="logParams.pageSize"
@on-change="changePageLog"
size="small"
show-total
show-elevator
></Page>
</div>
</TabPane>
</Tabs>
</div>
<!-- 未开放 -->
<div v-if="status === 3">
<Alert type="error">
分销功能暂未开启
<template slot="desc"
>提交认证申请后工作人员将在三个工作日进行核对完成审核</template
>
</Alert>
</div>
<Modal v-model="withdrawApplyModal" width="530">
<p slot="header">
<Icon type="edit"></Icon>
<span>提现金额</span>
</p>
<div>
<Input v-model="withdrawPrice" size="large" number maxlength="9"
><span slot="append"></span></Input
>
</div>
<div slot="footer" style="text-align: center">
<Button type="primary" size="large" @click="withdraw"></Button>
</div>
</Modal>
<Modal v-model="qrcodeShow" title="分销商品" width="800">
<Alert type="warning"> 下载二维码或者复制链接分享商品 </Alert>
<div style="width: 200px; height: 200px; border: 1px solid #eee">
<vue-qr
:text="qrcode"
:callback="qrcodeData"
:margin="0"
colorDark="#000"
colorLight="#fff"
:size="200"
></vue-qr>
<Button class="download-btn" type="success" @click="downloadQrcode"
>下载二维码</Button
>
</div>
<div class="mt_10">
商品链接<Input style="width: 400px" v-model="qrcode"></Input>
</div>
</Modal>
</div>
</template> </template>
<script> <script>
import {distribution, applyDistribution, distCash, distCashHistory, getDistGoodsList, selectDistGoods} from '@/api/member.js' import {
import { IDCard } from '@/plugins/RegExp.js'; distribution,
import {checkBankno} from '@/plugins/Foundation' applyDistribution,
import vueQr from 'vue-qr'; distCash,
distCashHistory,
getDistGoodsList,
selectDistGoods,
} from "@/api/member.js";
import { IDCard } from "@/plugins/RegExp.js";
import { checkBankno } from "@/plugins/Foundation";
import vueQr from "vue-qr";
export default { export default {
name: 'Distribution', name: "Distribution",
components: { vueQr }, components: { vueQr },
data () { data() {
return { return {
status: 0, // 0 1 2 3 status: 0, // 0 1 2 3
applyForm: {}, // applyForm: {}, //
rules: { // rules: {
name: [{required: true, message: '请输入真实姓名'}], //
name: [{ required: true, message: "请输入真实姓名" }],
idNumber: [ idNumber: [
{required: true, message: '请输入身份证号'}, { required: true, message: "请输入身份证号" },
{pattern: IDCard, message: '请输入正确的身份证号'} { pattern: IDCard, message: "请输入正确的身份证号" },
], ],
settlementBankBranchName: [ settlementBankBranchName: [
{ {
@ -193,7 +296,6 @@ export default {
// //
trigger: "blur", trigger: "blur",
}, },
], ],
settlementBankAccountName: [ settlementBankAccountName: [
{ {
@ -221,7 +323,7 @@ export default {
}, },
], ],
}, },
tabName: 'goodsChecked', // tab tabName: "goodsChecked", // tab
result: {}, // result: {}, //
applyLoading: false, // applyLoading: false, //
goodsLoading: false, // goodsLoading: false, //
@ -229,136 +331,155 @@ export default {
withdrawPrice: 0, // withdrawPrice: 0, //
goodsData: {}, // goodsData: {}, //
logData: {}, // logData: {}, //
goodsColumns: [ // goodsColumns: [
{title: '商品名称', slot: 'name', width: 400}, //
{title: '商品价格', slot: 'price'}, { title: "商品名称", slot: "name", width: 400 },
{title: '佣金', slot: 'commission'}, { title: "商品价格", slot: "price" },
{title: '操作', slot: 'action', minWidth: 120} { title: "佣金", slot: "commission" },
{ title: "操作", slot: "action", minWidth: 120 },
], ],
logColumns: [ // logColumns: [
{title: '编号', slot: 'sn'}, //
{title: '申请时间', slot: 'time'}, { title: "编号", slot: "sn" },
{title: '提现金额', slot: 'price'}, { title: "申请时间", slot: "time" },
{title: '提现状态', slot: 'status'} { title: "提现金额", slot: "price" },
{ title: "提现状态", slot: "status" },
], ],
params: { // params: {
//
pageNumber: 1, pageNumber: 1,
pageSize: 20, pageSize: 20,
checked: true checked: true,
}, },
orderParams: { // orderParams: {
//
pageNumber: 1, pageNumber: 1,
pageSize: 20 pageSize: 20,
}, },
logParams: { // logParams: {
//
pageNumber: 1, pageNumber: 1,
pageSize: 20 pageSize: 20,
sort: "createTime",
order: "desc",
}, },
qrcode: '', // qrcode: "", //
qrcodeShow: false, // qrcodeShow: false, //
base64Img: '', // base64 base64Img: "", // base64
goodsNameCurr: ''// goodsNameCurr: "", //
} };
}, },
mounted () { mounted() {
this.distribution() this.distribution();
}, },
methods: { methods: {
apply () { // apply() {
this.$refs.form.validate(valid => { //
this.$refs.form.validate((valid) => {
if (valid) { if (valid) {
this.applyLoading = true this.applyLoading = true;
applyDistribution(this.form).then(res => { applyDistribution(this.form).then((res) => {
this.applyLoading = false this.applyLoading = false;
if (res.success) { if (res.success) {
this.$Message.success('申请已提交,请等待管理员审核') this.$Message.success("申请已提交,请等待管理员审核");
this.status = 1; this.status = 1;
} }
}) });
} }
}) });
}, },
withdraw () { // withdraw() {
distCash({price: this.withdrawPrice}).then(res => { //
this.withdrawApplyModal = false distCash({ price: this.withdrawPrice }).then((res) => {
this.withdrawApplyModal = false;
this.price = 0; this.price = 0;
if (res.success) { if (res.success) {
this.$Message.success('申请已提交,请等待审核') this.$Message.success("申请已提交,请等待审核");
this.distribution() this.distribution();
this.getLog() this.getLog();
} else { } else {
this.$Message.error(res.message) this.$Message.error(res.message);
} }
}) });
}, },
qrcodeData (data64) { // base64 qrcodeData(data64) {
this.base64Img = data64 // base64
this.base64Img = data64;
}, },
downloadQrcode () { // downloadQrcode() {
let a = document.createElement('a'); // a //
let event = new MouseEvent('click'); // let a = document.createElement("a"); // a
a.download = this.goodsNameCurr || 'photo' let event = new MouseEvent("click"); //
a.download = this.goodsNameCurr || "photo";
a.href = this.base64Img; // URLa.href a.href = this.base64Img; // URLa.href
a.dispatchEvent(event); // a a.dispatchEvent(event); // a
}, },
tabPaneChange (tab) { // tab tabPaneChange(tab) {
if (tab === 'goodsChecked') { // tab
if (tab === "goodsChecked") {
this.params.checked = true; this.params.checked = true;
this.params.pageNUmber = 1 this.params.pageNUmber = 1;
this.getGoodsData() this.getGoodsData();
} else if (tab === 'goodsUncheck') { } else if (tab === "goodsUncheck") {
this.params.checked = false this.params.checked = false;
this.getGoodsData() this.getGoodsData();
} else if (tab === 'log') { } else if (tab === "log") {
this.logParams.pageNumber = 1 this.logParams.pageNumber = 1;
this.getLog() this.getLog();
} }
}, },
changePage (val) { // changePage(val) {
//
this.params.pageNumber = val; this.params.pageNumber = val;
this.getGoodsData() this.getGoodsData();
}, },
changePageLog (val) { // changePageLog(val) {
//
this.logParams.pageNumber = val; this.logParams.pageNumber = val;
this.getLog() this.getLog();
}, },
selectGoods (id, checked) { // selectGoods(id, checked) {
//
let params = { let params = {
distributionGoodsId: id, distributionGoodsId: id,
checked: checked checked: checked,
} };
selectDistGoods(params).then(res => { selectDistGoods(params).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success('操作成功!') this.$Message.success("操作成功!");
this.getGoodsData() this.getGoodsData();
} }
}) });
}, },
fenxiao (row) { // fenxiao(row) {
this.qrcode = `${location.origin}/goodsDetail?skuId=${row.skuId}&goodsId=${row.goodsId}&distributionId=${this.result.id}` //
this.goodsNameCurr = row.goodsName this.qrcode = `${location.origin}/goodsDetail?skuId=${row.skuId}&goodsId=${row.goodsId}&distributionId=${this.result.id}`;
this.goodsNameCurr = row.goodsName;
this.qrcodeShow = true; this.qrcodeShow = true;
}, },
getGoodsData () { // getGoodsData() {
getDistGoodsList(this.params).then(res => { //
if (res.success) this.goodsData = res.result getDistGoodsList(this.params).then((res) => {
}) if (res.success) this.goodsData = res.result;
});
}, },
getLog () { // getLog() {
distCashHistory(this.logParams).then(res => { //
if (res.success) this.logData = res.result distCashHistory(this.logParams).then((res) => {
}) if (res.success) this.logData = res.result;
});
}, },
distribution () { // distribution() {
//
distribution().then((res) => { distribution().then((res) => {
if (res.result) { if (res.result) {
this.result = res.result; this.result = res.result;
let type = res.result.distributionStatus; let type = res.result.distributionStatus;
if (type === 'PASS') { if (type === "PASS") {
this.status = 2; this.status = 2;
this.getGoodsData() this.getGoodsData();
} else if (type === 'RETREAT' || type === 'REFUSE') { } else if (type === "RETREAT" || type === "REFUSE") {
this.status = 0; this.status = 0;
} else { } else {
this.status = 1; this.status = 1;
@ -367,15 +488,15 @@ export default {
this.status = 3; this.status = 3;
} else { } else {
// //
this.status = 0 this.status = 0;
} }
}); });
} },
} },
} };
</script> </script>
<style scoped lang='scss'> <style scoped lang="scss">
.box { .box {
margin: 20px 0; margin: 20px 0;
} }
@ -392,11 +513,11 @@ export default {
.fontsize_48 { .fontsize_48 {
font-size: 48px; font-size: 48px;
} }
.goods-msg{ .goods-msg {
display: flex; display: flex;
align-items: center; align-items: center;
padding: 3px; padding: 3px;
&:hover{ &:hover {
color: $theme_color; color: $theme_color;
cursor: pointer; cursor: pointer;
} }
@ -406,4 +527,17 @@ export default {
top: -200px; top: -200px;
left: 200px; left: 200px;
} }
/depp/ .ivu-alert-message {
p {
margin: 4px 0;
}
}
.tips{
background:#f7f7f7;
padding: 16px;
border-radius: .4em;
>p{
margin: 6px 0;
}
}
</style> </style>

View File

@ -111,8 +111,8 @@ export default {
this.spinShow = true; this.spinShow = true;
tracksList(this.params).then((res) => { tracksList(this.params).then((res) => {
this.spinShow = false; this.spinShow = false;
if (res.success && res.result) { if (res.success && res.result.records.length) {
this.list = res.result; this.list = res.result.records;
} else { } else {
this.list = []; this.list = [];
} }

View File

@ -102,19 +102,7 @@
slot: 'goodsMsg', slot: 'goodsMsg',
minWidth: 150 minWidth: 150
}, },
{
title: "退款金额",
key: "returnMoney",
minWidth:80,
sortable: false,
render: (h, params) => {
if(params.row.sellBackRebate == null){
return h("div", this.$options.filters.unitPrice(0, '¥'));
}else{
return h("div", this.$options.filters.unitPrice(params.row.sellBackRebate, '¥'));
}
}
},
{ {
title: "分销商", title: "分销商",
key: "distributionName", key: "distributionName",
@ -134,7 +122,7 @@
}, },
{ {
title: "佣金金额", title: "佣金金额",
key: "rebateGrade", key: "rebate",
minWidth:80, minWidth:80,
sortable: false, sortable: false,
render: (h, params) => { render: (h, params) => {
@ -237,11 +225,11 @@
}, },
filterStatusColor (status) { // tag filterStatusColor (status) { // tag
const arr = [ const arr = [
{status: 'WAIT_BILL', color: 'magenta'}, {status: 'WAIT_BILL', color: 'blue'},
{status: 'WAIT_CASH', color: 'warning'}, {status: 'WAIT_CASH', color: 'orange'},
{status: 'COMPLETE_CASH', color: 'success'}, {status: 'COMPLETE_CASH', color: 'green'},
{status: 'CANCEL', color: 'default'}, {status: 'CANCEL', color: 'red'},
{status: 'REFUND', color: 'error'}, {status: 'REFUND', color: 'magenta'},
] ]
for (let i=0;i<arr.length;i++) { for (let i=0;i<arr.length;i++) {
if (arr[i].status === status) { if (arr[i].status === status) {

View File

@ -532,6 +532,7 @@ export const modelData = [
title: [{context: "这是一条公告"}], title: [{context: "这是一条公告"}],
color: "#666", color: "#666",
bk_color: "#FFF", bk_color: "#FFF",
direction:"horizontal",
img: 'http://files.sxcfx.cn/upload/20220318/71e5d27aca82aeedf647052e1e4ceaaa.png' img: 'http://files.sxcfx.cn/upload/20220318/71e5d27aca82aeedf647052e1e4ceaaa.png'
} }
] ]

View File

@ -217,6 +217,23 @@
<Input v-model="item.bk_color" /> <Input v-model="item.bk_color" />
</div> </div>
</div> </div>
<div
class="decorate-view"
v-if="item.title != void 0 && !res.notTitle && res.type == 'notice'"
>
<div class="decorate-view-title">方向</div>
<div class="decorate-view">
<Select
style="width: 200px"
@on-change="changeDirection($event, item)"
v-model="item.direction"
>
{{item.direction}}
<Option label="横向" value="horizontal"></Option>
<Option label="纵向" value="vertical"></Option>
</Select>
</div>
</div>
<!-- 填写标题 --> <!-- 填写标题 -->
<div <div
@ -364,10 +381,11 @@
v-if=" v-if="
res.type != 'tpl_ad_list' && res.type != 'tpl_ad_list' &&
res.type != 'tpl_activity_list' && res.type != 'tpl_activity_list' &&
!res.notAdd !res.notAdd &&
res.direction != 'horizontal'
" "
type="primary" type="primary"
@click="addDecorate(res.type)" @click="addDecorate(res.type, res)"
ghost ghost
>添加</Button >添加</Button
> >
@ -414,6 +432,14 @@ export default {
}, },
props: ["res"], props: ["res"],
methods: { methods: {
// title
changeDirection(val, data) {
if (val == "horizontal") {
const props = {...data}
data.title = []
data.title.push( props.title[0]);
}
},
// //
selectStyle() { selectStyle() {
this.styleFlag = !this.styleFlag; this.styleFlag = !this.styleFlag;
@ -455,7 +481,7 @@ export default {
}, },
// //
liliDialogFlag(flag) { liliDialogFlag(flag) {
this.$refs.liliDialog.clearGoodsSelected() this.$refs.liliDialog.clearGoodsSelected();
this.$refs.liliDialog.goodsFlag = flag; this.$refs.liliDialog.goodsFlag = flag;
this.$refs.liliDialog.flag = true; this.$refs.liliDialog.flag = true;
}, },
@ -482,11 +508,16 @@ export default {
}); });
}, },
// //
addDecorate(type) { addDecorate(type, data) {
if (type === "notice") { if (type === "notice") {
this.res.options.list[0].title.push({ console.log(data)
content: "", if (data.options.list[0].direction == "vertical") {
}); this.res.options.list[0].title.push({
content: "",
});
} else {
this.$Message.error("仅纵向支持多添加");
}
} else { } else {
let way = { let way = {
img: "https://picsum.photos/id/264/200/200", img: "https://picsum.photos/id/264/200/200",

View File

@ -94,7 +94,7 @@ export default {
title: "退款状态", title: "退款状态",
key: "isRefund", key: "isRefund",
fixed: "right", fixed: "right",
width: 95, width: 120,
render: (h, params) => { render: (h, params) => {
if (params.row.isRefund == "1") { if (params.row.isRefund == "1") {
return h("div", [ return h("div", [
@ -102,7 +102,11 @@ export default {
]); ]);
} else { } else {
return h("div", [ return h("div", [
h("Tag", { props: { color: "orange" } }, "未退款"), h("span", [
h("Tag", { props: { color: "orange" } }, "未退款"),
h("span", params.row.errorMessage || ''),
]),
// h("Tag", { props: { color: "orange" } }, "退"),
]); ]);
} }
}, },

View File

@ -49,38 +49,7 @@ export default {
tooltip: true, tooltip: true,
}, },
{
title: "实付金额",
key: "orderPrice",
width: 130,
sortable: false,
render: (h, params) => {
if (params.row.orderPrice == null) {
return h("div", this.$options.filters.unitPrice(0, "¥"));
} else {
return h(
"div",
this.$options.filters.unitPrice(params.row.orderPrice, "¥")
);
}
},
},
{
title: "退款金额",
key: "returnMoney",
width: 130,
sortable: false,
render: (h, params) => {
if (params.row.orderPrice == null) {
return h("div", this.$options.filters.unitPrice(0, "¥"));
} else {
return h(
"div",
this.$options.filters.unitPrice(params.row.returnMoney, "¥")
);
}
},
},
{ {
title: "商品名称", title: "商品名称",
key: "goodsName", key: "goodsName",
@ -94,27 +63,32 @@ export default {
sortable: false, sortable: false,
render: (h, params) => { render: (h, params) => {
if (params.row.distributionOrderStatus == "COMPLETE_CASH") { if (params.row.distributionOrderStatus == "COMPLETE_CASH") {
return h("div", "提现完成"); return h("Tag", { props: { color: "green" } },"提现完成");
} else if (params.row.distributionOrderStatus == "WAIT_BILL") { } else if (params.row.distributionOrderStatus == "WAIT_BILL") {
return h("div", "待结算"); return h("Tag", { props: { color: "blue" } } ,"待结算");
} else if (params.row.distributionOrderStatus == "WAIT_CASH") { } else if (params.row.distributionOrderStatus == "WAIT_CASH") {
return h("div", "待提现"); return h("Tag", { props: { color: "orange" } }, "待提现");
} else if (params.row.distributionOrderStatus == "CANCEL") {
return h("Tag", { props: { color: "red" } }, "订单已取消");
}else if (params.row.distributionOrderStatus == "REFUND") {
return h("Tag", { props: { color: "magenta" } }, "退款");
} }
}, },
}, },
{ {
title: "佣金金额", title: "佣金金额",
key: "rebateGrade", key: "rebate",
width: 120, width: 120,
sortable: false, sortable: false,
render: (h, params) => { render: (h, params) => {
if (params.row.rebateGrade == null) { if (params.row.rebate == null) {
return h("div", this.$options.filters.unitPrice(0, "¥")); return h("div", this.$options.filters.unitPrice(0, "¥"));
} else { } else {
return h( return h(
"div", "div",
this.$options.filters.unitPrice(params.row.rebateGrade, "¥") this.$options.filters.unitPrice(params.row.rebate, "¥")
); );
} }
}, },
@ -125,6 +99,12 @@ export default {
width: 180, width: 180,
sortable: false, sortable: false,
}, },
{
title: "解冻日期T+1",
key: "settleCycle",
width: 180,
sortable: false,
},
], ],
data: [], // data: [], //
total: 0, // total: 0, //