apply-clients 3.3.217 → 3.4.2

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.
Files changed (121) hide show
  1. package/android.html +23 -23
  2. package/build/css-loaders.js +34 -0
  3. package/build/dev-android.js +101 -0
  4. package/build/dev-client.js +8 -0
  5. package/build/dev-server-app.js +76 -0
  6. package/build/dev-server.js +119 -0
  7. package/build/example-server.js +80 -0
  8. package/build/release.sh +28 -0
  9. package/build/utils.js +80 -0
  10. package/build/webpack.base.conf.js +84 -0
  11. package/build/webpack.baseandroid.conf.js +84 -0
  12. package/build/webpack.dev.conf.js +39 -0
  13. package/build/webpack.devandroid.conf.js +34 -0
  14. package/build/webpack.example.conf.js +49 -0
  15. package/build/webpack.prod.conf.js +60 -0
  16. package/build/webpack.prodandroid.conf.js +60 -0
  17. package/build/webpack.test.conf.js +31 -0
  18. package/index.html +33 -33
  19. package/package.json +3 -3
  20. package/src/AndroidApp.vue +35 -30
  21. package/src/App.vue +20 -20
  22. package/src/android.js +21 -21
  23. package/src/apply.js +81 -90
  24. package/src/applyAndroid.js +32 -53
  25. package/src/components/android/AppOnetomany.vue +301 -285
  26. package/src/components/android/AppServiceView.vue +566 -570
  27. package/src/components/android/AppSign.vue +142 -142
  28. package/src/components/android/AppTakePic.vue +143 -144
  29. package/src/components/android/Process/AppExplorationUser.vue +320 -270
  30. package/src/components/android/Process/AppServiceControl.vue +757 -686
  31. package/src/components/android/Process/Processes/AppInstallationDetails.vue +456 -466
  32. package/src/components/android/ProgressReport/ProgressReportDetail.vue +64 -0
  33. package/src/components/android/ProgressReport/ProgressReportList.vue +209 -0
  34. package/src/components/android/Supervisory/AppProcessSupervisory.vue +73 -152
  35. package/src/components/android/Supervisory/AppSupervisoryCart.vue +121 -115
  36. package/src/components/android/TaskGraph.vue +125 -0
  37. package/src/components/build/Install/ExplorationUser.vue +304 -0
  38. package/src/components/build/Install/Process/zhongran/ZR_Design.vue +537 -0
  39. package/src/components/product/ApplyCharge/ApplyChargeList.vue +36 -50
  40. package/src/components/product/ApplyCharge/ApplyChargeSearch.vue +3 -3
  41. package/src/components/product/Function/InstallFunction.vue +125 -122
  42. package/src/components/product/Function/InstallInfoSelect.vue +292 -318
  43. package/src/components/product/Function/Service/FunctionServiceControl.vue +222 -254
  44. package/src/components/product/Function/StopApplyCrrdList.vue +176 -0
  45. package/src/components/product/Function/functions/ApplyRecordCancel.vue +102 -0
  46. package/src/components/product/Function/functions/StopInstall.vue +106 -0
  47. package/src/components/product/Onetomany.vue +377 -296
  48. package/src/components/product/Order/OrderApply.vue +30 -30
  49. package/src/components/product/Order/OrderApplyList.vue +78 -67
  50. package/src/components/product/Order/OrderMessage.vue +11 -87
  51. package/src/components/product/Process/ExplorationSelect.vue +410 -369
  52. package/src/components/product/Process/ExplorationUser.vue +138 -128
  53. package/src/components/product/Process/Processes/InstallationDetails.vue +592 -504
  54. package/src/components/product/Process/Processes/Print/img/10101.png +0 -0
  55. package/src/components/product/Process/Processes/Print/img/1010109.png +0 -0
  56. package/src/components/product/Process/Processes/Print/img/1010110.png +0 -0
  57. package/src/components/product/Process/Processes/Print/img/1010111.png +0 -0
  58. package/src/components/product/Process/Processes/Print/img/1010112.png +0 -0
  59. package/src/components/product/Process/Processes/Print/printCharge.vue +142 -0
  60. package/src/components/product/Process/Processes/addressAndUserinfoManagement.vue +207 -181
  61. package/src/components/product/Process/Processes/chargeManagement.vue +639 -638
  62. package/src/components/product/Process/Processes/devicesManagement.vue +22 -2
  63. package/src/components/product/Process/Processes/selectApply.vue +1 -1
  64. package/src/components/product/Process/Service/ServiceControl.vue +1254 -883
  65. package/src/components/product/Process/Service/ShowBackReason.vue +33 -0
  66. package/src/components/product/ServiceView.vue +631 -741
  67. package/src/components/product/Stop/StopApply.vue +103 -103
  68. package/src/components/product/Stop/StopApplyList.vue +269 -254
  69. package/src/components/product/Supervisory/Service/SupervisoryServiceControl.vue +186 -517
  70. package/src/components/product/Supervisory/SupervisoryControl.vue +100 -108
  71. package/src/components/product/Supervisory/SupervisoryList.vue +233 -253
  72. package/src/components/product/Supervisory/SupervisoryhCart.vue +107 -124
  73. package/src/components/product/VueUtils/ApplyUpload.vue +273 -264
  74. package/src/components/product/VueUtils/HighMeter.vue +208 -0
  75. package/src/expandcssAndroid.less +1034 -517
  76. package/src/filiale/yuchuan/android/Process/AppServiceControl.vue +731 -414
  77. package/src/filiale/yuchuan/android/Process/Processes/AppInstallationDetails.vue +824 -456
  78. package/src/filiale/yuchuan/android/Process/Processes/AppInstallationDetailsCivil.vue +650 -0
  79. package/src/filiale/yuchuan/android/Sign/AppSignTask.vue +182 -0
  80. package/src/{components/android/Process/Processes/AppBuildSign.vue → filiale/yuchuan/android/Sign/BuildSign.vue} +50 -47
  81. package/src/filiale/yuchuan/android/Sign/ConstructSign.vue +50 -0
  82. package/src/filiale/yuchuan/android/Sign/DesignSign.vue +50 -0
  83. package/src/filiale/yuchuan/android/Sign/SupervisorSign.vue +50 -0
  84. package/src/filiale/yuchuan/android/Task/Build/BuildTsak.vue +60 -0
  85. package/src/filiale/yuchuan/android/Task/Survey/SurveyTsak.vue +60 -0
  86. package/src/filiale/yuchuan/android.js +14 -8
  87. package/src/filiale/yuchuan/pc/Order/OrderApply.vue +528 -517
  88. package/src/filiale/yuchuan/pc/Order/OrderApplyList.vue +343 -343
  89. package/src/filiale/yuchuan/pc/Process/ExplorationSelect.vue +270 -231
  90. package/src/filiale/yuchuan/pc/Process/ExplorationUser.vue +149 -131
  91. package/src/filiale/yuchuan/pc/Process/Processes/ApplyMapCom.vue +67 -0
  92. package/src/filiale/yuchuan/pc/Process/Processes/InstallationDetails.vue +809 -0
  93. package/src/filiale/yuchuan/pc/Process/Processes/InstallationDetailsCivil.vue +595 -0
  94. package/src/filiale/yuchuan/pc/Process/Processes/chargeManagement.vue +470 -0
  95. package/src/filiale/yuchuan/pc/Process/Service/ServiceControl.vue +1074 -517
  96. package/src/filiale/yuchuan/pc.js +12 -13
  97. package/src/main.js +23 -23
  98. package/src/components/android/Function/AppFunctionServiceControl.vue +0 -329
  99. package/src/components/android/Function/AppInstallFunction.vue +0 -330
  100. package/src/components/android/Process/Processes/AppChargeManagement.vue +0 -468
  101. package/src/components/android/Process/Processes/AppDevicesManagement.vue +0 -490
  102. package/src/components/android/Process/Processes/AppSupplementalAgreement.vue +0 -297
  103. package/src/components/android/Process/Processes/AppjiaSign.vue +0 -47
  104. package/src/components/android/Process/Processes/AppjiafangSign.vue +0 -47
  105. package/src/components/android/Process/Processes/ApptechnologySign.vue +0 -47
  106. package/src/components/image/dwg.jpg +0 -0
  107. package/src/components/image/yasuobao.jpg +0 -0
  108. package/src/components/product/Function/Inform.vue +0 -73
  109. package/src/components/product/Function/MarketSurvey.vue +0 -81
  110. package/src/components/product/Process/Processes/printCharge.vue +0 -121
  111. package/src/components/product/Process/ShowBackReason.vue +0 -33
  112. package/src/components/product/Supervisory/Service/printChargeNode.vue +0 -873
  113. package/src/components/product/VueUtils/GaoPaiYi/HighMeter.vue +0 -1090
  114. package/src/components/product/VueUtils/ToolsPage.vue +0 -51
  115. package/src/components/product/VueUtils/Tree.vue +0 -330
  116. package/src/filiale/wuan/android.js +0 -0
  117. package/src/filiale/wuan/pc.js +0 -4
  118. package/src/filiale/yuchuan/android/AppServiceView.vue +0 -599
  119. package/src/filiale/yuchuan/android/Reserve/ApplyReserve.vue +0 -200
  120. package/src/filiale/yuchuan/android/SiteSurvey/TaskGraph.vue +0 -137
  121. package/src/filiale/yuchuan/pc/Process/Processes/MapCom.vue +0 -51
@@ -1,517 +1,528 @@
1
- <template>
2
- <div class="flex-row">
3
- <div class="basic-main">
4
- <div :class="showData ? 'top' : 'auto'">
5
- <order-apply-list v-ref:query :show-data="showData"></order-apply-list>
6
- </div>
7
- <div v-if="showtotal" style="height: 89%">
8
- </div>
9
- </div>
10
- </div>
11
-
12
- <validator name="cv">
13
- <modal
14
- v-if="showCheck"
15
- :show.sync="showCheck"
16
- backdrop="false"
17
- >
18
- <header slot="modal-header" class="modal-header">
19
- <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
20
- <h4 class="modal-title">检查审核</h4>
21
- </header>
22
- <article slot="modal-body" class="modal-body clearfix">
23
- <div class="form-group col-sm-12" :class="[$cv.check.required ? 'has-error' : '']">
24
- <label class="col-sm-3 control-label" style="line-height: 35px">是否合格:</label>
25
- <div class="col-sm-9">
26
- <input type="text" v-show="false" v-validate:check = "['required']" v-model="check">
27
- <v-select
28
- v-model="check"
29
- :value.sync="check"
30
- :options='checkOptions'
31
- :value-single="true"
32
- class="select select_list"
33
- :search="false"
34
- width="75%"
35
- close-on-select ></v-select>
36
- </div>
37
- </div>
38
- <div class="form-group col-sm-12" :class="[$cv.remark.required ? 'has-error' : '']">
39
- <label class="col-sm-3 control-label" style="line-height: 60px">审核备注:</label>
40
- <div class="col-sm-9">
41
- <textarea
42
- class="form-control input_view" style="width: 75%;height: 100%"
43
- rows="2" v-validate:remark = "['required']" placeholder=""
44
- v-model="checkRemark" :value="checkRemark"
45
- >
46
- </textarea>
47
- </div>
48
- </div>
49
- </article>
50
- <footer slot="modal-footer" class="modal-footer">
51
- <button type="button" class="btn btn-primary" @click="checkOrder()" :disabled='!$cv.valid'>确认</button>
52
- </footer>
53
- </modal>
54
- </validator>
55
-
56
- <validator name="tv">
57
- <modal
58
- v-if="showType"
59
- :show.sync="showType"
60
- backdrop="false"
61
- >
62
- <header slot="modal-header" class="modal-header">
63
- <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
64
- <h4 class="modal-title">报建类型</h4>
65
- </header>
66
- <article slot="modal-body" class="modal-body clearfix">
67
- <div class="form-group col-sm-12" :class="[$tv.type.required ? 'has-error' : '']">
68
- <label class="col-sm-3 control-label" style="line-height: 35px">报建类型:</label>
69
- <div class="col-sm-9">
70
- <input type="text" v-show="false" v-validate:type = "['required']" v-model="applyType">
71
- <v-select
72
- placeholder='请选择需要发起的工程类型'
73
- v-model="applyType"
74
- :value.sync="applyType"
75
- :options='$appdata.getParam("报建类型")'
76
- :value-single="true"
77
- class="select select_list"
78
- :search="false"
79
- width="75%"
80
- close-on-select ></v-select>
81
- </div>
82
- </div>
83
- </article>
84
- <footer slot="modal-footer" class="modal-footer">
85
- <button type="button" class="btn btn-primary" @click="apply()" :disabled='!$tv.valid'>确认</button>
86
- </footer>
87
- </modal>
88
- </validator>
89
-
90
- <validator name="mv">
91
- <modal
92
- v-if="showModal"
93
- :show.sync="showModal"
94
- backdrop="false"
95
- >
96
- <header slot="modal-header" class="modal-header">
97
- <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
98
- <h4 class="modal-title">合并发起</h4>
99
- </header>
100
- <article slot="modal-body" class="modal-body clearfix">
101
- <div class="form-group col-sm-12" :class="[$tv.f_entry_name.required ? 'has-error' : '']">
102
- <label class="col-sm-3 control-label" style="line-height: 35px">项目名称:</label>
103
- <div class="col-sm-9">
104
- <input class="form-control input_view" type="text" style="width: 75%"
105
- v-validate:f_entry_name = "['required']"
106
- v-model="apply.f_entry_name"
107
- :value="apply.f_entry_name"/>
108
- </div>
109
- </div>
110
- <div class="form-group col-sm-12" :class="[$tv.f_contact.required ? 'has-error' : '']">
111
- <label class="col-sm-3 control-label" style="line-height: 35px">联&ensp;系&ensp;人:</label>
112
- <div class="col-sm-9">
113
- <input class="form-control input_view" type="text" style="width: 75%"
114
- v-validate:f_contact = "['required']"
115
- v-model="apply.f_contact"
116
- :value="apply.f_contact"/>
117
- </div>
118
- </div>
119
- <div class="form-group col-sm-12" :class="[$tv.f_phone.required ? 'has-error' : '']">
120
- <label class="col-sm-3 control-label" style="line-height: 35px">联系电话:</label>
121
- <div class="col-sm-9">
122
- <input class="form-control input_view" type="text" style="width: 75%"
123
- v-validate:f_phone = "['required']"
124
- v-model="apply.f_phone"
125
- :value="apply.f_phone"/>
126
- </div>
127
- </div>
128
- <div class="form-group col-sm-12">
129
- <label class="col-sm-3 control-label" style="line-height: 35px">合并预约:</label>
130
- <div class="col-sm-9">
131
- <input class="form-control input_view" type="text" style="width: 75%" readonly
132
- v-model="apply.f_apply_count"
133
- :value="apply.f_apply_count"/>
134
- </div>
135
- </div>
136
- </article>
137
- <footer slot="modal-footer" class="modal-footer">
138
- <button type="button" class="btn btn-primary" @click="mergeInitiate()" :disabled='!$mv.valid'>确认</button>
139
- </footer>
140
- </modal>
141
- </validator>
142
-
143
- <validator name="av">
144
- <modal
145
- v-if="showApply"
146
- :show.sync="showApply"
147
- backdrop="false"
148
- >
149
- <header slot="modal-header" class="modal-header">
150
- <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
151
- <h4 class="modal-title">合并工程</h4>
152
- </header>
153
- <article slot="modal-body" class="modal-body clearfix">
154
- <div class="form-group col-sm-12" :class="[$av.apply.required ? 'has-error' : '']">
155
- <label class="col-sm-3 control-label" style="line-height: 35px">选择工程:</label>
156
- <div class="col-sm-9">
157
- <input type="text" v-show="false" v-validate:apply = "['required']" v-model="checkApply.id">
158
- <v-select
159
- placeholder='请选择需要合并的工程'
160
- v-model="checkApply"
161
- :value.sync="checkApply"
162
- :options='applyList'
163
- :value-single="true"
164
- class="select select_list"
165
- :search="false"
166
- width="75%"
167
- close-on-select ></v-select>
168
- </div>
169
- </div>
170
- </article>
171
- <footer slot="modal-footer" class="modal-footer">
172
- <button type="button" class="btn btn-primary" @click="mergeApply()" :disabled='!$av.valid'>确认</button>
173
- </footer>
174
- </modal>
175
- </validator>
176
-
177
- <modal
178
- v-if="showView"
179
- :show.sync="showView"
180
- large backdrop="false"
181
- >
182
- <header slot="modal-header" class="modal-header">
183
- <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
184
- <h4 class="modal-title">详情信息</h4>
185
- </header>
186
- <article slot="modal-body" class="modal-body row clearfix">
187
- <div class="form-group col-sm-4">
188
- <label class="font_normal_body">用户姓名</label>
189
- <input type="text" class="input_search" v-model="order.f_user_name" readonly>
190
- </div>
191
- <div class="form-group col-sm-4">
192
- <label class="font_normal_body">联&ensp;系&ensp;人</label>
193
- <input type="text" class="input_search" v-model="order.f_contact" readonly>
194
- </div>
195
- <div class="form-group col-sm-4">
196
- <label class="font_normal_body">联系电话</label>
197
- <input type="text" class="input_search" v-model="order.f_phone" readonly>
198
- </div>
199
- <div class="form-group col-sm-4">
200
- <label class="font_normal_body">证件类型</label>
201
- <input type="text" class="input_search" v-model="order.f_credentials" readonly>
202
- </div>
203
- <div class="form-group col-sm-8">
204
- <label class="font_normal_body">证件号码</label>
205
- <input type="text" class="input_search" v-model="order.f_idnumber" style="width: 85%" readonly>
206
- </div>
207
- <div class="form-group col-sm-4">
208
- <label class="font_normal_body">用户类型</label>
209
- <input type="text" class="input_search" v-model="order.f_user_type" readonly>
210
- </div>
211
- <div class="form-group col-sm-4">
212
- <label class="font_normal_body">用户性质</label>
213
- <input type="text" class="input_search" v-model="order.f_user_nature" readonly>
214
- </div>
215
- <div class="form-group col-sm-4">
216
- <label class="font_normal_body">户&emsp;&emsp;数</label>
217
- <input type="text" class="input_search" v-model="order.f_apply_count" readonly>
218
- </div>
219
- <div class="form-group col-sm-12">
220
- <label class="font_normal_body">定位地址</label>
221
- <input type="text" class="input_search" v-model="order.f_location_address" style="width: 90%" readonly>
222
- </div>
223
- <div class="form-group col-sm-4">
224
- <label class="font_normal_body">处理状态</label>
225
- <input type="text" class="input_search" v-model="order.f_orderstate" readonly>
226
- </div>
227
- <div class="form-group col-sm-4">
228
- <label class="font_normal_body">预约时间</label>
229
- <input type="text" class="input_search" v-model="order.f_orderdate" readonly>
230
- </div>
231
- <div class="form-group col-sm-12">
232
- <label class="font_normal_body">预约备注</label>
233
- <input type="text" class="input_search" style="width: 90%" v-model="order.f_orderremark" readonly>
234
- </div>
235
- <div class="form-group col-sm-4">
236
- <label class="font_normal_body">审&ensp;核&ensp;人</label>
237
- <input type="text" class="input_search" v-model="order.f_check_user" readonly>
238
- </div>
239
- <div class="form-group col-sm-4">
240
- <label class="font_normal_body">审核时间</label>
241
- <input type="text" class="input_search" v-model="order.f_check_date" readonly>
242
- </div>
243
- <div class="form-group col-sm-12">
244
- <label class="font_normal_body">审核备注</label>
245
- <input type="text" class="input_search" style="width: 90%" v-model="order.f_check_remark" readonly>
246
- </div>
247
- <div class="form-group col-sm-4">
248
- <label class="font_normal_body">处&ensp;理&ensp;人</label>
249
- <input type="text" class="input_search" v-model="order.f_process_user" readonly>
250
- </div>
251
- <div class="form-group col-sm-4">
252
- <label class="font_normal_body">处理时间</label>
253
- <input type="text" class="input_search" v-model="order.f_process_date" readonly>
254
- </div>
255
- <div class="form-group col-sm-4">
256
- <label class="font_normal_body">报建编号</label>
257
- <input type="text" class="input_search" v-model="order.f_apply_num" readonly>
258
- </div>
259
-
260
- </article>
261
- <footer slot="modal-footer" class="modal-footer">
262
- </footer>
263
- </modal>
264
-
265
- <modal
266
- :show.sync="showMap"
267
- large backdrop="false"
268
- >
269
- <header slot="modal-header" class="modal-header">
270
- <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
271
- <h4 class="modal-title">定位地址</h4>
272
- </header>
273
- <article slot="modal-body" class="modal-body row clearfix" style="height: 600px">
274
- <AMap-location v-ref:amap :isshowsearch="false"
275
- :mylocationinfo="false"
276
- :isshowmapmodel="false"
277
- mapmodel="dragMarker"></AMap-location>
278
- </article>
279
- <footer slot="modal-footer" class="modal-footer">
280
- </footer>
281
- </modal>
282
-
283
- </template>
284
- <script>
285
- import Vue from 'vue'
286
- import {HttpResetClass} from 'vue-client'
287
- export default {
288
- title: '预约报建',
289
- data () {
290
- return {
291
- showtotal: false, // 控制详细信息显示
292
- showData: true,
293
- selectedData: null,
294
- showCheck: false,
295
- checkOptions: [
296
- {
297
- label: '是',
298
- value: '是'
299
- },
300
- {
301
- label: '否',
302
- value: '否'
303
- }
304
- ],
305
- check: null,
306
- checkRemark: null,
307
- showType: false,
308
- applyType: null,
309
- showModal: null,
310
- apply: {},
311
- showApply: false,
312
- applyList: [],
313
- checkApply: null,
314
- order: null,
315
- showView: false,
316
- showMap: false
317
- }
318
- },
319
- created () {
320
- },
321
- methods: {
322
- async mergeApply () {
323
- let data = {
324
- selectedData: this.selectedData,
325
- checkApply: this.checkApply,
326
- user: this.$login.f
327
- }
328
-
329
- let res = await this.$resetpost(
330
- `rs/logic/mergeApply`,
331
- data,
332
- {resolveMsg: null,rejectMsg: '合并工程处理失败!!!'}
333
- )
334
-
335
- this.$refs.query.search()
336
-
337
- this.$showMessage(`报建编号:${res.data.f_apply_num}`)
338
- },
339
- async mergeInitiate () {
340
- let data = {
341
- selectedData: this.selectedData,
342
- apply: this.apply,
343
- user: this.$login.f
344
- }
345
-
346
- let res = await this.$resetpost(
347
- `rs/logic/mergeInitiate`,
348
- data,
349
- {resolveMsg: null,rejectMsg: '合并发起处理失败!!!'}
350
- )
351
-
352
- this.$refs.query.search()
353
-
354
- this.$showMessage(`报建编号:${res.data.f_apply_num}`)
355
- },
356
- async apply () {
357
- let data = {
358
- f_apply_type: this.applyType,
359
- selectedData: this.selectedData,
360
- user: this.$login.f
361
- }
362
-
363
- if (this.applyType === '散户报建') {
364
- data.defname = '用户受理'
365
- data.processname = '散户报建流程'
366
- } else if (this.applyType === '工业户报建') {
367
- data.defname = '用户受理'
368
- data.processname = '工商户报建流程'
369
- } else if (this.applyType === '商业户报建') {
370
- data.defname = '用户受理'
371
- data.processname = '工商户报建流程'
372
- } else if (this.applyType === '散户集体报建') {
373
- data.defname = '用户受理'
374
- data.processname = '散户集体报建流程'
375
- } else if (this.applyType === '开发商集体报建') {
376
- data.defname = '用户受理'
377
- data.processname = '开发商集体报建流程'
378
- } else if (this.applyType === '煤改气报建') {
379
- data.defname = '用户受理'
380
- data.processname = '散户集体报建流程'
381
- } else {
382
- this.$showMessage('暂无此类报装')
383
- return
384
- }
385
-
386
- let res = await this.$resetpost(
387
- `rs/logic/initiateOrderApply`,
388
- data,
389
- {resolveMsg: null,rejectMsg: '预约单处理失败!!!'}
390
- )
391
-
392
- this.closeModal()
393
-
394
- this.$showMessage(`共发起${res.data.total}条报建工程\n成功:${res.data.success}\n失败:${res.data.failure}`)
395
- },
396
- async checkOrder () {
397
- let data = {
398
- selectedData: this.selectedData,
399
- check: this.check,
400
- checkRemark: this.checkRemark,
401
- user: this.$login.f
402
- }
403
-
404
- let res = await this.$resetpost(
405
- `rs/logic/checkOrder`,
406
- data,
407
- {resolveMsg: null,rejectMsg: '预约单审核处理失败!!!'}
408
- )
409
-
410
- this.$refs.query.search()
411
-
412
- this.$showMessage(`审核通过!!!`)
413
- },
414
- closeModal () {
415
- this.showCheck = false
416
- this.showType = false
417
- this.showModal = false
418
- this.showApply = false
419
- this.showView = false
420
- this.showMap = false
421
-
422
-
423
- this.check = null
424
- this.checkRemark = null
425
- this.applyType = null
426
- this.apply = null
427
- this.applyList = []
428
- this.checkApply = []
429
- this.order = []
430
- this.selectedData = null
431
- this.$refs.query.selectedData = []
432
- },
433
- },
434
- events: {
435
- 'openMap' (row) {
436
-
437
- let data = {
438
- data: row,
439
- label: `<div style="background: #fff;border-radius: 5px;height: 100px;padding: 5px">
440
- <h5>${row.f_contact}</h5>
441
- <h5>${row.f_phone}</h5>
442
- <h5>${row.f_location_address}</h5>
443
- </div>`,
444
- }
445
-
446
- let position = [row.f_longitude, row.f_dimension]
447
-
448
- this.$refs.amap.showWindowInfoAndSpot(data, position, false)
449
-
450
- this.showMap = true
451
- },
452
- 'viewOrder' (row) {
453
- this.order = row
454
-
455
- this.showView = true
456
- },
457
- async 'handleOrder' (type, selectedData) {
458
- this.selectedData = selectedData
459
-
460
- if (type === '审核') {
461
- this.showCheck = true
462
- }
463
- if (type === '批量发起') {
464
- this.$showMessage('批量发起同一类型报建工程,建议所选预约单为同一类型、性质!!!', ['confirm']).then((res) => {
465
- if (res === 'confirm') {
466
- this.showType = true
467
- }
468
- })
469
- }
470
- if (type === '合并发起') {
471
- this.apply = {
472
- f_contact: this.selectedData[0].f_contact,
473
- f_phone: this.selectedData[0].f_phone,
474
- f_apply_count: this.selectedData.length
475
- }
476
- this.showModal = true
477
- }
478
- if (type === '合并工程') {
479
- let data = {
480
- tablename: 't_apply',
481
- condition: `f_sub_state != '完工' and f_sub_state != '暂停' and f_sub_state != '终止' and f_apply_type = '民用报建' and f_orgid = ${this.$login.f.orgid}`
482
- }
483
- let res = await this.$resetpost(
484
- 'rs/sql/singleTable',
485
- {data: data},
486
- {resolveMsg: null, rejectMsg: '工程查询失败!!!'}
487
- )
488
-
489
- res.data.forEach(item => {
490
- this.applyList.push({
491
- 'label': `${item.f_entry_name}`,
492
- 'value': item
493
- })
494
- })
495
-
496
- this.showApply = true
497
- }
498
-
499
- },
500
- 'search' () {
501
- this.closeModal()
502
-
503
- // 关闭详细
504
- this.showtotal = false
505
- // 显示列表数据
506
- this.showData = true
507
- // 显示分页
508
- this.$refs.query.$refs.cp.pager = true
509
- // 调用查询
510
- this.$refs.query.$refs.cp.$refs.cri.search()
511
- }
512
- },
513
-
514
- watch: {
515
- }
516
- }
517
- </script>
1
+ <template>
2
+ <div class="flex-row">
3
+ <div class="basic-main">
4
+ <div :class="showData ? 'top' : 'auto'">
5
+ <order-apply-list v-ref:query :show-data="showData"></order-apply-list>
6
+ </div>
7
+ <div v-if="showtotal" style="height: 89%">
8
+ </div>
9
+ </div>
10
+ </div>
11
+
12
+ <validator name="cv">
13
+ <modal
14
+ v-if="showCheck"
15
+ :show.sync="showCheck"
16
+ backdrop="false"
17
+ >
18
+ <header slot="modal-header" class="modal-header">
19
+ <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
20
+ <h4 class="modal-title">检查审核</h4>
21
+ </header>
22
+ <article slot="modal-body" class="modal-body clearfix">
23
+ <div class="form-group col-sm-12" :class="[$cv.check.required ? 'has-error' : '']">
24
+ <label class="col-sm-3 control-label" style="line-height: 35px">是否合格:</label>
25
+ <div class="col-sm-9">
26
+ <input type="text" v-show="false" v-validate:check = "['required']" v-model="check">
27
+ <v-select
28
+ v-model="check"
29
+ :value.sync="check"
30
+ :options='checkOptions'
31
+ :value-single="true"
32
+ class="select select_list"
33
+ :search="false"
34
+ width="75%"
35
+ close-on-select ></v-select>
36
+ </div>
37
+ </div>
38
+ <div class="form-group col-sm-12" :class="[$cv.remark.required ? 'has-error' : '']">
39
+ <label class="col-sm-3 control-label" style="line-height: 60px">审核备注:</label>
40
+ <div class="col-sm-9">
41
+ <textarea
42
+ class="form-control input_view" style="width: 75%;height: 100%"
43
+ rows="2" v-validate:remark = "['required']" placeholder=""
44
+ v-model="checkRemark" :value="checkRemark"
45
+ >
46
+ </textarea>
47
+ </div>
48
+ </div>
49
+ </article>
50
+ <footer slot="modal-footer" class="modal-footer">
51
+ <button type="button" class="btn btn-primary" @click="checkOrder()" :disabled='!$cv.valid'>确认</button>
52
+ </footer>
53
+ </modal>
54
+ </validator>
55
+
56
+ <validator name="tv">
57
+ <modal
58
+ v-if="showType"
59
+ :show.sync="showType"
60
+ backdrop="false"
61
+ >
62
+ <header slot="modal-header" class="modal-header">
63
+ <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
64
+ <h4 class="modal-title">报建类型</h4>
65
+ </header>
66
+ <article slot="modal-body" class="modal-body clearfix">
67
+ <div class="form-group col-sm-12" :class="[$tv.type.required ? 'has-error' : '']">
68
+ <label class="col-sm-3 control-label" style="line-height: 35px">报建类型:</label>
69
+ <div class="col-sm-9">
70
+ <input type="text" v-show="false" v-validate:type = "['required']" v-model="applyType">
71
+ <v-select
72
+ placeholder='请选择需要发起的工程类型'
73
+ v-model="applyType"
74
+ :value.sync="applyType"
75
+ :options='$appdata.getParam("报建类型")'
76
+ :value-single="true"
77
+ class="select select_list"
78
+ :search="false"
79
+ width="75%"
80
+ close-on-select ></v-select>
81
+ </div>
82
+ </div>
83
+ </article>
84
+ <footer slot="modal-footer" class="modal-footer">
85
+ <button type="button" class="btn btn-primary" @click="apply()" :disabled='!$tv.valid'>确认</button>
86
+ </footer>
87
+ </modal>
88
+ </validator>
89
+
90
+ <validator name="mv">
91
+ <modal
92
+ v-if="showModal"
93
+ :show.sync="showModal"
94
+ backdrop="false"
95
+ >
96
+ <header slot="modal-header" class="modal-header">
97
+ <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
98
+ <h4 class="modal-title">合并发起</h4>
99
+ </header>
100
+ <article slot="modal-body" class="modal-body clearfix">
101
+ <div class="form-group col-sm-12" :class="[$tv.f_entry_name.required ? 'has-error' : '']">
102
+ <label class="col-sm-3 control-label" style="line-height: 35px">项目名称:</label>
103
+ <div class="col-sm-9">
104
+ <input class="form-control input_view" type="text" style="width: 75%"
105
+ v-validate:f_entry_name = "['required']"
106
+ v-model="apply.f_entry_name"
107
+ :value="apply.f_entry_name"/>
108
+ </div>
109
+ </div>
110
+ <div class="form-group col-sm-12" :class="[$tv.f_contact.required ? 'has-error' : '']">
111
+ <label class="col-sm-3 control-label" style="line-height: 35px">联&ensp;系&ensp;人:</label>
112
+ <div class="col-sm-9">
113
+ <input class="form-control input_view" type="text" style="width: 75%"
114
+ v-validate:f_contact = "['required']"
115
+ v-model="apply.f_contact"
116
+ :value="apply.f_contact"/>
117
+ </div>
118
+ </div>
119
+ <div class="form-group col-sm-12" :class="[$tv.f_phone.required ? 'has-error' : '']">
120
+ <label class="col-sm-3 control-label" style="line-height: 35px">联系电话:</label>
121
+ <div class="col-sm-9">
122
+ <input class="form-control input_view" type="text" style="width: 75%"
123
+ v-validate:f_phone = "['required']"
124
+ v-model="apply.f_phone"
125
+ :value="apply.f_phone"/>
126
+ </div>
127
+ </div>
128
+ <div class="form-group col-sm-12">
129
+ <label class="col-sm-3 control-label" style="line-height: 35px">合并预约:</label>
130
+ <div class="col-sm-9">
131
+ <input class="form-control input_view" type="text" style="width: 75%" readonly
132
+ v-model="apply.f_apply_count"
133
+ :value="apply.f_apply_count"/>
134
+ </div>
135
+ </div>
136
+ </article>
137
+ <footer slot="modal-footer" class="modal-footer">
138
+ <button type="button" class="btn btn-primary" @click="mergeInitiate()" :disabled='!$mv.valid'>确认</button>
139
+ </footer>
140
+ </modal>
141
+ </validator>
142
+
143
+ <validator name="av">
144
+ <modal
145
+ v-if="showApply"
146
+ :show.sync="showApply"
147
+ backdrop="false"
148
+ >
149
+ <header slot="modal-header" class="modal-header">
150
+ <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
151
+ <h4 class="modal-title">合并工程</h4>
152
+ </header>
153
+ <article slot="modal-body" class="modal-body clearfix">
154
+ <div class="form-group col-sm-12" :class="[$av.apply.required ? 'has-error' : '']">
155
+ <label class="col-sm-3 control-label" style="line-height: 35px">选择工程:</label>
156
+ <div class="col-sm-9">
157
+ <input type="text" v-show="false" v-validate:apply = "['required']" v-model="checkApply.id">
158
+ <v-select
159
+ placeholder='请选择需要合并的工程'
160
+ v-model="checkApply"
161
+ :value.sync="checkApply"
162
+ :options='applyList'
163
+ :value-single="true"
164
+ class="select select_list"
165
+ :search="false"
166
+ width="75%"
167
+ close-on-select ></v-select>
168
+ </div>
169
+ </div>
170
+ </article>
171
+ <footer slot="modal-footer" class="modal-footer">
172
+ <button type="button" class="btn btn-primary" @click="mergeApply()" :disabled='!$av.valid'>确认</button>
173
+ </footer>
174
+ </modal>
175
+ </validator>
176
+
177
+ <modal
178
+ v-if="showView"
179
+ :show.sync="showView"
180
+ large backdrop="false"
181
+ >
182
+ <header slot="modal-header" class="modal-header">
183
+ <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
184
+ <h4 class="modal-title">详情信息</h4>
185
+ </header>
186
+ <article slot="modal-body" class="modal-body row clearfix">
187
+ <div class="form-group col-sm-4">
188
+ <label class="font_normal_body">用户姓名</label>
189
+ <input type="text" class="input_search" v-model="order.f_user_name" readonly>
190
+ </div>
191
+ <div class="form-group col-sm-4">
192
+ <label class="font_normal_body">联&ensp;系&ensp;人</label>
193
+ <input type="text" class="input_search" v-model="order.f_contact" readonly>
194
+ </div>
195
+ <div class="form-group col-sm-4">
196
+ <label class="font_normal_body">联系电话</label>
197
+ <input type="text" class="input_search" v-model="order.f_phone" readonly>
198
+ </div>
199
+ <div class="form-group col-sm-4">
200
+ <label class="font_normal_body">证件类型</label>
201
+ <input type="text" class="input_search" v-model="order.f_credentials" readonly>
202
+ </div>
203
+ <div class="form-group col-sm-8">
204
+ <label class="font_normal_body">证件号码</label>
205
+ <input type="text" class="input_search" v-model="order.f_idnumber" style="width: 85%" readonly>
206
+ </div>
207
+ <div class="form-group col-sm-4">
208
+ <label class="font_normal_body">用户类型</label>
209
+ <input type="text" class="input_search" v-model="order.f_user_type" readonly>
210
+ </div>
211
+ <div class="form-group col-sm-4">
212
+ <label class="font_normal_body">用户性质</label>
213
+ <input type="text" class="input_search" v-model="order.f_user_nature" readonly>
214
+ </div>
215
+ <div class="form-group col-sm-4">
216
+ <label class="font_normal_body">户&emsp;&emsp;数</label>
217
+ <input type="text" class="input_search" v-model="order.f_apply_count" readonly>
218
+ </div>
219
+ <div class="form-group col-sm-12">
220
+ <label class="font_normal_body">定位地址</label>
221
+ <input type="text" class="input_search" v-model="order.f_location_address" style="width: 90%" readonly>
222
+ </div>
223
+ <div class="form-group col-sm-4">
224
+ <label class="font_normal_body">处理状态</label>
225
+ <input type="text" class="input_search" v-model="order.f_orderstate" readonly>
226
+ </div>
227
+ <div class="form-group col-sm-4">
228
+ <label class="font_normal_body">预约时间</label>
229
+ <input type="text" class="input_search" v-model="order.f_orderdate" readonly>
230
+ </div>
231
+ <div class="form-group col-sm-12">
232
+ <label class="font_normal_body">预约备注</label>
233
+ <input type="text" class="input_search" style="width: 90%" v-model="order.f_orderremark" readonly>
234
+ </div>
235
+ <div class="form-group col-sm-4">
236
+ <label class="font_normal_body">审&ensp;核&ensp;人</label>
237
+ <input type="text" class="input_search" v-model="order.f_check_user" readonly>
238
+ </div>
239
+ <div class="form-group col-sm-4">
240
+ <label class="font_normal_body">审核时间</label>
241
+ <input type="text" class="input_search" v-model="order.f_check_date" readonly>
242
+ </div>
243
+ <div class="form-group col-sm-12">
244
+ <label class="font_normal_body">审核备注</label>
245
+ <input type="text" class="input_search" style="width: 90%" v-model="order.f_check_remark" readonly>
246
+ </div>
247
+ <div class="form-group col-sm-4">
248
+ <label class="font_normal_body">处&ensp;理&ensp;人</label>
249
+ <input type="text" class="input_search" v-model="order.f_process_user" readonly>
250
+ </div>
251
+ <div class="form-group col-sm-4">
252
+ <label class="font_normal_body">处理时间</label>
253
+ <input type="text" class="input_search" v-model="order.f_process_date" readonly>
254
+ </div>
255
+ <div class="form-group col-sm-4">
256
+ <label class="font_normal_body">报建编号</label>
257
+ <input type="text" class="input_search" v-model="order.f_apply_num" readonly>
258
+ </div>
259
+
260
+ </article>
261
+ <footer slot="modal-footer" class="modal-footer">
262
+ </footer>
263
+ </modal>
264
+
265
+ <modal
266
+ :show.sync="showMap"
267
+ large backdrop="false"
268
+ >
269
+ <header slot="modal-header" class="modal-header">
270
+ <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
271
+ <h4 class="modal-title">定位地址</h4>
272
+ </header>
273
+ <article slot="modal-body" class="modal-body row clearfix" style="height: 600px">
274
+ <AMap-location v-ref:amap :islocation="true"
275
+ :locationzoomcenter="false"
276
+ :usenative="true"
277
+ :isshowsearch="false"
278
+ :mylocationinfo="false"
279
+ :islocationclearmark="false"
280
+ :isshowmapmodel="false"
281
+ :locationwindow="false"
282
+ :labelmarksarray="labelmarksarray"
283
+ mapmodel="dragMarker"></AMap-location>
284
+ </article>
285
+ <footer slot="modal-footer" class="modal-footer">
286
+ </footer>
287
+ </modal>
288
+
289
+ </template>
290
+ <script>
291
+ import Vue from 'vue'
292
+ import {HttpResetClass} from 'vue-client'
293
+ export default {
294
+ title: '预约报建',
295
+ data () {
296
+ return {
297
+ showtotal: false, // 控制详细信息显示
298
+ showData: true,
299
+ selectedData: null,
300
+ showCheck: false,
301
+ checkOptions: [
302
+ {
303
+ label: '是',
304
+ value: '是'
305
+ },
306
+ {
307
+ label: '否',
308
+ value: '否'
309
+ }
310
+ ],
311
+ check: null,
312
+ checkRemark: null,
313
+ showType: false,
314
+ applyType: null,
315
+ showModal: null,
316
+ apply: {},
317
+ showApply: false,
318
+ applyList: [],
319
+ checkApply: null,
320
+ order: null,
321
+ showView: false,
322
+ showMap: false,
323
+ labelmarksarray: []
324
+ }
325
+ },
326
+ created () {
327
+ },
328
+ methods: {
329
+ async mergeApply () {
330
+ let data = {
331
+ selectedData: this.selectedData,
332
+ checkApply: this.checkApply,
333
+ user: this.$login.f
334
+ }
335
+
336
+ let res = await this.$resetpost(
337
+ `rs/logic/mergeApply`,
338
+ data,
339
+ {resolveMsg: null,rejectMsg: '合并工程处理失败!!!'}
340
+ )
341
+
342
+ this.$refs.query.search()
343
+
344
+ this.$showMessage(`报建编号:${res.data.f_apply_num}`)
345
+ },
346
+ async mergeInitiate () {
347
+ let data = {
348
+ selectedData: this.selectedData,
349
+ apply: this.apply,
350
+ user: this.$login.f
351
+ }
352
+
353
+ let res = await this.$resetpost(
354
+ `rs/logic/mergeInitiate`,
355
+ data,
356
+ {resolveMsg: null,rejectMsg: '合并发起处理失败!!!'}
357
+ )
358
+
359
+ this.$refs.query.search()
360
+
361
+ this.$showMessage(`报建编号:${res.data.f_apply_num}`)
362
+ },
363
+ async apply () {
364
+ let data = {
365
+ f_apply_type: this.applyType,
366
+ selectedData: this.selectedData,
367
+ user: this.$login.f
368
+ }
369
+
370
+ if (this.applyType === '散户报建') {
371
+ data.defname = '用户受理'
372
+ data.processname = '散户报建流程'
373
+ } else if (this.applyType === '工业户报建') {
374
+ data.defname = '用户受理'
375
+ data.processname = '工商户报建流程'
376
+ } else if (this.applyType === '商业户报建') {
377
+ data.defname = '用户受理'
378
+ data.processname = '工商户报建流程'
379
+ } else if (this.applyType === '散户集体报建') {
380
+ data.defname = '用户受理'
381
+ data.processname = '散户集体报建流程'
382
+ } else if (this.applyType === '开发商集体报建') {
383
+ data.defname = '用户受理'
384
+ data.processname = '开发商集体报建流程'
385
+ } else if (this.applyType === '煤改气报建') {
386
+ data.defname = '用户受理'
387
+ data.processname = '散户集体报建流程'
388
+ } else {
389
+ this.$showMessage('暂无此类报装')
390
+ return
391
+ }
392
+
393
+ let res = await this.$resetpost(
394
+ `rs/logic/initiateOrderApply`,
395
+ data,
396
+ {resolveMsg: null,rejectMsg: '预约单处理失败!!!'}
397
+ )
398
+
399
+ this.closeModal()
400
+
401
+ this.$showMessage(`共发起${res.data.total}条报建工程\n成功:${res.data.success}\n失败:${res.data.failure}`)
402
+ },
403
+ async checkOrder () {
404
+ let data = {
405
+ selectedData: this.selectedData,
406
+ check: this.check,
407
+ checkRemark: this.checkRemark,
408
+ user: this.$login.f
409
+ }
410
+
411
+ let res = await this.$resetpost(
412
+ `rs/logic/checkOrder`,
413
+ data,
414
+ {resolveMsg: null,rejectMsg: '预约单审核处理失败!!!'}
415
+ )
416
+
417
+ this.$refs.query.search()
418
+
419
+ this.$showMessage(`审核通过!!!`)
420
+ },
421
+ closeModal () {
422
+ this.showCheck = false
423
+ this.showType = false
424
+ this.showModal = false
425
+ this.showApply = false
426
+ this.showView = false
427
+ this.showMap = false
428
+
429
+
430
+ this.check = null
431
+ this.checkRemark = null
432
+ this.applyType = null
433
+ this.apply = null
434
+ this.applyList = []
435
+ this.checkApply = []
436
+ this.order = []
437
+ this.selectedData = null
438
+ this.$refs.query.selectedData = []
439
+ },
440
+ },
441
+ events: {
442
+ 'openMap' (row) {
443
+ this.labelmarksarray = []
444
+
445
+ this.labelmarksarray.push({
446
+ data: {
447
+ data: this.selectdata,
448
+ label: `<div style="background: #fff;border-radius: 5px;height: 100px;padding: 5px">
449
+ <h5>${row.f_contact}</h5>
450
+ <h5>${row.f_phone}</h5>
451
+ <h5>${row.f_location_address}</h5>
452
+ </div>`
453
+ },
454
+ position: [row.f_longitude, row.f_dimension],
455
+ isclearmarker: false
456
+ })
457
+
458
+ this.showMap = true
459
+ },
460
+ 'viewOrder' (row) {
461
+ this.order = row
462
+
463
+ this.showView = true
464
+ },
465
+ async 'handleOrder' (type, selectedData) {
466
+ this.selectedData = selectedData
467
+
468
+ if (type === '审核') {
469
+ this.showCheck = true
470
+ }
471
+ if (type === '批量发起') {
472
+ this.$showMessage('批量发起同一类型报建工程,建议所选预约单为同一类型、性质!!!', ['confirm']).then((res) => {
473
+ if (res === 'confirm') {
474
+ this.showType = true
475
+ }
476
+ })
477
+ }
478
+ if (type === '合并发起') {
479
+ this.apply = {
480
+ f_contact: this.selectedData[0].f_contact,
481
+ f_phone: this.selectedData[0].f_phone,
482
+ f_apply_count: this.selectedData.length
483
+ }
484
+ this.showModal = true
485
+ }
486
+ if (type === '合并工程') {
487
+ let data = {
488
+ tablename: 't_apply',
489
+ condition: `f_sub_state != '完工' and f_sub_state != '暂停' and f_sub_state != '终止' and f_apply_type = '民用报建' and f_orgid = ${this.$login.f.orgid}`
490
+ }
491
+ let res = await this.$resetpost(
492
+ 'rs/sql/singleTable',
493
+ {data: data},
494
+ {resolveMsg: null, rejectMsg: '工程查询失败!!!'}
495
+ )
496
+
497
+ res.data.forEach(item => {
498
+ this.applyList.push({
499
+ 'label': `${item.f_entry_name}`,
500
+ 'value': item
501
+ })
502
+ })
503
+
504
+ this.showApply = true
505
+ }
506
+
507
+ },
508
+ 'search' () {
509
+ this.closeModal()
510
+
511
+ // 关闭详细
512
+ this.showtotal = false
513
+ // 显示列表数据
514
+ this.showData = true
515
+ // 显示分页
516
+ this.$refs.query.$refs.cp.pager = true
517
+ // 调用查询
518
+ this.$refs.query.$refs.cp.$refs.cri.search()
519
+ }
520
+ },
521
+ watch: {
522
+
523
+ },
524
+ computed: {
525
+ }
526
+
527
+ }
528
+ </script>