<template>
|
<div 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" :auth-nodes="authNodes" :data-list-selections.sync="dataListSelections">
|
</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">
|
</yrt-editor>
|
<!-- 修改状态对话框 -->
|
<el-dialog :visible.sync="portDialogVisible" width="500px" title="修改状态">
|
<el-form :model="formData">
|
<el-form-item label="运单状态">
|
<el-select v-model="formData.orderStatus" filterable clearable placeholder="请选择运单状态">
|
<el-option v-for="(item, index) in orderStatusList" :key="index" :label="item.label" :value="item.label">
|
</el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="任务状态">
|
<el-select v-model="formData.taskStatus" filterable clearable placeholder="请选择任务状态">
|
<el-option v-for="(item, index) in TaskStatusList" :key="index" :label="item.label" :value="item.label">
|
</el-option>
|
</el-select>
|
</el-form-item>
|
</el-form>
|
<div slot="footer" class="dialog-footer">
|
<el-button @click="portDialogVisible = false">取 消</el-button>
|
<el-button type="primary" @click="saveUpdatePort">确 定</el-button>
|
</div>
|
</el-dialog>
|
</div>
|
</template>
|
<script>
|
import baseLayout from "@/components/common/base-layout.vue";
|
|
export default {
|
name: "tms-way-routertask",
|
components: {},
|
mixins: [baseLayout],
|
data() {
|
return {
|
// 修改状态对话框数据集合
|
formData: {
|
orderStatus: "航空已发运",
|
taskStatus: "执行完成"
|
},
|
// 显示修改状态对话框
|
portDialogVisible: false,
|
// 运单状态下拉框数据列表
|
orderStatusList: [],
|
// 运单状态下拉框数据列表
|
TaskStatusList: []
|
};
|
},
|
methods: {
|
// 列表页面按钮点击事件
|
buttonClick(authNode) {
|
switch (authNode) {
|
case "router":
|
// 获取路由
|
this.getRouter();
|
break;
|
case "editState":
|
// 修改状态
|
this.showUpdatePortDialog();
|
break;
|
}
|
},
|
// 修改状态弹出对话框
|
showUpdatePortDialog() {
|
const selectIDs = this.dataListSelections.map((item, index, Array) => {
|
return item.wayBillCode;
|
});
|
if (!selectIDs) {
|
this.$message.error("请至少选择一行数据!");
|
return false;
|
}
|
this.portDialogVisible = true;
|
this.orderStatusList = this.dataList.getDropDownData(934);
|
this.TaskStatusList = this.dataList.getDropDownData(958);
|
},
|
// 保存修改状态
|
saveUpdatePort() {
|
const selectIDs = this.dataListSelections.map((item, index, Array) => {
|
return item.wayBillCode;
|
});
|
if (!this.formData.orderStatus) {
|
this.$message.error("请选择快递类型!");
|
return;
|
}
|
|
if (!this.formData.taskStatus) {
|
this.$message.error("请选择快递!");
|
return;
|
}
|
var url = "/api/tms/routerTask/editStatus";
|
const ref = this.dataList;
|
const params = {
|
wayBillCodes: selectIDs,
|
orderStatus: this.formData.orderStatus,
|
taskStatus: this.formData.taskStatus
|
};
|
var callback = res => {
|
this.common.showMsg(res);
|
if (res.result) {
|
ref.loadData();
|
this.portDialogVisible = false;
|
}
|
};
|
this.common.ajax(url, params, callback, true);
|
},
|
// 获取路由
|
getRouter() {
|
const selectIDs = this.dataListSelections.map((item, index, Array) => {
|
return item.wayBillCode;
|
});
|
if (!selectIDs) {
|
this.$message.error("请至少选择一行数据!");
|
return false;
|
}
|
|
var url = "/api/tms/routerTask/getRouter";
|
const ref = this.dataList;
|
const params = {
|
wayBillCodes: selectIDs,
|
orderStatus: this.formData.orderStatus,
|
taskStatus: this.formData.taskStatus
|
};
|
var callback = res => {
|
this.common.showMsg(res);
|
if (res.result) {
|
ref.loadData();
|
}
|
};
|
this.common.ajax(url, params, callback, true);
|
}
|
}
|
};
|
</script>
|
|
<style lang="scss" scoped>
|
.page-list-container {
|
min-height: calc(100vh - 110px);
|
overflow: hidden;
|
position: relative;
|
}
|
|
@media screen and (max-height: 900px) {
|
.page-list-container {
|
min-height: 600px;
|
}
|
}
|
</style>
|