|
<template>
|
<div ref="container" class="page-list-container">
|
<!--数据Table-->
|
<yrt-data-list :ref="dataListRef" :editor-ref="editorRef" :data-options="dataOptions" :fields.sync="dataListOptions.fields" :buttons="dataListOptions.buttons" :button-click="buttonClick" :data-list-selections.sync="dataListSelections" :auth-nodes="authNodes">
|
</yrt-data-list>
|
|
<!--数据编辑器Editor-->
|
<yrt-editor :ref="editorRef" :data-list-ref="dataListRef" v-bind="editorOptions" :data-options="dataOptions" :action.sync="editorOptions.action" :visible.sync="editorOptions.config.visible" :detail-button-click="detailButtonClick" :auth-nodes="authNodes" @on-edit-load-before="onEditLoadBefore"></yrt-editor>
|
</div>
|
</template>
|
|
<script>
|
import baseLayout from "@/components/common/base-layout.vue";
|
|
export default {
|
name: "vsale-outer-case",
|
components: {},
|
mixins: [baseLayout],
|
data() {
|
return {};
|
},
|
methods: {
|
// 列表页面按钮点击事件
|
buttonClick(authNode) {
|
switch (authNode) {
|
case "getExpresss":
|
// 获得快递单号
|
this.getExpresss();
|
return true;
|
case "printExpress":
|
// 打印物流单
|
this.printExpress();
|
return false;
|
}
|
},
|
// 编辑加载前事件
|
onEditLoadBefore(rowData) {
|
const userInfo = this.common.getUserInfo();
|
// 自定义查询条件
|
this.dataOptions.where = {
|
userProduct_Id: userInfo.userProduct_Id,
|
caseNumber: rowData.caseNumber
|
};
|
},
|
// 获得快递单号
|
getExpresss() {
|
const rows = this.dataListSelections;
|
if (!rows.length) {
|
this.$message.error("至少选择一项!");
|
return;
|
}
|
const doAction = () => {
|
const caseNumbers = rows.map(item => item.caseNumber);
|
const url = "/api/stat/out/vSaleOuterSase/getExpresss";
|
const params = {
|
caseNumbers: caseNumbers
|
};
|
this.common.ajax(url, params, res => {
|
this.common.showMsg(res);
|
if (res.result) {
|
this.dataList.reload();
|
}
|
});
|
};
|
|
this.$confirm("确定要获取快递单号吗?", "获取快递单号", {
|
confirmButtonText: "确定",
|
cancelButtonText: "取消",
|
type: "warning"
|
})
|
.then(() => {
|
doAction();
|
})
|
.catch(() => {
|
this.$message.info("已取消");
|
});
|
},
|
// 打印物流单
|
printExpress() {
|
const caseNumbers = this.dataListSelections.map(item => item.caseNumber);
|
if (!caseNumbers.length) {
|
this.$message.error("至少选择一项!");
|
return;
|
}
|
window.open("/#/print/base2/case/" + caseNumbers.join(","));
|
}
|
}
|
};
|
</script>
|