liuzhihui 2 yıl önce
ebeveyn
işleme
f7dca2a916

+ 2 - 1
CallCenterWeb.UI/RMYY/src/components/context/commonSelect/selectOrderType.vue

121
   },
121
   },
122
   created() {
122
   created() {
123
     // 默认数据加载
123
     // 默认数据加载
124
-    this.defaultData()
124
+    // this.defaultData()
125
+    this.commonOrderType(1,0)
125
     // 编辑详情展示
126
     // 编辑详情展示
126
     this.showDetail()
127
     this.showDetail()
127
   },
128
   },

+ 46 - 0
CallCenterWeb.UI/RMYY/src/utils/fieldsData.js

546
     key: 'chapinglv',
546
     key: 'chapinglv',
547
     value: '差评率'
547
     value: '差评率'
548
   }
548
   }
549
+  ],
550
+  _vehicleDispatch_vehicleSchedulingList: [
551
+    {
552
+      key: 'F_WorkOrderCode',
553
+      value: '工单编号'
554
+    },
555
+    {
556
+      key: 'F_TypeName',
557
+      value: '类别'
558
+    },
559
+    {
560
+      key: 'F_Content',
561
+      value: '调度内容'
562
+    },
563
+    {
564
+      key: 'F_DepartPlace',
565
+      value: '报工位置'
566
+    },
567
+    {
568
+      key: 'F_LocationNew',
569
+      value: '科室位置'
570
+    },
571
+    {
572
+      key: 'F_Dispatch',
573
+      value: '出车地点'
574
+    },
575
+    {
576
+      key: 'F_Destination',
577
+      value: '目的地'
578
+    },
579
+    {
580
+      key: 'F_CreateTime',
581
+      value: '申请时间'
582
+    },
583
+    {
584
+      key: 'F_UseTime',
585
+      value: '用车时间'
586
+    },
587
+    {
588
+      key: 'F_CarTypeName',
589
+      value: '车辆类型'
590
+    },
591
+    {
592
+      key: 'StateName',
593
+      value: '工单状态'
594
+    }
549
   ]
595
   ]
550
 
596
 
551
 }
597
 }

+ 372 - 458
CallCenterWeb.UI/RMYY/src/views/vehicleDispatch/vehicleScheduling/vehicleSchedulingList/index.vue

1
 <template>
1
 <template>
2
   <div class="app-container">
2
   <div class="app-container">
3
     <div class="filter-container">
3
     <div class="filter-container">
4
-      <el-input
5
-        v-model="ordercode"
6
-        clearable
7
-        placeholder="请输入工单编号"
8
-        size="medium"
9
-        class="filter-item"
10
-      />
11
-      <el-select
12
-        v-model="type"
13
-        clearable
14
-        placeholder="请选择工单类型"
15
-        size="medium"
16
-      >
17
-        <el-option
18
-          v-for="item in typeList"
19
-          :key="item.fid"
20
-          :label="item.fname"
21
-          :value="item.fid"
22
-        />
4
+      <el-input v-model="ordercode" clearable placeholder="请输入工单编号" size="medium" class="filter-item" />
5
+      <el-select v-model="type" clearable placeholder="请选择工单类型" size="medium">
6
+        <el-option v-for="item in typeList" :key="item.fid" :label="item.fname" :value="item.fid" />
23
       </el-select>
7
       </el-select>
24
-      <el-date-picker
25
-        v-model="startTime"
26
-        size="medium"
27
-        type="datetimerange"
28
-        format="yyyy-MM-dd HH:mm:ss"
29
-        value-format="yyyy-MM-dd HH:mm:ss"
30
-        range-separator="至"
31
-        start-placeholder="开始日期"
32
-        end-placeholder="结束日期"
33
-      />
34
-      <el-button
35
-        type="primary"
36
-        class="filter-item"
37
-        size="medium"
38
-        icon="el-icon-search"
39
-        @click="btn_search"
40
-        >搜索</el-button
41
-      >
42
-      <el-button type="primary" size="medium" class="filter-btn" @click="btn_export"
43
-        >导出</el-button
44
-      >
45
-      <el-button
46
-        type="primary"
47
-        class="filter-item"
48
-        size="medium"
49
-        @click="btn_distribute"
50
-        >批量分配</el-button
51
-      >
8
+      <el-date-picker v-model="startTime" size="medium" type="datetimerange" format="yyyy-MM-dd HH:mm:ss"
9
+        value-format="yyyy-MM-dd HH:mm:ss" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" />
10
+      <el-button type="primary" class="filter-item" size="medium" icon="el-icon-search"
11
+        @click="btn_search">搜索</el-button>
12
+      <el-button type="primary" size="medium" class="filter-btn" @click="btn_export">导出</el-button>
13
+      <el-button type="primary" class="filter-item" size="medium" @click="btn_distribute">批量分配</el-button>
14
+      <el-button type="primary" class="filter-btn" size="medium" icon="el-icon-s-tools"
15
+        @click="btn_add_list">
16
+        设置列
17
+      </el-button>
52
     </div>
18
     </div>
53
     <el-tabs v-model="activeName" @tab-click="handleClick">
19
     <el-tabs v-model="activeName" @tab-click="handleClick">
54
       <el-tab-pane label="待分配" name="0" />
20
       <el-tab-pane label="待分配" name="0" />
57
       <el-tab-pane label="已完成" name="10" />
23
       <el-tab-pane label="已完成" name="10" />
58
       <el-tab-pane label="全部" name="-1" />
24
       <el-tab-pane label="全部" name="-1" />
59
     </el-tabs>
25
     </el-tabs>
60
-    <el-table
61
-      v-loading="loading"
62
-      :data="dataLists"
63
-      border
64
-      stripe
65
-      @selection-change="handleSelectionChange"
66
-    >
26
+    <el-table v-loading="loading" ref="multipleTable" :data="dataLists" border stripe @selection-change="handleSelectionChange">
67
       <el-table-column type="selection" width="55" />
27
       <el-table-column type="selection" width="55" />
68
-      <el-table-column
69
-        prop="F_WorkOrderCode"
70
-        label="工单编号"
71
-        align="center"
72
-        min-width="130"
73
-      >
28
+      <el-table-column v-if="fieldListFlag.F_WorkOrderCode" prop="F_WorkOrderCode" label="工单编号" align="center" min-width="130">
74
         <template slot-scope="scope">
29
         <template slot-scope="scope">
75
           <span style="color: #409eff; cursor: pointer"
30
           <span style="color: #409eff; cursor: pointer"
76
             @click="hadndleOrderCode(scope.row.F_ID, scope.row.F_WorkOrderCode)">{{ scope.row.F_WorkOrderCode }}</span>
31
             @click="hadndleOrderCode(scope.row.F_ID, scope.row.F_WorkOrderCode)">{{ scope.row.F_WorkOrderCode }}</span>
77
         </template>
32
         </template>
78
       </el-table-column>
33
       </el-table-column>
79
-      <el-table-column prop="F_Type" label="类别" align="center">
34
+      <el-table-column v-if="fieldListFlag.F_TypeName" prop="F_TypeName" label="类别" align="center">
80
         <template slot-scope="scope">
35
         <template slot-scope="scope">
81
           <div>
36
           <div>
82
             {{scope.row.F_TypeName}}
37
             {{scope.row.F_TypeName}}
83
           </div>
38
           </div>
84
         </template>
39
         </template>
85
       </el-table-column>
40
       </el-table-column>
86
-      <el-table-column
87
-        :show-overflow-tooltip="true"
88
-        prop="F_Content"
89
-        label="调度内容"
90
-        align="center"
91
-      />
92
-      <el-table-column
93
-        :show-overflow-tooltip="true"
94
-        prop="F_DepartPlace"
95
-        label="报工位置"
96
-        align="center"
97
-      />
98
-      <el-table-column
99
-        :show-overflow-tooltip="true"
100
-        prop="F_LocationNew"
101
-        label="科室位置"
102
-        align="center"
103
-      />
104
-      <el-table-column
105
-        :show-overflow-tooltip="true"
106
-        prop="F_Dispatch"
107
-        label="出车地点"
108
-        align="center"
109
-      />
110
-      <el-table-column
111
-        :show-overflow-tooltip="true"
112
-        prop="F_Destination"
113
-        label="目的地"
114
-        align="center"
115
-      />
116
-      <el-table-column
117
-        :show-overflow-tooltip="true"
118
-        prop="F_CreateTime"
119
-        label="申请时间"
120
-        align="center"
121
-      />
122
-      <el-table-column
123
-        :show-overflow-tooltip="true"
124
-        prop="F_UseTime"
125
-        label="用车时间"
126
-        align="center"
127
-      />
128
-      <el-table-column
129
-        :show-overflow-tooltip="true"
130
-        prop="F_CarTypeName"
131
-        label="车辆类型"
132
-        align="center"
133
-      />
134
-     <!-- <el-table-column
135
-        :show-overflow-tooltip="true"
136
-        prop="F_AssignTime"
137
-        label="派单时间"
138
-        align="center"
139
-      />
140
-      <el-table-column
141
-        prop="F_SpendTime"
142
-        label="运输时长"
143
-        align="center"
144
-      /> -->
145
-      <el-table-column
146
-        :show-overflow-tooltip="true"
147
-        prop="StateName"
148
-        label="工单状态"
149
-        align="center"
150
-      />
151
-      <el-table-column
152
-        label="操作"
153
-        width="160"
154
-        align="center"
155
-        class-name="oparate_btn"
156
-        fixed="right"
157
-      >
41
+      <el-table-column v-if="fieldListFlag.F_Content" prop="F_Content" label="调度内容" align="center" />
42
+      <el-table-column v-if="fieldListFlag.F_DepartPlace" prop="F_DepartPlace" label="报工位置" align="center" />
43
+      <el-table-column v-if="fieldListFlag.F_LocationNew" prop="F_LocationNew" label="科室位置" align="center" />
44
+      <el-table-column v-if="fieldListFlag.F_Dispatch" prop="F_Dispatch" label="出车地点" align="center" />
45
+      <el-table-column v-if="fieldListFlag.F_Destination" prop="F_Destination" label="目的地" align="center" />
46
+      <el-table-column v-if="fieldListFlag.F_CreateTime" prop="F_CreateTime" label="申请时间" align="center" />
47
+      <el-table-column v-if="fieldListFlag.F_UseTime" prop="F_UseTime" label="用车时间" align="center" />
48
+      <el-table-column v-if="fieldListFlag.F_CarTypeName" prop="F_CarTypeName" label="车辆类型" align="center" />
49
+      <el-table-column v-if="fieldListFlag.StateName" prop="StateName" label="工单状态" align="center" />
50
+      <el-table-column label="操作" width="160" align="center" class-name="oparate_btn" fixed="right">
158
         <template slot-scope="scope">
51
         <template slot-scope="scope">
159
-          <el-button
160
-            v-if="scope.row.F_State == -1 || scope.row.F_State == 0"
161
-            size="mini"
162
-            type="text"
163
-            @click="btn_edit(scope.row.F_ID, scope.row.F_WorkOrderCode)"
164
-            >编辑</el-button
165
-          >
166
-          <el-button
167
-            v-if="scope.row.F_State == -1"
168
-            size="mini"
169
-            type="text"
170
-            @click="btn_delete(scope.row.F_WorkOrderCode)"
171
-            >删除
52
+          <el-button v-if="scope.row.F_State == -1 || scope.row.F_State == 0" size="mini" type="text"
53
+            @click="btn_edit(scope.row.F_ID, scope.row.F_WorkOrderCode)">编辑</el-button>
54
+          <el-button v-if="scope.row.F_State == -1" size="mini" type="text"
55
+            @click="btn_delete(scope.row.F_WorkOrderCode)">删除
172
           </el-button>
56
           </el-button>
173
-          <el-button
174
-            v-if="scope.row.F_State == 0"
175
-            size="mini"
176
-            type="text"
177
-            @click="btn_fenpei(scope.row.F_WorkOrderCode, scope.row)"
178
-            >分配</el-button
179
-          >
180
-          <el-button
181
-            v-if="scope.row.F_State == 0"
182
-            size="mini"
183
-            type="text"
184
-            @click="btn_overorder(scope.row.F_WorkOrderCode)"
185
-            >完结</el-button
186
-          >
187
-          <el-button
188
-            v-if="scope.row.F_State == 1"
189
-            size="mini"
190
-            type="text"
191
-            @click="btn_reminderorder(scope.row.F_WorkOrderCode)"
192
-            >催单</el-button
193
-          >
57
+          <el-button v-if="scope.row.F_State == 0" size="mini" type="text"
58
+            @click="btn_fenpei(scope.row.F_WorkOrderCode, scope.row)">分配</el-button>
59
+          <el-button v-if="scope.row.F_State == 0" size="mini" type="text"
60
+            @click="btn_overorder(scope.row.F_WorkOrderCode)">完结</el-button>
61
+          <el-button v-if="scope.row.F_State == 1" size="mini" type="text"
62
+            @click="btn_reminderorder(scope.row.F_WorkOrderCode)">催单</el-button>
194
         </template>
63
         </template>
195
       </el-table-column>
64
       </el-table-column>
196
     </el-table>
65
     </el-table>
197
-    <pagination
198
-      v-show="pageParams.total > 0"
199
-      :total="pageParams.total"
200
-      :pageindex.sync="pageParams.pageindex"
201
-      :pagesize.sync="pageParams.pagesize"
202
-      class="pagination"
203
-      @pagination="getList"
204
-    />
66
+    <pagination v-show="pageParams.total > 0" :total="pageParams.total" :pageindex.sync="pageParams.pageindex"
67
+      :pagesize.sync="pageParams.pagesize" class="pagination" @pagination="getList" />
205
     <el-dialog title="完结" :visible.sync="dialogFormVisible">
68
     <el-dialog title="完结" :visible.sync="dialogFormVisible">
206
-       <el-form :model="form">
207
-          <el-form-item>
208
-            <el-input v-model="form.cause" type="textarea" placeholder="请输入原因"></el-input>
209
-          </el-form-item>
210
-        </el-form>
211
-        <div slot="footer" class="dialog-footer">
212
-          <el-button type="primary" @click="btnOver">确 定</el-button>
213
-        </div>
69
+      <el-form :model="form">
70
+        <el-form-item>
71
+          <el-input v-model="form.cause" type="textarea" placeholder="请输入原因"></el-input>
72
+        </el-form-item>
73
+      </el-form>
74
+      <div slot="footer" class="dialog-footer">
75
+        <el-button type="primary" @click="btnOver">确 定</el-button>
76
+      </div>
214
     </el-dialog>
77
     </el-dialog>
215
   </div>
78
   </div>
216
 </template>
79
 </template>
217
 <script>
80
 <script>
218
-import {
219
-  getList,
220
-  getListExport,
221
-  getAddWorkOrder,
222
-  getUpdateWorkOrder,
223
-  getDelete,
224
-  getModelDetail,
225
-  getAssignWorkOrder,
226
-  getSureWorkOrder,
227
-  getOver,
228
-  getReminderWorkOrder
229
-} from "@/api/vehicleDispatch/vehicleScheduling.js";
230
-import { getGetAllCar } from "@/api/Escortservice/Escortservice.js";
231
-import { getOrderTypeList } from "@/api/commonAPI.js";
232
-import addOrEdit from "./components/addOrEdit";
233
-import detail from "./components/detail";
234
-// import detail from "../../../orderManage/components/cardetail";
235
-import assign from "./components/assign.vue";
236
-import distribution from "./components/distribution.vue";
237
-import Pagination from "@/components/context/Pagination";
238
-import { exportExcel } from "@/utils";
239
-export default {
240
-  name: "VehicleSchedulingList",
241
-  components: {
242
-    Pagination,
243
-  },
244
-  data() {
245
-    return {
246
-      dialogFormVisible:false,
247
-      activeName: "0",
248
-      loading: false,
249
-      ordercode: "",
250
-      state: "0",
251
-      typeList: [],
252
-      type: "",
253
-      startTime: "",
254
-      pageParams: {
255
-        pageindex: 1, // Number(this.$store.getters.serverConfig.PAGESIZE)
256
-        pagesize: Number(this.$store.getters.serverConfig.PAGESIZE),
257
-        total: 0,
258
-      },
259
-      dataLists: [],
260
-      searchData: {},
261
-      multipleSelection: [],
262
-      selectIds: [],
263
-      overcode:'',
264
-      form:{
265
-        cause:''
266
-      }
267
-    };
268
-  },
269
-  created() {
270
-    this.getList();
271
-    this.getTypeOrder();
272
-    document.onkeyup = (e) => {
273
-      if (e.keyCode === 13) {
274
-        this.getList();
275
-      }
276
-    };
277
-  },
278
-  methods: {
279
-    btn_distribute() {
280
-      if (this.selectIds.length < 1) {
281
-        this.$message.error("请选择待分配工单");
282
-        return;
283
-      }
284
-      this.$layer.iframe({
285
-        content: {
286
-          content: distribution, // 传递的组件对象
287
-          parent: this, // 当前的vue对象
288
-          data: {
289
-            selectids: this.selectIds,
290
-            selectarr: this.multipleSelection,
291
-          }, // props
292
-        },
293
-        area: ["70%", "70%"],
294
-        title: "分配",
295
-      });
81
+  import {
82
+    getList,
83
+    getListExport,
84
+    getAddWorkOrder,
85
+    getUpdateWorkOrder,
86
+    getDelete,
87
+    getModelDetail,
88
+    getAssignWorkOrder,
89
+    getSureWorkOrder,
90
+    getOver,
91
+    getReminderWorkOrder
92
+  } from "@/api/vehicleDispatch/vehicleScheduling.js";
93
+  import {
94
+    getGetAllCar
95
+  } from "@/api/Escortservice/Escortservice.js";
96
+  import {
97
+    getOrderTypeList
98
+  } from "@/api/commonAPI.js";
99
+  import addOrEdit from "./components/addOrEdit";
100
+  import detail from "./components/detail";
101
+  import addDefinedList from "@/components/context/addDefinedList";
102
+  import {
103
+    GetFiledState,
104
+    AddFiled
105
+  } from "@/api/commonAPI";
106
+  import fieldDATA from "@/utils/fieldsData.js";
107
+  // import detail from "../../../orderManage/components/cardetail";
108
+  import assign from "./components/assign.vue";
109
+  import distribution from "./components/distribution.vue";
110
+  import Pagination from "@/components/context/Pagination";
111
+  import {
112
+    exportExcel
113
+  } from "@/utils";
114
+  export default {
115
+    name: "vehicleSchedulingList",
116
+    components: {
117
+      Pagination,
296
     },
118
     },
297
-    btn_fenpei(id, row) {
298
-      this.selectIds = [];
299
-      this.multipleSelection = [];
300
-      this.selectIds.push(id);
301
-      this.multipleSelection.push(row);
302
-      this.$layer.iframe({
303
-        content: {
304
-          content: distribution, // 传递的组件对象
305
-          parent: this, // 当前的vue对象
306
-          data: {
307
-            selectids: this.selectIds,
308
-            selectarr: this.multipleSelection,
309
-          }, // props
119
+    data() {
120
+      return {
121
+        fieldListFlag: {},
122
+        DefinedId: "",
123
+        dialogFormVisible: false,
124
+        activeName: "0",
125
+        loading: false,
126
+        ordercode: "",
127
+        state: "0",
128
+        typeList: [],
129
+        type: "",
130
+        startTime: "",
131
+        pageParams: {
132
+          pageindex: 1, // Number(this.$store.getters.serverConfig.PAGESIZE)
133
+          pagesize: Number(this.$store.getters.serverConfig.PAGESIZE),
134
+          total: 0,
310
         },
135
         },
311
-        area: ["70%", "70%"],
312
-        title: "分配",
313
-      });
314
-    },
315
-    handleSelectionChange(val) {
316
-      const rows = [];
317
-      const codes = [];
318
-      val.forEach(function (v, n) {
319
-        if (v.F_State == 0) {
320
-          codes.push(v.F_WorkOrderCode);
321
-          rows.push(v);
136
+        dataLists: [],
137
+        searchData: {},
138
+        multipleSelection: [],
139
+        selectIds: [],
140
+        overcode: '',
141
+        form: {
142
+          cause: ''
322
         }
143
         }
323
-      });
324
-      this.selectIds = codes;
325
-      this.multipleSelection = rows;
326
-      console.log(codes);
327
-      // this.selectIds = val.map((item) => item.F_WorkOrderCode)
144
+      };
328
     },
145
     },
329
-    handleClick(res) {
330
-      this.state = res.name;
146
+    created() {
147
+      this.getFiledTabDetail("_vehicleDispatch_vehicleSchedulingList");
331
       this.getList();
148
       this.getList();
332
-    },
333
-    getTypeOrder() {
334
-      const params = {
335
-        pid: 2,
336
-        typeid: 4000,
149
+      this.getTypeOrder();
150
+      document.onkeyup = (e) => {
151
+        if (e.keyCode === 13) {
152
+          this.getList();
153
+        }
337
       };
154
       };
338
-      getOrderTypeList(params.pid, params.typeid).then((res) => {
339
-        this.typeList = res.rows;
340
-      });
341
     },
155
     },
342
-    getList() {
343
-      this.loading = true;
344
-      return new Promise((resolve) => {
156
+    methods: {
157
+      btn_distribute() {
158
+        if (this.selectIds.length < 1) {
159
+          this.$message.error("请选择待分配工单");
160
+          return;
161
+        }
162
+        this.$layer.iframe({
163
+          content: {
164
+            content: distribution, // 传递的组件对象
165
+            parent: this, // 当前的vue对象
166
+            data: {
167
+              selectids: this.selectIds,
168
+              selectarr: this.multipleSelection,
169
+            }, // props
170
+          },
171
+          area: ["70%", "70%"],
172
+          title: "分配",
173
+        });
174
+      },
175
+      btn_fenpei(id, row) {
176
+        this.selectIds = [];
177
+        this.multipleSelection = [];
178
+        this.selectIds.push(id);
179
+        this.multipleSelection.push(row);
180
+        this.$layer.iframe({
181
+          content: {
182
+            content: distribution, // 传递的组件对象
183
+            parent: this, // 当前的vue对象
184
+            data: {
185
+              selectids: this.selectIds,
186
+              selectarr: this.multipleSelection,
187
+            }, // props
188
+          },
189
+          area: ["70%", "70%"],
190
+          title: "分配",
191
+        });
192
+      },
193
+      handleSelectionChange(val) {
194
+        const rows = [];
195
+        const codes = [];
196
+        val.forEach(function(v, n) {
197
+          if (v.F_State == 0) {
198
+            codes.push(v.F_WorkOrderCode);
199
+            rows.push(v);
200
+          }
201
+        });
202
+        this.selectIds = codes;
203
+        this.multipleSelection = rows;
204
+        console.log(codes);
205
+        // this.selectIds = val.map((item) => item.F_WorkOrderCode)
206
+      },
207
+      handleClick(res) {
208
+        this.state = res.name;
209
+        this.getList();
210
+      },
211
+      getTypeOrder() {
345
         const params = {
212
         const params = {
346
-          type: this.type,
347
-          pageindex: this.pageParams.pageindex, // 第几页
348
-          pagesize: this.pageParams.pagesize, // 每页几条信息
349
-          state: this.state,
350
-          WorkOrderCode: this.ordercode,
351
-          starttime: this.startTime && this.startTime[0],
352
-          endtime: this.startTime && this.startTime[1],
213
+          pid: 2,
214
+          typeid: 4000,
353
         };
215
         };
354
-        this.searchData = params;
355
-        getList(params).then((response) => {
356
-          this.loading = false;
357
-          if (response.rows.length >= 0) {
358
-            this.pageParams.total = response.tatal;
359
-            this.dataLists = response.rows;
360
-          }
216
+        getOrderTypeList(params.pid, params.typeid).then((res) => {
217
+          this.typeList = res.rows;
361
         });
218
         });
362
-        resolve();
363
-      });
364
-    },
365
-    btn_search() {
366
-      this.pageParams.pageindex = 1;
367
-      this.getList();
368
-    },
369
-    btn_edit(editId, wocode) {
370
-      this.$layer.iframe({
371
-        content: {
372
-          content: addOrEdit, // 传递的组件对象
373
-          parent: this, // 当前的vue对象
374
-          data: {
375
-            rowid: editId.toString(),
376
-            wocode: wocode,
377
-          }, // props
378
-        },
379
-        area: ["60%", "500px"],
380
-        title: "编辑",
381
-      });
382
-    },
383
-    // 详情
384
-    hadndleOrderCode(ordercode, wocode) {
385
-      this.$layer.iframe({
386
-        content: {
387
-          content: detail, // 传递的组件对象
388
-          parent: this, // 当前的vue对象
389
-          data: {
390
-            rowid: ordercode,
391
-            wocode: wocode,
392
-          }, // props
393
-        },
394
-        area: ["80%", "90%"],
395
-        title: "工单详情",
396
-      });
397
-    },
398
-    // 删除
399
-    btn_delete(editId) {
400
-      const params = {
401
-        WorkOrderCode: editId,
402
-      };
403
-      this.$confirm("您确定要删除此信息吗?", "提示", {
404
-        confirmButtonText: "确定",
405
-        cancelButtonText: "取消",
406
-        type: "warning",
407
-      })
408
-        .then(() => {
409
-          getDelete(params).then((response) => {
410
-            this.getList();
411
-            this.$message.success("删除成功!");
219
+      },
220
+      getList() {
221
+        this.loading = true;
222
+        return new Promise((resolve) => {
223
+          const params = {
224
+            type: this.type,
225
+            pageindex: this.pageParams.pageindex, // 第几页
226
+            pagesize: this.pageParams.pagesize, // 每页几条信息
227
+            state: this.state,
228
+            WorkOrderCode: this.ordercode,
229
+            starttime: this.startTime && this.startTime[0],
230
+            endtime: this.startTime && this.startTime[1],
231
+          };
232
+          this.searchData = params;
233
+          getList(params).then((response) => {
234
+            this.loading = false;
235
+            if (response.rows.length >= 0) {
236
+              this.pageParams.total = response.tatal;
237
+              this.dataLists = response.rows;
238
+            }
412
           });
239
           });
413
-        })
414
-        .catch(() => {
415
-          this.$message("已取消删除");
240
+          resolve();
416
         });
241
         });
417
-    },
418
-    //完结
419
-    btn_overorder(code){
420
-      this.dialogFormVisible = true
421
-      this.overcode = code
422
-    },
423
-    btnOver(){
424
-      const params = {
425
-        WorkOrderCode: this.overcode,
426
-        cause:this.form.cause
427
-      };
428
-      getOver(params).then((response) => {
429
-        if (response.state.toLowerCase() === "success") {
430
-          this.getList();
431
-          this.$message.success("完结成功!");
432
-          this.dialogFormVisible = false
433
-          this.form.cause = ''
434
-        }
435
-      });
436
-    },
437
-    //催单
438
-    btn_reminderorder(code){
439
-      const params ={
440
-        WorkOrderCode:code
441
-      }
442
-      this.$confirm("您确定要催单吗?", "提示", {
443
-        confirmButtonText: "确定",
444
-        cancelButtonText: "取消",
445
-        type: "warning",
446
-      })
447
-        .then(() => {
448
-          getReminderWorkOrder(params).then((response) => {
449
-            if (response.state.toLowerCase() === "success") {
242
+      },
243
+      btn_search() {
244
+        this.pageParams.pageindex = 1;
245
+        this.getList();
246
+      },
247
+      btn_edit(editId, wocode) {
248
+        this.$layer.iframe({
249
+          content: {
250
+            content: addOrEdit, // 传递的组件对象
251
+            parent: this, // 当前的vue对象
252
+            data: {
253
+              rowid: editId.toString(),
254
+              wocode: wocode,
255
+            }, // props
256
+          },
257
+          area: ["60%", "500px"],
258
+          title: "编辑",
259
+        });
260
+      },
261
+      // 详情
262
+      hadndleOrderCode(ordercode, wocode) {
263
+        this.$layer.iframe({
264
+          content: {
265
+            content: detail, // 传递的组件对象
266
+            parent: this, // 当前的vue对象
267
+            data: {
268
+              rowid: ordercode,
269
+              wocode: wocode,
270
+            }, // props
271
+          },
272
+          area: ["80%", "90%"],
273
+          title: "工单详情",
274
+        });
275
+      },
276
+      // 删除
277
+      btn_delete(editId) {
278
+        const params = {
279
+          WorkOrderCode: editId,
280
+        };
281
+        this.$confirm("您确定要删除此信息吗?", "提示", {
282
+            confirmButtonText: "确定",
283
+            cancelButtonText: "取消",
284
+            type: "warning",
285
+          })
286
+          .then(() => {
287
+            getDelete(params).then((response) => {
450
               this.getList();
288
               this.getList();
451
-              this.$message.success("催单成功!");
452
-            }
289
+              this.$message.success("删除成功!");
290
+            });
291
+          })
292
+          .catch(() => {
293
+            this.$message("已取消删除");
453
           });
294
           });
454
-        })
455
-        .catch(() => {
456
-          this.$message("已取消");
295
+      },
296
+      //完结
297
+      btn_overorder(code) {
298
+        this.dialogFormVisible = true
299
+        this.overcode = code
300
+      },
301
+      btnOver() {
302
+        const params = {
303
+          WorkOrderCode: this.overcode,
304
+          cause: this.form.cause
305
+        };
306
+        getOver(params).then((response) => {
307
+          if (response.state.toLowerCase() === "success") {
308
+            this.getList();
309
+            this.$message.success("完结成功!");
310
+            this.dialogFormVisible = false
311
+            this.form.cause = ''
312
+          }
457
         });
313
         });
458
-    },
459
-    // 确定工单
460
-    btn_sure(rowid) {
461
-      const params = {
462
-        orderid: rowid,
463
-      };
464
-      this.$confirm("您要确认此工单吗?", "提示", {
465
-        confirmButtonText: "确定",
466
-        cancelButtonText: "取消",
467
-        type: "warning",
468
-      })
469
-        .then(() => {
470
-          getSureWorkOrder(params).then((response) => {
471
-            if (response.state.toLowerCase() === "success") {
472
-              this.getList();
473
-              this.$message.success("确定成功!");
474
-            }
314
+      },
315
+      //催单
316
+      btn_reminderorder(code) {
317
+        const params = {
318
+          WorkOrderCode: code
319
+        }
320
+        this.$confirm("您确定要催单吗?", "提示", {
321
+            confirmButtonText: "确定",
322
+            cancelButtonText: "取消",
323
+            type: "warning",
324
+          })
325
+          .then(() => {
326
+            getReminderWorkOrder(params).then((response) => {
327
+              if (response.state.toLowerCase() === "success") {
328
+                this.getList();
329
+                this.$message.success("催单成功!");
330
+              }
331
+            });
332
+          })
333
+          .catch(() => {
334
+            this.$message("已取消");
475
           });
335
           });
476
-        })
477
-        .catch(() => {
478
-          this.$message("已取消");
336
+      },
337
+      // 确定工单
338
+      btn_sure(rowid) {
339
+        const params = {
340
+          orderid: rowid,
341
+        };
342
+        this.$confirm("您要确认此工单吗?", "提示", {
343
+            confirmButtonText: "确定",
344
+            cancelButtonText: "取消",
345
+            type: "warning",
346
+          })
347
+          .then(() => {
348
+            getSureWorkOrder(params).then((response) => {
349
+              if (response.state.toLowerCase() === "success") {
350
+                this.getList();
351
+                this.$message.success("确定成功!");
352
+              }
353
+            });
354
+          })
355
+          .catch(() => {
356
+            this.$message("已取消");
357
+          });
358
+      },
359
+      // 派车
360
+      btn_assign(rowid) {
361
+        this.$layer.iframe({
362
+          content: {
363
+            content: assign, // 传递的组件对象
364
+            parent: this, // 当前的vue对象
365
+            data: {
366
+              rowid: rowid,
367
+            }, // props
368
+          },
369
+          area: ["40%", "50%"],
370
+          title: "派车",
479
         });
371
         });
372
+      },
373
+      btn_export() {
374
+        //getListExport
375
+        this.searchData.isdc = 1;
376
+        exportExcel(this.searchData, getListExport);
377
+      },
378
+      getFiledTabDetail(TableId) {
379
+        GetFiledState(TableId).then((res) => {
380
+          if (res.F_Fileds) {
381
+            this.fieldListFlag = fieldDATA.getFieldListFlag(res.F_Fileds);
382
+            this.$refs["multipleTable"].doLayout();
383
+          } else {
384
+            const Fileds = fieldDATA.getOptionsValue(fieldDATA[TableId]);
385
+            AddFiled({
386
+                TableId,
387
+                Fileds,
388
+              })
389
+              .then((response) => {
390
+                if (response.state.toLowerCase() === "success") {
391
+                  this.getFiledTabDetail(TableId);
392
+                }
393
+              })
394
+              .catch(() => {
395
+                this.loading = false;
396
+              });
397
+          }
398
+        });
399
+      },
400
+      btn_add_list() {
401
+        this.$layer.iframe({
402
+          content: {
403
+            content: addDefinedList, // 传递的组件对象
404
+            parent: this, // 当前的vue对象
405
+            data: {
406
+              definedId: '/vehicleDispatch/vehicleSchedulingList',
407
+            }, // props
408
+          },
409
+          area: ["70%", "30%"],
410
+          title: "自定义字段",
411
+        });
412
+      },
480
     },
413
     },
481
-    // 派车
482
-    btn_assign(rowid) {
483
-      this.$layer.iframe({
484
-        content: {
485
-          content: assign, // 传递的组件对象
486
-          parent: this, // 当前的vue对象
487
-          data: {
488
-            rowid: rowid,
489
-          }, // props
490
-        },
491
-        area: ["40%", "50%"],
492
-        title: "派车",
493
-      });
494
-    },
495
-    btn_export() {
496
-      //getListExport
497
-      this.searchData.isdc = 1;
498
-      exportExcel(this.searchData, getListExport);
499
-    },
500
-  },
501
-};
414
+  };
502
 </script>
415
 </script>
503
 <style rel="stylesheet/scss" lang="scss" scoped>
416
 <style rel="stylesheet/scss" lang="scss" scoped>
504
-/deep/.el-tabs__item {
505
-  width: 185px !important;
506
-  text-align: center;
507
-  font-size: 16px !important;
508
-  font-weight: 600;
509
-}
510
-// /deep/.el-tabs__header{
511
-//   float: right;
512
-// }
417
+  /deep/.el-tabs__item {
418
+    width: 185px !important;
419
+    text-align: center;
420
+    font-size: 16px !important;
421
+    font-weight: 600;
422
+  }
423
+
424
+  // /deep/.el-tabs__header{
425
+  //   float: right;
426
+  // }
513
 </style>
427
 </style>