<template> <el-container> <el-main> <!--面包屑导航区域--> <!-- <el-breadcrumb separator-class="el-icon-arrow-right">--> <!-- <el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item>--> <!-- <el-breadcrumb-item>车辆调度</el-breadcrumb-item>--> <!-- <el-breadcrumb-item>调度记录</el-breadcrumb-item>--> <!-- </el-breadcrumb>--> <el-card style="background-color: #F5F7FA"> <!-- 搜素区域 --> <div> <el-row :gutter="24"> <el-col :span="5"> <el-input v-model="queryInfo.userName" prefix-icon="el-icon-search" placeholder="请输入用户名称" clearable size="small" style="width:180px"></el-input> </el-col> <el-col :span="5"> <el-input v-model="queryInfo.userMobile" prefix-icon="el-icon-search" placeholder="请输入联系方式" clearable size="small" style="width:180px"></el-input> </el-col> <el-col :span="5"> <el-date-picker v-model="queryInfo.gmtCreate" type="date" value-format="yyyy-MM-dd" placeholder="调度创建时间" size="small" style="width:180px"></el-date-picker> </el-col> <el-col :span="5"> <el-date-picker v-model="queryInfo.endTime" type="date" value-format="yyyy-MM-dd" placeholder="调度完成时间" size="small" style="width:180px"></el-date-picker> </el-col> </el-row> <el-row style="margin-top: 8px;"> <el-col :span="5"> <el-select v-model="queryInfo.dispatchType" placeholder="请选择业务类型" size="small" clearable style="width:180px"> <el-option v-for="item in dispatchTypeList" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-col> <el-col :span="5"> <el-select v-model="queryInfo.status" placeholder="记录状态" size="small" clearable style="width:180px;margin-left: 6px"> <el-option v-for="item in statusList" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-col> <el-button type="primary" @click="getDispatchNodeList" size="small" style="margin-left:10px;"> 查询调度记录 </el-button> <el-button type="success" @click="addDispatchNodeFormVisible = true" size="small">添加车辆调度记录 </el-button> </el-row> </div> <!--调度记录列表区域--> <div style="margin-top: 20px;"> <el-table :data="DispatchNoteList" border v-loading="listLoading" :row-class-name="rowStatus" @selection-change="selsChange" element-loading-text="拼命加载中"> <el-table-column type="selection" width="55" :selectable="isSelectable" align="center"></el-table-column> <el-table-column type="index" align="center"></el-table-column> <el-table-column label="用户名称" prop="userName" align="center" width="100"></el-table-column> <el-table-column label="联系方式" prop="userMobile" align="center" width="120"></el-table-column> <el-table-column label="状态" prop="status" align="center" width="120"> <template slot-scope="scope"> <span v-if="scope.row.status ==='1'">完成状态</span> <span v-if="scope.row.status ==='2'">执行状态</span> <span v-if="scope.row.status ==='3'">取消状态</span> <span v-if="scope.row.status ==='4'">待执行状态</span> </template> </el-table-column> <el-table-column label="业务类型" align="center" prop="dispatchType" width="120"> <template slot-scope="scope"> <span v-if="scope.row.dispatchType ==='1'">进站送货</span> <span v-if="scope.row.dispatchType ==='2'">出站提货</span> <span v-if="scope.row.dispatchType ==='3'">货物调拨</span> <span v-if="scope.row.dispatchType ==='4'">货物流转</span> </template> </el-table-column> <el-table-column label="场站位置" align="center" prop="station" width="120"> <template slot-scope="scope"> <span v-if="scope.row.station ==='1'">西货站</span> <span v-if="scope.row.station ==='2'">综保区</span> <span v-if="scope.row.station ==='3'">军投</span> <span v-if="scope.row.station ==='4'">快邮</span> </template> </el-table-column> <el-table-column label="车辆类型" align="center" prop="vehicleType" width="120"> <template slot-scope="scope"> <span v-if="scope.row.vehicleType ==='1'">重型货车</span> <span v-if="scope.row.vehicleType ==='2'">中型货车</span> <span v-if="scope.row.vehicleType ==='3'">轻型货车</span> <span v-if="scope.row.vehicleType ==='4'">微型货车</span> <span v-if="scope.row.vehicleType ==='5'">拖车</span> <span v-if="scope.row.vehicleType ==='6'">叉车</span> </template> </el-table-column> <el-table-column label="车牌号" prop="licensePlateNumber" align="center" width="120"></el-table-column> <el-table-column label="创建时间" prop="gmtCreate" align="center" width="160"></el-table-column> <el-table-column label="开始时间" prop="beginTime" align="center" width="160"></el-table-column> <el-table-column label="完成时间" prop="endTime" align="center" width="160"></el-table-column> <el-table-column label="操作" width="230px" align="center" fixed="right"> <template slot-scope="scope"> <!--编辑按钮--> <el-tooltip effect="dark" content="编辑" placement="top-start" :enterable="false" style="margin-left: 1px;"> <el-button type="success" icon="el-icon-check" size="mini" style="width:97px" @click="showDialogVisible(scope.$index,scope.row)">编辑 </el-button> </el-tooltip> <!--取消调度按钮--> <el-tooltip effect="dark" content="删除" placement="top-start" :enterable="false" style="margin-left: 1px;"> <el-button type="danger" icon="el-icon-delete" size="mini" style="width:97px" :loading="delLoading" :disabled="scope.row.status==='2'" @click.native.prevent="removeDispatchNode(scope.$index,scope.row)">删除 </el-button> </el-tooltip> <!--开始任务--> <el-tooltip effect="dark" content="开始任务" placement="top-start" :enterable="false" style="margin-left: 1px;"> <el-button type="warning" icon="el-icon-star-off" size="mini" style="margin-top: 3px;" :disabled="scope.row.status!=='4' || scope.row.beginTime !==null" :loading="beginLoading" @click="startDispatch(scope.$index,scope.row)">开始任务 </el-button> </el-tooltip> <!-- 结束任务--> <el-tooltip effect="dark" content="结束任务" placement="top-start" :enterable="false" style="margin-left: 1px;"> <el-button type="info" icon="el-icon-message" size="mini" :disabled="scope.row.endTime !==null && scope.row.endTime !==''" :loading="endLoading" @click="completeDispatch(scope.$index,scope.row)">结束任务 </el-button> </el-tooltip> </template> </el-table-column> </el-table> <!-- 分页区域 --> <div style="margin-top: 10px"> <el-row :gutter="24"> <el-col :span="5"> <el-button type="danger" icon="el-icon-delete" @click="batchRemove" :disabled="this.sels.length===0">批量删除 </el-button> </el-col> <el-col :span="10" style="margin-top: 5px"> <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="queryInfo.pageNum" :page-sizes="[10,15,20,50]" :page-size="queryInfo.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="total"> </el-pagination> </el-col> </el-row> </div> </div> </el-card> <!-- 添加车辆调度记录 --> <div> <el-dialog title="添加车辆调度记录" :visible.sync="addDispatchNodeFormVisible" style="margin-top: -50px" width="60%" text-align="center" @close="dispatchDialogClosed"> <el-form :inline="true" :model="addDispatchNodeForm" label-width="120px" status-icon :rules="addDispatchNodeFormRules" ref="addDispatchNodeFormRef" style="background-color: #F5F7FA" align="center"> <br> <el-form-item label="用户名称:" prop="userName"> <el-input v-model="addDispatchNodeForm.userName" style="width:200px" size="small" clearable placeholder="请输入您的用户名称"></el-input> </el-form-item> <el-form-item label="联系方式:" prop="userMobile"> <el-input v-model="addDispatchNodeForm.userMobile" style="width:200px" clearable size="small" placeholder="请输入您的联系方式"></el-input> </el-form-item> <el-form-item label="车辆类型:" prop="vehicleType"> <el-select v-model="addDispatchNodeForm.vehicleType" clearable style="width:200px" size="small" placeholder="请选择车辆类型"> <el-option v-for="item in vehicleTypeList" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item label="车牌号码:" prop="licensePlateNumber"> <el-input v-model="addDispatchNodeForm.licensePlateNumber" clearable style="width:200px;margin-left:0px" size="small" placeholder="请输入车牌号"></el-input> </el-form-item> <el-form-item label="场站位置:" prop="station"> <el-select v-model="addDispatchNodeForm.station" clearable style="width:200px" size="small" placeholder=""> <el-option v-for="item in stationList" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item label="业务类型:" prop="dispatchType"> <el-select v-model="addDispatchNodeForm.dispatchType" clearable style="width:200px" size="small" placeholder=""> <el-option v-for="item in dispatchTypeList" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item label="创建时间:" prop="gmtCreate"> <el-date-picker v-model="addDispatchNodeForm.gmtCreate" clearable type="datetime" value-format="yyyy-MM-dd HH:mm:ss" placeholder="选择日期" size="small" style="width:200px"></el-date-picker> </el-form-item> <el-form-item label="开始时间:" prop="beginTime"> <el-date-picker v-model="addDispatchNodeForm.beginTime" clearable type="datetime" value-format="yyyy-MM-dd HH:mm:ss" placeholder="选择日期" size="small" style="width:200px"></el-date-picker> </el-form-item> <el-form-item label="结束时间:" prop="endTime"> <el-date-picker v-model="addDispatchNodeForm.endTime" type="datetime" value-format="yyyy-MM-dd HH:mm:ss" placeholder="选择日期" size="small" style="width:200px"></el-date-picker> </el-form-item> <el-form-item label="记录状态:" prop="status"> <el-select v-model="addDispatchNodeForm.status" clearable placeholder="记录状态" style="width:200px" size="small"> <el-option v-for="item in statusList" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item label="驾驶人姓名:" prop="driverName"> <el-input v-model="addDispatchNodeForm.driverName" clearable style="width:200px" size="small" placeholder=""></el-input> </el-form-item> <el-form-item label="驾驶人电话:" prop="driverMobile"> <el-input v-model="addDispatchNodeForm.driverMobile" clearable style="width:200px" size="small" placeholder=""></el-input> </el-form-item> </el-form> <div slot="footer" class="dialog-footer" style="text-align: center"> <el-button @click="addDispatchNodeFormVisible = false" size="medium" style="width: 100px">取消 </el-button> <el-button type="primary" @click="addDispatchNote" :loading="addLoading" size="medium" style="width: 100px"> 添加 </el-button> </div> </el-dialog> </div> <!-- 编辑调度记录,对话框 --> <div> <el-dialog style="margin-top: -50px" title="编辑调度记录明细" :visible.sync="viewDialogVisible" text-align="center" width="60%" @close="editDialogClosed"> <el-form :model="editForm" label-width="120px" status-icon :inline="true" style="background-color: #F5F7FA;" :rules="editFormRules" ref="editFormRef"> <div style="margin-left: 40px"> <br> <el-form-item label="用户名称:" prop="userName"> <el-input v-model="editForm.userName" style="width:200px" clearable size="small" placeholder="请输入用户名称"></el-input> </el-form-item> <el-form-item label="联系方式:" prop="userMobile"> <el-input v-model="editForm.userMobile" style="width:200px" clearable size="small" placeholder="请输入您的联系方式"></el-input> </el-form-item> <el-form-item label="车辆类型:" prop="vehicleType"> <el-select v-model="editForm.vehicleType" style="width:200px" clearable size="small" placeholder="请选择车辆类型"> <el-option v-for="item in vehicleTypeList" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item label="车牌号码:" prop="licensePlateNumber"> <el-input v-model="editForm.licensePlateNumber" style="width:200px;margin-left:0px" clearable size="small" placeholder="请输入车牌号"></el-input> </el-form-item> <el-form-item label="场站位置:" prop="station"> <el-select v-model="editForm.station" clearable style="width:200px" size="small" placeholder=""> <el-option v-for="item in stationList" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item label="业务类型:" prop="dispatchType"> <el-select v-model="editForm.dispatchType" clearable style="width:200px" size="small" placeholder=""> <el-option v-for="item in dispatchTypeList" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item label="创建时间:" prop="gmtCreate"> <el-date-picker v-model="editForm.gmtCreate" type="datetime" value-format="yyyy-MM-dd HH:mm:ss" placeholder="选择日期" size="small" style="width:200px"></el-date-picker> </el-form-item> <el-form-item label="开始时间:" prop="beginTime"> <el-date-picker v-model="editForm.beginTime" type="datetime" value-format="yyyy-MM-dd HH:mm:ss" placeholder="选择日期" size="small" style="width:200px"></el-date-picker> </el-form-item> <el-form-item label="结束时间:" prop="endTime"> <el-date-picker v-model="editForm.endTime" type="datetime" value-format="yyyy-MM-dd HH:mm:ss" placeholder="选择日期" size="small" style="width:200px"></el-date-picker> </el-form-item> <el-form-item label="记录状态:" prop="status"> <el-select v-model="editForm.status" placeholder="记录状态" clearable style="width:200px" size="small"> <el-option v-for="item in statusList" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item label="驾驶人姓名:" prop="driverName"> <el-input v-model="editForm.driverName" style="width:200px" clearable size="small" placeholder=""></el-input> </el-form-item> <el-form-item label="驾驶人电话:" prop="driverMobile"> <el-input v-model="editForm.driverMobile" style="width:200px" clearable size="small" placeholder=""></el-input> </el-form-item> <br> </div> </el-form> <!--底部按钮区域--> <span slot="footer" class="dialog-footer"> <el-button style="width: 100px" @click="viewDialogVisible = false">取消</el-button> <el-button type="primary" size="medium" style="width: 100px" :loading="editLoading" @click="editDispatchNote">编辑</el-button> </span> </el-dialog> </div> </el-main> </el-container> </template> <script> import { selectDispatchNoteList, insertDispatchNote, updateDispatchNote, deleteDispatchNote, batchRemoveDispatchNode, startTask, completeTask } from "../../api/dispatch_api"; export default { name: "dispatch_api", created() { this.getDispatchNodeList(); }, data() { //验证手机号的自定义规则 var userMobileValid = (rule, value, callback) => { //验证手机号的正则表达式 const regMobile = /^(0|86|17951)?(13[0-9]|15[0123456789]|17[678]|18[0-9]|14[57])[0-9]{8}$/; if (regMobile.test(value)) { //合法的手机号 return callback(); } callback(new Error('请输入合法的手机号')); }; return { //搜索区域 queryInfo: { //用户姓名 userName: '', //用户联系方式 userMobile: '', //调度时间 gmtCreate: undefined, //完成时间 endTime: undefined, //业务类型 dispatchType: '', //状态 status: '', //当前的页数 pageNum: 1, //当前每页显示多少条数据 pageSize: 10 }, //所有的调度记录列表 DispatchNoteList: [], //添加调度记录,表单 addDispatchNodeForm: { userName: '', userMobile: '', //车辆类型 vehicleType: '2', //车牌号 licensePlateNumber: '', //场站位置 station: '1', //调度业务类型 dispatchType: '1', //记录状态 status: '2', //驾驶人姓名 driverName: '', //驾驶人联系方式 driverMobile: '', //开始时间 gmtCreate: '', //结束时间 endTime: '', }, //编辑记录的表单 editForm: {}, //添加调度记录,表单的验证规则对象 addDispatchNodeFormRules: { userName: [ {required: true, message: '请输入姓名', trigger: ['blur', 'change']}, ], userMobile: [ {required: true, message: '请输入联系方式', trigger: ['blur', 'change']}, {validator: userMobileValid, trigger: 'blur'} ], vehicleType: [ {required: true, message: '请选择车辆类型', trigger: ['blur', 'change']}, ], licensePlateNumber: [ {required: true, message: '请输入车牌号', trigger: ['blur', 'change']}, ], vehicleNumber: [ {required: true, message: '请输入车辆数量', trigger: ['blur', 'change']}, ], station: [ {required: true, message: '请选择场站位置', trigger: ['blur', 'change']}, ], dispatchType: [ {required: true, message: '请选择业务类型', trigger: ['blur', 'change']}, ], gmtCreate: [ {required: true, message: '请选择开始时间', trigger: ['blur', 'change']}, ], // endTime: [ // {required: true, message: '请选择结束时间', trigger: 'blur'}, // ], status: [ {required: true, message: '请选择记录状态', trigger: ['blur', 'change']}, ], }, //编辑调度记录,表单的验证规则对象 editFormRules: { userName: [ {required: true, message: '请输入姓名', trigger: ['blur', 'change']}, ], userMobile: [ {required: true, message: '请输入联系方式', trigger: ['blur', 'change']}, {validator: userMobileValid, trigger: 'blur'} ], vehicleType: [ {required: true, message: '请选择车辆类型', trigger: ['blur', 'change']}, ], licensePlateNumber: [ {required: true, message: '请输入车牌号', trigger: ['blur', 'change']}, ], vehicleNumber: [ {required: true, message: '请输入驾驶人电话', trigger: ['blur', 'change']}, ], station: [ {required: true, message: '请选择场站位置', trigger: ['blur', 'change']}, ], dispatchType: [ {required: true, message: '请选择业务类型', trigger: ['blur', 'change']}, ], // gmtCreate: [ // {required: true, message: '请选择开始时间', trigger: ['blur', 'change']}, // ], // endTime: [ // {required: true, message: '请选择结束时间', trigger: ['blur', 'change']}, // ], status: [ {required: true, message: '请选择记录状态', trigger: ['blur', 'change']}, ], }, //控制添加用户对话框的显示与隐藏 addDispatchNodeFormVisible: false, //控制编辑调度记录明细,对话框的显示与隐藏 viewDialogVisible: false, //记录的总条数 total: 0, /* 批量删除的选中列表 */ sels: [], /* 列表加载 */ listLoading: false, /* 添加加载 */ addLoading: false, /* 编辑加载 */ editLoading: false, /* 删除加载 */ delLoading: false, /* 开始调度加载 */ beginLoading: false, /* 结束调度加载 */ endLoading: false, //业务类型 选项列表 dispatchTypeList: [ { value: '1', label: '进站送货' }, { value: '2', label: '出站提货' }, { value: '3', label: '货物流转' }, { value: '4', label: '货物调拨' } ], //车辆类型,选项列表 vehicleTypeList: [ { value: '1', label: '重型货车' }, { value: '2', label: '中型货车' }, { value: '3', label: '经济货车' }, { value: '4', label: '微型货车' }, { value: '5', label: '拖车' }, { value: '6', label: '叉车' } ], /** * 场站位置,选项列表 */ stationList: [ { value: '1', label: '西货站' }, { value: '2', label: '综保区' }, { value: '3', label: '军投' }, { value: '4', label: '快邮' } ], //记录状态 选项列表 statusList: [ { value: '1', label: '完成状态' }, { value: '2', label: '执行状态' }, { value: '3', label: '取消状态' }, { value: '4', label: "待执行状态" } ], } }, methods: { /** * 管理员端,获取车辆调度记录列表 */ getDispatchNodeList() { //开启加载 this.listLoading = true; selectDispatchNoteList(this.queryInfo).then((response) => { let res = response.data; if (res.code !== '200') { //关闭加载 this.listLoading = false; return this.$message.error('获取车辆调度列表失败'); } // 获取车辆调度列表数据 this.DispatchNoteList = res.data.list; // 获取列表的总记录数 this.total = res.data.total; //关闭加载 this.listLoading = false; this.$message.success('获取车辆调度列表,成功'); }).catch(error => { this.listLoading = false; this.$message.error(error.toString()); }); }, /** * 管理员端,添加车辆调度记录 */ addDispatchNote() { /*进行表单的预验证*/ this.$refs.addDispatchNodeFormRef.validate(valid => { // 未通过,表单预校验 if (!valid) return; // 通过,表单预检验,发起添加车辆调度记录的网络请求 this.addLoading = true; insertDispatchNote(this.addDispatchNodeForm).then((response) => { let res = response.data; //添加调度记录信息,失败 if (res.code !== '200'){ //关闭加载 this.addLoading = false; return this.$message.error('添加调度记录信息,失败'); } //添加调度记录信息,成功 this.$message.success('添加调度记录信息,成功'); //关闭加载 this.addLoading = false; //隐藏对话框 this.addDispatchNodeFormVisible = false; //刷新车辆调度记录列表 this.getDispatchNodeList(); }).catch(error => { this.addLoading = false; this.$message.error(error.toString()); }); }) }, /** * 管理员端,删除车辆调度记录 */ removeDispatchNode(index, row) { //弹框询问是否删除车辆调度记录 this.$confirm('此操作永久删除该车辆调度记录, 是否继续?', '警告', { confirmButtonText: '确定删除', cancelButtonText: '取消', type: 'warning' } ).then(() => { //开启加载 this.delLoading = true; deleteDispatchNote(row).then((response) => { let res = response.data; if (res.code !== '200') { this.delLoading = false; return this.$message.error('删除车辆调度记录,失败'); } this.$message.success('删除车辆调度记录,成功!'); this.delLoading = false; //刷新车辆调度记录列表 this.getDispatchNodeList(); }).catch(error => { this.delLoading = false; this.$message.error(error.toString()); }); }).catch(() => { }); }, /** * 管理员端,编辑车辆调度记录 */ editDispatchNote() { /*进行表单的预验证*/ this.$refs.editFormRef.validate(valid => { // 未通过,表单预校验 if (!valid) return; // 通过,表单预检验,开启加载 this.editLoading = true; updateDispatchNote(this.editForm).then((response) => { let res = response.data; if (res.code !== '200') { //关闭加载 this.editLoading = false; return this.$message.error('修改车辆调度记录信息,失败'); } this.$message.success('修改车辆调度记录信息,成功!'); //关闭加载 this.editLoading = false; //关闭编辑车辆调度记录对话框 this.viewDialogVisible = false; //刷新车辆调度列表 this.getDispatchNodeList(); }).catch(error => { this.editLoading = false; this.$message.error(error.toString()); }); }); }, /** * 管理员端,手动,开始调度任务 */ startDispatch(index, row) { //开启加载 this.beginLoading = true; startTask(row).then((response) => { let res = response.data; if (res.code !== '200') { //关闭加载 this.beginLoading = false; return this.$message.error('手动开始调度任务,失败'); } //关闭加载 this.beginLoading = false; this.$message.success('手动开始调度任务,成功!'); //刷新车辆调度列表 this.getDispatchNodeList(); }).catch(error => { this.beginLoading = false; this.$message.error(error.toString()); }); }, /** * 管理员端,手动,完成调度任务 */ completeDispatch(index, row) { //开启加载 this.endLoading = true; completeTask(row).then((response) => { let res = response.data; if (res.code !== '200') { //关闭加载 this.endLoading = false; return this.$message.error('手动完成调度任务,失败'); } //关闭加载 this.endLoading = false; this.$message.success('手动完成调度任务,成功!'); //刷新车辆调度列表 this.getDispatchNodeList(); }).catch(error => { this.endLoading = false; this.$message.error(error.toString()); }); }, /** * 批量删除,之前的选中 */ selsChange: function (sels) { this.sels = sels; }, /** * 车辆状态为执行状态的时候,无法被选中 */ isSelectable(row, index) { if (row.status === '2') { return false; } else { return true; } }, /** * 批量删除功能 */ batchRemove() { var ids = this.sels.map(item => item.id).toString(); console.log(ids); //弹框询问是否批量删除选中的车辆调度记录 this.$confirm('此操作永久删除选中的车辆调度记录, 是否继续?', '警告', { confirmButtonText: '确定删除', cancelButtonText: '取消', type: 'warning' } ).then(() => { //开启加载 this.listLoading = true; let params = {ids: ids}; batchRemoveDispatchNode(params).then(response => { let res = response.data; if (res.code !== '200') { this.listLoading = false; return this.$message.error('删除车辆调度记录,失败'); } this.$message.success('删除车辆调度记录,成功!'); this.listLoading = false; //刷新车辆调度记录列表 this.getDispatchNodeList(); }).catch(error => { this.delLoading = false; this.$message.error(error.toString()); }); }).catch(() => { }); }, //监听,我要调度车辆,对话框的关闭事件 dispatchDialogClosed() { //重置对话框 this.$refs.addDispatchNodeFormRef.resetFields(); }, //监听,编辑调度记录,对话框的关闭事件 editDialogClosed() { //重置对话框 this.$refs.editFormRef.resetFields(); }, //监听pageSize改变的事件 handleSizeChange(newSize) { this.queryInfo.pageSize = newSize; //刷新车辆调度记录列表 this.getDispatchNodeList(); }, //监听当前页码值改变的事件 handleCurrentChange(newPage) { this.queryInfo.pageNum = newPage; //刷新车辆调度记录列表 this.getDispatchNodeList(); }, /** * 打开编辑调度记录,对话框 * @param index * @param row:该行的数据对象 */ showDialogVisible(index, row) { this.editForm = Object.assign({}, row); this.viewDialogVisible = true; }, /** * 根据状态的不同区分颜色 * * @param row * @param rowIndex */ rowStatus({row, rowIndex}) { if (row.status === '1') { return 'success-row'; } if (row.status === '2') { return 'run-row'; } if (row.status === '3') { return 'cancel-row'; } if (row.status === '4') { return 'await-row'; } } } } </script> <style> /* 完成状态 */ .el-table .success-row { background: rgba(64, 158, 255, 0.2); } /* 执行状态 */ .el-table .run-row { background: rgba(103, 194, 58, 0.2); } /* 取消状态 */ .el-table .cancel-row { background: rgba(144, 147, 153, 0.2); } /* 待执行状态 */ .el-table .await-row { background: rgba(230, 162, 60, 0.2); } </style>