apply-clients 3.4.2 → 3.4.4

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 (130) hide show
  1. package/android.html +23 -23
  2. package/build/dev-server.js +119 -119
  3. package/build/webpack.base.conf.js +2 -1
  4. package/build/webpack.dev.conf.js +12 -0
  5. package/dingding.html +23 -0
  6. package/index.html +33 -33
  7. package/package.json +2 -1
  8. package/src/AndroidApp.vue +35 -35
  9. package/src/DingDingApp.vue +51 -0
  10. package/src/android.js +21 -21
  11. package/src/apply.js +38 -13
  12. package/src/applyAndroid.js +46 -32
  13. package/src/applyDingDing.js +12 -0
  14. package/src/components/android/AppOnetomany.vue +343 -301
  15. package/src/components/android/AppServiceView.vue +189 -10
  16. package/src/components/android/AppSign.vue +19 -7
  17. package/src/components/android/AppTakePic.vue +143 -143
  18. package/src/components/android/AreaSelect/AppQrcodeReader.vue +73 -0
  19. package/src/components/android/AreaSelect/AppResAreaMapGroup.vue +148 -0
  20. package/src/components/android/AreaSelect/AppResAreaSelect.vue +108 -0
  21. package/src/components/android/AreaSelect/AppResAreaSelectGroup.vue +142 -0
  22. package/src/components/android/Function/AppFunctionServiceControl.vue +344 -0
  23. package/src/components/android/Function/AppInstallFunction.vue +366 -0
  24. package/src/components/android/Process/AppExplorationUser.vue +500 -320
  25. package/src/components/android/Process/AppServiceControl.vue +999 -48
  26. package/src/components/android/Process/Processes/AppAddMaterialScience.vue +477 -0
  27. package/src/components/android/Process/Processes/AppBuildSign.vue +46 -0
  28. package/src/components/android/Process/Processes/AppChargeManagement.vue +637 -0
  29. package/src/components/android/Process/Processes/AppDevicesManagement.vue +519 -0
  30. package/src/components/android/Process/Processes/AppInstallationDetails.vue +116 -90
  31. package/src/components/android/Process/Processes/AppSupplementalAgreement.vue +298 -0
  32. package/src/components/android/Process/Processes/selectApply.vue +250 -0
  33. package/src/components/android/Process/Processes/selectUserinfo.vue +182 -0
  34. package/src/components/android/ProgressReport/ProgressReportDetail.vue +64 -64
  35. package/src/components/android/Supervisory/AppProcessSupervisory.vue +205 -71
  36. package/src/components/android/Supervisory/AppSupervisoryCart.vue +69 -34
  37. package/src/components/android/TaskGraph.vue +125 -125
  38. package/src/components/common/TabButton.vue +149 -0
  39. package/src/components/common/Tabs.vue +67 -0
  40. package/src/components/image/dwg.jpg +0 -0
  41. package/src/components/image/txt.jpg +0 -0
  42. package/src/components/image//345/221/250/345/217/243/346/224/266/346/254/276/344/270/223/347/224/250/347/253/240.png +0 -0
  43. package/src/components/image//350/245/277/345/215/216/346/224/266/346/254/276/344/270/223/347/224/250/347/253/240.png +0 -0
  44. package/src/components/image//351/203/270/345/237/216/346/224/266/346/254/276/344/270/223/347/224/250/347/253/240.png +0 -0
  45. package/src/components/image//351/241/271/345/237/216/346/224/266/346/254/276/344/270/223/347/224/250/347/253/240.png +0 -0
  46. package/src/components/image//351/271/277/351/202/221/346/224/266/346/254/276/344/270/223/347/224/250/347/253/240.png +0 -0
  47. package/src/components/product/ApplyCharge/ApplyChargeList.vue +272 -53
  48. package/src/components/product/ApplyCharge/ApplyChargeSearch.vue +3 -3
  49. package/src/components/product/AreaSelect/MyAreaSelect.vue +423 -0
  50. package/src/components/product/AreaSelect/ResAreaSelect.vue +106 -0
  51. package/src/components/product/AreaSelect/ResAreaSelectGroup.vue +150 -0
  52. package/src/components/product/AreaSelect/utils/EventListener.js +29 -0
  53. package/src/components/product/AreaSelect/utils/coerceBoolean.js +7 -0
  54. package/src/components/product/Business/BusinessApply.vue +269 -0
  55. package/src/components/product/Business/CivilApply.vue +269 -0
  56. package/src/components/product/Function/InstallFunction.vue +132 -125
  57. package/src/components/product/Function/InstallInfoSelect.vue +320 -292
  58. package/src/components/product/Function/Service/FunctionServiceControl.vue +445 -222
  59. package/src/components/product/GaoDeMapComponents/GaoDeMap.vue +231 -0
  60. package/src/components/product/GroupByApply/ApplyGroupByList.vue +253 -0
  61. package/src/components/product/GroupByApply/ApplyGroupByMain.vue +53 -0
  62. package/src/components/product/GroupByApply/ApplyGroupByPaper.vue +376 -0
  63. package/src/components/product/Install/InstallProject.vue +194 -0
  64. package/src/components/product/Material/MaterialDetailed.vue +262 -0
  65. package/src/components/product/OldApply/Handle/HandleApply.vue +337 -0
  66. package/src/components/product/OldApply/Monitor/MonitorApply.vue +360 -0
  67. package/src/components/product/OldApply/OldApply.vue +209 -0
  68. package/src/components/product/OldApply/OldApplyMessage.vue +420 -0
  69. package/src/components/product/Onetomany.vue +406 -377
  70. package/src/components/product/Print/BuildOrder/buildOrderList.vue +339 -0
  71. package/src/components/product/Print/BuildOrder/printBuildOrder.vue +157 -0
  72. package/src/components/product/Print/IgnitionBill/IgnitionBill.vue +259 -0
  73. package/src/components/product/Print/IgnitionBill/printIgnitionBill.vue +168 -0
  74. package/src/components/product/Process/ExplorationSelect.vue +495 -410
  75. package/src/components/product/Process/ExplorationUser.vue +189 -138
  76. package/src/components/product/Process/Processes/InstallationDetails.vue +25 -7
  77. package/src/components/product/Process/Processes/Print/printCharge.vue +41 -17
  78. package/src/components/product/Process/Processes/Print/printChargepc.vue +142 -0
  79. package/src/components/product/Process/Processes/Print/printRefund.vue +196 -0
  80. package/src/components/product/Process/Processes/addMaterialScience.vue +454 -0
  81. package/src/components/product/Process/Processes/addressAndUserinfoManagement.vue +211 -207
  82. package/src/components/product/Process/Processes/chargeManagement.vue +20 -3
  83. package/src/components/product/Process/Processes/devicesManagement.vue +484 -478
  84. package/src/components/product/Process/Processes/selectApply.vue +2 -2
  85. package/src/components/product/Process/Service/ServiceControl.vue +638 -20
  86. package/src/components/product/Process/Service/ShowBackReason.vue +33 -33
  87. package/src/components/product/Process/ShowBackReason.vue +33 -0
  88. package/src/components/product/ServiceView.vue +357 -7
  89. package/src/components/product/Stop/StopApply.vue +101 -103
  90. package/src/components/product/Stop/StopApplyList.vue +271 -269
  91. package/src/components/product/Supervisory/Service/SupervisoryServiceControl.vue +884 -186
  92. package/src/components/product/Supervisory/SupervisoryControl.vue +137 -100
  93. package/src/components/product/Supervisory/SupervisoryList.vue +201 -30
  94. package/src/components/product/Supervisory/SupervisoryhCart.vue +130 -107
  95. package/src/components/product/VueUtils/ApplyUpload.vue +275 -273
  96. package/src/components/product/VueUtils/GaoPaiYi/HighMeter.vue +1090 -0
  97. package/src/components/product/VueUtils/HighMeter.vue +208 -208
  98. package/src/components/product/VueUtils/ToolsPage.vue +51 -0
  99. package/src/components/product/VueUtils/Tree.vue +330 -0
  100. package/src/dingding.js +19 -0
  101. package/src/expandcssAndroid.less +517 -1034
  102. package/src/filiale/yuchuan/android/Process/AppServiceControl.vue +735 -731
  103. package/src/filiale/yuchuan/android/Process/Processes/AppInstallationDetails.vue +824 -824
  104. package/src/filiale/yuchuan/android/Process/Processes/AppInstallationDetailsCivil.vue +650 -650
  105. package/src/filiale/yuchuan/android/Sign/AppSignTask.vue +182 -182
  106. package/src/filiale/yuchuan/android/Sign/BuildSign.vue +50 -50
  107. package/src/filiale/yuchuan/android/Sign/ConstructSign.vue +50 -50
  108. package/src/filiale/yuchuan/android/Sign/DesignSign.vue +50 -50
  109. package/src/filiale/yuchuan/android/Sign/SupervisorSign.vue +50 -50
  110. package/src/filiale/yuchuan/android/Task/Build/BuildTsak.vue +60 -60
  111. package/src/filiale/yuchuan/android/Task/Survey/SurveyTsak.vue +60 -60
  112. package/src/filiale/yuchuan/android.js +14 -14
  113. package/src/filiale/yuchuan/pc/Order/OrderApply.vue +528 -528
  114. package/src/filiale/yuchuan/pc/Order/OrderApplyList.vue +343 -343
  115. package/src/filiale/yuchuan/pc/Print/BuildOrder/buildOrderList.vue +264 -0
  116. package/src/filiale/yuchuan/pc/Print/BuildOrder/printBuildOrder.vue +152 -0
  117. package/src/filiale/yuchuan/pc/Process/ExplorationUser.vue +149 -149
  118. package/src/filiale/yuchuan/pc/Process/Processes/ApplyMapCom.vue +67 -67
  119. package/src/filiale/yuchuan/pc/Process/Processes/InstallationDetails.vue +809 -809
  120. package/src/filiale/yuchuan/pc/Process/Processes/InstallationDetailsCivil.vue +595 -595
  121. package/src/filiale/yuchuan/pc/Process/Processes/Print/printCharge.vue +125 -0
  122. package/src/filiale/yuchuan/pc/Process/Processes/chargeManagement.vue +621 -470
  123. package/src/filiale/yuchuan/pc/Process/Service/ServiceControl.vue +1108 -1074
  124. package/src/filiale/yuchuan/pc/Sign/SignRecord.vue +24 -0
  125. package/src/filiale/yuchuan/pc/Sign/SignRecordList.vue +174 -0
  126. package/src/filiale/yuchuan/pc.js +20 -12
  127. package/src/main.js +4 -1
  128. package/src/components/product/Function/StopApplyCrrdList.vue +0 -176
  129. package/src/components/product/Function/functions/ApplyRecordCancel.vue +0 -102
  130. package/src/components/product/Function/functions/StopInstall.vue +0 -106
@@ -0,0 +1,344 @@
1
+ <template>
2
+ <div class="col-sm-12 col-xs-12 p-10">
3
+ <accordion one-at-a-time="true">
4
+ <panel :header="selectdata.title" :is-open="true" type="primary">
5
+ <app-service-view v-ref:serviceview :data="show_data" v-if="showview"></app-service-view>
6
+ </panel>
7
+ <panel header="拍照" :is-open="false" type="primary" v-if="selectdata.f_process_id">
8
+ <app-take-pic :blobid="selectdata.f_process_id" :defname="selectdata.defname" :isdelete="true" :istakepic="true" :istype="true"></app-take-pic>
9
+ </panel>
10
+ </accordion>
11
+ </div>
12
+ </template>
13
+ <script>
14
+ import {HttpResetClass} from 'vue-client'
15
+ import Vue from 'vue'
16
+ export default {
17
+ title: '报建功能业务控制层',
18
+ props: ['selectdata', 'jsondata'],
19
+ data () {
20
+ return {
21
+ show_data: null, // 给通用页面显示的数据
22
+ showview: false // 控制通用页面
23
+ }
24
+ },
25
+ ready () {
26
+ this.refurbish()
27
+ },
28
+ methods: {
29
+ async refurbish () {
30
+ this.selectdata = Object.assign({}, this.selectdata, this.jsondata)
31
+
32
+ // fields 字段填充值
33
+ for (const item of this.selectdata.fields) {
34
+ if (!item.value) {
35
+ item.value = null
36
+ }
37
+
38
+ if (!item.value && (item.default || item.default === 0) && item.type !== 'datepicker') {
39
+ if (item.eval) {
40
+ let user = Vue.user
41
+ // 将PC用户信息 替换成 APP的
42
+ item.value = eval(item.default.replace('this.$login.f', 'user'))
43
+ } else {
44
+ item.value = item.default
45
+ }
46
+ }
47
+
48
+ if (this.selectdata[item.field]) {
49
+ // 将json字符串格式化赋值给value
50
+ if (String(this.selectdata[item.field]).startsWith("{")) {
51
+ item.value = JSON.parse(this.selectdata[item.field])
52
+ } else {
53
+ item.value = this.selectdata[item.field]
54
+ }
55
+ }
56
+ if (this.selectdata[item.field] === 0) {
57
+ item.value = 0
58
+ }
59
+
60
+ // datepicker
61
+ if (item.type === 'datepicker' && !item.value && item.default) {
62
+ item.value = new Date().Format(`${item.format ? item.format : 'yyyy-MM-dd HH:mm:ss'}`)
63
+ }
64
+
65
+ // 如果配置类型为select,优先从参数列表获取options
66
+ if (item.type === 'select' || item.type === 'checkbox') {
67
+ if (item.param) {
68
+ let temp = this.$appdata.getParam(item.label)
69
+
70
+ if (temp && temp.length > 0) {
71
+ item.options = temp
72
+ }
73
+
74
+ if (item.paramLabel) {
75
+ temp = this.$appdata.getParam(item.paramLabel)
76
+ if (temp && temp.length > 0) {
77
+ item.options = temp
78
+ }
79
+ }
80
+ }
81
+
82
+ if (item.ready) {
83
+ item.options = await this[item.ready]()
84
+ }
85
+ }
86
+
87
+
88
+ if (item.type === 'checkbox') {
89
+ if (this.selectdata[item.field]) {
90
+ item.value = JSON.parse(this.selectdata[item.field])
91
+ } else {
92
+ item.value = []
93
+ }
94
+ }
95
+ }
96
+
97
+ // 控制组件
98
+ if (this.selectdata.components) {
99
+ this.selectdata.components.forEach(item => {
100
+ item.mark = 2
101
+ })
102
+ }
103
+
104
+ // 初始化onetomany
105
+ if (this.selectdata.onetomany) {
106
+ for (const item of this.selectdata.onetomany) {
107
+ let res = null
108
+ if (item.queryEvent) {
109
+ res = this[item.queryEvent]()
110
+ } else {
111
+ let data = {
112
+ tablename: item.tables[0],
113
+ condition: `f_process_id='${this.selectdata.f_process_id}'`
114
+ }
115
+ res = await this.$resetpost(
116
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
117
+ {data: data},
118
+ {resolveMsg: null, rejectMsg: 'onetomany查询失败'}
119
+ )
120
+ }
121
+
122
+ item.rows = res.data
123
+
124
+ // 初始化onetomany中的fields
125
+ for (const field of item.fields) {
126
+ if (!field.value) {
127
+ if (field.value !== 0) {
128
+ field.value = null
129
+ }
130
+ }
131
+
132
+ if (field.default || field.default === 0) {
133
+ field.value = field.default
134
+ }
135
+
136
+ // datepicker
137
+ if (field.type === 'datepicker' && !field.value && field.default) {
138
+ field.value = new Date().Format(`${field.format ? field.format : 'yyyy-MM-dd HH:mm:ss'}`)
139
+ }
140
+
141
+ if (field.type === 'select') {
142
+ let temp = this.$appdata.getParam(field.label)
143
+
144
+ if (temp && temp.length > 0) {
145
+ field.options = temp
146
+ }
147
+
148
+ if (field.paramLabel) {
149
+ temp = this.$appdata.getParam(field.paramLabel)
150
+ if (temp && temp.length > 0) {
151
+ item.options = temp
152
+ }
153
+ }
154
+ }
155
+ }
156
+ }
157
+ }
158
+
159
+ // 消除双向绑定,避免子组件(显示层)数据更改,父组件(控制层)也更改
160
+ let temp = JSON.parse(JSON.stringify(this.selectdata))
161
+
162
+ this.show_data = temp
163
+ this.$nextTick(() => {
164
+ this.showview = true
165
+ })
166
+ },
167
+ getLableValue(label) {
168
+ for (const item of this.show_data.fields) {
169
+ if (item.label === label && item.type !== 'number') {
170
+ return item.value || ''
171
+ }
172
+ if (item.label === label && item.type === 'number') {
173
+ return item.value || 0
174
+ }
175
+ }
176
+ },
177
+ getLableOptions(label) {
178
+ for (const item of this.show_data.fields) {
179
+ if (item.label === label) {
180
+ return item.options
181
+ }
182
+ }
183
+ },
184
+ setLabelValue(label, value) {
185
+ for (const item of this.show_data.fields) {
186
+ if (item.label === label) {
187
+ item.value = value
188
+ this.show_data[item.field] = value
189
+ }
190
+ }
191
+ },
192
+ setLabelOptions(label, options) {
193
+ for (const item of this.show_data.fields) {
194
+ if (item.label === label) {
195
+ item.options = options
196
+ }
197
+ }
198
+ },
199
+ async breakControl () {
200
+ if (this.show_data.id) {
201
+ let data = {
202
+ condition: `u.id = ${this.show_data.id}`,
203
+ data: {
204
+ orgid: Vue.user.orgid
205
+ // id: '51953',
206
+ // orgid: '10101'
207
+ }
208
+ }
209
+ let res = await this.$resetpost(
210
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/checkuserfunction`,
211
+ // `rs/sql/checkuserfunction`,
212
+ {data: data},
213
+ {resolveMsg: null, rejectMsg: '数据更新失败,请手查询更新!!!'}
214
+ )
215
+
216
+ this.selectdata = res.data[0]
217
+ } else {
218
+ this.selectdata = servicedata
219
+ }
220
+
221
+ this.refurbish()
222
+ },
223
+ },
224
+ events: {
225
+ async 'stopApply' () {
226
+
227
+ let data = {
228
+ data: this.show_data,
229
+ user: Vue.user
230
+ }
231
+
232
+ let res = await this.$resetpost(
233
+ `${this.$androidUtil.getProxyUrl()}/rs/logic/stopApply`,
234
+ {data: data},
235
+ {resolveMsg: null, rejectMsg: '终止报建失败!!!'}
236
+ )
237
+
238
+ // 返回上层
239
+ this.$dispatch('confirm')
240
+ },
241
+ async 'pauseApply' () {
242
+
243
+ let data = {
244
+ data: this.show_data,
245
+ user: Vue.user
246
+ }
247
+
248
+ let res = await this.$resetpost(
249
+ `${this.$androidUtil.getProxyUrl()}/rs/logic/pauseApply`,
250
+ {data: data},
251
+ {resolveMsg: null, rejectMsg: '暂停报建失败!!!'}
252
+ )
253
+
254
+ // 返回上层
255
+ this.$dispatch('confirm')
256
+ },
257
+ // 获取view层button事件
258
+ async 'button' (){
259
+
260
+ let res = await this.$resetpost(
261
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
262
+ this.show_data,
263
+ {resolveMsg: null, rejectMsg: '数据保存失败!!!'}
264
+ )
265
+
266
+ // 返回上层
267
+ this.$dispatch('confirm')
268
+ },
269
+ 'breakControl' () {
270
+ this.breakControl()
271
+ },
272
+ // 失去焦点出触发事件
273
+ 'onchange' (index) {
274
+ },
275
+ 'onblur' (index) {},
276
+ 'oninput' (index) {},
277
+ 'initializtionView' () {},
278
+ async 'onchangeModal' (index, fieldIndex) {
279
+ },
280
+ async 'onblurModal' (index, fieldIndex) {
281
+
282
+ },
283
+ async 'oninputModal' (index, fieldIndex) {
284
+
285
+ },
286
+ async 'onetomanydelete' (index, rowIndex) {
287
+
288
+ let http = new HttpResetClass()
289
+
290
+ let res = await http.load(
291
+ 'DELETE',
292
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}/${this.show_data.onetomany[index].rows[rowIndex].id}`,
293
+ null,
294
+ {resolveMsg: null, rejectMsg: '删除失败!!!'}
295
+ )
296
+ res = await this.$resetpost(
297
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
298
+ this.show_data
299
+ )
300
+ this.breakControl()
301
+ },
302
+ async 'onetomanyupdate' (index, rowIndex) {
303
+ let data = this.show_data.onetomany[index].rows[rowIndex]
304
+
305
+ this.show_data.onetomany[index].fields.forEach(item => {
306
+ data[item.field] = item.value
307
+ })
308
+ let res = await this.$resetpost(
309
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}`,
310
+ data
311
+ )
312
+ res = await this.$resetpost(
313
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
314
+ this.show_data
315
+ )
316
+ this.breakControl()
317
+ },
318
+ async 'onetomanyadd' (index) {
319
+ let data = {
320
+ f_process_id : this.show_data.f_process_id,
321
+ f_operator_id: Vue.user.id,
322
+ f_operator: Vue.user.name,
323
+ f_operation_date: new Date().Format('yyyy-MM-dd HH:mm:ss'),
324
+ f_orgid: Vue.user.orgid,
325
+ f_orgname: Vue.user.orgs
326
+ }
327
+ this.show_data.onetomany[index].fields.forEach(item => {
328
+ data[item.field] = item.value
329
+ })
330
+ let res = await this.$resetpost(
331
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}`,
332
+ data
333
+ )
334
+ res = await this.$resetpost(
335
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
336
+ this.show_data
337
+ )
338
+ this.breakControl()
339
+ }
340
+ },
341
+ watch:{
342
+ }
343
+ }
344
+ </script>