<template> <div class="app-container"> <el-card class="box-card"> <div slot="header" class="clearfix"> <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="85px" class="queryFormInline" size="small"> <el-form-item label="付款状态" prop="payStatus"> <el-select v-model="queryParams.payStatus" placeholder="付款状态" size="small"> <el-option v-for="item in payOptions" :key="item.value" :label="item.label" :value="item.value"></el-option> </el-select> </el-form-item> <el-form-item label="发货状态" prop="goodsStatus"> <el-select v-model="queryParams.goodsStatus" placeholder="发货状态" size="small"> <el-option v-for="item in goodsOptions" :key="item.value" :label="item.label" :value="item.value"></el-option> </el-select> </el-form-item> <el-form-item label="订单状态" prop="status"> <el-select v-model="queryParams.status" placeholder="订单状态" size="small"> <el-option v-for="item in orderOptions" :key="item.value" :label="item.label" :value="item.value"></el-option> </el-select> </el-form-item> <el-form-item label="商品名字" prop="GoodsName"> <el-input v-model="queryParams.GoodsName" placeholder="请输商品名字" clearable size="small" @keyup.enter.native="handleQuery" /> </el-form-item> <el-form-item label="订单号" prop="order_sn"> <el-input v-model="queryParams.order_sn" placeholder="请输订单号" clearable size="small" @keyup.enter.native="handleQuery" /> </el-form-item> <el-form-item label="下单时间" prop="addTimeInterval"> <el-date-picker size="small" v-model="queryParams.addTimeInterval" type="daterange" align="left" unlink-panels range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="pickerOptions" ></el-date-picker> </el-form-item> <el-form-item label="收货人名字" prop="shipname"> <el-input v-model="queryParams.shipname" placeholder="请输收货人名字" clearable size="small" @keyup.enter.native="handleQuery" /> </el-form-item> <el-form-item label="手机号" prop="Tel"> <el-input v-model="queryParams.Tel" placeholder="请输手机号" clearable size="small" @keyup.enter.native="handleQuery" /> </el-form-item> <el-form-item> <el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button> <el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button> <el-button type="warning" plain icon="el-icon-download" @click="handleExport">导出订单</el-button> <el-button type="primary" plain icon="el-icon-position" @click="handleDelivery">批量发货</el-button> </el-form-item> </el-form> </div> <el-table v-loading="loading" :data="orderList" :height="tableHeight" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="55" align="center"/> <el-table-column label="商品名称" align="center" width="200"> <template slot-scope="scope"> <div style="display: flex;justify-content: space-around;flex-direction: row;"> <el-image v-if="scope.row.Img!=''" style="width: 60px; height: 50px" :src="scope.row.Img" fit="fill" ></el-image> <span>{{ scope.row.GoodsName}}</span> </div> </template> </el-table-column> <el-table-column label="订单号" align="center" prop="order_sn"/> <el-table-column label="商品ID" align="center" prop="GoodsId"/> <el-table-column label="规格" align="center" prop="SpecDes"/> <el-table-column label="数量" align="center" prop="Quantity"/> <el-table-column label="订单金额" align="center" prop="Money"/> <el-table-column label="结算价格" align="center" prop="SellerMoney"/> <!-- <el-table-column label="来源" align="center">--> <!-- <template slot-scope="scope">--> <!-- <p v-if="scope.row.Pt==0">供应链中台</p>--> <!-- </template>--> <!-- </el-table-column>--> <!--<el-table-column label="收货人姓名" align="center" prop=""/>--> <el-table-column label="收货人信息" align="center" width="300"> <template slot-scope="scope"> <div style="width:80%;margin:0 auto; text-align: left;"> <span ><i class="el-icon-user"></i> {{scope.row.Shipname}}</span> <br/> <span ><i class="el-icon-phone-outline"></i> {{scope.row.Tel}}</span> <br/> <i class="el-icon-location-information"></i> {{scope.row.Province}} {{scope.row.City}} {{scope.row.Area}} {{scope.row.Town}} {{scope.row.Address}} </div> </template> </el-table-column> <el-table-column label="付款时间" align="center" prop="Paytime"/> <el-table-column label="确认收货" align="center" prop="ConfirmTime"/> <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <template slot-scope="scope"> <el-button v-if="scope.row.PayStatus==1 && scope.row.GoodsStatus == 0 || scope.row.GoodsStatus == 3" size="mini" type="text" @click="fahuo(scope.row)" >去发货 </el-button> <el-divider direction="vertical" v-if="scope.row.PayStatus==1 && scope.row.GoodsStatus == 0 || scope.row.GoodsStatus == 3" ></el-divider> <el-button v-else-if="scope.row.PayStatus==1 && scope.row.GoodsStatus == 1 || scope.row.GoodsStatus == 2 && scope.row.DeliverNo" size="mini" type="text" @click="handleWl(scope.row)" v-loading="loading" >物流 </el-button> <el-divider direction="vertical" v-else-if="scope.row.PayStatus==1 && scope.row.GoodsStatus == 1 || scope.row.GoodsStatus == 2 && scope.row.DeliverNo" ></el-divider> <el-button size="mini" type="text" @click="handleUpdate(scope.row)" >详情 </el-button> </template> </el-table-column> </el-table> <pagination v-show="total>0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" /> <!-- 详情 --> <el-dialog :title="title" :visible.sync="open" width="70%" append-to-body class="order-details" :close-on-click-modal="false"> <el-col :span="24" class="card-box" v-loading="loading"> <el-card> <div slot="header"> <span>订单信息</span> </div> <div class="el-table el-table--enable-row-hover el-table--medium"> <table cellspacing="0" style="width: 100%;"> <tbody> <tr> <td> <div class="cell">订单编号</div> </td> <td> <div class="cell" v-if="form.order_sn">{{form.order_sn}}</div> </td> <td> <div class="cell">第三方订单号</div> </td> <td> <div class="cell" v-if="form.tx_sn">{{form.tx_sn}}</div> </td> <td> <div class="cell">父订单号</div> </td> <td> <div class="cell" v-if="form.parent_order_sn">{{form.parent_order_sn}}</div> </td> </tr> <tr> <td> <div class="cell">商品总价格</div> </td> <td> <div class="cell" v-if="form.SellerMoney">{{form.SellerMoney}}</div> </td> <td> <div class="cell">商品实付价格</div> </td> <td> <div class="cell" v-if="form.Money">{{form.Money}}</div> </td> <td> <div class="cell">数量</div> </td> <td> <div class="cell" v-if="form.Quantity">{{form.Quantity}}</div> </td> </tr> <tr> <td> <div class="cell">下单时间</div> </td> <td> <div class="cell" v-if="form.Addtime">{{form.Addtime}}</div> </td> <td> <div class="cell">付款时间</div> </td> <td> <div class="cell" v-if="form.Paytime">{{form.Paytime}}</div> </td> </tr> </tbody> </table> </div> </el-card> </el-col> <el-col :span="24" class="card-box" v-loading="loading"> <el-card> <div slot="header"> <span>商品信息</span> </div> <div class="el-table el-table--enable-row-hover el-table--medium"> <table cellspacing="0" style="width: 100%;"> <tbody> <tr> <td> <div class="cell">商品图</div> </td> <td> <div class="cell" v-if="form.Img"><img :src="form.Img" alt="" width="320" height="198"></div> </td> <td> <div class="cell">商品ID</div> </td> <td> <div class="cell" v-if="form.GoodsId">{{form.GoodsId}}</div> </td> </tr> <tr> <td> <div class="cell">商品名</div> </td> <td> <div class="cell" v-if="form.GoodsName">{{form.GoodsName}}</div> </td> <td> <div class="cell">商品规格</div> </td> <td> <div class="cell" v-if="form.SpecDes">{{form.SpecDes}}</div> </td> </tr> </tbody> </table> </div> </el-card> </el-col> <!--物流信息--> <el-col :span="24" class="card-box" v-loading="loading"> <el-card> <div slot="header"> <span>物流信息</span> </div> <div class="el-table el-table--enable-row-hover el-table--medium"> <table cellspacing="0" style="width: 100%;"> <tbody> <tr> <td> <div class="cell">收货人姓名</div> </td> <td> <div class="cell" v-if="form.Shipname">{{form.Shipname}}</div> </td> <td> <div class="cell">收货人电话</div> </td> <td> <div class="cell" v-if="form.Tel">{{form.Tel}}</div> </td> <td> <div class="cell">收货人地址</div> </td> <td> <div class="cell" v-if="form.Address">{{form.Address}}</div> </td> </tr> <tr> <td> <div class="cell">快递公司</div> </td> <td> <div class="cell" v-if="form.DeliverName">{{form.DeliverName}}</div> </td> <td> <div class="cell">快递单号</div> </td> <td> <div class="cell" v-if="form.DeliverNo">{{form.DeliverNo}}</div> </td> <td> <div class="cell">发货时间</div> </td> <td> <div class="cell" v-if="form.Delivertime">{{form.Delivertime}}</div> </td> </tr> <tr> <td> <div class="cell">运费</div> </td> <td> <div class="cell" v-if="form.Freight">{{form.Freight}}</div> </td> <td> <div class="cell">查看物流信息</div> </td> <td> <div class="cell" v-if="form.DeliverNo"> <el-button size="big" type="text" @click="handleWl(form)">点击查看</el-button> </div> <div class="cell" v-else> <el-button size="big" type="text" @click="fahuo(form)">去发货</el-button> </div> </td> </tr> </tbody> </table> </div> </el-card> </el-col> <el-col :span="24" class="card-box" v-loading="loading"> <el-card> <div slot="header"> <span>其他</span> </div> <div class="el-table el-table--enable-row-hover el-table--medium"> <table cellspacing="0" style="width: 100%;"> <tbody> <tr> <td> <div class="cell">售后时长</div> </td> <td> <div class="cell" v-if="form.AftersaleTime">{{form.AftersaleTime}}</div> </td> <td> <div class="cell">售后过期时间</div> </td> <td> <div class="cell" v-if="form.AfterSaleOverTime">{{form.AfterSaleOverTime}}</div> </td> </tr> <tr> <td> <div class="cell">备注</div> </td> <td> <div class="cell" v-if="form.Remark">{{form.Remark}}</div> </td> <td> <div class="cell">用户备注</div> </td> <td> <div class="cell" v-if="form.UserRemark">{{form.UserRemark}}</div> </td> </tr> </tbody> </table> </div> </el-card> </el-col> </el-form> <div slot="footer" class="dialog-footer"> <el-button @click="cancel">取 消</el-button> </div> </el-dialog> <!-- 去发货 --> <el-dialog :title="title2" :visible.sync="open2" width="60%" append-to-body v-loading="loading" style="height: 40%"> <el-form :model="sendGoods" ref="sendGoods" label-width="100px;"> <el-row> <el-col :span="16" :offset="3"> <el-form-item label="快递公司" prop="deliverName"> <el-select v-model="sendGoods.deliverName" filterable clearable placeholder="请选择快递公司" @change="selectValue" style="width:70%"> <el-option v-for="item in expressList" :key="item.value" :label="item.label" size="small" :value="item.value"></el-option> </el-select> </el-form-item> </el-col> </el-row> <el-row> <el-col :span="16" :offset="3"> <el-form-item label="快递单号" prop="deliverNo"> <el-input v-model="sendGoods.deliverNo" placeholder="请输快递单号" clearable size="small" style="width:70%" /> </el-form-item> </el-col> </el-row> <el-row :span="24"> <el-col :span="2" :offset="21"> <el-form-item> <el-button type="primary" @click="submitForm()">提 交</el-button> </el-form-item> </el-col> </el-row> </el-form> </el-dialog> <!-- 物流信息 --> <el-dialog :title="title3" :visible.sync="open3" width="60%" append-to-body v-loading="loading"> <el-timeline :reverse="reverse" style="padding: 10px 60px;"> <el-timeline-item v-loading="loading" v-for="(activity, index) in expressInfo" :key="index" :timestamp="activity.time"> {{activity.context}} </el-timeline-item> </el-timeline> </el-dialog> </el-card> <!-- 批量发货 --> <el-dialog title="批量发货流程" :visible.sync="isDeliveryOpen" width="60%" center> <el-steps :active="3" align-center style="width:95%;margin: 0 auto;"> <el-step title="导出发货Excel表单" description=""> <template slot="icon"> <img style="width: 30px;" src="../../../assets/image/dev1.png"> </template> </el-step> <el-step title="按模板填写快递信息" description=""> <template slot="icon"> <img style="width: 30px;" src="../../../assets/image/dev2.png"> </template> </el-step> <el-step title="上传发货单模板并提交" description=""> <template slot="icon"> <img style="width: 30px;" src="../../../assets/image/dev3.png"> </template> </el-step> </el-steps> <div class="delivery-data-con"> <el-upload action="" class="upload-demo" :auto-upload="false" :limit = '1' accept="*/*" :on-change = 'importExcel' :on-remove = 'removeDevExcel' ref="upload" ><el-button size="small" type="primary" >上传批量发货Excel表单</el-button> <!-- <i slot="tip" class="el-upload__tip el-icon-info">请选取文本文件</i>--> </el-upload> <!-- <el-upload--> <!-- class="upload-demo"--> <!-- action="http://127.0.0.1:20001/Administration/MediaApiLhUploadHandler"--> <!-- :on-preview="handlePreview"--> <!-- :on-remove="handleRemove"--> <!-- :before-remove="beforeRemove"--> <!-- multiple--> <!-- :limit="1"--> <!-- :on-exceed="handleExceed"--> <!-- :file-list="fileList">--> <!-- <el-button size="small" type="primary" >上传批量发货Excel表单</el-button>--> <!--<!– <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>–>--> <!-- </el-upload>--> <!-- <div class="submit-dev-form">--> <!-- <el-button type="primary">上传批量发货Excel表单</el-button>--> <!-- </div>--> <!-- <div class="submit-dev-excel"></div>--> </div> <div class="delivery-tips-con"> <p style="text-align: center">常见问题</p> <p>1、批量发货规则</p> <p>必须正确填写了“快递公司 快递单号”才会导入并更改订单状态为已发货!</p> <p>2、如何获取一个批量发货的excel文件?</p> <p>在商户后台左侧菜单的 “订单中心” 》“订单列表”里面可以将订单导出为Excel格式的文件,您可以在这里自由导出订单</p> <p>3、导出excel文件后,批量发货需要输入什么信息?</p> <p>在我们的导出的excel文件中,打开里面有“快递单号 快递公司”。 您可以在将正确的快递发货单号,快递公司填入对应的列里面,和对应的订单号一对应。然后保存提交,就可以用于批量发货了</p> </div> <span slot="footer" class="dialog-footer"> <el-button @click="cancelDelivery">取 消</el-button> <el-button type="primary" @click="subDelivery">确 定</el-button> </span> </el-dialog> </div> </template> <script> import XLSX from "xlsx"; import {listOrder, getOrder, sendOrder, getExpressInfo, updateOrder, getExpressList,exportOrder,deliveryOrder} from '@/api/module/order' import {dateFormat} from '@/utils' export default { name: "order", data() { return { pickerOptions: { shortcuts: [{ text: '最近一周', onClick(picker) { const end = new Date(); const start = new Date(); start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); picker.$emit('pick', [start, end]); } }, { text: '最近一个月', onClick(picker) { const end = new Date(); const start = new Date(); start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); picker.$emit('pick', [start, end]); } }, { text: '最近三个月', onClick(picker) { const end = new Date(); const start = new Date(); start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); picker.$emit('pick', [start, end]); } }] }, //------------------- fullHeight: 0, tableHeight: 0, fullscreenLoading: false, // 时间线正序 reverse: false, // 遮罩层 loading: false, // 选中数组 ids: [], // 非单个禁用 single: true, // 非多个禁用 multiple: true, // 显示搜索条件 showSearch: true, // 总条数 total: 0, // 折扣金额表格数据 orderList: [], // 弹出层标题 title: "", // 是否显示弹出层 open: false, // 弹出层标题2 title2: "", // 是否显示弹出层2 open2: false, // 是否显示弹出层 open3: false, isDeliveryOpen: false, // 批量发货对话框 // 弹出层标题2 title3: "", //快递公司 expressList: [], //商品状态 goodsOptions: [ {label: "全部状态", value: -1}, {label: "未发货", value: 0}, {label: "已发货", value: 1}, {label: "已收货", value: 2}, {label: "配货中", value: 3}, {label: "拒收", value: 4}, ], //支付状态 付款状态:0:未付款,1:已付款,2申请退款,3,退款中,4已退款5退款申请失败(申请后20天内未处理) payOptions: [ {label: "全部状态", value: -1}, {label: "未付款", value: 0}, {label: "已付款", value: 1}, {label: "申请退款", value: 2}, {label: "退款中", value: 3}, {label: "已退款", value: 4}, {label: "退款申请失败", value: 5}, ], //订单状态:0:未处理,1,已作废,2,待退货,3,已退货,4,异常订单,10已处理 orderOptions: [ {label: "全部状态", value: -1}, {label: "未处理", value: 0}, {label: "已作废", value: 1}, {label: "待退货", value: 2}, {label: "已退货", value: 3}, {label: "异常订单", value: 4}, {label: "已处理", value: 10}, ], // 查询参数 queryParams: { pageNum: 1, pageSize: 10, payStatus: null, goodsStatus: null, status: null, GoodsName: null, order_sn: null, shipname: null, Tel:null, beginTime: 0, endTime: 0, addTimeInterval: [] }, sendGoods: { orderSn: "", deliverNo: "", deliverName: "", deliverCode: "", }, expressInfo: [], // 表单参数 form: {}, jsonData: [], excelList: [] }; }, created() { this.getList(); this.getExpress(); this.$nextTick(() => { this.fullHeight = document.getElementsByClassName('box-card')[0].clientHeight }) }, watch: { fullHeight(val) { let formHeight = document.getElementsByClassName('clearfix')[0].clientHeight this.tableHeight = val - formHeight - 110 }, // 保证日期初始化格式 'queryParams.addTimeInterval'() { // select组件,clear的时候,将addTimeInterval的值,初始化为null,判断当其值为null时,赋值为数组 if(!this.queryParams.addTimeInterval && typeof(this.queryParams.addTimeInterval) !== "undefined") { this.queryParams.addTimeInterval = []; this.queryParams.beginTime = 0; this.queryParams.endTime = 0; } } }, methods: { // 获取所有物流 getExpress() { getExpressList().then(res => { if(res.code === 1 && res.data) { this.expressList = res.data.expressLists; }else { this.$message({message: '数据出错啦!',type:'error'}); } }); }, // 选择的物流数据 selectValue(value) { this.sendGoods.deliverCode = value; }, //物流 handleWl: function (row) { this.loading = true; this.sendGoods.deliverCode = row.DeliverCode; this.sendGoods.deliverName = row.DeliverName; this.sendGoods.deliverNo = row.DeliverNo; this.sendGoods.orderSn = row.order_sn; getExpressInfo(this.sendGoods).then(res => { this.loading = false; if(res.code === 1) { this.open3 = true; this.title3 = "物流信息"; this.expressInfo = res.data.data; }else { let msg = res.msg || '数据出错了'; this.$message({type: 'error',message: msg}); } }); }, //发货 fahuo: function (row) { const order_sn = row.order_sn this.sendGoods.orderSn = order_sn this.open2 = true; this.title2 = "去发货"; }, // 批量发货 handleDelivery(){ this.isDeliveryOpen = true; }, // 上传批量发货Excel表单前 importExcel(file, fileList) { //this.excelList = fileList; this.excelList = []; let _this = this; _this.file2Xce(file).then(item => { if (item && item.length > 0) { // xlsxJson就是解析出来的json数据,数据格式如下 // [{sheetName: sheet1, sheet: sheetData }] if (item[0] && item[0].sheet && item[0].sheet.length) { //_this.tableData = item[0].sheet //把数据塞到表格预览 console.log(743,item[0].sheet); this.excelList = item[0].sheet } } }) .catch(error => { loading.close(); }) }, /** * 解析文件 * @param {Object} file */ file2Xce(file) { return new Promise(function(resolve, reject) { const reader = new FileReader(); reader.onload = function(e) { const data = e.target.result; this.wb = XLSX.read(data, { type: "binary" }); const result = []; this.wb.SheetNames.forEach(sheetName => { result.push({ sheetName: sheetName, sheet: XLSX.utils.sheet_to_json(this.wb.Sheets[sheetName]) }); }); resolve(result); }; reader.readAsBinaryString(file.raw); }); }, removeDevExcel(file, fileList) { this.excelList = []; //console.log(781,this.excelList); }, // --------- // tableToExcel(list){ // // 列标题,逗号隔开,每一个逗号就是隔开一个单元格 // let title = `订单编号,第三方订单号,goodsFee,goodsStatus,orderStatus,goodsId,name,price,skuName\n`; // //增加\t为了不让表格显示科学计数法或者其他格式 // for(let i = 0 ; i < list.length ; i++ ){ // for(let item in list[i]){ // title += `${list[i][item] + '\t'},`; // } // title += '\n'; // } // //encodeURIComponent解决中文乱码 // let uri = 'data:text/csv;charset=utf-8,\ufeff' + encodeURIComponent(title); // //通过创建a标签实现 // var link = document.createElement("a"); // link.href = uri; // //对下载的文件命名 // link.download = "json数据表.csv"; // document.body.appendChild(link); // link.click(); // document.body.removeChild(link); // } , // -------------- // 订单导出 handleExport(row) { const rowIds = this.ids; let query = {page: 1, limit: 100} exportOrder(query).then(res => { if(res.code === 1) { const link = document.createElement('a'); link.href = res.data; //link.download = '订单.xls'; //下载的文件名 link.style.display = 'none'; document.body.appendChild(link); link.click(); document.body.removeChild(link); } }); // return // this.$confirm('是否确认导出所选择的订单的数据?','警告',{ // confirmButtonText: '确定', // cancelButtonText: '取消', // type: 'warning' // }).then(async()=> { // this.loading = true; // let delResult = await exportOrder(ids); // this.loading = false; // if(delResult.code === 1) { // this.$message({type: 'success',message: delResult.msg}); // } // if(delResult.code === 0) { // this.$message({type: 'error',message: delResult.msg}); // } // }).catch(()=> {}); }, dateIfAddZero: function (time) { return time < 10 ? '0' + time : time }, /** 查询折扣金额列表 */ getList() { this.loading = true; listOrder(this.queryParams).then(response => { this.from = response.data.list; this.orderList = response.data.list; this.total = response.data.total; this.loading = false; }); }, // 取消按钮 cancel() { this.open = false; this.reset(); }, // 表单重置 reset() { this.form = {}; this.resetForm("form"); }, /** 搜索按钮操作 */ handleQuery() { if(this.queryParams.addTimeInterval.length === 2) { this.queryParams.beginTime = new Date(this.queryParams.addTimeInterval[0]).getTime() / 1000; this.queryParams.endTime = new Date(this.queryParams.addTimeInterval[1]).getTime() / 1000; } this.queryParams.pageNum = 1; this.getList(); }, /** 重置按钮操作 */ resetQuery() { this.resetForm("queryForm"); this.queryParams.beginTime = 0; this.queryParams.endTime = 0; this.handleQuery(); }, // 多选框选中数据 handleSelectionChange(selection) { this.ids = selection.map(item => item.order_sn) this.single = selection.length !== 1 this.multiple = !selection.length }, /** 详情按钮操作 */ handleUpdate(row) { this.reset(); this.loading = true const order_sn = row.order_sn || this.ids getOrder(order_sn).then(response => { //console.log("请求原始数据:",response); this.loading = false this.form = response.data.parms; this.form.Delivertime = dateFormat(response.data.parms.Delivertime * 1000, "Y-m-d H:i:s"); this.form.Addtime = dateFormat(response.data.parms.Addtime * 1000, "Y-m-d H:i:s"); this.expressList = response.data.expressLists; this.open = true; this.title = "订单详情"; }); }, /** 发货按钮 */ submitForm() { this.$refs["sendGoods"].validate(valid => { if (valid) { sendOrder(this.sendGoods).then(response => { if (response.code == 1) { this.msgSuccess("发货成功"); this.open2 = false; this.open = false; this.getList(); } }); } }); }, /** 删除按钮操作 */ handleDelete(row) { const order_sns = row.order_sn || this.ids; this.$confirm('是否确认删除折扣金额编号为"' + order_sns + '"的数据项?', "警告", { confirmButtonText: "确定", cancelButtonText: "取消", type: "warning" }).then(function () { return delOrder(order_sns); }).then(() => { this.getList(); this.msgSuccess("删除成功"); }).catch(function () { }); }, // 取消批量发货 cancelDelivery() { this.isDeliveryOpen = false; this.excelList = []; }, // 提交导入数据 subDelivery() { if(this.excelList.length === 0) { this.$message({type:'warning',message:'请先上传填写好的表格数据'}); return } if(this.excelList.length > 0 && this.excelList[0].id && this.excelList[0].express_name && this.excelList[0].express_sn && this.excelList[0].express_code) { deliveryOrder(this.excelList).then(res=> { //console.log(954,res) if(res.code === 1) { this.isDeliveryOpen = false; this.$message({type:'success',message:'批量发货成功'}); this.getList(); }else { let msg = res.message || '批量发货失败' this.$message({type:'error',message:msg}); } }); }else { this.$message({type:'error',message:'导入表格数据有误'}); } } } //methods结束 }; </script> <style scoped lang="scss" type="text/stylus"> .order-details{ ::v-deep .el-dialog { height: 80%; overflow: hidden; } ::v-deep .el-dialog__body { height: calc(100% - 120px); overflow-x: hidden; overflow-y: scroll; } } ::v-deep .queryFormInline { .el-form-item:nth-child(1) { margin-bottom: 10px ; } } .delivery-tips-con,.delivery-data-con { width: 80%; margin: 5px auto; } .delivery-data-con { height: 100px; margin: 40px auto; } .upload-demo { text-align : center; } //.submit-dev-form { // text-align : center; //} //.submit-dev-excel { // overflow-x:hidden; // overflow-y:scroll; //} .delivery-tips-con { font-size: 12px; } ::v-deep .el-step__title.is-finish { color: #333 } </style>