|
@@ -2,724 +2,834 @@ |
|
@@ -2,724 +2,834 @@ |
2
|
<el-container>
|
2
|
<el-container>
|
3
|
<el-main>
|
3
|
<el-main>
|
4
|
<el-card style="background-color: #F5F7FA">
|
4
|
<el-card style="background-color: #F5F7FA">
|
5
|
- <!-- 搜素区域 -->
|
|
|
6
|
- <div>
|
|
|
7
|
- <el-form :model="queryInfo" :rules="queryFormRules" ref="queryFormRef" status-icon>
|
|
|
8
|
- <el-form-item>
|
|
|
9
|
- <el-col :span="4">
|
|
|
10
|
- <el-form-item prop="gmtCreate">
|
|
|
11
|
- <el-date-picker v-model="queryInfo.gmtCreate" type="date" value-format="yyyy-MM-dd"
|
|
|
12
|
- placeholder="选择创建调度时间"
|
|
|
13
|
- style="width: 200px"></el-date-picker>
|
5
|
+ <!--工具条-->
|
|
|
6
|
+ <el-row>
|
|
|
7
|
+ <el-form :model="filters" :rules="rules" ref="ruleForm">
|
|
|
8
|
+ <el-col :span="5">
|
|
|
9
|
+ <el-form-item label="" prop="trailerFrameNo">
|
|
|
10
|
+ <el-input v-model="filters.trailerFrameNo" placeholder="车牌号查询" style="width: 170px">
|
|
|
11
|
+ <template slot="prepend">车牌号</template>
|
|
|
12
|
+ </el-input>
|
14
|
</el-form-item>
|
13
|
</el-form-item>
|
15
|
</el-col>
|
14
|
</el-col>
|
16
|
- <el-col :span="4" style="margin-left: 50px">
|
|
|
17
|
- <el-form-item prop="dispatchType">
|
|
|
18
|
- <el-select v-model="queryInfo.dispatchType" placeholder="请选择业务类型"
|
|
|
19
|
- style="width: 200px"
|
|
|
20
|
- clearable>
|
|
|
21
|
- <el-option
|
|
|
22
|
- v-for="item in dispatchTypeList"
|
|
|
23
|
- :key="item.value"
|
|
|
24
|
- :label="item.label"
|
|
|
25
|
- :value="item.value">
|
|
|
26
|
- </el-option>
|
|
|
27
|
- </el-select>
|
15
|
+ <el-col :span="6">
|
|
|
16
|
+ <el-form-item label="" prop="veState">
|
|
|
17
|
+ <div class="my-text-area">
|
|
|
18
|
+ <div class="el-input-group__prepend prepand">备案状态</div>
|
|
|
19
|
+ <el-select v-model="filters.veState" placeholder="请选择" style="width: 100px">
|
|
|
20
|
+ <el-option
|
|
|
21
|
+ v-for="item in veStateOptions"
|
|
|
22
|
+ :key="item.value"
|
|
|
23
|
+ :label="item.label"
|
|
|
24
|
+ :value="item.value">
|
|
|
25
|
+ </el-option>
|
|
|
26
|
+ </el-select>
|
|
|
27
|
+ </div>
|
28
|
</el-form-item>
|
28
|
</el-form-item>
|
29
|
</el-col>
|
29
|
</el-col>
|
30
|
- <el-col :span="4" style="margin-left: 50px">
|
|
|
31
|
- <el-form-item prop="status">
|
|
|
32
|
- <el-select v-model="queryInfo.status" placeholder="记录状态" clearable
|
|
|
33
|
- style="width:200px;margin-left: 6px">
|
|
|
34
|
- <el-option
|
|
|
35
|
- v-for="item in statusList"
|
|
|
36
|
- :key="item.value"
|
|
|
37
|
- :label="item.label"
|
|
|
38
|
- :value="item.value">
|
|
|
39
|
- </el-option>
|
|
|
40
|
- </el-select>
|
30
|
+ <el-col :span="6">
|
|
|
31
|
+ <el-form-item label="" prop="veClassFlag">
|
|
|
32
|
+ <div class="my-text-area">
|
|
|
33
|
+ <div class="el-input-group__prepend prepand">业务类型</div>
|
|
|
34
|
+ <el-select v-model="filters.veClassFlag" placeholder="请选择" style="width:100px">
|
|
|
35
|
+ <el-option
|
|
|
36
|
+ v-for="item in options"
|
|
|
37
|
+ :key="item.value"
|
|
|
38
|
+ :label="item.label"
|
|
|
39
|
+ :value="item.value">
|
|
|
40
|
+ </el-option>
|
|
|
41
|
+ </el-select>
|
|
|
42
|
+ </div>
|
41
|
</el-form-item>
|
43
|
</el-form-item>
|
42
|
</el-col>
|
44
|
</el-col>
|
43
|
- <el-button type="primary" style="margin-left: 60px"
|
|
|
44
|
- @click="getDispatchNodeList">查询调度记录
|
|
|
45
|
- </el-button>
|
|
|
46
|
- <el-button type="success" style="margin-left: 15px" @click="dispatchFormVisible = true">
|
|
|
47
|
- 我要调度车辆
|
|
|
48
|
- </el-button>
|
|
|
49
|
- </el-form-item>
|
|
|
50
|
- </el-form>
|
|
|
51
|
- <el-row style="margin-top: 20px;">
|
45
|
+ <el-col :span="6">
|
|
|
46
|
+ <el-form-item>
|
|
|
47
|
+ <el-button type="primary" v-on:click="getReCord(1)">查询</el-button>
|
|
|
48
|
+ <el-button type="success" @click="companyAdd">新增</el-button>
|
|
|
49
|
+ </el-form-item>
|
|
|
50
|
+ </el-col>
|
|
|
51
|
+ </el-form>
|
52
|
</el-row>
|
52
|
</el-row>
|
53
|
- </div>
|
|
|
54
|
- <!--调度记录列表区域-->
|
|
|
55
|
- <div style="margin-top: 20px;">
|
|
|
56
|
- <el-table :data="DispatchNoteList" border highlight-current-row v-loading="listLoading"
|
|
|
57
|
- :row-class-name="rowStatus"
|
|
|
58
|
- element-loading-text="拼命加载中">
|
|
|
59
|
- <el-table-column type="index" align="center"></el-table-column>
|
|
|
60
|
- <el-table-column label="用户名称" prop="userName" align="center" width="100"></el-table-column>
|
|
|
61
|
- <el-table-column label="联系方式" prop="userMobile" align="center" width="120"></el-table-column>
|
|
|
62
|
- <el-table-column label="状态" prop="status" align="center" width="120">
|
|
|
63
|
- <template slot-scope="scope">
|
|
|
64
|
- <span v-if="scope.row.status ==='1'">完成状态</span>
|
|
|
65
|
- <span v-if="scope.row.status ==='2'">执行状态</span>
|
|
|
66
|
- <span v-if="scope.row.status ==='3'">取消状态</span>
|
|
|
67
|
- <span v-if="scope.row.status ==='4'">待执行状态</span>
|
|
|
68
|
- </template>
|
53
|
+ <!--列表-->
|
|
|
54
|
+ <el-table :data="recordList" highlight-current-row v-loading="listLoading" style="border-radius: 10px 10px 0px 0px;line-height: 25px"
|
|
|
55
|
+ :header-cell-style="{background:'#6F8294',color:'#FFFFFF'}" size="small">
|
|
|
56
|
+ <el-table-column type="selection" width="55" fixed="left">
|
69
|
</el-table-column>
|
57
|
</el-table-column>
|
70
|
- <el-table-column label="业务类型" prop="dispatchType" align="center" width="120">
|
|
|
71
|
- <template slot-scope="scope">
|
|
|
72
|
- <span v-if="scope.row.dispatchType ==='1'">进站送货</span>
|
|
|
73
|
- <span v-if="scope.row.dispatchType ==='2'">出站提货</span>
|
|
|
74
|
- <span v-if="scope.row.dispatchType ==='3'">货物调拨</span>
|
|
|
75
|
- <span v-if="scope.row.dispatchType ==='4'">货物流转</span>
|
|
|
76
|
- </template>
|
58
|
+ <el-table-column prop="coCode" label="运输公司名称" width="120px" >
|
77
|
</el-table-column>
|
59
|
</el-table-column>
|
78
|
- <el-table-column label="车牌号码" prop="licensePlateNumber" align="center"
|
|
|
79
|
- width="120"></el-table-column>
|
|
|
80
|
- <el-table-column label="车辆类型" prop="vehicleType" align="center" width="120">
|
|
|
81
|
- <template slot-scope="scope">
|
|
|
82
|
- <span v-if="scope.row.vehicleType ==='1'">重型货车</span>
|
|
|
83
|
- <span v-if="scope.row.vehicleType ==='2'">中型货车</span>
|
|
|
84
|
- <span v-if="scope.row.vehicleType ==='3'">轻型货车</span>
|
|
|
85
|
- <span v-if="scope.row.vehicleType ==='4'">微型货车</span>
|
|
|
86
|
- <span v-if="scope.row.vehicleType ==='5'">拖车</span>
|
|
|
87
|
- <span v-if="scope.row.vehicleType ==='6'">叉车</span>
|
|
|
88
|
- </template>
|
60
|
+ <el-table-column prop="proposer" label="挂靠单位" width="120px" >
|
89
|
</el-table-column>
|
61
|
</el-table-column>
|
90
|
- <el-table-column label="场站位置" prop="station" align="center" width="120">
|
|
|
91
|
- <template slot-scope="scope">
|
|
|
92
|
- <span v-if="scope.row.station ==='1'">西货站</span>
|
|
|
93
|
- <span v-if="scope.row.station ==='2'">综保区</span>
|
|
|
94
|
- <span v-if="scope.row.station ==='3'">军投</span>
|
|
|
95
|
- <span v-if="scope.row.station ==='4'">快邮</span>
|
|
|
96
|
- </template>
|
62
|
+ <el-table-column prop="veClassFlag" label="业务类型" :formatter="veClassFlag" width="130px" >
|
|
|
63
|
+ </el-table-column>
|
|
|
64
|
+ <el-table-column prop="domesticLisenceNo" label="国内车牌" width="100px">
|
|
|
65
|
+ </el-table-column>
|
|
|
66
|
+ <el-table-column prop="veOwnerName" label="车主姓名" width="100px" >
|
|
|
67
|
+ </el-table-column>
|
|
|
68
|
+ <el-table-column prop="ownerInsideTel" label="车主联系方式" width="110px" >
|
|
|
69
|
+ </el-table-column>
|
|
|
70
|
+ <el-table-column prop="mainPort" label="关区代码" width="100px" >
|
|
|
71
|
+ </el-table-column>
|
|
|
72
|
+ <el-table-column prop="selfWt" label="自重" width="90px">
|
|
|
73
|
+ </el-table-column>
|
|
|
74
|
+ <el-table-column prop="veTon" label="载重" width="90px">
|
|
|
75
|
+ </el-table-column>
|
|
|
76
|
+ <el-table-column prop="returnmessage" label="备案结果" width="100px">
|
|
|
77
|
+ </el-table-column>
|
|
|
78
|
+ <el-table-column prop="createDate" label="创建时间" width="160px">
|
97
|
</el-table-column>
|
79
|
</el-table-column>
|
98
|
- <el-table-column label="创建时间" prop="gmtCreate" align="center" width="160"></el-table-column>
|
|
|
99
|
- <el-table-column label="开始时间" prop="beginTime" align="center" width="160"></el-table-column>
|
|
|
100
|
- <el-table-column label="完成时间" prop="endTime" align="center" width="160"></el-table-column>
|
|
|
101
|
- <el-table-column label="操作" width="220px" fixed="right" align="center">
|
80
|
+ <el-table-column prop="updateDate" label="更新时间" width="160px">
|
|
|
81
|
+ </el-table-column>
|
|
|
82
|
+ <el-table-column label="操作" align="center" width="240" fixed="right">
|
|
|
83
|
+<!-- v-if="isAdmin"-->
|
102
|
<template slot-scope="scope">
|
84
|
<template slot-scope="scope">
|
103
|
- <!--查看按钮-->
|
|
|
104
|
- <el-tooltip effect="dark" content="查看" placement="top-start" :enterable="false">
|
|
|
105
|
- <el-button type="primary" icon="el-icon-edit" size="mini"
|
|
|
106
|
- @click="showDialogVisible(scope.row)">查看
|
|
|
107
|
- </el-button>
|
|
|
108
|
- </el-tooltip>
|
|
|
109
|
- <!--取消调度按钮-->
|
|
|
110
|
- <el-tooltip effect="dark" content="取消调度" placement="top-start" :enterable="false">
|
|
|
111
|
- <el-button type="danger" icon="el-icon-delete" size="mini"
|
|
|
112
|
- :disabled="scope.row.endTime!==null && scope.row.endTime!==''"
|
|
|
113
|
- @click="cancelDispatch(scope.row)" :loading="cancelLoading">取消调度
|
|
|
114
|
- </el-button>
|
|
|
115
|
- </el-tooltip>
|
85
|
+ <el-button type="warning" size="mini" @click="handlOut(scope.$index, scope.row)">出任务</el-button>
|
|
|
86
|
+ <el-button type="success" size="mini" @click="handlEdit(scope.$index, scope.row)">编辑</el-button>
|
|
|
87
|
+ <el-button type="danger" size="mini" @click="handleDel(scope.$index, scope.row)">删除</el-button>
|
116
|
</template>
|
88
|
</template>
|
117
|
</el-table-column>
|
89
|
</el-table-column>
|
118
|
</el-table>
|
90
|
</el-table>
|
119
|
- <!--分页区域-->
|
|
|
120
|
- <div style="margin-top: 10px">
|
91
|
+ <!-- 分页-->
|
|
|
92
|
+ <div style="margin-top: 10px" class="toolbar">
|
121
|
<el-pagination
|
93
|
<el-pagination
|
122
|
@size-change="handleSizeChange"
|
94
|
@size-change="handleSizeChange"
|
123
|
@current-change="handleCurrentChange"
|
95
|
@current-change="handleCurrentChange"
|
124
|
- :current-page="this.queryInfo.pageNum"
|
|
|
125
|
- :page-sizes="[10,20,30,50]"
|
|
|
126
|
- :page-size="this.queryInfo.pageSize"
|
96
|
+ :current-page="pageSize"
|
|
|
97
|
+ :page-sizes="[10, 100, 200, 300]"
|
|
|
98
|
+ :page-size="10"
|
127
|
layout="total, sizes, prev, pager, next, jumper"
|
99
|
layout="total, sizes, prev, pager, next, jumper"
|
128
|
- :total="total">
|
100
|
+ :total="this.total">
|
129
|
</el-pagination>
|
101
|
</el-pagination>
|
130
|
</div>
|
102
|
</div>
|
131
|
- </div>
|
|
|
132
|
- </el-card>
|
|
|
133
|
- <!-- 我要调度车辆,对话框 -->
|
|
|
134
|
- <div>
|
|
|
135
|
- <el-dialog
|
|
|
136
|
- title="我要调度车辆"
|
|
|
137
|
- :visible.sync="dispatchFormVisible"
|
|
|
138
|
- width="50%" @close="dispatchDialogClosed">
|
|
|
139
|
- <!-- :rules="dispatchFormRules" ref="dispatchFormRef"-->
|
|
|
140
|
- <el-form :model="dispatchForm" label-width="100px" status-icon
|
|
|
141
|
- :rules="dispatchFormRules" ref="dispatchFormRef"
|
|
|
142
|
- style="margin-left:10%;margin-right:10%;background-color: #F5F7FA">
|
|
|
143
|
- <br>
|
|
|
144
|
- <el-form-item label="车辆类型:" prop="vehicleType">
|
|
|
145
|
- <el-select v-model="dispatchForm.vehicleType" style="width: 300px" clearable
|
|
|
146
|
- placeholder="请选择车辆类型">
|
|
|
147
|
- <el-option
|
|
|
148
|
- v-for="item in vehicleTypeList"
|
|
|
149
|
- :key="item.value"
|
|
|
150
|
- :label="item.label"
|
|
|
151
|
- :value="item.value">
|
|
|
152
|
- </el-option>
|
|
|
153
|
- </el-select>
|
|
|
154
|
- </el-form-item>
|
|
|
155
|
- <el-form-item label="车辆数量:" prop="vehicleNumber">
|
|
|
156
|
- <el-input-number style="width: 200px" v-model="dispatchForm.vehicleNumber"
|
|
|
157
|
- :min="1" :max="100" controls-position="right">
|
|
|
158
|
- </el-input-number>
|
|
|
159
|
- <span style="margin-left:5px;font-size: 18px">辆</span>
|
103
|
+ <el-dialog :title=dialogMap[dialogStatus] :visible.sync="addFormVisible" :close-on-click-modal="false" width="80%" v-dialog-drag>
|
|
|
104
|
+ <el-form :model="addForm" label-width="20px" :rules="addFormRules" ref="addForm" label-position="left">
|
|
|
105
|
+ <el-row>
|
|
|
106
|
+ <el-col :span="7">
|
|
|
107
|
+ <el-row>
|
|
|
108
|
+ <el-form-item label=" " prop="domesticLisenceNo">
|
|
|
109
|
+ <el-input v-model="addForm.domesticLisenceNo" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"
|
|
|
110
|
+ @change="findTrailerFrameNo(addForm.domesticLisenceNo)"
|
|
|
111
|
+ auto-complete="on" placeholder="国内车牌">
|
|
|
112
|
+ <template slot="prepend">国内车牌</template>
|
|
|
113
|
+ </el-input>
|
|
|
114
|
+ </el-form-item>
|
|
|
115
|
+ </el-row>
|
|
|
116
|
+ <el-row>
|
|
|
117
|
+ <el-form-item label=" " prop="veOwnerName">
|
|
|
118
|
+ <el-input v-model="addForm.veOwnerName" auto-complete="on" placeholder="车主姓名">
|
|
|
119
|
+ <template slot="prepend">车主姓名</template>
|
|
|
120
|
+ </el-input>
|
|
|
121
|
+ </el-form-item>
|
|
|
122
|
+ </el-row>
|
|
|
123
|
+ <el-row>
|
|
|
124
|
+ <el-form-item label=" " prop="proposer">
|
|
|
125
|
+ <el-input v-model="addForm.proposer" auto-complete="on" placeholder="挂靠单位">
|
|
|
126
|
+ <template slot="prepend">挂靠单位</template>
|
|
|
127
|
+ </el-input>
|
|
|
128
|
+ </el-form-item>
|
|
|
129
|
+ </el-row>
|
|
|
130
|
+ <el-row>
|
|
|
131
|
+ <el-form-item label=" " prop="coCode">
|
|
|
132
|
+ <el-input v-model="addForm.coCode" auto-complete="on" placeholder="运输公司名称">
|
|
|
133
|
+ <template slot="prepend">运输公司名称</template>
|
|
|
134
|
+ </el-input>
|
|
|
135
|
+ </el-form-item>
|
|
|
136
|
+ </el-row>
|
|
|
137
|
+ <el-row>
|
|
|
138
|
+ <el-form-item label=" " prop="veClassFlag">
|
|
|
139
|
+ <div class="my-text-area">
|
|
|
140
|
+ <div class="el-input-group__prepend prepand">业务类型</div>
|
|
|
141
|
+ <el-select v-model="addForm.veClassFlag" placeholder="请选择" style="width: 165px">
|
|
|
142
|
+ <el-option
|
|
|
143
|
+ v-for="item in options"
|
|
|
144
|
+ :key="item.value"
|
|
|
145
|
+ :label="item.label"
|
|
|
146
|
+ :value="item.value">
|
|
|
147
|
+ </el-option>
|
|
|
148
|
+ </el-select>
|
|
|
149
|
+ </div>
|
|
|
150
|
+ </el-form-item>
|
|
|
151
|
+ </el-row>
|
|
|
152
|
+ <el-row>
|
|
|
153
|
+ <el-form-item label="" prop="icCode">
|
|
|
154
|
+ <el-input v-model="addForm.icCode" auto-complete="on" placeholder="IC卡编号">
|
|
|
155
|
+ <template slot="prepend">IC卡编号</template>
|
|
|
156
|
+ </el-input>
|
|
|
157
|
+ </el-form-item>
|
|
|
158
|
+ </el-row>
|
|
|
159
|
+ </el-col>
|
|
|
160
|
+ <el-col :offset="1" :span="7">
|
|
|
161
|
+ <el-row>
|
|
|
162
|
+ <el-form-item label=" " prop="mainPort">
|
|
|
163
|
+ <div class="my-text-area">
|
|
|
164
|
+ <div class="el-input-group__prepend prepand">海关代码</div>
|
|
|
165
|
+ <el-select v-model="addForm.mainPort" placeholder="请选择" style="width: 165px">
|
|
|
166
|
+ <el-option
|
|
|
167
|
+ v-for="item in mainPortOptions"
|
|
|
168
|
+ :key="item.value"
|
|
|
169
|
+ :label="item.label"
|
|
|
170
|
+ :value="item.value">
|
|
|
171
|
+ </el-option>
|
|
|
172
|
+ </el-select>
|
|
|
173
|
+ </div>
|
|
|
174
|
+ </el-form-item>
|
|
|
175
|
+ </el-row>
|
|
|
176
|
+ <el-row>
|
|
|
177
|
+ <el-form-item label=" " prop="ownerInsideTel">
|
|
|
178
|
+ <el-input v-model="addForm.ownerInsideTel" auto-complete="on" placeholder="车主联系电话">
|
|
|
179
|
+ <template slot="prepend">车主联系电话</template>
|
|
|
180
|
+ </el-input>
|
|
|
181
|
+ </el-form-item>
|
|
|
182
|
+ </el-row>
|
|
|
183
|
+ <el-row>
|
|
|
184
|
+ <el-form-item label=" " prop="veFactoryDate">
|
|
|
185
|
+ <div class="my-text-area">
|
|
|
186
|
+ <div class="el-input-group__prepend prepand">行驶证有效期</div>
|
|
|
187
|
+ <el-date-picker
|
|
|
188
|
+ style="width: 165px"
|
|
|
189
|
+ v-model="addForm.veFactoryDate"
|
|
|
190
|
+ type="date"
|
|
|
191
|
+ placeholder="选择日期">
|
|
|
192
|
+ </el-date-picker>
|
|
|
193
|
+ </div>
|
|
|
194
|
+ </el-form-item>
|
|
|
195
|
+ </el-row>
|
|
|
196
|
+ <el-row>
|
|
|
197
|
+ <el-form-item label=" " prop="veState">
|
|
|
198
|
+ <div class="my-text-area">
|
|
|
199
|
+ <div class="el-input-group__prepend prepand">备案状态</div>
|
|
|
200
|
+ <el-select v-model="addForm.veState" placeholder="请选择" style="width: 165px">
|
|
|
201
|
+ <el-option
|
|
|
202
|
+ v-for="item in veStateOptions"
|
|
|
203
|
+ :key="item.value"
|
|
|
204
|
+ :label="item.label"
|
|
|
205
|
+ :value="item.value">
|
|
|
206
|
+ </el-option>
|
|
|
207
|
+ </el-select>
|
|
|
208
|
+ </div>
|
|
|
209
|
+ </el-form-item>
|
|
|
210
|
+ </el-row>
|
|
|
211
|
+ <el-row>
|
|
|
212
|
+ <el-form-item label=" " prop="selfWt">
|
|
|
213
|
+ <el-input v-model="addForm.selfWt" auto-complete="on" oninput="value=value.replace(/[^\d.+]/g,'')" placeholder="单位为KG">
|
|
|
214
|
+ <template slot="prepend">自重/空车重量</template>
|
|
|
215
|
+ </el-input>
|
|
|
216
|
+ </el-form-item>
|
|
|
217
|
+ </el-row>
|
|
|
218
|
+ <el-row>
|
|
|
219
|
+ <el-form-item label=" " prop="lockNum">
|
|
|
220
|
+ <div class="my-text-area">
|
|
|
221
|
+ <div class="el-input-group__prepend prepand">关锁号</div>
|
|
|
222
|
+ <el-autocomplete
|
|
|
223
|
+ class="inline-input"
|
|
|
224
|
+ v-model="addForm.lockNum"
|
|
|
225
|
+ :fetch-suggestions="querySearch"
|
|
|
226
|
+ value-key="lockNum"
|
|
|
227
|
+ highlight-first-item
|
|
|
228
|
+ clearable
|
|
|
229
|
+ placeholder="请输入内容"
|
|
|
230
|
+ style="width: 165px"
|
|
|
231
|
+ ></el-autocomplete>
|
|
|
232
|
+ </div>
|
|
|
233
|
+ </el-form-item>
|
|
|
234
|
+ </el-row>
|
|
|
235
|
+ </el-col>
|
|
|
236
|
+ <el-col :offset="1" :span="7">
|
|
|
237
|
+ <el-row>
|
|
|
238
|
+ <el-form-item label=" " prop="veTon">
|
|
|
239
|
+ <el-input v-model="addForm.veTon" auto-complete="on" placeholder="核定载货重量">
|
|
|
240
|
+ <template slot="prepend">载货重量</template>
|
|
|
241
|
+ </el-input>
|
|
|
242
|
+ </el-form-item>
|
|
|
243
|
+ </el-row>
|
|
|
244
|
+ <el-row>
|
|
|
245
|
+ <el-form-item label=" " prop="trailerLicenseNo">
|
|
|
246
|
+ <el-input v-model="addForm.trailerLicenseNo" auto-complete="on" placeholder="挂车牌号">
|
|
|
247
|
+ <template slot="prepend">挂车牌号</template>
|
|
|
248
|
+ </el-input>
|
|
|
249
|
+ </el-form-item>
|
|
|
250
|
+ </el-row>
|
|
|
251
|
+ <el-row>
|
|
|
252
|
+ <el-form-item label=" " prop="trailerFrameNo">
|
|
|
253
|
+ <el-input v-model="addForm.trailerFrameNo" auto-complete="on" placeholder="挂车车架号">
|
|
|
254
|
+ <template slot="prepend">挂车架号</template>
|
|
|
255
|
+ </el-input>
|
|
|
256
|
+ </el-form-item>
|
|
|
257
|
+ </el-row>
|
|
|
258
|
+ <el-row>
|
|
|
259
|
+ <el-form-item label=" " prop="apprNo">
|
|
|
260
|
+ <el-input v-model="addForm.apprNo" auto-complete="on" placeholder="车辆备案编号">
|
|
|
261
|
+ <template slot="prepend">车辆备案编号</template>
|
|
|
262
|
+ </el-input>
|
|
|
263
|
+ </el-form-item>
|
|
|
264
|
+ </el-row>
|
|
|
265
|
+ <el-row>
|
|
|
266
|
+ <el-form-item label=" " prop="veCustomsNo">
|
|
|
267
|
+ <el-input v-model="addForm.veCustomsNo" auto-complete="on" placeholder="电子车牌编号">
|
|
|
268
|
+ <template slot="prepend">电子车牌编号</template>
|
|
|
269
|
+ </el-input>
|
|
|
270
|
+ </el-form-item>
|
|
|
271
|
+ </el-row>
|
|
|
272
|
+ <el-row>
|
|
|
273
|
+ <el-form-item label=" " prop="memo">
|
|
|
274
|
+ <el-input v-model="addForm.memo" auto-complete="on" placeholder="备注">
|
|
|
275
|
+ <template slot="prepend">备注</template>
|
|
|
276
|
+ </el-input>
|
|
|
277
|
+ </el-form-item>
|
|
|
278
|
+ </el-row>
|
|
|
279
|
+ </el-col>
|
|
|
280
|
+ </el-row>
|
|
|
281
|
+ </el-form>
|
|
|
282
|
+ <div slot="footer" class="dialog-footer">
|
|
|
283
|
+ <el-button @click="addFormVisible = false" type="danger"
|
|
|
284
|
+ style="width: 100px">取消</el-button>
|
|
|
285
|
+ <el-button type="primary" style="width: 100px"
|
|
|
286
|
+ @click="dialogStatus ==='save'? addSubmit():editSubmit()" v-loading="addloading">保存</el-button>
|
|
|
287
|
+ </div>
|
|
|
288
|
+ </el-dialog>
|
|
|
289
|
+<!-- //出任务-->
|
|
|
290
|
+ <el-dialog title="出任务" :visible.sync="dialogVisible">
|
|
|
291
|
+ <el-form :model="form">
|
|
|
292
|
+ <el-form-item label="" :label-width="formLabelWidth">
|
|
|
293
|
+ <el-col :span="15">
|
|
|
294
|
+ <el-input v-model="form.lisenceNo" autocomplete="off" disabled>
|
|
|
295
|
+ <template slot="prepend">车牌号</template>
|
|
|
296
|
+ </el-input>
|
|
|
297
|
+ </el-col>
|
160
|
</el-form-item>
|
298
|
</el-form-item>
|
161
|
- <el-form-item label="场站位置:" prop="station">
|
|
|
162
|
- <el-select v-model="dispatchForm.station" style="width: 300px" clearable
|
|
|
163
|
- placeholder="请选择场站位置">
|
|
|
164
|
- <el-option
|
|
|
165
|
- v-for="item in stationList"
|
|
|
166
|
- :key="item.value"
|
|
|
167
|
- :label="item.label"
|
|
|
168
|
- :value="item.value">
|
|
|
169
|
- </el-option>
|
|
|
170
|
- </el-select>
|
299
|
+ <el-form-item label="" :label-width="formLabelWidth">
|
|
|
300
|
+ <div class="my-text-area">
|
|
|
301
|
+ <div class="el-input-group__prepend prepand">用户名</div>
|
|
|
302
|
+ <el-col :span="14">
|
|
|
303
|
+ <el-select v-model="form.username"
|
|
|
304
|
+ @click.native="getUsers"
|
|
|
305
|
+ default-first-option
|
|
|
306
|
+ :loading="loading" clearable placeholder="请选择">
|
|
|
307
|
+ <el-option
|
|
|
308
|
+ v-for="item in usernames"
|
|
|
309
|
+ :key="item.username"
|
|
|
310
|
+ :label="item.username"
|
|
|
311
|
+ :value="item.username"
|
|
|
312
|
+ :disabled="item.disabled">
|
|
|
313
|
+ </el-option>
|
|
|
314
|
+ </el-select>
|
|
|
315
|
+ </el-col>
|
|
|
316
|
+ </div>
|
171
|
</el-form-item>
|
317
|
</el-form-item>
|
172
|
- <el-form-item label="业务类型:" prop="dispatchType">
|
|
|
173
|
- <el-select v-model="dispatchForm.dispatchType" style="width: 300px;" clearable
|
|
|
174
|
- placeholder="请选择业务类型">
|
|
|
175
|
- <el-option
|
|
|
176
|
- v-for="item in dispatchTypeList"
|
|
|
177
|
- :key="item.value"
|
|
|
178
|
- :label="item.label"
|
|
|
179
|
- :value="item.value">
|
|
|
180
|
- </el-option>
|
|
|
181
|
- </el-select>
|
318
|
+ <el-form-item label="" :label-width="formLabelWidth">
|
|
|
319
|
+ <el-col :span="14">
|
|
|
320
|
+ <el-tag v-if="lisenceNoSatus=false" type="success">在线</el-tag>
|
|
|
321
|
+ <el-tag v-else type="info">离线</el-tag>
|
|
|
322
|
+ </el-col>
|
182
|
</el-form-item>
|
323
|
</el-form-item>
|
183
|
- <br>
|
|
|
184
|
</el-form>
|
324
|
</el-form>
|
185
|
- <!--底部按钮区域-->
|
|
|
186
|
- <span slot="footer" class="dialog-footer">
|
|
|
187
|
- <el-button @click="dispatchFormVisible = false">取 消</el-button>
|
|
|
188
|
- <el-button type="primary" @click="dispatchVehicle" :loading="dispatchLoading">确定调度车辆</el-button>
|
|
|
189
|
- </span>
|
|
|
190
|
- </el-dialog>
|
|
|
191
|
- </div>
|
|
|
192
|
- <!-- 查看调度记录,对话框 -->
|
|
|
193
|
- <div>
|
|
|
194
|
- <el-dialog
|
|
|
195
|
- style="margin-top: -50px"
|
|
|
196
|
- title="查看调度记录明细"
|
|
|
197
|
- :visible.sync="viewDialogVisible"
|
|
|
198
|
- text-align="center"
|
|
|
199
|
- width="60%" @close="showDialogClosed">
|
|
|
200
|
- <!-- 表单显示区域 :rules="dispatchFormRules" -->
|
|
|
201
|
- <el-form :model="showForm" ref="showFormRef"
|
|
|
202
|
- :inline="true" align="center"
|
|
|
203
|
- style="background-color: #F5F7FA;margin-left: 5%;margin-right: 5%">
|
|
|
204
|
- <div style="margin-top: -15px">
|
|
|
205
|
- <br>
|
|
|
206
|
- <el-form-item label="用户名称:" prop="userName">
|
|
|
207
|
- <el-input v-model="showForm.userName" style="width: 200px;" size="small"
|
|
|
208
|
- readonly></el-input>
|
|
|
209
|
- </el-form-item>
|
|
|
210
|
- <el-form-item label="联系方式:" prop="userMobile">
|
|
|
211
|
- <el-input v-model="showForm.userMobile" style="width: 200px;" size="small"
|
|
|
212
|
- readonly></el-input>
|
|
|
213
|
- </el-form-item>
|
|
|
214
|
- <el-form-item label="车辆类型:" prop="vehicleType">
|
|
|
215
|
- <el-select v-model="showForm.vehicleType" style="width:200px" size="small" readonly
|
|
|
216
|
- placeholder="请选择车辆类型">
|
|
|
217
|
- <el-option
|
|
|
218
|
- v-for="item in vehicleTypeList"
|
|
|
219
|
- :key="item.value"
|
|
|
220
|
- :label="item.label"
|
|
|
221
|
- :value="item.value">
|
|
|
222
|
- </el-option>
|
|
|
223
|
- </el-select>
|
|
|
224
|
- </el-form-item>
|
|
|
225
|
- <el-form-item label="车牌号码:" prop="licensePlateNumber">
|
|
|
226
|
- <el-input v-model="showForm.licensePlateNumber" style="width: 200px;" size="small"
|
|
|
227
|
- readonly></el-input>
|
|
|
228
|
- </el-form-item>
|
|
|
229
|
- <el-form-item label="场站位置:" prop="station">
|
|
|
230
|
- <el-select v-model="showForm.station" style="width:200px" readonly size="small"
|
|
|
231
|
- placeholder="请选择场站位置">
|
|
|
232
|
- <el-option
|
|
|
233
|
- v-for="item in stationList"
|
|
|
234
|
- :key="item.value"
|
|
|
235
|
- :label="item.label"
|
|
|
236
|
- :value="item.value">
|
|
|
237
|
- </el-option>
|
|
|
238
|
- </el-select>
|
|
|
239
|
- </el-form-item>
|
|
|
240
|
- <el-form-item label="业务类型:" prop="dispatchType">
|
|
|
241
|
- <el-select v-model="showForm.dispatchType" style="width:200px" readonly size="small"
|
|
|
242
|
- placeholder="请选择业务类型">
|
|
|
243
|
- <el-option
|
|
|
244
|
- v-for="item in dispatchTypeList"
|
|
|
245
|
- :key="item.value"
|
|
|
246
|
- :label="item.label"
|
|
|
247
|
- :value="item.value">
|
|
|
248
|
- </el-option>
|
|
|
249
|
- </el-select>
|
|
|
250
|
- </el-form-item>
|
|
|
251
|
- <el-form-item label="创建时间:" prop="gmtCreate">
|
|
|
252
|
- <el-input v-model="showForm.gmtCreate" style="width: 200px;" size="small"
|
|
|
253
|
- readonly></el-input>
|
|
|
254
|
- </el-form-item>
|
|
|
255
|
- <el-form-item label="开始时间:" prop="beginTime">
|
|
|
256
|
- <el-input v-model="showForm.beginTime" style="width: 200px;" size="small"
|
|
|
257
|
- readonly></el-input>
|
|
|
258
|
- </el-form-item>
|
|
|
259
|
- <el-form-item label="结束时间:" prop="endTime">
|
|
|
260
|
- <el-input v-model="showForm.endTime" style="width: 200px;" size="small"
|
|
|
261
|
- readonly></el-input>
|
|
|
262
|
- </el-form-item>
|
|
|
263
|
- <el-form-item label="记录状态:" prop="status">
|
|
|
264
|
- <el-select v-model="showForm.status" placeholder="记录状态" style="width:200px" size="small"
|
|
|
265
|
- readonly>
|
|
|
266
|
- <el-option
|
|
|
267
|
- v-for="item in statusList"
|
|
|
268
|
- :key="item.value"
|
|
|
269
|
- :label="item.label"
|
|
|
270
|
- :value="item.value">
|
|
|
271
|
- </el-option>
|
|
|
272
|
- </el-select>
|
|
|
273
|
- </el-form-item>
|
|
|
274
|
- <br>
|
|
|
275
|
- </div>
|
|
|
276
|
- </el-form>
|
|
|
277
|
- <!--底部按钮区域-->
|
|
|
278
|
- <span slot="footer" class="dialog-footer">
|
|
|
279
|
- <el-button type="primary" @click="viewDialogVisible = false">结束查看</el-button>
|
|
|
280
|
- </span>
|
325
|
+ <div slot="footer" class="dialog-footer">
|
|
|
326
|
+ <el-button @click="dialogVisible = false">取 消</el-button>
|
|
|
327
|
+ <el-button @click="saveOut()">确 定</el-button>
|
|
|
328
|
+ </div>
|
281
|
</el-dialog>
|
329
|
</el-dialog>
|
282
|
- </div>
|
330
|
+ </el-card>
|
283
|
</el-main>
|
331
|
</el-main>
|
284
|
</el-container>
|
332
|
</el-container>
|
285
|
</template>
|
333
|
</template>
|
286
|
|
334
|
|
287
|
<script>
|
335
|
<script>
|
288
|
- import {selectDispatchNoteList, dispatch, cancel, getUser} from '../../api/dispatch_api'
|
336
|
+ // import {selectDispatchNoteList, dispatch, cancel, getUser} from '../../api/dispatch_api'
|
|
|
337
|
+
|
|
|
338
|
+ import { list, save, remove, edit} from '../../api/road_verecord/verecord';
|
|
|
339
|
+ import {isAdmin, loginedUserInfo} from "../../api/user";
|
|
|
340
|
+ //获取关锁列表
|
|
|
341
|
+ // import {list as lockList} from "../../api/lock_info/lock_info";
|
|
|
342
|
+ import { getUserList } from '../../api/user';
|
|
|
343
|
+ import {selectVehicle, insertSelective, selectHistroy} from '../../api/consigner/vehicle';
|
289
|
|
344
|
|
290
|
export default {
|
345
|
export default {
|
291
|
- name: 'dispatch_api',
|
|
|
292
|
- created() {
|
|
|
293
|
|
346
|
|
294
|
- },
|
|
|
295
|
data() {
|
347
|
data() {
|
296
|
- /**
|
|
|
297
|
- * 验证手机号的自定义规则
|
|
|
298
|
- */
|
|
|
299
|
- var userMobileValid = (rule, value, callback) => {
|
|
|
300
|
- //验证手机号的正则表达式
|
|
|
301
|
- const regMobile = /^(0|86|17951)?(13[0-9]|15[0123456789]|17[678]|18[0-9]|14[57])[0-9]{8}$/;
|
|
|
302
|
- if (regMobile.test(value)) {
|
|
|
303
|
- //合法的手机号
|
|
|
304
|
- return callback();
|
|
|
305
|
- }
|
|
|
306
|
- callback(new Error('请输入合法的手机号'));
|
|
|
307
|
- };
|
|
|
308
|
return {
|
348
|
return {
|
309
|
- /**
|
|
|
310
|
- * 查询列表
|
|
|
311
|
- */
|
|
|
312
|
- queryInfo: {
|
|
|
313
|
- //用户姓名
|
|
|
314
|
- userName: '',
|
|
|
315
|
- //用户联系方式
|
|
|
316
|
- userMobile: '',
|
|
|
317
|
- //记录状态
|
|
|
318
|
- status: '',
|
|
|
319
|
- //调度时间
|
|
|
320
|
- gmtCreate: new Date(),
|
|
|
321
|
- //业务类型
|
|
|
322
|
- dispatchType: '',
|
|
|
323
|
- //当前的页数
|
|
|
324
|
- pageNum: 1,
|
|
|
325
|
- //当前每页显示多少条数据
|
|
|
326
|
- pageSize: 10
|
349
|
+ filters: {
|
|
|
350
|
+ trailerFrameNo: '',
|
|
|
351
|
+ veState: '',
|
|
|
352
|
+ veClassFlag: '',
|
327
|
},
|
353
|
},
|
328
|
- /**
|
|
|
329
|
- * 记录列表,总条数
|
|
|
330
|
- */
|
|
|
331
|
- total: 0,
|
|
|
332
|
- /**
|
|
|
333
|
- * 所有,调度记录列表
|
|
|
334
|
- */
|
|
|
335
|
- DispatchNoteList: [],
|
|
|
336
|
- /**
|
|
|
337
|
- * 我要调度车辆,表单
|
|
|
338
|
- */
|
|
|
339
|
- dispatchForm: {
|
|
|
340
|
- userName: '',
|
|
|
341
|
- userMobile: '',
|
|
|
342
|
- //车辆数量
|
|
|
343
|
- vehicleNumber: 1,
|
|
|
344
|
- //车辆类型
|
|
|
345
|
- vehicleType: '2',
|
|
|
346
|
- //场站位置
|
|
|
347
|
- station: '1',
|
|
|
348
|
- //调度业务类型
|
|
|
349
|
- dispatchType: '1'
|
354
|
+ rules: {
|
|
|
355
|
+ // trailerFrameNo: [
|
|
|
356
|
+ // { required: true, message: '请输入车牌号', trigger: 'blur' },
|
|
|
357
|
+ // // { min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' }
|
|
|
358
|
+ // ],
|
|
|
359
|
+ // veState: [
|
|
|
360
|
+ // { required: true, message: '请选择备案状态', trigger: 'change' }
|
|
|
361
|
+ // ],
|
|
|
362
|
+ // veClassFlag: [
|
|
|
363
|
+ // { required: true, message: '请选择业务类型', trigger: 'change' }
|
|
|
364
|
+ // ],
|
350
|
},
|
365
|
},
|
351
|
-
|
|
|
352
|
- /**
|
|
|
353
|
- * 查看记录明细,表单
|
|
|
354
|
- */
|
|
|
355
|
- showForm: {},
|
|
|
356
|
- /**
|
|
|
357
|
- * 控制添加用户对话框的显示与隐藏
|
|
|
358
|
- */
|
|
|
359
|
- dispatchFormVisible: false,
|
|
|
360
|
- /**
|
|
|
361
|
- * 控制查看调度记录明细,对话框的显示与隐藏
|
|
|
362
|
- */
|
|
|
363
|
- viewDialogVisible: false,
|
|
|
364
|
- /**
|
|
|
365
|
- * loading加载
|
|
|
366
|
- */
|
|
|
367
|
- /* 获取列表时的加载 */
|
366
|
+ recordList: [],
|
|
|
367
|
+ lockInfoList: [],
|
|
|
368
|
+ total: 0,
|
|
|
369
|
+ pageSize: 1,
|
|
|
370
|
+ limitSize: 10,
|
368
|
listLoading: false,
|
371
|
listLoading: false,
|
369
|
- /* 调度车辆时的加载 */
|
|
|
370
|
- dispatchLoading: false,
|
|
|
371
|
- /* 取消调度时的加载 */
|
|
|
372
|
- cancelLoading: false,
|
|
|
373
|
- /**
|
|
|
374
|
- * 业务类型,选项列表
|
|
|
375
|
- */
|
|
|
376
|
- dispatchTypeList: [
|
|
|
377
|
- {
|
|
|
378
|
- value: '1',
|
|
|
379
|
- label: '进站送货'
|
|
|
380
|
- },
|
|
|
381
|
- {
|
|
|
382
|
- value: '2',
|
|
|
383
|
- label: '出站提货'
|
|
|
384
|
- },
|
|
|
385
|
- {
|
|
|
386
|
- value: '3',
|
|
|
387
|
- label: '货物流转'
|
|
|
388
|
- },
|
|
|
389
|
- {
|
|
|
390
|
- value: '4',
|
|
|
391
|
- label: '货物调拨'
|
|
|
392
|
- }
|
|
|
393
|
- ],
|
|
|
394
|
- /**
|
|
|
395
|
- * 车辆类型,选项列表
|
|
|
396
|
- */
|
|
|
397
|
- vehicleTypeList: [
|
|
|
398
|
- {
|
|
|
399
|
- value: '1',
|
|
|
400
|
- label: '重型货车'
|
|
|
401
|
- },
|
|
|
402
|
- {
|
|
|
403
|
- value: '2',
|
|
|
404
|
- label: '中型货车'
|
|
|
405
|
- },
|
|
|
406
|
- {
|
|
|
407
|
- value: '3',
|
|
|
408
|
- label: '经济货车'
|
|
|
409
|
- },
|
|
|
410
|
- {
|
|
|
411
|
- value: '4',
|
|
|
412
|
- label: '微型货车'
|
|
|
413
|
- },
|
|
|
414
|
- {
|
|
|
415
|
- value: '5',
|
|
|
416
|
- label: '拖车'
|
|
|
417
|
- },
|
|
|
418
|
- {
|
|
|
419
|
- value: '6',
|
|
|
420
|
- label: '叉车'
|
|
|
421
|
- }
|
|
|
422
|
- ],
|
|
|
423
|
- /**
|
|
|
424
|
- * 记录状态,列表
|
|
|
425
|
- */
|
|
|
426
|
- statusList: [
|
|
|
427
|
- {
|
|
|
428
|
- value: '1',
|
|
|
429
|
- label: '完成状态'
|
|
|
430
|
- },
|
|
|
431
|
- {
|
|
|
432
|
- value: '2',
|
|
|
433
|
- label: '执行状态'
|
|
|
434
|
- },
|
|
|
435
|
- {
|
|
|
436
|
- value: '3',
|
|
|
437
|
- label: '取消状态'
|
|
|
438
|
- },
|
|
|
439
|
- {
|
|
|
440
|
- value: '4',
|
|
|
441
|
- label: '待执行状态'
|
|
|
442
|
- }
|
|
|
443
|
- ],
|
|
|
444
|
-
|
|
|
445
|
- /**
|
|
|
446
|
- * 场站位置,选项列表
|
|
|
447
|
- */
|
|
|
448
|
- stationList: [
|
|
|
449
|
- {
|
|
|
450
|
- value: '1',
|
|
|
451
|
- label: '西货站'
|
|
|
452
|
- },
|
|
|
453
|
- {
|
|
|
454
|
- value: '2',
|
|
|
455
|
- label: '综保区'
|
|
|
456
|
- },
|
|
|
457
|
- {
|
|
|
458
|
- value: '3',
|
|
|
459
|
- label: '军投'
|
|
|
460
|
- },
|
|
|
461
|
- {
|
|
|
462
|
- value: '4',
|
|
|
463
|
- label: '快邮'
|
|
|
464
|
- }
|
|
|
465
|
- ],
|
|
|
466
|
-
|
|
|
467
|
- queryFormRules: {
|
|
|
468
|
- userName: [
|
|
|
469
|
- {required: true, message: '请输入姓名', trigger: ['blur', 'change']},
|
|
|
470
|
- ],
|
|
|
471
|
- userMobile: [
|
|
|
472
|
- {required: true, message: '请输入联系方式', trigger: ['blur', 'change']},
|
|
|
473
|
- {validator: userMobileValid, trigger: 'blur'}
|
|
|
474
|
- ],
|
372
|
+ isAdmin: false,
|
|
|
373
|
+ addFormVisible: false,
|
|
|
374
|
+ disabledOne: true,
|
|
|
375
|
+ dialogMap: {
|
|
|
376
|
+ edit: '编辑',
|
|
|
377
|
+ save: '新增'
|
475
|
},
|
378
|
},
|
476
|
- /**
|
|
|
477
|
- * 调度车辆表单的验证规则对象
|
|
|
478
|
- */
|
|
|
479
|
- dispatchFormRules: {
|
|
|
480
|
- status: [
|
|
|
481
|
- {required: true, message: '请选择记录状态', trigger: ['blur', 'change']},
|
|
|
482
|
- ],
|
|
|
483
|
- gmtCreate: [
|
|
|
484
|
- {required: true, message: '请选择创建时间', trigger: ['blur', 'change']},
|
379
|
+ dialogStatus: undefined,
|
|
|
380
|
+ addloading: false,
|
|
|
381
|
+ addForm: {
|
|
|
382
|
+ mainPort: '4604',
|
|
|
383
|
+ proposer: '',
|
|
|
384
|
+ coCode: '',
|
|
|
385
|
+ domesticLisenceNo: '',
|
|
|
386
|
+ veOwnerName: '',
|
|
|
387
|
+ ownerInsideTel: '',
|
|
|
388
|
+ veFactoryDate: '',
|
|
|
389
|
+ selfWt: '',
|
|
|
390
|
+ veTon: '',
|
|
|
391
|
+ trailerLicenseNo: '',
|
|
|
392
|
+ apprNo: '',
|
|
|
393
|
+ veClassFlag: '',
|
|
|
394
|
+ memo: '',
|
|
|
395
|
+ createBy: '',
|
|
|
396
|
+ veState: 'N',
|
|
|
397
|
+ icCode: '',
|
|
|
398
|
+ lockNum: ''
|
|
|
399
|
+ },
|
|
|
400
|
+ options: [{
|
|
|
401
|
+ value: '0',
|
|
|
402
|
+ label: '普通车辆'
|
|
|
403
|
+ }, {
|
|
|
404
|
+ value: '1',
|
|
|
405
|
+ label: '调拨车辆'
|
|
|
406
|
+ },{
|
|
|
407
|
+ value: '2',
|
|
|
408
|
+ label: '分拨车辆'
|
|
|
409
|
+ }],
|
|
|
410
|
+ mainPortOptions: [{
|
|
|
411
|
+ value: '4604',
|
|
|
412
|
+ label: '4604'
|
|
|
413
|
+ }, {
|
|
|
414
|
+ value: '4620',
|
|
|
415
|
+ label: '4620'
|
|
|
416
|
+ }],
|
|
|
417
|
+
|
|
|
418
|
+ veStateOptions: [{
|
|
|
419
|
+ value: 'Y',
|
|
|
420
|
+ label: '黑名单'
|
|
|
421
|
+ }, {
|
|
|
422
|
+ value: 'N',
|
|
|
423
|
+ label: '白名单'
|
|
|
424
|
+ }],
|
|
|
425
|
+ addFormRules: {
|
|
|
426
|
+ mainPort: [
|
|
|
427
|
+ { required: true, message: '请输入海关关区', trigger: 'blur' }
|
485
|
],
|
428
|
],
|
486
|
- endTime: [
|
|
|
487
|
- {required: true, message: '请选择结束时间', trigger: ['blur', 'change']},
|
429
|
+ proposer: [
|
|
|
430
|
+ { required: true, message: '请输入挂靠单位', trigger: 'blur' }
|
488
|
],
|
431
|
],
|
489
|
- licensePlateNumber: [
|
|
|
490
|
- {required: true, message: '请输入车牌号', trigger: ['blur', 'change']},
|
432
|
+ coCode: [
|
|
|
433
|
+ { required: true, message: '请输入运输公司名称', trigger: 'blur' }
|
491
|
],
|
434
|
],
|
492
|
- userName: [
|
|
|
493
|
- {required: true, message: '请输入姓名', trigger: ['blur', 'change']},
|
435
|
+ domesticLisenceNo: [
|
|
|
436
|
+ { required: true, message: '请输入国内车牌', trigger: 'blur' }
|
494
|
],
|
437
|
],
|
495
|
- userMobile: [
|
|
|
496
|
- {required: true, message: '请输入联系方式', trigger: ['blur', 'change']},
|
|
|
497
|
- {validator: userMobileValid, trigger: 'blur'}
|
438
|
+ veOwnerName: [
|
|
|
439
|
+ { required: true, message: '请输入车主姓名', trigger: 'blur' }
|
498
|
],
|
440
|
],
|
499
|
- vehicleType: [
|
|
|
500
|
- {required: true, message: '请选择车辆类型', trigger: ['blur', 'change']},
|
|
|
501
|
-
|
441
|
+ veClassFlag: [
|
|
|
442
|
+ { required: true, message: '请选择车辆属性', trigger: 'blur' }
|
502
|
],
|
443
|
],
|
503
|
- vehicleNumber: [
|
|
|
504
|
- {required: true, message: '请选择车辆数量', trigger: ['blur', 'change']},
|
444
|
+ ownerInsideTel: [
|
|
|
445
|
+ { required: true, message: '手机号不能为空', trigger: 'blur' },
|
|
|
446
|
+ { type: 'number', message: '手机号格式不正确', trigger: 'blur',
|
|
|
447
|
+ transform(value){
|
|
|
448
|
+ var phone = 11 && /^((13|14|15|16|17|18|19)[0-9]{1}\d{8})$/
|
|
|
449
|
+ if (!phone.test(value)){
|
|
|
450
|
+ return false;
|
|
|
451
|
+ }else {
|
|
|
452
|
+ return Number(value);
|
|
|
453
|
+ }
|
|
|
454
|
+ }}
|
505
|
],
|
455
|
],
|
506
|
- station: [
|
|
|
507
|
- {required: true, message: '请选择场站位置', trigger: ['blur', 'change']},
|
456
|
+ veFactoryDate: [
|
|
|
457
|
+ { required: true, message: '请选择驾驶证有效期', trigger: 'blur' }
|
508
|
],
|
458
|
],
|
509
|
- dispatchType: [
|
|
|
510
|
- {required: true, message: '请选择调度业务类型', trigger: ['blur', 'change']},
|
459
|
+ selfWt: [
|
|
|
460
|
+ { required: true, message: '请输入车辆自重', trigger: 'blur' }
|
511
|
],
|
461
|
],
|
|
|
462
|
+ veState: [
|
|
|
463
|
+ { required: true, message: '请选择备案状态', trigger: 'blur' }
|
|
|
464
|
+ ]
|
|
|
465
|
+ },
|
|
|
466
|
+ dialogVisible:false,
|
|
|
467
|
+ form: {
|
|
|
468
|
+ lisenceNo: '',
|
|
|
469
|
+ username: '',
|
|
|
470
|
+ id:'',
|
|
|
471
|
+ starttime:''
|
512
|
},
|
472
|
},
|
|
|
473
|
+ usernames:[],
|
|
|
474
|
+ queryInfo: {
|
|
|
475
|
+ vno: '',
|
|
|
476
|
+ vnocolor: '2'
|
|
|
477
|
+ },
|
|
|
478
|
+ lisenceNoSatus:'',
|
|
|
479
|
+ formLabelWidth: '120px',
|
|
|
480
|
+ loading:false,
|
513
|
}
|
481
|
}
|
514
|
},
|
482
|
},
|
|
|
483
|
+ mounted() {
|
|
|
484
|
+ this.isAdmin = isAdmin();
|
|
|
485
|
+ this.getReCord();
|
|
|
486
|
+ },
|
515
|
methods: {
|
487
|
methods: {
|
516
|
- /**
|
|
|
517
|
- * 监听,调度车辆对话框的关闭事件
|
|
|
518
|
- */
|
|
|
519
|
- dispatchDialogClosed() {
|
|
|
520
|
- //重置对话框
|
|
|
521
|
- this.$refs.dispatchFormRef.resetFields();
|
488
|
+ //出任务
|
|
|
489
|
+ handlOut(index,row){
|
|
|
490
|
+ this.dialogVisible=true;
|
|
|
491
|
+ this.form.lisenceNo=row.domesticLisenceNo;
|
|
|
492
|
+ this.getUsers();
|
|
|
493
|
+ this.getLisenceNoStatus(row.domesticLisenceNo)
|
522
|
},
|
494
|
},
|
523
|
-
|
|
|
524
|
- /**
|
|
|
525
|
- * 监听,查看调度记录对话框的关闭事件
|
|
|
526
|
- */
|
|
|
527
|
- showDialogClosed() {
|
|
|
528
|
- //重置对话框
|
|
|
529
|
- this.$refs.showFormRef.resetFields();
|
495
|
+ //确定出任务
|
|
|
496
|
+ saveOut() {
|
|
|
497
|
+ const _this = this
|
|
|
498
|
+ insertSelective(this.form).then((response) => {
|
|
|
499
|
+ const res = response.data
|
|
|
500
|
+ if (res.code !== '200') {
|
|
|
501
|
+ return _this.$message.error('出任务,失败!')
|
|
|
502
|
+ }
|
|
|
503
|
+ _this.$message.success('出任务,成功!')
|
|
|
504
|
+ this.dialogVisible=false;
|
|
|
505
|
+ this.$router.push(
|
|
|
506
|
+ {
|
|
|
507
|
+ path:'conveyance'
|
|
|
508
|
+ }
|
|
|
509
|
+ )
|
|
|
510
|
+ }).catch(error => {
|
|
|
511
|
+ // 关闭加载
|
|
|
512
|
+ _this.$message.warning('车辆已出任务')
|
|
|
513
|
+ })
|
530
|
},
|
514
|
},
|
|
|
515
|
+ //获取用户名
|
|
|
516
|
+ getUsers:function() {
|
|
|
517
|
+ let para = {};
|
|
|
518
|
+ this.listLoading = true;
|
|
|
519
|
+ getUserList(para).then((res) => {
|
|
|
520
|
+ let response = res.data.data;
|
|
|
521
|
+ console.log(response)
|
|
|
522
|
+ this.usernames=res.data.data.list;
|
|
|
523
|
+ }).catch((error) => {
|
|
|
524
|
+ this.$message.error(error.toString());
|
|
|
525
|
+ });
|
531
|
|
526
|
|
532
|
- /**
|
|
|
533
|
- * 监听pageSize改变的事件
|
|
|
534
|
- */
|
|
|
535
|
- handleSizeChange(newSize) {
|
|
|
536
|
- this.queryInfo.pageSize = newSize;
|
|
|
537
|
- //刷新调度记录列表
|
|
|
538
|
- this.getDispatchNodeList();
|
|
|
539
|
},
|
527
|
},
|
540
|
- /**
|
|
|
541
|
- * 监听当前页码值改变的事件
|
|
|
542
|
- */
|
|
|
543
|
- handleCurrentChange(newPage) {
|
|
|
544
|
- this.queryInfo.pageNum = newPage;
|
|
|
545
|
- //刷新调度记录列表
|
|
|
546
|
- this.getDispatchNodeList();
|
|
|
547
|
- },
|
|
|
548
|
- /**
|
|
|
549
|
- * 打开,查看调度记录明细,对话框
|
|
|
550
|
- * @param row
|
|
|
551
|
- */
|
|
|
552
|
- showDialogVisible(row) {
|
|
|
553
|
- this.showForm = row;
|
|
|
554
|
- this.viewDialogVisible = true;
|
528
|
+ //车辆状态
|
|
|
529
|
+ getLisenceNoStatus(lisenceNo){
|
|
|
530
|
+ this.queryInfo.vno=lisenceNo;
|
|
|
531
|
+ selectVehicle(this.queryInfo).then((response) => {
|
|
|
532
|
+ const res = response.data;
|
|
|
533
|
+ this.lisenceNoSatus=res.data.data.firstVcl.offlineState;
|
|
|
534
|
+ }).catch(error => {
|
|
|
535
|
+ this.$message.error('获取车辆状态失败:' + error.toString());
|
|
|
536
|
+ });
|
555
|
},
|
537
|
},
|
556
|
- /**
|
|
|
557
|
- * 用户端,获取车辆调度记录
|
|
|
558
|
- */
|
|
|
559
|
- getDispatchNodeList() {
|
538
|
+ //获取备案列表
|
|
|
539
|
+ getReCord(val) {
|
|
|
540
|
+ let pageSize = this.pageSize;
|
|
|
541
|
+ if (val != undefined){
|
|
|
542
|
+ pageSize = val;
|
|
|
543
|
+ }
|
|
|
544
|
+ let para = {
|
|
|
545
|
+ pageSize: pageSize,
|
|
|
546
|
+ limitSize: this.limitSize,
|
|
|
547
|
+ trailerFrameNo: this.filters.trailerFrameNo,
|
|
|
548
|
+ veState: this.filters.veState,
|
|
|
549
|
+ veClassFlag: this.filters.veClassFlag,
|
|
|
550
|
+ userId: loginedUserInfo().userId
|
|
|
551
|
+ };
|
|
|
552
|
+ if (isAdmin()){
|
|
|
553
|
+ para.userId = '';
|
|
|
554
|
+ }
|
560
|
this.listLoading = true;
|
555
|
this.listLoading = true;
|
561
|
- selectDispatchNoteList(this.queryInfo).then((response) => {
|
|
|
562
|
- let res = response.data;
|
|
|
563
|
- if (res.code !== '200') {
|
|
|
564
|
- this.listLoading = false;
|
|
|
565
|
- return this.$message.error('获取车辆调度列表失败');
|
|
|
566
|
- }
|
|
|
567
|
- // 获取车辆调度列表数据
|
|
|
568
|
- this.DispatchNoteList = res.data.list;
|
|
|
569
|
- // 获取列表的总记录数
|
|
|
570
|
- this.total = res.data.total;
|
556
|
+ list(para).then((res) => {
|
|
|
557
|
+ this.total = res.data.data.total;
|
|
|
558
|
+ this.recordList = res.data.data.list;
|
571
|
this.listLoading = false;
|
559
|
this.listLoading = false;
|
572
|
- this.$message.success('获取车辆调度列表,成功!');
|
|
|
573
|
- }).catch(error => {
|
560
|
+ }).catch((error) => {
|
574
|
this.listLoading = false;
|
561
|
this.listLoading = false;
|
575
|
- this.$message.error(error.toString());
|
562
|
+ if(null!= error.response && error.response!==undefined){
|
|
|
563
|
+ let status= error.response.status;
|
|
|
564
|
+ let msg = error.response.statusText;
|
|
|
565
|
+ alert(status+msg);
|
|
|
566
|
+ }else {
|
|
|
567
|
+ alert(error);
|
|
|
568
|
+ }
|
576
|
});
|
569
|
});
|
577
|
},
|
570
|
},
|
578
|
- /**
|
|
|
579
|
- * 用户端,我要调度车辆,方法
|
|
|
580
|
- */
|
|
|
581
|
- dispatchVehicle() {
|
|
|
582
|
- this.dispatchLoading = true;
|
|
|
583
|
- dispatch(this.dispatchForm).then((response) => {
|
|
|
584
|
- let res = response.data;
|
|
|
585
|
- if (res.code !== '200') {
|
|
|
586
|
- this.dispatchLoading = false;
|
|
|
587
|
- return this.$message.error('车辆繁忙,请稍后重试');
|
571
|
+
|
|
|
572
|
+ // 分页
|
|
|
573
|
+ handleSizeChange(val) {
|
|
|
574
|
+ this.limitSize = val;
|
|
|
575
|
+ this.getReCord();
|
|
|
576
|
+ },
|
|
|
577
|
+ handleCurrentChange(val) {
|
|
|
578
|
+ this.pageSize = val;
|
|
|
579
|
+ this.getReCord();
|
|
|
580
|
+
|
|
|
581
|
+ },
|
|
|
582
|
+
|
|
|
583
|
+ findTrailerFrameNo(value){
|
|
|
584
|
+ let para = {
|
|
|
585
|
+ trailerFrameNo: value
|
|
|
586
|
+ };
|
|
|
587
|
+ list(para).then((res) => {
|
|
|
588
|
+ if (res.data.data.total > 0){
|
|
|
589
|
+ this.addForm.mainPort = res.data.data.list[0].mainPort;
|
|
|
590
|
+ this.addForm.proposer = res.data.data.list[0].proposer;
|
|
|
591
|
+ this.addForm.coCode = res.data.data.list[0].coCode;
|
|
|
592
|
+ this.addForm.domesticLisenceNo = res.data.data.list[0].domesticLisenceNo;
|
|
|
593
|
+ this.addForm.veOwnerName = res.data.data.list[0].veOwnerName;
|
|
|
594
|
+ this.addForm.ownerInsideTel = res.data.data.list[0].ownerInsideTel;
|
|
|
595
|
+ this.addForm.veFactoryDate = res.data.data.list[0].veFactoryDate;
|
|
|
596
|
+ this.addForm.selfWt = res.data.data.list[0].selfWt;
|
|
|
597
|
+ this.addForm.veTon = res.data.data.list[0].veTon;
|
|
|
598
|
+ this.addForm.trailerLicenseNo = res.data.data.list[0].trailerLicenseNo;
|
|
|
599
|
+ this.addForm.apprNo = res.data.data.list[0].apprNo;
|
|
|
600
|
+ this.addForm.veClassFlag = res.data.data.list[0].veClassFlag;
|
|
|
601
|
+ this.addForm.memo = res.data.data.list[0].memo;
|
|
|
602
|
+ this.addForm.veState = res.data.data.list[0].veState;
|
|
|
603
|
+ this.$message({
|
|
|
604
|
+ message: '该车辆已有备案',
|
|
|
605
|
+ type: 'error'
|
|
|
606
|
+ });
|
|
|
607
|
+ }else {
|
|
|
608
|
+ this.$message({
|
|
|
609
|
+ message: '该车辆没有备案',
|
|
|
610
|
+ type: 'success'
|
|
|
611
|
+ });
|
|
|
612
|
+ this.addForm.mainPort = '4604';
|
|
|
613
|
+ this.addForm.proposer = '';
|
|
|
614
|
+ this.addForm.coCode = '';
|
|
|
615
|
+ this.addForm.veOwnerName = '';
|
|
|
616
|
+ this.addForm.ownerInsideTel = '';
|
|
|
617
|
+ this.addForm.veFactoryDate = '';
|
|
|
618
|
+ this.addForm.selfWt = '';
|
|
|
619
|
+ this.addForm.veTon = '';
|
|
|
620
|
+ this.addForm.trailerLicenseNo = '';
|
|
|
621
|
+ this.addForm.apprNo = '';
|
|
|
622
|
+ this.addForm.veClassFlag = '';
|
|
|
623
|
+ this.addForm.memo = '';
|
|
|
624
|
+ this.addForm.veState = 'N';
|
|
|
625
|
+ }
|
|
|
626
|
+ }).catch((error) => {
|
|
|
627
|
+ if(null!= error.response && error.response!==undefined){
|
|
|
628
|
+ let status= error.response.status;
|
|
|
629
|
+ let msg = error.response.statusText;
|
|
|
630
|
+ alert(status+msg);
|
|
|
631
|
+ }else {
|
|
|
632
|
+ alert(error);
|
588
|
}
|
633
|
}
|
589
|
- //关闭加载
|
|
|
590
|
- this.dispatchLoading = false;
|
|
|
591
|
- this.$message.success('调度车辆成功!');
|
|
|
592
|
- //调度成功,隐藏对话框
|
|
|
593
|
- this.dispatchFormVisible = false;
|
|
|
594
|
- /* 将调度车辆信息=>查询列表 */
|
|
|
595
|
- // 用户名称
|
|
|
596
|
- this.queryInfo.userName = this.dispatchForm.userName;
|
|
|
597
|
- // 联系方式
|
|
|
598
|
- this.queryInfo.userMobile = this.dispatchForm.userMobile;
|
|
|
599
|
- // 调度业务类型
|
|
|
600
|
- this.queryInfo.dispatchType = this.dispatchForm.dispatchType;
|
|
|
601
|
- // 创建时间为当前时间(需留意)
|
|
|
602
|
- this.queryInfo.gmtCreate = new Date();
|
|
|
603
|
- //刷新车辆调度列表
|
|
|
604
|
- this.getDispatchNodeList();
|
|
|
605
|
- }).catch(error => {
|
|
|
606
|
- this.dispatchLoading = false;
|
|
|
607
|
- this.$message.error(error.toString());
|
|
|
608
|
});
|
634
|
});
|
609
|
},
|
635
|
},
|
610
|
- /**
|
|
|
611
|
- * 用户端,取消调度车辆,方法
|
|
|
612
|
- */
|
|
|
613
|
- cancelDispatch(row) {
|
|
|
614
|
- //弹框询问是否取消车辆调度
|
|
|
615
|
- this.$confirm('此操作将取消该车辆的调度, 是否继续?', '警告', {
|
|
|
616
|
- confirmButtonText: '确定取消调度',
|
|
|
617
|
- cancelButtonText: '取消',
|
|
|
618
|
- type: 'warning'
|
636
|
+
|
|
|
637
|
+ veClassFlag: function(row, column){
|
|
|
638
|
+ if (row.veClassFlag == '0'){
|
|
|
639
|
+ return "普通车辆"
|
|
|
640
|
+ }else if(row.veClassFlag == '1'){
|
|
|
641
|
+ return "调拨车辆"
|
|
|
642
|
+ }else if (row.veClassFlag == '2'){
|
|
|
643
|
+ return "分拨车辆"
|
|
|
644
|
+ }
|
|
|
645
|
+ },
|
|
|
646
|
+ handleDel(index, row){
|
|
|
647
|
+ this.$confirm('确认删除吗?', '提示', {}).then(() => {
|
|
|
648
|
+ let param = {
|
|
|
649
|
+ id: row.id,
|
|
|
650
|
+ domesticLisenceNo: row.domesticLisenceNo,
|
|
|
651
|
+ mainPort: row.mainPort
|
619
|
}
|
652
|
}
|
620
|
- ).then(() => {
|
|
|
621
|
- //开启加载
|
|
|
622
|
- this.cancelLoading = true;
|
|
|
623
|
- cancel(row).then((response) => {
|
|
|
624
|
- let res = response.data;
|
|
|
625
|
- if (res.code !== '200') {
|
|
|
626
|
- this.cancelLoading = false;
|
|
|
627
|
- return this.$message.error('取消车辆调度,失败!请人工介入');
|
653
|
+ remove(param).then((res) => {
|
|
|
654
|
+ if (res.data.code == 200){
|
|
|
655
|
+ this.$message({
|
|
|
656
|
+ message: '删除成功',
|
|
|
657
|
+ type: 'success'
|
|
|
658
|
+ });
|
|
|
659
|
+ }else {
|
|
|
660
|
+ this.$message({
|
|
|
661
|
+ message: '删除失败',
|
|
|
662
|
+ type: 'error'
|
|
|
663
|
+ });
|
628
|
}
|
664
|
}
|
629
|
- //关闭加载
|
|
|
630
|
- this.cancelLoading = false;
|
|
|
631
|
- this.$message.success('取消调度车辆,成功!');
|
|
|
632
|
- //刷新车辆调度列表
|
|
|
633
|
- this.getDispatchNodeList();
|
|
|
634
|
- }).catch(error => {
|
|
|
635
|
- //关闭加载
|
|
|
636
|
- this.cancelLoading = false;
|
|
|
637
|
- this.$message.error(error.toString());
|
665
|
+ this.getReCord();
|
|
|
666
|
+ }).catch((error) => {
|
|
|
667
|
+
|
638
|
});
|
668
|
});
|
639
|
- }).catch(() => {
|
669
|
+ }).catch(() =>{
|
|
|
670
|
+
|
640
|
});
|
671
|
});
|
641
|
},
|
672
|
},
|
642
|
- /**
|
|
|
643
|
- * 获取用户信息
|
|
|
644
|
- */
|
|
|
645
|
- getUserInfo(param) {
|
|
|
646
|
- getUser(param).then((response) => {
|
|
|
647
|
- let res = response.data;
|
|
|
648
|
- if (res.code !== '200') {
|
|
|
649
|
- return this.$message.error('网络异常,请刷新界面!');
|
|
|
650
|
- }
|
|
|
651
|
- if (res.data.list.length === 0) {
|
|
|
652
|
- return this.$message.error('网络异常,请刷新界面!');
|
673
|
+
|
|
|
674
|
+ companyAdd:function(){
|
|
|
675
|
+ this.dialogStatus= "save";
|
|
|
676
|
+ this.addFormVisible = true;
|
|
|
677
|
+ this.$refs.addForm.resetFields();
|
|
|
678
|
+ if (this.$refs.addForm !==undefined) {
|
|
|
679
|
+ this.$refs.addForm.resetFields();
|
|
|
680
|
+ }
|
|
|
681
|
+ },
|
|
|
682
|
+ handlEdit:function(index, row){
|
|
|
683
|
+ this.dialogStatus = "edit";
|
|
|
684
|
+ this.addFormVisible = true;
|
|
|
685
|
+ this.addForm = Object.assign({}, row);
|
|
|
686
|
+ },
|
|
|
687
|
+
|
|
|
688
|
+ addSubmit:function(){
|
|
|
689
|
+ this.$refs.addForm.validate((valid) => {
|
|
|
690
|
+ if (valid) {
|
|
|
691
|
+ this.$confirm('确认提交吗?', '提示', {}).then(() => {
|
|
|
692
|
+ this.addloading = true;
|
|
|
693
|
+ this.addForm.createBy = JSON.parse(sessionStorage.getItem('user')).id;
|
|
|
694
|
+ let para = Object.assign({}, this.addForm);
|
|
|
695
|
+ save(para).then((res) => {
|
|
|
696
|
+ if (res.data.code == 200){
|
|
|
697
|
+ this.$message({
|
|
|
698
|
+ message: '提交成功',
|
|
|
699
|
+ type: 'success'
|
|
|
700
|
+ });
|
|
|
701
|
+ this.addFormVisible = false;
|
|
|
702
|
+ this.addloading = false;
|
|
|
703
|
+ this.getReCord();
|
|
|
704
|
+ }else {
|
|
|
705
|
+ this.addloading = false;
|
|
|
706
|
+ this.$message({
|
|
|
707
|
+ message: res.data.msg,
|
|
|
708
|
+ type: 'error'
|
|
|
709
|
+ });
|
|
|
710
|
+ }
|
|
|
711
|
+ }).catch((error) => {
|
|
|
712
|
+ alert(error);
|
|
|
713
|
+ this.addloading = false;
|
|
|
714
|
+ });
|
|
|
715
|
+ })
|
|
|
716
|
+ } else {
|
|
|
717
|
+ console.log('error submit!!');
|
|
|
718
|
+ this.addloading = false;
|
|
|
719
|
+ return false;
|
653
|
}
|
720
|
}
|
654
|
- if (res.data.list[0].mobilephone === null || res.data.list[0].mobilephone === '') {
|
|
|
655
|
- return this.$message.error('请填写您的手机号码');
|
721
|
+ });
|
|
|
722
|
+ },
|
|
|
723
|
+
|
|
|
724
|
+ editSubmit:function(){
|
|
|
725
|
+ this.$refs.addForm.validate((valid) => {
|
|
|
726
|
+ if (valid) {
|
|
|
727
|
+ this.$confirm('确认提交吗?', '提示', {}).then(() => {
|
|
|
728
|
+ this.addloading = true;
|
|
|
729
|
+ let para = Object.assign({}, this.addForm);
|
|
|
730
|
+ edit(para).then((res) => {
|
|
|
731
|
+ if (res.data.code == 200){
|
|
|
732
|
+ this.$message({
|
|
|
733
|
+ message: '修改成功',
|
|
|
734
|
+ type: 'success'
|
|
|
735
|
+ });
|
|
|
736
|
+ this.addFormVisible = false
|
|
|
737
|
+ this.addloading = false;
|
|
|
738
|
+ this.getReCord();
|
|
|
739
|
+ }else {
|
|
|
740
|
+ this.addloading = false;
|
|
|
741
|
+ this.$message({
|
|
|
742
|
+ message: res.data.msg,
|
|
|
743
|
+ type: 'error'
|
|
|
744
|
+ });
|
|
|
745
|
+ }
|
|
|
746
|
+ }).catch((error) => {
|
|
|
747
|
+ alert(error);
|
|
|
748
|
+ this.addloading = false;
|
|
|
749
|
+ });
|
|
|
750
|
+ })
|
|
|
751
|
+ } else {
|
|
|
752
|
+ this.addloading = false;
|
|
|
753
|
+ console.log('error submit!!');
|
|
|
754
|
+ return false;
|
656
|
}
|
755
|
}
|
657
|
- this.queryInfo.userMobile = res.data.list[0].mobilephone;
|
|
|
658
|
- this.dispatchForm.userMobile = res.data.list[0].mobilephone;
|
|
|
659
|
- this.$message.success('欢迎使用,车辆调度系统!');
|
|
|
660
|
- }).catch((error) => {
|
|
|
661
|
- this.$message.error(error.toString());
|
|
|
662
|
});
|
756
|
});
|
663
|
},
|
757
|
},
|
664
|
- /**
|
|
|
665
|
- * 根据状态的不同区分颜色
|
|
|
666
|
- *
|
|
|
667
|
- * @param row
|
|
|
668
|
- * @param rowIndex
|
|
|
669
|
- */
|
|
|
670
|
- rowStatus({row, rowIndex}) {
|
|
|
671
|
- if (row.status === '1') {
|
|
|
672
|
- return 'success-row';
|
|
|
673
|
- }
|
|
|
674
|
- if (row.status === '2') {
|
|
|
675
|
- return 'run-row';
|
|
|
676
|
- }
|
|
|
677
|
- if (row.status === '3') {
|
|
|
678
|
- return 'cancel-row';
|
758
|
+ operationType:function (row, column) {
|
|
|
759
|
+ if (row.operationType == '1'){
|
|
|
760
|
+ return '审批通过'
|
|
|
761
|
+ }else if (row.operationType == '0'){
|
|
|
762
|
+ return '需手动审批通过'
|
679
|
}
|
763
|
}
|
680
|
- if (row.status === '4') {
|
|
|
681
|
- return 'await-row';
|
|
|
682
|
- }
|
|
|
683
|
- }
|
|
|
684
|
- },
|
|
|
685
|
- mounted() {
|
|
|
686
|
- var user = sessionStorage.getItem('user');
|
|
|
687
|
- if (user) {
|
|
|
688
|
- user = JSON.parse(user);
|
|
|
689
|
- console.log(user);
|
|
|
690
|
- this.queryInfo.userName = user.username;
|
|
|
691
|
- this.dispatchForm.userName = user.username;
|
|
|
692
|
- let param = {
|
|
|
693
|
- userName: this.queryInfo.userName
|
764
|
+ },
|
|
|
765
|
+
|
|
|
766
|
+ querySearch(queryString, cb) {
|
|
|
767
|
+ var restaurants = this.lockInfoList;
|
|
|
768
|
+ var results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants;
|
|
|
769
|
+ // 调用 callback 返回建议列表的数据
|
|
|
770
|
+ cb(results);
|
|
|
771
|
+ },
|
|
|
772
|
+
|
|
|
773
|
+ createFilter(queryString) {
|
|
|
774
|
+
|
|
|
775
|
+ return (restaurant) => {
|
|
|
776
|
+ let rs = (restaurant.lockNum.indexOf(queryString) >= 0)
|
|
|
777
|
+ return rs;
|
694
|
};
|
778
|
};
|
695
|
- this.getUserInfo(param);
|
|
|
696
|
- }
|
|
|
697
|
- /**
|
|
|
698
|
- * 渲染完成之后,在获取调度记录列表
|
|
|
699
|
- */
|
|
|
700
|
- // this.getDispatchNodeList();
|
|
|
701
|
- }
|
779
|
+ },
|
|
|
780
|
+
|
|
|
781
|
+ // 获取关锁列表
|
|
|
782
|
+ // getLockInfoList(val) {
|
|
|
783
|
+ // let pageSize = this.pageSize;
|
|
|
784
|
+ // if (val != undefined){
|
|
|
785
|
+ // pageSize = val;
|
|
|
786
|
+ // }
|
|
|
787
|
+ // let para = {
|
|
|
788
|
+ // pageSize: pageSize,
|
|
|
789
|
+ // limitSize: this.limitSize
|
|
|
790
|
+ // };
|
|
|
791
|
+ // this.listLoading = true;
|
|
|
792
|
+ // lockList(para).then((res) => {
|
|
|
793
|
+ // this.lockInfoList = res.data.data.list;
|
|
|
794
|
+ // }).catch((error) => {
|
|
|
795
|
+ // this.listLoading = false;
|
|
|
796
|
+ // if(null!= error.response && error.response!==undefined){
|
|
|
797
|
+ // let status= error.response.status;
|
|
|
798
|
+ // let msg = error.response.statusText;
|
|
|
799
|
+ // alert(status+msg);
|
|
|
800
|
+ // }else {
|
|
|
801
|
+ // alert(error);
|
|
|
802
|
+ // }
|
|
|
803
|
+ // });
|
|
|
804
|
+ // },
|
|
|
805
|
+ },
|
|
|
806
|
+
|
702
|
}
|
807
|
}
|
|
|
808
|
+
|
703
|
</script>
|
809
|
</script>
|
704
|
|
810
|
|
705
|
-<style>
|
|
|
706
|
- /* 完成状态 */
|
|
|
707
|
- .el-table .success-row {
|
|
|
708
|
- background: rgba(64, 158, 255, 0.2);
|
|
|
709
|
- }
|
|
|
710
|
|
811
|
|
711
|
- /* 执行状态 */
|
|
|
712
|
- .el-table .run-row {
|
|
|
713
|
- background: rgba(103, 194, 58, 0.2);
|
812
|
+<style scoped>
|
|
|
813
|
+ .my-text-area .prepand{
|
|
|
814
|
+ float: left;
|
|
|
815
|
+ width:89px;
|
|
|
816
|
+ height: 28px;
|
|
|
817
|
+ font-size: 12px;
|
|
|
818
|
+ line-height: 28px;
|
714
|
}
|
819
|
}
|
715
|
-
|
|
|
716
|
- /* 取消状态 */
|
|
|
717
|
- .el-table .cancel-row {
|
|
|
718
|
- background: rgba(144, 147, 153, 0.2);
|
820
|
+</style>
|
|
|
821
|
+<style>
|
|
|
822
|
+ .my-text-area .el-textarea__inner{
|
|
|
823
|
+ min-height: 28px;
|
|
|
824
|
+ height: 28px;
|
|
|
825
|
+ border-bottom-left-radius: 0;
|
|
|
826
|
+ border-top-left-radius: 0;
|
719
|
}
|
827
|
}
|
720
|
-
|
|
|
721
|
- /* 待执行状态 */
|
|
|
722
|
- .el-table .await-row {
|
|
|
723
|
- background: rgba(230, 162, 60, 0.2);
|
828
|
+ .rounded-corner {
|
|
|
829
|
+ border-radius: 10px; /* 设置圆角的半径为10像素 */
|
|
|
830
|
+ background-color: #f0f0f0; /* 背景颜色 */
|
|
|
831
|
+ padding: 10px; /* 内边距 */
|
|
|
832
|
+ margin: 10px; /* 外边距 */
|
|
|
833
|
+ box-shadow: 0 0 5px #ddd; /* 盒子阴影效果 */
|
724
|
}
|
834
|
}
|
725
|
</style> |
835
|
</style> |