apply-clients 3.0.10-21 → 3.0.10-210

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 (65) hide show
  1. package/.gradle/3.5/file-changes/last-build.bin +0 -0
  2. package/.gradle/3.5/taskHistory/taskHistory.lock +0 -0
  3. package/.gradle/5.2.1/executionHistory/executionHistory.bin +0 -0
  4. package/.gradle/5.2.1/executionHistory/executionHistory.lock +0 -0
  5. package/.gradle/5.2.1/fileChanges/last-build.bin +0 -0
  6. package/.gradle/5.2.1/fileHashes/fileHashes.bin +0 -0
  7. package/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
  8. package/.gradle/5.2.1/gc.properties +0 -0
  9. package/.gradle/buildOutputCleanup/built.bin +0 -0
  10. package/.gradle/buildOutputCleanup/cache.properties +2 -0
  11. package/.gradle/buildOutputCleanup/cache.properties.lock +1 -0
  12. package/.gradle/vcs-1/gc.properties +0 -0
  13. package/doc//346/226/260/347/224/250/346/210/267/350/212/261/345/220/215/345/206/214/345/257/274/345/205/245/346/250/241/346/235/277.xls +0 -0
  14. package/gradle/wrapper/gradle-wrapper.jar +0 -0
  15. package/gradle/wrapper/gradle-wrapper.properties +5 -0
  16. package/gradlew +0 -0
  17. package/gradlew.bat +84 -0
  18. package/package.json +5 -4
  19. package/src/apply.js +187 -146
  20. package/src/components/Util.js +26 -22
  21. package/src/components/app_apply/ApplyDownList.vue +21 -8
  22. package/src/components/app_apply/ApplyToDoList.vue +83 -59
  23. package/src/components/app_apply/ApplyUserInfo.vue +3 -3
  24. package/src/components/app_apply/PlaceControler.vue +255 -255
  25. package/src/components/app_apply/ServiceControl.vue +1387 -1387
  26. package/src/components/app_apply/ServiceView.vue +583 -361
  27. package/src/components/image/doc.jpg +0 -0
  28. package/src/components/image/excel.jpg +0 -0
  29. package/src/components/image/pdf.jpg +0 -0
  30. package/src/components/product/BatchFunction/BatchPay.vue +663 -0
  31. package/src/components/product/Function/InstallFunction.vue +9 -9
  32. package/src/components/product/Function/InstallInfoSelect.vue +230 -38
  33. package/src/components/product/Function/Service/FunctionServiceControl.vue +3 -1
  34. package/src/components/product/Function/functions/InstallFee.vue +58 -35
  35. package/src/components/product/Function/functions/StopInstall.vue +13 -1
  36. package/src/components/product/HiddenDangersInProjects/AddHiddenDangers.vue +957 -0
  37. package/src/components/product/HiddenDangersInProjects/HiddenProjectList.vue +425 -0
  38. package/src/components/product/HiddenDangersInProjects/HiddenProjectSchedule.vue +146 -0
  39. package/src/components/product/Process/ExplorationSelect.vue +302 -71
  40. package/src/components/product/Process/ExplorationUser.vue +18 -3
  41. package/src/components/product/Process/Processes/CustomerRecordMessage.vue +736 -201
  42. package/src/components/product/Process/Processes/Service/ApplyChargeSearch.vue +75 -69
  43. package/src/components/product/Process/Processes/Service/ServiceControl.vue +3172 -3053
  44. package/src/components/product/ProjectManagement/AddProjectSchedule.vue +863 -0
  45. package/src/components/product/ProjectManagement/ProjectList.vue +420 -0
  46. package/src/components/product/ProjectManagement/ProjectSchedule.vue +146 -0
  47. package/src/components/product/ReportForm/PaymentRecord.vue +801 -0
  48. package/src/components/product/ReportForm/PaymentRecordAdd.vue +105 -0
  49. package/src/components/product/ReportForm/PaymentRecordBad.vue +1273 -0
  50. package/src/components/product/ReportForm/PaymentRecordDetailed.vue +472 -0
  51. package/src/components/product/ReportForm/PaymentRecordTooBad.vue +60 -0
  52. package/src/components/product/ReportForm/PaymentReport.vue +532 -0
  53. package/src/components/product/ReportForm/ProjectReport.vue +447 -0
  54. package/src/components/product/ReportForm/SettlementReport.vue +336 -0
  55. package/src/components/product/ReportForm/SummaryReport.vue +451 -0
  56. package/src/components/product/ReportForm/UserReport.vue +402 -0
  57. package/src/components/product/ServiceView.vue +17 -9
  58. package/src/components/product/Supervisory/Service/SupervisoryServiceControl.vue +36 -2
  59. package/src/components/product/Supervisory/SupervisoryControl.vue +30 -6
  60. package/src/components/product/Supervisory/SupervisoryList.vue +249 -34
  61. package/src/components/product/VueUtils/ApplyUpload.vue +310 -0
  62. package/src/components/product/VueUtils/rightview/InstallCardList2.vue +0 -1
  63. package/src/main.js +4 -0
  64. package/success.rar +0 -0
  65. package/doc//350/212/261/345/220/215/345/206/214/345/257/274/345/205/245/346/250/241/346/235/277.xlsx +0 -0
@@ -0,0 +1,447 @@
1
+ <template>
2
+ <div class="d1">
3
+ <div class="left col-sm-12">
4
+ <criteria-paged :model="model" v-ref:cp>
5
+ <criteria partial='criteria' @condition-changed='search' v-ref:cri
6
+ style="padding: 20px;background-color: #f6f6f6;">
7
+ <form novalidate class="" partial>
8
+ <div class="col-sm-12">
9
+ <div class="form-group col-sm-2" >
10
+ <!-- <label class="col-sm-6">所属公司:</label>-->
11
+ <div class="col-sm-12">
12
+ <v-select :width ="'100%'" style="width: 100%" :options="$parent.$parent.apply_org" placeholder='所属公司' condition="f_filiale = '{}'"
13
+ v-model="model.f_filiale" @change="$parent.$parent.orgChange" :value.sync="model.f_filiale" close-on-select>
14
+ </v-select>
15
+ </div>
16
+ </div>
17
+ <div class="form-group col-sm-2">
18
+ <div class="col-sm-12">
19
+ <v-select :width ="'100%'" style="width: 100%" :options="$parent.$parent.entry_name" placeholder='项目名称' condition="f_entry_name = '{}'"
20
+ v-model="model.f_entry_name" @change="$parent.$parent.entryChange" :value.sync="model.f_entry_name" close-on-select>
21
+ </v-select>
22
+ </div>
23
+ </div>
24
+ <div class="form-group col-sm-2">
25
+ <div class="col-sm-12">
26
+ <v-select :width ="'100%'" style="width: 100%" :options="$parent.$parent.entry_num" placeholder='项目编号' condition="f_entry_num = '{}'"
27
+ v-model="model.f_entry_num" :value.sync="model.f_entry_num" close-on-select>
28
+ </v-select>
29
+ </div>
30
+ </div>
31
+ <!-- <div class="form-group col-sm-2">-->
32
+ <!-- <div class="col-sm-12">-->
33
+ <!-- <input type="text" class="form-control" v-model="model.f_address"-->
34
+ <!-- condition="d.f_address like '%{}%'" placeholder='请输入用户地址'>-->
35
+ <!-- </div>-->
36
+ <!-- </div>-->
37
+ <!-- <div class="form-group col-sm-2">-->
38
+ <!-- <div class="col-sm-12">-->
39
+ <!-- <input type="text" class="form-control" v-model="model.f_user_phone"-->
40
+ <!-- condition="u.f_user_phone like '%{}%'" placeholder='请输入用户电话'>-->
41
+ <!-- </div>-->
42
+ <!-- </div>-->
43
+ <div class="form-group col-sm-2">
44
+ <div class="col-sm-4">
45
+ <button class="btn btn-primary btn-sm" type="button" @click="search(),$parent.$parent.count_money_sum(),$parent.$parent.close()">
46
+ <span class="glyphicon glyphicon-search"></span>查询
47
+ </button>
48
+ </div>
49
+ <div class="col-sm-4">
50
+ <button class="btn btn-primary btn-sm" type="button" @click="$parent.$parent.clear()">
51
+ <span class="glyphicon glyphicon-search"></span>清空
52
+ </button>
53
+ </div>
54
+ <div class="col-sm-4">
55
+ <export-excel progress="apply_getExportProgress"
56
+ :data="{condition: condition,data: {fengongsi: this.$login.f.orgs, company: $parent.$parent.company_ok}}"
57
+ :field="$parent.$parent.getfield()"
58
+ sqlurl="rs/logic/apply_exportfile"
59
+ sql-name="reportFormProject"
60
+ template-name='项目汇总报表导出'
61
+ :choose-col="true">
62
+
63
+ </export-excel>
64
+ </div>
65
+ </div>
66
+ </div>
67
+ </form>
68
+ </criteria>
69
+ <data-grid :model="model" partial='list' v-ref:grid class="data-grid" is-fixed='false' style="overflow-x:auto">
70
+ <template partial='head'>
71
+ <tr class="title">
72
+ <th>
73
+ <nobr>序号</nobr>
74
+ </th>
75
+ <th>
76
+ <nobr>所属公司</nobr>
77
+ </th>
78
+ <th>
79
+ <nobr>项目名称</nobr>
80
+ </th>
81
+ <th>
82
+ <nobr>项目编号</nobr>
83
+ </th>
84
+ <th>
85
+ <nobr>用气性质</nobr>
86
+ </th>
87
+ <th>
88
+ <nobr>户数</nobr>
89
+ </th>
90
+ <th>
91
+ <nobr>应收金额</nobr>
92
+ </th>
93
+ <th>
94
+ <nobr>已收金额</nobr>
95
+ </th>
96
+ <th>
97
+ <nobr>欠费金额</nobr>
98
+ </th>
99
+ <th>
100
+ <nobr>备注</nobr>
101
+ </th>
102
+ </tr>
103
+ </template>
104
+ <template partial='body'>
105
+ <tr>
106
+ <td style="text-align: center;">
107
+ <nobr>{{$index+1}}</nobr>
108
+ </td>
109
+ <td style="text-align: center;">
110
+ <nobr>{{row.f_filiale}}</nobr>
111
+ </td>
112
+ <td style="text-align: center;">
113
+ <nobr>{{row.f_entry_name}}</nobr>
114
+ </td>
115
+ <td style="text-align: center;">
116
+ <nobr>{{row.f_entry_num}}</nobr>
117
+ </td>
118
+ <td style="text-align: center;">
119
+ <nobr>{{row.f_gasproperties}}</nobr>
120
+ </td>
121
+ <td style="text-align: center;">
122
+ <nobr>{{row.count}}</nobr>
123
+ </td>
124
+ <td style="text-align: center;">
125
+ <nobr>{{row.f_contract_money_sum.toFixed(2)}}</nobr>
126
+ </td>
127
+ <td style="text-align: center;">
128
+ <nobr>{{row.f_cumulative_money_sum.toFixed(2)}}</nobr>
129
+ </td>
130
+ <td style="text-align: center;">
131
+ <nobr>{{row.f_unaccounts_money_sum.toFixed(2)}}</nobr>
132
+ </td>
133
+ <td style="text-align: center;">
134
+ <nobr>{{row.f_apply_remarks}}</nobr>
135
+ </td>
136
+ </tr>
137
+ </template>
138
+ </data-grid>
139
+ </criteria-paged>
140
+ <table class="table-hover" style="position: fixed; bottom: 0; background: white; width: 100%">
141
+ <tr style="position: relative" class="table-bordered">
142
+ <td
143
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
144
+ 汇总信息
145
+ </td>
146
+ <td
147
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
148
+ 户数汇总:&emsp;{{count_sum}}
149
+ </td>
150
+ <td
151
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
152
+ 应收金额汇总:&emsp;{{contract_money_sum}}
153
+ </td>
154
+ <td
155
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
156
+ 已收金额汇总:&emsp;{{cumulative_money_sum.toFixed(2)}}
157
+ </td>
158
+ <td
159
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
160
+ 欠费金额汇总:&emsp;{{unaccounts_money_sum.toFixed(2)}}
161
+ </td>
162
+ </tr>
163
+ </table>
164
+ </div>
165
+ </div>
166
+ </template>
167
+ <script>
168
+ import AppData from '../../../stores/AppData.js'
169
+ import PagedListLogic from '../../../stores/PagedListLogic'
170
+ import getNowDate from '../../getNowDate.js'
171
+ import {HttpResetClass} from 'vue-client'
172
+
173
+ export default {
174
+ title: '项目汇总报表',
175
+ data() {
176
+ return {
177
+ applytype: this.$appdata.getParam('报建类型'),
178
+ applydepartment: this.$appdata.getParam('项目部'),
179
+ company: this.$login.f.orgs === '重庆盛焰集团' || this.$login.f.orgs === '湖南燎原燃气有限公司' ? " 1 = 1" : " f_filiale = '" + this.$login.f.orgs + "'",
180
+ company_ok: this.$login.f.orgs === '重庆盛焰集团' || this.$login.f.orgs === '湖南燎原燃气有限公司' ? "a.f_apply_num = '1' or 1 = 1" : '1 = 1',
181
+ model: new PagedListLogic('rs/sql/reportFormProject', 20, {
182
+ data: {
183
+ id: `${this.$login.f.name}`,
184
+ fengongsi: `${this.$login.f.orgs}`,
185
+ company: `${this.$login.f.orgs === '重庆盛焰集团' || this.$login.f.orgs === '湖南燎原燃气有限公司' ? "a.f_apply_num = '1' or 1 = 1" : '1 = 1'}`
186
+ }
187
+ },{f_now_payment_sum:0}),
188
+ users:[],
189
+ defnames:[],
190
+ condition: '',
191
+ select: '',
192
+ sum: 0 , //累计总金额
193
+ entry_name: [], //项目名称
194
+ entry_num: [], //项目编号
195
+ apply_org: [],
196
+
197
+ count_sum: 0, //户数汇总
198
+ contract_money_sum: 0,
199
+ cumulative_money_sum: 0,
200
+ unaccounts_money_sum: 0
201
+ }
202
+ },
203
+ ready() {
204
+ this.getEntry()
205
+ this.getOrgName()
206
+ this.$refs.cp.$refs.cri.search()
207
+ if (this.model.condition) {
208
+ this.count_money_sum()
209
+ }
210
+
211
+ },
212
+ methods: {
213
+ // 获取所有组织名称
214
+ async getOrgName() {
215
+ let http = new HttpResetClass()
216
+ let org = this.$login.f.orgs === '重庆盛焰集团' || this.$login.f.orgs === '湖南燎原燃气有限公司' ? " 1 = 1" : " name = '" + this.$login.f.orgs + "'"
217
+ let data = {
218
+ tablename: 't_organization',
219
+ condition: " name != '组织机构' and " + org
220
+
221
+ }
222
+ let res = await http.load('POST','rs/sql/applysingleTable',{data:data}, {
223
+ resolveMsg: null,
224
+ rejectMsg: '获取公司名称失败'
225
+ })
226
+ for (let i = 0; i < res.data.length; i++) {
227
+ // 所属公司
228
+ let data1 = []
229
+ let array1 = []
230
+ data1 = res.data.map(item => {
231
+ return item.name;
232
+ })
233
+ for (let q = 0; q < data1.length; q++) {
234
+ let arraydata = {
235
+ 'label': data1[q],
236
+ 'value': data1[q]
237
+ }
238
+ if (array1.length != 0) {
239
+ for (let w = 0; w < array1.length; w++) {
240
+ if (array1[w].label == data1[q]) {
241
+ break
242
+ }
243
+ while (w == array1.length - 1) {
244
+ array1.push(arraydata)
245
+ break
246
+ }
247
+ }
248
+ } else {
249
+ array1.push(arraydata)
250
+ }
251
+ }
252
+ this.apply_org = array1
253
+ }
254
+ },
255
+ generateUUID() {
256
+ var d = new Date().getTime()
257
+ var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
258
+ var r = (d + Math.random() * 16) % 16 | 0
259
+ d = Math.floor(d / 16)
260
+ return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16)
261
+ })
262
+ return uuid
263
+ },
264
+ async getEntry(val) {
265
+ // 获取项目名称和项目编号
266
+ let http = new HttpResetClass()
267
+ let data = {
268
+ tablename: 't_apply',
269
+ condition: this.company
270
+ }
271
+ // 判断是不是总公司得账号
272
+ if (this.$login.f.orgs == '重庆盛焰集团' || this.$login.f.orgs == '湖南燎原燃气有限公司') {
273
+ data.condition = " f_filiale = '" + val + "'"
274
+ }
275
+ let res = await http.load('POST','rs/sql/applysingleTable',{data:data}, {
276
+ resolveMsg: null,
277
+ rejectMsg: '获取项目名称和项目编号失败'
278
+ })
279
+ for (let i = 0; i < res.data.length; i++) {
280
+ // 项目名称
281
+ let data = []
282
+ let array = []
283
+ data = res.data.map(item => {
284
+ return item.f_entry_name;
285
+ })
286
+ for (let q = 0; q < data.length; q++) {
287
+ let arraydata = {
288
+ 'label': data[q],
289
+ 'value': data[q]
290
+ }
291
+ if (array.length != 0) {
292
+ for (let w = 0; w < array.length; w++) {
293
+ if (array[w].label == data[q]) {
294
+ break
295
+ }
296
+ while (w == array.length - 1) {
297
+ array.push(arraydata)
298
+ break
299
+ }
300
+ }
301
+ } else {
302
+ array.push(arraydata)
303
+ }
304
+ }
305
+ this.entry_name = array
306
+
307
+ }
308
+ },
309
+ async getNum(val) {
310
+ // 获取项目名称和项目编号
311
+ let http = new HttpResetClass()
312
+ let data = {
313
+ tablename: 't_apply',
314
+ condition: this.$login.f.orgs === '重庆盛焰集团' || this.$login.f.orgs === '湖南燎原燃气有限公司' ? "f_entry_name = '" + val + "'" : "f_filiale = '" + this.$login.f.orgs + "'" + " and f_entry_name = '" + val + "'"
315
+ }
316
+ let res = await http.load('POST','rs/sql/applysingleTable',{data:data}, {
317
+ resolveMsg: null,
318
+ rejectMsg: '获取项目名称和项目编号失败'
319
+ })
320
+ for (let i = 0; i < res.data.length; i++) {
321
+ // 项目编号
322
+ let data1 = []
323
+ let array1 = []
324
+ data1 = res.data.map(item => {
325
+ return item.f_entry_num;
326
+ })
327
+ for (let q = 0; q < data1.length; q++) {
328
+ let arraydata = {
329
+ 'label': data1[q],
330
+ 'value': data1[q]
331
+ }
332
+ if (array1.length != 0) {
333
+ for (let w = 0; w < array1.length; w++) {
334
+ if (array1[w].label == data1[q]) {
335
+ break
336
+ }
337
+ while (w == array1.length - 1) {
338
+ array1.push(arraydata)
339
+ break
340
+ }
341
+ }
342
+ } else {
343
+ array1.push(arraydata)
344
+ }
345
+ }
346
+ this.entry_num = array1
347
+ }
348
+ },
349
+ entryChange(val) {
350
+ console.log("被选中的数据:" + val)
351
+ this.getNum(val)
352
+ },
353
+ orgChange(val) {
354
+ console.log("被选中的数据:" + val)
355
+ this.getEntry(val)
356
+ },
357
+ check(val) {
358
+ this.$dispatch('check', val)
359
+ },
360
+ close(apply) {
361
+ this.$dispatch('close')
362
+ },
363
+ compare(val) {
364
+ val === '完工'
365
+ console.log('完工', val)
366
+ return false
367
+ },
368
+ clear() {
369
+ Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
370
+ this.$refs.cp.$refs.cri.model[key] = []
371
+ })
372
+ },
373
+ getfield() {
374
+ let report = {
375
+ 'f_filiale': '所属公司',
376
+ 'f_entry_name': '项目名称',
377
+ 'f_entry_num': '项目编号',
378
+ 'f_gasproperties': '用气性质',
379
+ 'count': '户数',
380
+ 'f_contract_money_sum': '应交金额',
381
+ 'f_cumulative_money_sum': '已收金额',
382
+ 'f_unaccounts_money_sum': '欠费金额',
383
+ 'f_apply_remarks': '备注'
384
+ }
385
+ return report
386
+ },
387
+ getCondition() {
388
+ let data = {
389
+ condition: ` 1 = 1`,
390
+ data: {
391
+ fengongsi: `${this.$login.f.f_fengongsi}`
392
+ }
393
+ }
394
+ return data
395
+ },
396
+ async count_money_sum() { //户数、金额汇总
397
+ let http = new HttpResetClass()
398
+ let data = {
399
+ condition: this.model.condition,
400
+ data: {
401
+ fengongsi: this.$login.f.orgs,
402
+ company: this.$login.f.orgs === '重庆盛焰集团' || this.$login.f.orgs === '湖南燎原燃气有限公司' ? "f_filiale = '1' or 1 = 1" : '1 = 1'
403
+ }
404
+ }
405
+ let res = await http.load('POST','rs/sql/reportFormProject',{data: data}, {resolveMsg: null, rejectMsg: null})
406
+
407
+ if (res.data) {
408
+ let count = 0
409
+ let contract_money = 0.00
410
+ let cumulative_money = 0.00
411
+ let unaccounts_money = 0.00
412
+ console.log("数据长度:" + res.data.length)
413
+ console.log("数据:" + JSON.stringify(res.data))
414
+ for (let i = 0; i < res.data.length; i++) {
415
+ count = count + res.data[i].count
416
+ contract_money = contract_money + res.data[i].f_contract_money_sum
417
+ cumulative_money = cumulative_money + res.data[i].f_cumulative_money_sum
418
+ unaccounts_money = unaccounts_money + res.data[i].f_unaccounts_money_sum
419
+ }
420
+ this.count_sum = count
421
+ this.contract_money_sum = contract_money
422
+ this.cumulative_money_sum = cumulative_money
423
+ this.unaccounts_money_sum = unaccounts_money
424
+ console.log("户数汇总:" + count + "应收金额汇总:" + contract_money + "已收金额汇总:" + cumulative_money + "欠费金额汇总:" + unaccounts_money)
425
+ }
426
+
427
+ }
428
+ },
429
+ computed: {
430
+ date() {
431
+ return getNowDate()
432
+ },
433
+ selected() {
434
+ return this.$refs.cp.$refs.grid.selected
435
+ },
436
+ applytype() {
437
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('报建类型')]
438
+ }
439
+ }
440
+ }
441
+ </script>
442
+ <style>
443
+ tr.title {
444
+ background-color: #6666ff;
445
+ }
446
+
447
+ </style>