12.31开源admin代码更新

This commit is contained in:
hejinfu1026
2021-12-31 15:58:40 +08:00
parent 0e7e9142fc
commit 6532af1537
545 changed files with 9743 additions and 139371 deletions

View File

@@ -1,17 +1,10 @@
<template>
<div class="divBox">
<div class="divBox relative">
<el-card class="box-card">
<div slot="header" class="clearfix">
<!--<el-tabs v-model="tableFrom.type" @tab-click="getList">-->
<!--<el-tab-pane label="全部订单" name=""/>-->
<!--<el-tab-pane label="普通订单" name="1"/>-->
<!--<el-tab-pane label="拼团订单" name="2"/>-->
<!--<el-tab-pane label="秒杀订单" name="3"/>-->
<!--<el-tab-pane label="砍价订单" name="4"/>-->
<!--</el-tabs>-->
<div class="clearfix">
<div class="container">
<el-form size="small" label-width="100px">
<el-form-item label="订单状态:">
<el-form-item label="订单状态:" v-if="checkPermi(['admin:order:status:num'])">
<el-radio-group v-model="tableFrom.status" type="button" @change="seachList">
<el-radio-button label="all">全部 {{ '(' +orderChartType.all?orderChartType.all:0 + ')' }}</el-radio-button>
<el-radio-button label="unPaid">未支付 {{ '(' +orderChartType.unPaid?orderChartType.unPaid:0+ ')' }}</el-radio-button>
@@ -31,8 +24,8 @@
</el-radio-group>
<el-date-picker v-model="timeVal" value-format="yyyy-MM-dd" format="yyyy-MM-dd" size="small" type="daterange" placement="bottom-end" placeholder="自定义时间" style="width: 220px;" @change="onchangeTime" />
</el-form-item>
<el-form-item label="订单类型:" class="width100">
<el-select v-model="tableFrom.type" placeholder="请选择" class="selWidth" @change="seachList">
<!-- <el-form-item label="订单类型:" class="width100">
<el-select v-model="tableFrom.type" clearable placeholder="请选择" class="selWidth" @change="seachList">
<el-option
v-for="item in options"
:key="item.value"
@@ -40,53 +33,41 @@
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="订单号:" class="width100">
</el-form-item> -->
<el-form-item label="订单号:" class="width100">
<el-input v-model="tableFrom.orderNo" placeholder="请输入订单号" class="selWidth" size="small" clearable>
<el-button slot="append" icon="el-icon-search" size="small" @click="seachList" />
</el-input>
</el-form-item>
<el-form-item class="width100">
<el-button size="small" @click="exports" v-hasPermi="['admin:export:excel:order']">导出</el-button>
</el-form-item>
</el-form>
</div>
<cards-data :cardLists="cardLists"></cards-data>
</div>
<el-table
</el-card>
<div class="mt20">
<!-- <cards-data :cardLists="cardLists" v-if="checkPermi(['admin:order:list:data'])"></cards-data> -->
</div>
<el-card class="box-card">
<el-table
v-loading="listLoading"
:data="tableData.data"
style="width: 100%"
size="mini"
class="table"
highlight-current-row
@selection-change="handleSelectionChange"
:header-cell-style=" {fontWeight:'bold'}"
:row-key="(row)=>{ return row.orderId}"
>
<!--<el-table-column type="expand">-->
<!--<template slot-scope="props">-->
<!--<el-form label-position="left" inline class="demo-table-expand">-->
<!--<el-form-item label="商品总价:">-->
<!--<span>{{ props.row.totalPrice | filterEmpty }}</span>-->
<!--</el-form-item>-->
<!--<el-form-item label="推广人:">-->
<!--<span>{{ props.row.spreadInfo.id + ' / ' + props.row.spreadInfo.name }}</span>-->
<!--</el-form-item>-->
<!--<el-form-item label="用户备注:">-->
<!--<span>{{ props.row.mark | filterEmpty }}</span>-->
<!--</el-form-item>-->
<!--<el-form-item label="商家备注:">-->
<!--<span>{{ props.row.remark | filterEmpty }}</span>-->
<!--</el-form-item>-->
<!--<el-form-item label="核销码:" v-if="props.row.verifyCode">-->
<!--<span>{{ props.row.verifyCode }}</span>-->
<!--</el-form-item>-->
<!--</el-form>-->
<!--</template>-->
<!--</el-table-column>-->
<el-table-column
<!-- @selection-change="handleSelectionChange" -->
<!-- <el-table-column
type="selection"
:reserve-selection="true"
width="55"
/>
/> -->
<el-table-column
label="订单号"
min-width="170"
min-width="210"
>
<template slot-scope="scope">
<span style="display: block;" v-text="scope.row.orderId" />
@@ -96,32 +77,42 @@
<el-table-column
prop="orderType"
label="订单类型"
min-width="130"
min-width="110"
/>
<el-table-column
prop="realName"
label="用户信息"
min-width="130"
label="收货人"
min-width="100"
/>
<el-table-column
label="商品信息"
min-width="400"
>
<template slot-scope="scope">
<div v-if=" scope.row.productList && scope.row.productList.length">
<div v-for="(val, i ) in scope.row.productList" :key="i" class="tabBox acea-row row-middle" style="flex-wrap: inherit;">
<div class="demo-image__preview mr10">
<el-image
:src="val.info.image"
:preview-src-list="[val.info.image]"
/>
</div>
<div>
<span class="tabBox_tit mr10">{{ val.info.productName + ' | ' }}{{ val.info.sku ? val.info.sku:'-' }}</span>
<span class="tabBox_pice">{{ '¥'+ val.info.price ? val.info.price + ' x '+ val.info.payNum : '-' }}</span>
<el-popover trigger="hover" placement="right" :open-delay="800">
<div v-if=" scope.row.productList && scope.row.productList.length" slot="reference">
<div v-for="(val, i ) in scope.row.productList" :key="i" class="tabBox acea-row row-middle" style="flex-wrap: inherit;">
<div class="demo-image__preview mr10">
<el-image
:src="val.info.image"
:preview-src-list="[val.info.image]"
/>
</div>
<div class="text_overflow">
<span class="tabBox_tit mr10">{{ val.info.productName + ' | ' }}{{ val.info.sku ? val.info.sku:'-' }}</span>
<span class="tabBox_pice">{{ '¥'+ val.info.price ? val.info.price + ' x '+ val.info.payNum : '-' }}</span>
</div>
</div>
</div>
</div>
<div class="pup_card" v-if=" scope.row.productList && scope.row.productList.length">
<div v-for="(val, i ) in scope.row.productList" :key="i" class="tabBox acea-row row-middle" style="flex-wrap: inherit;">
<div class="">
<span class="tabBox_tit mr10">{{ val.info.productName + ' | ' }}{{ val.info.sku ? val.info.sku:'-' }}</span>
<span class="tabBox_pice">{{ '¥'+ val.info.price ? val.info.price + ' x '+ val.info.payNum : '-' }}</span>
</div>
</div>
</div>
</el-popover>
</template>
</el-table-column>
<el-table-column
@@ -139,29 +130,36 @@
</el-table-column>
<el-table-column
label="订单状态"
min-width="180"
min-width="100"
>
<template slot-scope="scope">
<div v-if="scope.row.refundStatus === 1 || scope.row.refundStatus === 2" class="refunding">
<b style="color: #f124c7;">{{scope.row.statusStr.value}}</b>
<span>退款原因{{scope.row.refundReasonWap}}</span>
<span>备注说明{{scope.row.refundReasonWapExplain}}</span>
<span>退款时间{{scope.row.refundReasonTime}}</span>
<span class="acea-row">
退款凭证
<template v-if="scope.row.refundReasonWapImg">
<div v-for="(item, index) in scope.row.refundReasonWapImg.split(',')" :key="index" class="demo-image__preview" style="width: 35px;height: auto;display: inline-block;">
<el-image
:src="item"
:preview-src-list="[item]"
/>
<div>
<div v-if="scope.row.refundStatus === 1 || scope.row.refundStatus === 2" class="refunding" >
<template>
<el-popover trigger="hover" placement="left" :open-delay="800">
<b style="color: #f124c7;" slot="reference">{{scope.row.statusStr.value}}</b>
<div class="pup_card flex-column">
<span>退款原因:{{scope.row.refundReasonWap}}</span>
<span>备注说明:{{scope.row.refundReasonWapExplain}}</span>
<span>退款时间:{{scope.row.refundReasonTime}}</span>
<span class="acea-row">
退款凭证:
<template v-if="scope.row.refundReasonWapImg">
<div v-for="(item, index) in scope.row.refundReasonWapImg.split(',')" :key="index" class="demo-image__preview" style="width: 35px;height: auto;display: inline-block;">
<el-image
:src="item"
:preview-src-list="[item]"
/>
</div>
</template>
<span v-else style="display: inline-block">无</span>
</span>
</div>
</el-popover>
</template>
</div>
</template>
<!--<img :src="scope.row.refundReasonWapImg" v-if="scope.row.refundReasonWapImg" >-->
<span v-else style="display: inline-block"></span>
</span>
</div>
<span v-else>{{ scope.row.statusStr.value }}</span>
<span v-else>{{ scope.row.statusStr.value }}</span>
</div>
</template>
</el-table-column>
<el-table-column
@@ -171,21 +169,22 @@
/>
<el-table-column label="操作" min-width="150" fixed="right" align="center">
<template slot-scope="scope">
<el-button v-if="scope.row.paid === false" type="text" size="small" @click="edit(scope.row)" class="mr10">编辑</el-button>
<el-button v-if="scope.row.statusStr.key === 'notShipped' && scope.row.refundStatus ===0" type="text" size="small" class="mr10" @click="sendOrder(scope.row)">发送货</el-button>
<el-button v-if=" scope.row.statusStr.key === 'toBeWrittenOff' && scope.row.paid == true && scope.row.refundStatus === 0 " type="text" size="small" class="mr10" @click="onWriteOff(scope.row)">立即核销</el-button>
<el-button v-if="scope.row.paid === false" type="text" size="small" @click="edit(scope.row)" class="mr10" v-hasPermi="['admin:order:update:price']">编辑</el-button>
<el-button v-if="scope.row.statusStr.key === 'notShipped' && scope.row.refundStatus ===0" type="text" size="small" class="mr10" @click="sendOrder(scope.row)" v-hasPermi="['admin:order:send']">发送货</el-button>
<el-button v-if=" scope.row.statusStr.key === 'toBeWrittenOff' && scope.row.paid == true && scope.row.refundStatus === 0 " type="text" size="small" class="mr10" v-hasPermi="['admin:order:write:update']" @click="onWriteOff(scope.row)">立即核销</el-button>
<el-dropdown trigger="click">
<span class="el-dropdown-link">
更多<i class="el-icon-arrow-down el-icon--right" />
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item @click.native="onOrderDetails(scope.row.orderId)">订单详情</el-dropdown-item>
<el-dropdown-item @click.native="onOrderLog(scope.row.orderId)">订单记录</el-dropdown-item>
<el-dropdown-item @click.native="onOrderMark(scope.row)">订单备注</el-dropdown-item>
<el-dropdown-item v-show="scope.row.refundStatus === 1" @click.native="onOrderRefuse(scope.row)">拒绝退款</el-dropdown-item>
<el-dropdown-item @click.native="onOrderDetails(scope.row.orderId)" v-if="checkPermi(['admin:order:info'])">订单详情</el-dropdown-item>
<el-dropdown-item @click.native="onOrderLog(scope.row.orderId)" v-if="checkPermi(['admin:order:status:list'])">订单记录</el-dropdown-item>
<el-dropdown-item @click.native="onOrderMark(scope.row)" v-if="checkPermi(['admin:order:mark'])">订单备注</el-dropdown-item>
<el-dropdown-item v-if="scope.row.refundStatus === 1 && checkPermi(['admin:order:refund:refuse'])" @click.native="onOrderRefuse(scope.row)">拒绝退款</el-dropdown-item>
<!--v-show="((scope.row.statusStr.key !== 'refunded' && scope.row.statusStr.key !== 'unPaid') && (parseFloat(scope.row.payPrice) >= parseFloat(scope.row.refundPrice))) || (scope.row.payPrice == 0 && [0,1].indexOf(scope.row.refundStatus) !== -1)"-->
<el-dropdown-item v-show="scope.row.refundStatus === 1" @click.native="onOrderRefund(scope.row)">立即退款</el-dropdown-item>
<el-dropdown-item v-show="scope.row.statusStr.key === 'deleted'" @click.native="handleDelete(scope.row, scope.$index)">删除订单</el-dropdown-item>
<el-dropdown-item v-if="scope.row.refundStatus === 1 && checkPermi(['admin:order:refund'])" @click.native="onOrderRefund(scope.row)" >立即退款</el-dropdown-item>
<el-dropdown-item v-if="scope.row.statusStr.key === 'deleted' && checkPermi(['admin:order:delete'])" @click.native="handleDelete(scope.row, scope.$index)">删除订单</el-dropdown-item>
<el-dropdown-item v-if="scope.row.statusStr.key !== 'unPaid'" @click.native="onOrderPrint(scope.row)" >打印小票</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</template>
@@ -203,7 +202,6 @@
/>
</div>
</el-card>
<!--编辑-->
<el-dialog
title="编辑订单"
@@ -211,6 +209,7 @@
width="500px"
:before-close="handleClose">
<zb-parser
v-if="dialogVisible"
:form-id="104"
:is-create="isCreate"
:edit-data="editData"
@@ -275,6 +274,7 @@
<!--拒绝退款-->
<el-dialog
title="拒绝退款原因"
v-if="RefuseVisible"
:visible.sync="RefuseVisible"
width="500px"
:before-close="RefusehandleClose">
@@ -306,7 +306,7 @@
</template>
<script>
import { orderListDataApi, orderStatusNumApi, writeUpdateApi, orderListApi, orderUpdateApi, orderLogApi, orderMarkApi, orderDeleteApi, orderRefuseApi, orderRefundApi } from '@/api/order'
import { orderListDataApi, orderStatusNumApi, writeUpdateApi, orderListApi, updatePriceApi, orderLogApi, orderMarkApi, orderDeleteApi, orderRefuseApi, orderRefundApi,orderPrint } from '@/api/order'
import cardsData from '@/components/cards/index'
import zbParser from '@/components/FormGenerator/components/parser/ZBParser'
import detailsFrom from './orderDetail'
@@ -315,6 +315,8 @@
import { storeStaffListApi } from '@/api/storePoint'
import Cookies from 'js-cookie'
import { isWriteOff } from "@/utils";
import {orderExcelApi} from '@/api/store'
import { checkPermi } from "@/utils/permission"; // 权限判断函数
export default {
name: 'orderlistDetails',
components: {
@@ -326,13 +328,6 @@
},
data() {
return {
options: [{
value: 0,
label: '商城订单'
}, {
value: 1,
label: '视频号订单'
}],
RefuseVisible: false,
RefuseData:{},
orderId: '',
@@ -362,26 +357,35 @@
dateLimit: '',
orderNo: '',
page: 1,
limit: 20,
type: ''
limit: 10,
type: 0
},
orderChartType: {},
timeVal: [],
fromList: this.$constants.fromList,
fromType:[
{value:'all',text:'全部'},
{value:'info',text:'普通'},
{value:'pintuan',text:'拼团'},
{value:'bragin',text:'砍价'},
{value:'miaosha',text:'秒杀'},
],
selectionList: [],
ids: '',
orderids: '',
cardLists: [],
isWriteOff: isWriteOff(),
proType: 0
proType: 0,
active:false,
}
},
mounted() {
this.getList();
this.getOrderStatusNum();
this.getOrderListData();
// this.getOrderListData();
},
methods: {
checkPermi,
resetFormRefundhandler(){
this.refundVisible = false
},
@@ -404,6 +408,7 @@
seachList() {
this.tableFrom.page = 1
this.getList()
this.getOrderStatusNum()
},
// 拒绝退款
RefusehandleClose() {
@@ -500,7 +505,7 @@
this.onOrderLog()
},
handleClose() {
this.dialogVisible = false
this.dialogVisible = false;
},
// 备注
onOrderMark(row) {
@@ -525,7 +530,7 @@
this.selectionList = val
const data = []
this.selectionList.map((item) => {
data.push(item.id)
data.push(item.orderId)
})
this.ids = data.join(',')
},
@@ -535,7 +540,7 @@
this.tableFrom.page = 1
this.getList();
this.getOrderStatusNum();
this.getOrderListData();
// this.getOrderListData();
},
// 具体日期
onchangeTime (e) {
@@ -544,12 +549,11 @@
this.tableFrom.page = 1
this.getList();
this.getOrderStatusNum();
this.getOrderListData();
// this.getOrderListData();
},
// 编辑
edit(row) {
this.dialogVisible = true
this.orderId = row.id
this.orderId = row.orderId
this.editData = {
orderId: row.orderId,
totalPrice: row.totalPrice,
@@ -558,9 +562,14 @@
payPostage: row.payPostage,
gainIntegral: row.gainIntegral,
}
this.dialogVisible = true
},
handlerSubmit(formValue) {
orderUpdateApi(formValue, {id: this.orderId}).then(data => {
let data = {
orderNo:formValue.orderId,
payPrice:formValue.payPrice
}
updatePriceApi(data).then(data => {
this.$message.success('编辑数据成功')
this.dialogVisible = false
this.getList()
@@ -573,6 +582,7 @@
this.tableData.data = res.list || [];
this.tableData.total = res.total;
this.listLoading = false
this.checkedCities = this.$cache.local.has('order_stroge') ? this.$cache.local.getJSON('order_stroge') : this.checkedCities;
}).catch(() => {
this.listLoading = false
})
@@ -581,16 +591,16 @@
getOrderListData() {
orderListDataApi({dateLimit:this.tableFrom.dateLimit}).then(res => {
this.cardLists = [
{ name: '订单数量', count: res.count },
{ name: '订单金额', count: res.amount },
{ name: '微信支付金额', count: res.weChatAmount },
{ name: '余额支付金额', count: res.yueAmount }
{ name: '订单数量', count: res.count,color:'#1890FF',class:'one',icon:'icondingdan' },
{ name: '订单金额', count: res.amount, color:'#A277FF',class:'two',icon:'icondingdanjine' },
{ name: '微信支付金额', count: res.weChatAmount, color:'#EF9C20',class:'three',icon:'iconweixinzhifujine' },
{ name: '余额支付金额', count: res.yueAmount,color:'#1BBE6B',class:'four',icon:'iconyuezhifujine2' }
]
});
},
// 获取各状态数量
getOrderStatusNum() {
orderStatusNumApi({dateLimit:this.tableFrom.dateLimit}).then(res => {
orderStatusNumApi({dateLimit:this.tableFrom.dateLimit,type:this.tableFrom.type}).then(res => {
this.orderChartType = res;
});
},
@@ -602,11 +612,33 @@
this.tableFrom.limit = val
this.getList()
},
exports(){
let data = {
dateLimit:this.tableFrom.dateLimit,
orderNo:this.tableFrom.orderNo,
status:this.tableFrom.status,
type:this.tableFrom.type
};
orderExcelApi(data).then(res=>{
window.open(res.fileName);
})
},
//打印小票
onOrderPrint(data){
orderPrint(data.orderId).then(res=>{
this.$modal.msgSuccess('打印成功');
}).catch(error=>{
this.$modal.msgError(error.message)
})
}
}
}
</script>
<style lang="scss" scoped>
.el-table__body {
width: 100%;
table-layout: fixed !important;
}
.demo-table-expand{
/deep/label{
width: 83px !important;
@@ -635,4 +667,28 @@
/*padding: 5px 0;*/
box-sizing: border-box;
}
.text_overflow{
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
max-width: 400px;
}
.pup_card{
width: 200px;
border-radius: 5px;
padding: 5px;
box-sizing: border-box;
font-size: 12px;
line-height: 16px;
}
.flex-column{
display: flex;
flex-direction: column;
}
.mt20{
margin-top:20px
}
.relative{
position: relative;
}
</style>

View File

@@ -9,7 +9,7 @@
<div class="description" v-loading="loading">
<div class="title">用户信息</div>
<div class="acea-row">
<div class="description-term">用户昵称{{orderDatalist.realName}}</div>
<div class="description-term">用户昵称{{orderDatalist.nikeName}}</div>
<div class="description-term">绑定电话{{orderDatalist.phone ? orderDatalist.phone : '无'}}</div>
</div>
<el-divider></el-divider>
@@ -29,10 +29,12 @@
<div class="description-term">支付邮费{{orderDatalist.payPostage}}</div>
<div class="description-term">优惠券金额{{orderDatalist.couponPrice}}</div>
<div class="description-term">实际支付{{orderDatalist.payPrice}}</div>
<div class="description-term">抵扣金额{{orderDatalist.deductionPrice}}</div>
<div class="description-term fontColor3" v-if="orderDatalist.refundPrice">退款金额{{orderDatalist.refundPrice}}</div>
<div class="description-term" v-if="orderDatalist.useIntegral">使用积分{{orderDatalist.useIntegral}}</div>
<div class="description-term" v-if="orderDatalist.backIntegral">退回积分{{orderDatalist.backIntegral}}</div>
<div class="description-term">创建时间{{orderDatalist.createTime}}</div>
<div class="description-term" v-if="orderDatalist.refundReasonTime">退款时间{{orderDatalist.refundReasonTime}}</div>
<div class="description-term">支付方式{{orderDatalist.payTypeStr}}</div>
<div class="description-term">推广人{{orderDatalist.spreadName | filterEmpty}}</div>
<div class="description-term" v-if="orderDatalist.shippingType === 2 && orderDatalist.statusStr.key === 'notShipped'">门店名称{{orderDatalist.storeName}}</div>
@@ -51,7 +53,9 @@
<div class="title">物流信息</div>
<div class="acea-row">
<div class="description-term">快递公司{{orderDatalist.deliveryName}}</div>
<div class="description-term">快递单号{{orderDatalist.deliveryId}}<el-button type="primary" size="mini" @click="openLogistics" style="margin-left: 5px">物流查询</el-button></div>
<div class="description-term">快递单号{{orderDatalist.deliveryId}}
<el-button type="primary" size="mini" @click="openLogistics" style="margin-left: 5px" v-hasPermi="['admin:order:logistics:info']">物流查询</el-button>
</div>
</div>
</template>
<template v-if="orderDatalist.deliveryType === 'send'">
@@ -193,8 +197,8 @@ export default {
}
.title {
margin-bottom: 10px;
color: #17233d;
margin-bottom: 14px;
color: #303133;
font-weight: 500;
font-size: 14px;
}
@@ -206,6 +210,7 @@ export default {
line-height: 20px;
width: 50%;
font-size: 12px;
color: #606266;
}
/deep/ .el-divider--horizontal {
margin: 12px 0 !important;

View File

@@ -12,7 +12,7 @@
<el-form-item label="发货类型:" prop="expressId">
<el-radio-group v-model="formItem.expressRecordType" @change="changeRadio(formItem.expressRecordType)">
<el-radio label="1">手动填写</el-radio>
<el-radio label="2">电子面单打印</el-radio>
<el-radio label="2" v-if="checkPermi(['admin:order:sheet:info'])">电子面单打印</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="快递公司:" prop="expressCode">
@@ -67,10 +67,16 @@
<el-input v-model="formItem.deliveryTel" placeholder="请输入送货人电话" style="width:80%;"></el-input>
</el-form-item>
</div>
<div>
<el-form-item label="" >
<div style="color:#CECECE;">顺丰请输入单号收件人或寄件人手机号后四位</div>
<div style="color:#CECECE;">例如SF000000000000:3941</div>
</el-form-item>
</div>
</el-form>
<div slot="footer">
<el-button size="mini" type="primary" @click="putSend('formItem')">提交</el-button>
<el-button size="mini" @click="cancel('formItem')">取消</el-button>
<el-button type="primary" @click="putSend('formItem')">提交</el-button>
<el-button @click="cancel('formItem')">取消</el-button>
</div>
</el-dialog>
</template>
@@ -78,7 +84,8 @@
<script>
import {orderSendApi, sheetInfoApi} from '@/api/order'
import {expressAllApi, exportTempApi} from '@/api/sms'
import { checkPermi } from "@/utils/permission"; // 权限判断函数
import {Debounce} from '@/utils/validate'
const validatePhone = (rule, value, callback) => {
if (!value) {
return callback(new Error('请填写手机号'));
@@ -146,6 +153,7 @@
mounted() {
},
methods: {
checkPermi,
// 默认信息
sheetInfo() {
sheetInfoApi().then(async res => {
@@ -191,7 +199,7 @@
})
},
// 提交
putSend(name) {
putSend:Debounce(function(name) {
this.formItem.orderNo = this.orderId;
this.$refs[name].validate((valid) => {
if (valid) {
@@ -205,7 +213,7 @@
this.$message.error('请填写信息');
}
})
},
}),
handleClose() {
this.cancel('formItem');
},

View File

@@ -11,7 +11,7 @@
</el-form-item>
</el-form>
<div slot="footer">
<el-button size="mini" type="primary" @click="putSend('formItem')">提交</el-button>
<el-button size="mini" type="primary" @click="putSend('formItem')" v-hasPermi="['admin:order:video:send']">提交</el-button>
<el-button size="mini" @click="cancel('formItem')">取消</el-button>
</div>
</el-dialog>
@@ -19,6 +19,7 @@
<script>
import {videoSendApi, sheetInfoApi, companyGetListApi} from '@/api/order'
import {Debounce} from '@/utils/validate'
const validatePhone = (rule, value, callback) => {
if (!value) {
return callback(new Error('请填写手机号'));
@@ -67,7 +68,7 @@
})
},
// 提交
putSend(name) {
putSend:Debounce(function(name) {
this.formItem.orderNo = this.orderId;
this.$refs[name].validate((valid) => {
if (valid) {
@@ -81,7 +82,7 @@
this.$message.error('请填写信息');
}
})
},
}),
handleClose() {
this.cancel('formItem');
},