apply-clients 3.4.65 → 3.4.67

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,236 @@
1
+ <template>
2
+ <div class="col-sm-12">
3
+ <criteria-paged :model="model" v-ref:cp>
4
+ <criteria partial='criteria' @condition-changed='$parent.searchCondition' v-ref:cri>
5
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
6
+ <div class="row">
7
+ <div class="form-group col-sm-3">
8
+ <label class="font_normal_body">工程编号:</label>
9
+ <input type="text" style="width:60%" class="input_search" placeholder='工程编号' v-model="model.f_apply_num"
10
+ v-on:keyup.enter="$parent.$parent.search()"
11
+ condition="f_apply_num = '{}'">
12
+ </div>
13
+ <div class="form-group col-sm-3">
14
+ <label class="font_normal_body">客户名称:</label>
15
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
16
+ v-on:keyup.enter="$parent.$parent.search()" condition="u.f_user_name like '%{}%'" placeholder='客户名称'>
17
+ </div>
18
+ <div class="form-group col-sm-3">
19
+ <label class="font_normal_body">联系电话:</label>
20
+ <input type="text" style="width:60%" class="input_search" placeholder='联系电话' v-model="model.f_phone"
21
+ v-on:keyup.enter="$parent.$parent.search()"
22
+ condition="f_phone like '%{}%'">
23
+ </div>
24
+ <div class="form-group col-sm-2 button-range">
25
+ <button class="button_search button_spacing" @click="$parent.$parent.updateShowStatus()" v-el:cx>{{$parent.$parent.showStatus ? '已派单' : '未派单'}}</button>
26
+ <button class="button_search button_spacing" @click="$parent.$parent.search()" v-el:cx>查询</button>
27
+ <button class="button_search button_spacing" @click="$parent.$parent.loadPage()">返回</button>
28
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
29
+ <div
30
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
31
+ @click="$parent.$parent.criteriaShow = !$parent.$parent.criteriaShow"
32
+ class="button_spacing"
33
+ style="float: right">
34
+ </div>
35
+ </div>
36
+ </div>
37
+ <div class="row" v-show="$parent.$parent.criteriaShow">
38
+ <div class="form-group col-sm-3">
39
+ <label class="font_normal_body">合同编号:</label>
40
+ <input type="text" style="width:60%" class="input_search" placeholder='合同编号' v-model="model.f_contract_number"
41
+ v-on:keyup.enter="$parent.$parent.search()"
42
+ condition="f_contract_number = '{}'">
43
+ </div>
44
+ <div class="form-group col-sm-3">
45
+ <label class="font_normal_body">报建类型:</label>
46
+ <v-select
47
+ v-model="model.f_apply_type"
48
+ placeholder='报建类型'
49
+ condition="f_apply_type = '{}'"
50
+ :value.sync="model.f_apply_type"
51
+ :options='$parent.$parent.applytype'
52
+ class="select select_list"
53
+ :value-single="true"
54
+ close-on-select ></v-select>
55
+ </div>
56
+ <div class="form-group col-sm-3" v-if="false">
57
+ <label class="font_normal_body">报建性质:</label>
58
+ <v-select
59
+ v-model="model.f_apply_nature"
60
+ placeholder='报建性质'
61
+ condition="f_apply_nature = '{}'"
62
+ :value.sync="model.f_apply_nature"
63
+ :options='$parent.$parent.applyNatures'
64
+ class="select select_list"
65
+ :value-single="true"
66
+ close-on-select ></v-select>
67
+ </div>
68
+ <div class="form-group col-sm-3">
69
+ <label class="font_normal_body">用户地址:</label>
70
+ <input type="text" style="width:60%" class="input_search" placeholder='用户地址' v-model="model.f_address"
71
+ v-on:keyup.enter="$parent.$parent.search()"
72
+ condition="u.f_address like '%{}%'">
73
+ </div>
74
+ <div class="form-group col-sm-3">
75
+ <label for="startDate" class="font_normal_body">开始时间:</label>
76
+ <datepicker id="startDate" placeholder="开始日期"
77
+ style="width: 60%!important;"
78
+ v-model="model.startDate"
79
+ :value.sync="model.startDate"
80
+ :format="'yyyy-MM-dd 00:00:00'"
81
+ :show-reset-button="true"
82
+ condition="f_apply_date >= '{}'">
83
+ </datepicker>
84
+ </div>
85
+ <div class="form-group col-sm-3">
86
+ <label for="endDate" class="font_normal_body">结束时间:</label>
87
+ <datepicker id="endDate" placeholder="结束日期"
88
+ style="width: 60%!important;"
89
+ v-model="model.endDate"
90
+ :value.sync="model.endDate"
91
+ :format="'yyyy-MM-dd 23:59:59'"
92
+ :show-reset-button="true"
93
+ condition="f_apply_date <= '{}'">
94
+ </datepicker>
95
+ </div>
96
+ <div class="form-group col-sm-3">
97
+ <label class="font_normal_body">来&emsp;&emsp;源:</label>
98
+ <v-select
99
+ v-model="model.f_apply_source"
100
+ placeholder='来源'
101
+ condition="u.f_apply_source = '{}'"
102
+ :value.sync="model.f_apply_source"
103
+ :options='$parent.$parent.sources'
104
+ class="select select_list"
105
+ :value-single="true"
106
+ close-on-select >
107
+ </v-select>
108
+ </div>
109
+ </div>
110
+ </div>
111
+ </criteria>
112
+ <data-grid v-if="$parent.showData" :model="model" partial='list' v-ref:grid class="list_area table_sy">
113
+ <template partial='head'>
114
+ <tr>
115
+ <th style="white-space: nowrap;">序号</th>
116
+ <th style="white-space: nowrap;">工程编号</th>
117
+ <th style="white-space: nowrap;">客户名称</th>
118
+ <th style="white-space: nowrap;">客户地址</th>
119
+ <th style="white-space: nowrap;">供气合同编号</th>
120
+ <th style="white-space: nowrap;">电话</th>
121
+ <th style="white-space: nowrap;">报建类型</th>
122
+ <th style="white-space: nowrap;">报建性质</th>
123
+ <th style="white-space: nowrap;">已发卡数</th>
124
+ <th style="white-space: nowrap;">未派发户数</th>
125
+ <th style="white-space: nowrap;">未通气户数</th>
126
+ <th style="white-space: nowrap;">报建日期</th>
127
+ </tr>
128
+ </template>
129
+ <template partial='body'>
130
+ <tr>
131
+ <td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
132
+ <nobr>{{$index+1}}</nobr>
133
+ </td>
134
+ <td style="text-align: center;">
135
+ <nobr>{{row.f_apply_num}}</nobr>
136
+ </td>
137
+ <td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
138
+ <nobr>{{row.f_user_name}}</nobr>
139
+ </td>
140
+ <td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
141
+ <nobr>{{row.f_address}}</nobr>
142
+ </td>
143
+ <td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
144
+ <nobr>{{row.f_contract_number}}</nobr>
145
+ </td>
146
+ <td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
147
+ <nobr>{{row.f_phone}}</nobr>
148
+ </td>
149
+ <td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
150
+ <nobr>{{row.f_apply_type}}</nobr>
151
+ </td>
152
+ <td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
153
+ <nobr>{{row.f_apply_nature}}</nobr>
154
+ </td>
155
+ <td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
156
+ <nobr>{{row.cardnum ? row.cardnum : 0}}</nobr>
157
+ </td>
158
+ <td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
159
+ <nobr>{{row.f_install_count - (row.irnum ? row.irnum : 0)}}</nobr>
160
+ </td>
161
+ <td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
162
+ <nobr>{{row.f_not_ventilate_households}}</nobr>
163
+ </td>
164
+ <td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
165
+ <nobr>{{row.f_apply_date}}</nobr>
166
+ </td>
167
+ </tr>
168
+ </template>
169
+ </data-grid>
170
+ </criteria-paged>
171
+ </div>
172
+ </template>
173
+ <script>
174
+ import {PagedList} from 'vue-client'
175
+ import {isEmpty} from '../../Util'
176
+ export default {
177
+ title: '点火详情',
178
+ props: ['showData'],
179
+ data () {
180
+ return {
181
+ model: new PagedList('rs/sql/getIgnitionList', 20, {
182
+ data: {
183
+ f_filiale: this.$login.f.f_fengongsi
184
+ }
185
+ }),
186
+ applytype: [{label: '全部', value: ''}, ...this.$appdata.getParam('报建类型')],
187
+ criteriaShow: false,
188
+ sources: [{label: '微信公众号', value: '微信公众号'}, {label: '线下发起', value: '线下发起'}],
189
+ showStatus: true
190
+ }
191
+ },
192
+ ready () {
193
+ // 调用查询
194
+ this.search()
195
+ },
196
+ events: {
197
+ },
198
+ methods: {
199
+ updateShowStatus () {
200
+ this.showStatus = !this.showStatus
201
+ this.search()
202
+ },
203
+ loadPage () {
204
+ this.$dispatch('loadPage')
205
+ },
206
+ searchCondition (args) {
207
+ if (this.showStatus) {
208
+ args.condition = args.condition + ` and (irnum is null or irnum < u.f_install_count)`
209
+ } else {
210
+ args.condition = args.condition + ` and irnum != 0`
211
+ }
212
+ if (args.condition.includes('民用报建')) {
213
+ args.condition = args.condition.replace('f_apply_type = \'民用报建\'', '(f_apply_type = \'民用报建\' or f_apply_type = \'分户挂表\')')
214
+ }
215
+ console.log('args.condition', args.condition)
216
+ this.model.search(args.condition, args.model)
217
+ },
218
+ // 查询
219
+ search () {
220
+ this.$dispatch('search')
221
+ },
222
+ check (val) {
223
+ this.$dispatch('apply', val)
224
+ },
225
+ clear () {
226
+ Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
227
+ this.$refs.cp.$refs.cri.model[key] = null
228
+ })
229
+ }
230
+ },
231
+ computed: {
232
+ }
233
+ }
234
+ </script>
235
+ <style scoped>
236
+ </style>
@@ -0,0 +1,413 @@
1
+ <template>
2
+ <div class="flex-row">
3
+ <div class="basic-main">
4
+ <criteria-paged :model="model" v-ref:cp>
5
+ <criteria partial='criteria' @condition-changed='$parent.searchCondition' v-ref:cri>
6
+ <div class="form-horizontal select-overspread container-fluid auto" partial>
7
+ <div class="row">
8
+ <div class="form-group col-sm-2">
9
+ <label class="font_normal_body">片&emsp;&emsp;区:</label>
10
+ <v-select
11
+ v-model="model.f_slice_area"
12
+ placeholder='片区'
13
+ condition="ui.f_slice_area = '{}'"
14
+ :value.sync="model.f_slice_area"
15
+ :options='$parent.$parent.sliceareas'
16
+ class="select select_list"
17
+ :value-single="true"
18
+ close-on-select >
19
+ </v-select>
20
+ </div>
21
+ <div class="form-group col-sm-2">
22
+ <label class="font_normal_body">发卡状态:</label>
23
+ <v-select
24
+ v-model="model.f_whether_hairpin"
25
+ placeholder='发卡状态'
26
+ condition="uf.f_whether_hairpin = '{}'"
27
+ :value.sync="model.f_whether_hairpin"
28
+ :options='$parent.$parent.whether_hairpin'
29
+ class="select select_list"
30
+ :value-single="true"
31
+ close-on-select >
32
+ </v-select>
33
+ </div>
34
+ <div class="form-group col-sm-2">
35
+ <label for="startDate" class="font_normal_body">发卡时间:</label>
36
+ <datepicker id="startDate" placeholder="开始日期"
37
+ style="width: 60%!important;"
38
+ v-model="model.startDate"
39
+ :value.sync="model.startDate"
40
+ :format="'yyyy-MM-dd 00:00:00'"
41
+ :show-reset-button="true"
42
+ condition="uf.f_open_date >= '{}'">
43
+ </datepicker>
44
+ </div>
45
+ <div class="form-group col-sm-2">
46
+ <label for="endDate" class="font_normal_body">发卡时间:</label>
47
+ <datepicker id="endDate" placeholder="结束日期"
48
+ style="width: 60%!important;"
49
+ v-model="model.endDate"
50
+ :value.sync="model.endDate"
51
+ :format="'yyyy-MM-dd 23:59:59'"
52
+ :show-reset-button="true"
53
+ condition="uf.f_open_date <= '{}'">
54
+ </datepicker>
55
+ </div>
56
+ <div class="form-group col-sm-3 button-range">
57
+ <button class="button_export button_spacing" @click="$parent.$parent.openOperatorModal()">批量派单</button>
58
+ <button class="button_search button_spacing" @click="$parent.$parent.search()" v-el:cx>查询</button>
59
+ <button class="button_search button_spacing" @click="$parent.$parent.loadPage()">返回</button>
60
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
61
+ <div
62
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
63
+ @click="$parent.$parent.criteriaShow = !$parent.$parent.criteriaShow"
64
+ class="button_spacing"
65
+ style="float: right">
66
+ </div>
67
+ </div>
68
+ </div>
69
+ <div class="row" v-show="$parent.$parent.criteriaShow">
70
+ <div class="form-group col-sm-2">
71
+ <label class="font_normal_body">工程编号:</label>
72
+ <input type="text" class="input_search" style="width: 60%" v-model="model.f_applycode"
73
+ v-on:keyup.enter="$parent.$parent.search()" condition="ui.f_applycode = '{}'" placeholder='工程编号'>
74
+ </div>
75
+ <div class="form-group col-sm-2">
76
+ <label class="font_normal_body">用户类型:</label>
77
+ <v-select
78
+ v-model="model.f_user_type"
79
+ placeholder='用户类型'
80
+ condition="uf.f_user_type = '{}'"
81
+ :value.sync="model.f_user_type"
82
+ :options='$parent.$parent.usertype'
83
+ class="select select_list"
84
+ :value-single="true"
85
+ close-on-select >
86
+ </v-select>
87
+ </div>
88
+ <div class="form-group col-sm-2">
89
+ <label class="font_normal_body">用户编号:</label>
90
+ <input type="text" class="input_search" style="width: 60%" v-model="model.f_userinfo_id"
91
+ v-on:keyup.enter="$parent.$parent.search()" condition="ui.f_userinfo_id = '{}'" placeholder='用户编号'>
92
+ </div>
93
+ <div class="form-group col-sm-2">
94
+ <label class="font_normal_body">用&ensp;户&ensp;名:</label>
95
+ <input type="text" class="input_search" style="width: 60%" v-model="model.f_user_name"
96
+ v-on:keyup.enter="$parent.$parent.search()" condition="ui.f_user_name = '{}'" placeholder='用户名'>
97
+ </div>
98
+ <div class="form-group col-sm-2">
99
+ <label class="font_normal_body">电&emsp;&emsp;话:</label>
100
+ <input type="text" class="input_search" style="width: 60%" v-model="model.f_user_phone"
101
+ v-on:keyup.enter="$parent.$parent.search()" condition="ui.f_user_phone = '{}'" placeholder='电话'>
102
+ </div>
103
+ <div class="form-group col-sm-2">
104
+ <label class="font_normal_body">小&emsp;&emsp;区:</label>
105
+ <input type="text" class="input_search" style="width: 60%" v-model="model.f_residential_area"
106
+ v-on:keyup.enter="$parent.$parent.search()" condition="ui.f_residential_area = '{}'" placeholder='小区'>
107
+ </div>
108
+ </div>
109
+ </div>
110
+ </criteria>
111
+ <data-grid :model="model" optional partial='list' v-ref:grid style="overflow: auto" class="list_area table_sy">
112
+ <template partial='head'>
113
+ <tr>
114
+ <th style="white-space: nowrap;">序号</th>
115
+ <th style="white-space: nowrap;">报建编号</th>
116
+ <th style="white-space: nowrap;">用户编号</th>
117
+ <th style="white-space: nowrap;">用户姓名</th>
118
+ <th style="white-space: nowrap;">联系电话</th>
119
+ <th style="white-space: nowrap;">用户类型</th>
120
+ <th style="white-space: nowrap;">地址</th>
121
+ <th style="white-space: nowrap;">片区</th>
122
+ <!-- <th>定位地址</th>-->
123
+ <th style="white-space: nowrap;">气表分类</th>
124
+ <th style="white-space: nowrap;">表号</th>
125
+ <th style="white-space: nowrap;">气表品牌</th>
126
+ <th style="white-space: nowrap;">气表型号</th>
127
+ <th style="white-space: nowrap;">发卡状态</th>
128
+ <th style="white-space: nowrap;">发卡时间</th>
129
+ <th style="white-space: nowrap;">报建人</th>
130
+ <th style="white-space: nowrap;">报建联系电话</th>
131
+ </tr>
132
+ </template>
133
+ <template partial='body'>
134
+ <tr >
135
+ <td style="text-align: center;">
136
+ <nobr><font>{{$index+1}}</font></nobr>
137
+ </td>
138
+ <td style="text-align: center;">
139
+ <nobr><font>{{row.f_apply_num}}</font></nobr>
140
+ </td>
141
+ <td style="text-align: center;">
142
+ <nobr><font>{{row.f_userinfo_id}}</font></nobr>
143
+ </td>
144
+ <td style="text-align: center;">
145
+ <nobr><font>{{row.f_user_name}}</font></nobr>
146
+ </td>
147
+ <td style="text-align: center;">
148
+ <nobr><font>{{row.f_user_phone}}</font></nobr>
149
+ </td>
150
+ <td style="text-align: center;">
151
+ <nobr><font>{{row.f_user_type}}</font></nobr>
152
+ </td>
153
+ <td style="text-align: center;">
154
+ <nobr><font>{{row.f_address}}{{row.f_address_detail}}</font></nobr>
155
+ </td>
156
+ <td style="text-align: center;">
157
+ <nobr><font>{{row.f_area}}</font></nobr>
158
+ </td>
159
+ <!-- <td style="text-align: center;">-->
160
+ <!-- <nobr><font>-->
161
+ <!-- <a @click="$parent.$parent.$parent.openAmap(row)" style="text-decoration: none">-->
162
+ <!-- {{row.f_location_address}}-->
163
+ <!-- </a>-->
164
+ <!-- </font></nobr>-->
165
+ <!-- </td>-->
166
+ <td style="text-align: center;">
167
+ <nobr><font>{{row.f_meter_classify}}</font></nobr>
168
+ </td>
169
+ <td style="text-align: center;">
170
+ <nobr><font>{{row.f_meternumber}}</font></nobr>
171
+ </td>
172
+ <td style="text-align: center;">
173
+ <nobr><font>{{row.f_meter_brand}}</font></nobr>
174
+ </td>
175
+ <td style="text-align: center;">
176
+ <nobr><font>{{row.f_meter_style}}</font></nobr>
177
+ </td>
178
+ <td style="text-align: center;">
179
+ <nobr><font>{{row.f_whether_hairpin}}</font></nobr>
180
+ </td>
181
+ <td style="text-align: center;">
182
+ <nobr><font>{{row.f_faka_date}}</font></nobr>
183
+ </td>
184
+ <td style="text-align: center;">
185
+ <nobr><font>{{row.f_contact}}</font></nobr>
186
+ </td>
187
+ <td style="text-align: center;">
188
+ <nobr><font>{{row.f_phone}}</font></nobr>
189
+ </td>
190
+ </tr>
191
+ </template>
192
+ </data-grid>
193
+ </criteria-paged>
194
+ </div>
195
+ </div>
196
+
197
+ <modal v-if="showAmap" :show.sync="showAmap" v-ref:amap :large="true" :backdrop="false" title="定位信息">
198
+ <header slot="modal-header" class="modal-header">
199
+ <button type="button" class="close" @click="closeModal"><span>&times;</span></button>
200
+ <h4 class="modal-title">定位信息</h4>
201
+ </header>
202
+ <article slot="modal-body" class="modal-body clearfix" style="height: 500px">
203
+ <amap-location
204
+ :isshowsearch="false"
205
+ :mylocationinfo="false"
206
+ :isshowmapmodel="false"
207
+ :islocation="false"
208
+ mapmodel="dragMarker"
209
+ :labelmarksarray="labelmarksarray"
210
+ ></amap-location>
211
+ </article>
212
+ <footer slot="modal-footer" class="modal-footer">
213
+ </footer>
214
+ </modal>
215
+
216
+ <validator name="v">
217
+ <modal v-if="showOperator" :show.sync="showOperator" v-ref:operator :large="true" :backdrop="false" title="批量派单">、
218
+ <header slot="modal-header" class="modal-header">
219
+ <button type="button" class="close" @click="closeModal('details')"><span>&times;</span></button>
220
+ <h4 class="modal-title">批量派单</h4>
221
+ </header>
222
+ <article slot="modal-body" class="modal-body clearfix">
223
+ <!-- 基本信息 -->
224
+ <div class="form-group col-sm-12" :class="[$v.operator.required ? 'has-error' : '']">
225
+ <label class="col-sm-2 control-label">操作人:</label>
226
+ <div class="col-sm-10">
227
+ <input type="text" v-show="false" v-model="operator.id" :value.sync="operator.id" v-validate:operator = "['required']" >
228
+ <input-select
229
+ class="select select_list"
230
+ :value.sync="operator"
231
+ v-model="operator"
232
+ :options="operatorList"></input-select>
233
+ </div>
234
+ </div>
235
+ <div class="form-group col-sm-12">
236
+ <label class="col-sm-2 control-label">是否共享:</label>
237
+ <div class="col-sm-10">
238
+ <input-select
239
+ class="select select_list"
240
+ :value.sync="f_shared_dispatch"
241
+ v-model="f_shared_dispatch"
242
+ :options="sharedOptions"></input-select>
243
+ </div>
244
+ </div>
245
+ </article>
246
+ <footer slot="modal-footer" class="modal-footer">
247
+ <button type="button" class="btn btn-primary" @click="batchDispatch()" :disabled="!$v.valid">确定</button>
248
+ </footer>
249
+ </modal>
250
+ </validator>
251
+
252
+ </template>
253
+
254
+ <script>
255
+ import {PagedList} from 'vue-client'
256
+
257
+ export default {
258
+ title: '点火派单',
259
+ props: ['showData'],
260
+ data () {
261
+ return {
262
+ model: new PagedList('rs/sql/getWaitIgnitionTask', 20, null),
263
+ criteriaShow: false,
264
+ source: 'this.getParentByType($organization$).getChildByName($通气组报装$).getChildren()',
265
+ operatorList: [],
266
+ showOperator: false,
267
+ operator: null,
268
+ f_shared_dispatch:'否',
269
+ sharedOptions:[{label: "是", value: "是"}, {label: "否", value: "否" }],
270
+ showAmap: false,
271
+ labelmarksarray: [],
272
+ sliceareas: [], // 片区
273
+ whether_hairpin: [{label: "全部", value: ""}, {label: "已发卡", value: "已发"}, {label: "未发卡", value: "未发"}],//发卡状态
274
+ usertype:[{label: "全部", value: ""}, {label: "民用", value: "民用"}, {label: "非民用", value: "非民用"}]//用户类型
275
+ }
276
+ },
277
+ ready () {
278
+ this.search()
279
+ this.getOperator()
280
+ setTimeout (this.getsliceareas,500)
281
+ },
282
+ methods: {
283
+ loadPage () {
284
+ this.$dispatch('loadPage')
285
+ },
286
+ openAmap (row) {
287
+ this.labelmarksarray = [{
288
+ data: {
289
+ data: this.selectdata,
290
+ label: `<div style="background: #fff;border-radius: 5px;height: 100px;padding: 5px">
291
+ <h5>${row.f_user_name}</h5>
292
+ <h5>${row.f_user_phone}</h5>
293
+ <h5>${row.f_location_address}</h5>
294
+ </div>`
295
+ },
296
+ position: [row.f_lng, row.f_lat],
297
+ isclearmarker: false
298
+ }]
299
+
300
+ this.showAmap = true
301
+ },
302
+ async batchDispatch () {
303
+ let selectdata = this.$refs.cp.$refs.grid.getRowData()
304
+ if (selectdata.length > 0) {
305
+ for (let i = 0; i < selectdata.length; i++){
306
+ if(selectdata[i].f_whether_hairpin === '未发' && (!selectdata[i].f_user_name.includes('原处') || !selectdata[i].f_contact.includes('原处'))){
307
+ let res = await this.$showMessage(`第${selectdata.length}条数据未开户,无法派单!`)
308
+ if (res == 'confirm') {
309
+ return
310
+ }
311
+ }
312
+ // if(selectdata[i].f_surplus_money > 0 ){
313
+ // let res = await this.$showMessage(`第${selectdata.length}条报建费用未结清,无法派单!`)
314
+ // if (res == 'confirm') {
315
+ // return
316
+ // }
317
+ // }
318
+ }
319
+ let data = {
320
+ operator: this.$login.f,
321
+ f_userinfo_ids: selectdata.map(item => {
322
+ return {
323
+ f_apply_num: item.f_apply_num,
324
+ f_userinfo_id: item.f_userinfo_id
325
+ }
326
+ }),
327
+ ignitionOperator: this.operator,
328
+ f_shared_dispatch:this.f_shared_dispatch
329
+ }
330
+
331
+ let res = await this.$resetpost(
332
+ 'rs/logic/batchDispatchGas',
333
+ {data: data},
334
+ {resolveMsg: null, rejectMsg: '批量派单失败!!!'}
335
+ )
336
+
337
+ this.closeModal('details')
338
+ this.search()
339
+ } else {
340
+ this.$showAlert('至少选择1个工单', 'warning', 3000)
341
+ }
342
+ },
343
+ async getsliceareas () {
344
+
345
+ let res = await this.$resetpost(
346
+ 'rs/logic/getsliceareas',{data:null},
347
+ {resolveMsg: null, rejectMsg: '获取片区失败!!!'}
348
+ )
349
+ this.sliceareas = [{label: '全部', value: ''}, ...res.data]
350
+ },
351
+ async openOperatorModal () {
352
+ let selectdata = this.$refs.cp.$refs.grid.getRowData()
353
+ if (selectdata.length > 0) {
354
+ let res = await this.$showMessage(`当前数据条数: ${selectdata.length}, 条数过大时派单时间可能会过长, 是否确认派单?`)
355
+ if (res == 'confirm') {
356
+ this.showOperator = true
357
+ }
358
+ } else {
359
+ this.$showAlert('至少选择1个工单', 'warning', 3000)
360
+ }
361
+ },
362
+ async getOperator () {
363
+ let data = {
364
+ source: this.source,
365
+ userid: this.$login.f.id
366
+ }
367
+
368
+ let res = await this.$resetpost(
369
+ 'rs/search',
370
+ {data: data},
371
+ {resolveMsg: null, rejectMsg: '点火人员查询失败!!!'}
372
+ )
373
+
374
+ this.operatorList = res.data.map(item => {
375
+ return {
376
+ label: item.name,
377
+ value: item
378
+ }
379
+ })
380
+ },
381
+ searchCondition (args) {
382
+ args.condition = args.condition + ` and ir.id is null`
383
+ console.log("this.showDatade",this.showData)
384
+ // args.condition = args.condition + ` and ui.f_process_id = '${this.showData.f_process_id}'`
385
+ args.condition = args.condition + ` and ui.f_process_id is not null`
386
+ this.model.search(args.condition, args.model)
387
+ },
388
+ // 查询
389
+ search () {
390
+ this.$refs.cp.$refs.cri.search()
391
+ },
392
+ clear () {
393
+ Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
394
+ this.$refs.cp.$refs.cri.model[key] = null
395
+ })
396
+ },
397
+ closeModal (type) {
398
+ this.showAmap = false
399
+ this.showOperator = false
400
+
401
+ this.labelmarksarray = []
402
+ this.operator = null
403
+
404
+ if (type === 'details') {
405
+ this.$refs.cp.$refs.grid.selectInit()
406
+ }
407
+ }
408
+ }
409
+ }
410
+ </script>
411
+
412
+ <style scoped>
413
+ </style>