apply-clients 7.1.36-1 → 7.1.36-yuchuan-1

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 (55) hide show
  1. package/build/dev-server.js +8 -2
  2. package/dist-android.7z +0 -0
  3. package/dist.7z +0 -0
  4. package/package.json +1 -1
  5. package/src/apply.js +31 -4
  6. package/src/applyAndroid.js +5 -0
  7. package/src/components/android/AppSign.vue +13 -10
  8. package/src/components/android/Process/AppExplorationUser.vue +454 -454
  9. package/src/components/android/Process/AppServiceControl.vue +3 -3
  10. package/src/components/android/Process/Processes/AppChaiChuInfo.vue +546 -0
  11. package/src/components/android/Process/Processes/AppDevicesManagement.vue +2 -1
  12. package/src/components/android/Process/Processes/AppInstallationDetails.vue +69 -20
  13. package/src/components/android/Process/Processes/newAppDevicesManagement.vue +2 -1
  14. package/src/components/android/Process/Processes/newAppInstallationDetails.vue +5 -5
  15. package/src/components/android/Supervisory/AppProcessSupervisory.vue +334 -298
  16. package/src/components/android/Task/ShenHe/BuZhangShenHe.vue +64 -0
  17. package/src/components/android/Task/ShenHe/JingLiShenHe.vue +64 -0
  18. package/src/components/product/ApplyCharge/ApplyChargeList.vue +27 -0
  19. package/src/components/product/ApplyGaiXianCharge/ApplyGaiXianChargeList.vue +198 -0
  20. package/src/components/product/ApplyGaiXianCharge/ApplyGaiXianChargeSearch.vue +30 -0
  21. package/src/components/product/ApplyGuanXian/GuanXianCaiLiao.vue +235 -0
  22. package/src/components/product/ApplyGuanXian/GuanXianExplorationSelect.vue +323 -0
  23. package/src/components/product/ApplyGuanXian/GuanXianExplorationUser.vue +144 -0
  24. package/src/components/product/ApplyGuanXian/GuanXianSupervisoryhCart.vue +119 -0
  25. package/src/components/product/ApplyGuanXian/TabButton.vue +157 -0
  26. package/src/components/product/ApplyGuanXian/Tabs.vue +67 -0
  27. package/src/components/product/Function/InstallInfoSelect.vue +3 -4
  28. package/src/components/product/Function/Service/FunctionServiceControl.vue +475 -475
  29. package/src/components/product/Ignition/IgnitionList.vue +236 -232
  30. package/src/components/product/Ignition/IgnitionListManage.vue +69 -28
  31. package/src/components/product/Ignition/IgnitionRecord.vue +56 -17
  32. package/src/components/product/List/ShowDevices.vue +279 -277
  33. package/src/components/product/Print/OrderPrint/printChaiChuOrder.vue +260 -0
  34. package/src/components/product/Process/ExplorationSelect.vue +580 -566
  35. package/src/components/product/Process/ExplorationUser.vue +158 -155
  36. package/src/components/product/Process/NewExplorationUser.vue +184 -0
  37. package/src/components/product/Process/Processes/ApplyChaiChuInfo.vue +587 -0
  38. package/src/components/product/Process/Processes/InstallationDetails.vue +86 -33
  39. package/src/components/product/Process/Processes/Print/printCharge.vue +5 -1
  40. package/src/components/product/Process/Processes/Print/printPaymentApproval.vue +224 -221
  41. package/src/components/product/Process/Processes/Print/printPaymentSubject.vue +170 -0
  42. package/src/components/product/Process/Processes/chargeManagement.vue +24 -6
  43. package/src/components/product/Process/Processes/devicesManagement.vue +2 -1
  44. package/src/components/product/Process/Processes/newInstallationDetails.vue +3 -3
  45. package/src/components/product/Process/Processes/selectChaiChuUserinfo.vue +230 -0
  46. package/src/components/product/Process/Service/ServiceControl.vue +169 -14
  47. package/src/components/product/Report/ReportItems.vue +79 -0
  48. package/src/components/product/Report/apply-stair-anzhuang.vue +361 -0
  49. package/src/components/product/Report/apply-stair-kaifa.vue +138 -0
  50. package/src/components/product/Report/apply-stair-tongqi.vue +137 -0
  51. package/src/components/product/Report/apply-stair-wtongqi.vue +138 -0
  52. package/src/components/product/Supervisory/Service/SupervisoryServiceControl.vue +37 -8
  53. package/src/components/product/Supervisory/SupervisoryList.vue +77 -26
  54. package/static/images/lefticon//347/273/274/345/220/210/344/270/232/345/212/241.png +0 -0
  55. package/static/images/lefticon//347/273/274/345/220/210/346/237/245/350/257/242.png +0 -0
@@ -429,8 +429,13 @@ export default {
429
429
  resolveMsg: null,
430
430
  rejectMsg: '收费信息更新失败!!!'
431
431
  })
432
- this.$showAlert('开票失败!!!', 'warning', 3000)
433
- throw e
432
+ this.$showMessage(`开票信息组织失败!!`, ['confirm']).then(async (res) => {
433
+ if (res === 'confirm') {
434
+ this.$dispatch('loadPage')
435
+ }else {
436
+ this.$dispatch('loadPage')
437
+ }
438
+ })
434
439
  }
435
440
  }else {
436
441
  await this.outBill()
@@ -494,8 +499,13 @@ export default {
494
499
  resolveMsg: null,
495
500
  rejectMsg: '收费信息更新失败!!!'
496
501
  })
497
-
498
- throw e
502
+ this.$showMessage(`开票失败!!`, ['confirm']).then(async (res) => {
503
+ if (res === 'confirm') {
504
+ this.$dispatch('loadPage')
505
+ }else {
506
+ this.$dispatch('loadPage')
507
+ }
508
+ })
499
509
  }
500
510
  } else if (this.charge.f_bill_style === '专票') {
501
511
 
@@ -538,8 +548,13 @@ export default {
538
548
  resolveMsg: null,
539
549
  rejectMsg: '收费信息更新失败!!!'
540
550
  })
541
- this.$showAlert('开票失败!!!', 'warning', 3000)
542
- throw '开票失败!!'
551
+ this.$showMessage(`开票失败!!`, ['confirm']).then(async (res) => {
552
+ if (res === 'confirm') {
553
+ this.$dispatch('loadPage')
554
+ }else {
555
+ this.$dispatch('loadPage')
556
+ }
557
+ })
543
558
  } else {
544
559
  data = {
545
560
  id: this.charge.f_bill_id,
@@ -683,4 +698,7 @@ export default {
683
698
  font-family: PingFang;
684
699
  color: #ffffff;
685
700
  }
701
+ .form-control{
702
+ padding: 8px 12px;
703
+ }
686
704
  </style>
@@ -221,6 +221,7 @@ export default {
221
221
  return
222
222
  }
223
223
  let data = {
224
+ login: this.$login.f,
224
225
  userinfo: row,
225
226
  selectdata: this.selectdata
226
227
  }
@@ -312,7 +313,7 @@ export default {
312
313
  computed: {
313
314
  showDeleteUserInfo () {
314
315
  return (this.selectdata.f_apply_type === '非民用报建' &&
315
- (this.selectdata.defname === '报建受理' || this.selectdata.defname === '现场勘察' || this.selectdata.defname === '收费标准')) ||
316
+ (this.selectdata.defname === '报建受理' || this.selectdata.defname === '现场勘察' || this.selectdata.defname === '收费标准' || this.selectdata.defname === '报装缴费')) ||
316
317
  (this.selectdata.f_apply_type === '设备拆除' && this.selectdata.defname === '销户')
317
318
  },
318
319
  disabledBut () {
@@ -423,10 +423,10 @@ export default {
423
423
  this.$showAlert('请先选择气表品牌!!!', 'warning', 3000)
424
424
  return
425
425
  }
426
- if (this.newUserfile.f_gasbrand_id && this.newUserfile.f_meternumber) {
426
+ if (this.newUserfile.f_new_gasbrand_id && this.newUserfile.f_new_meternumber) {
427
427
  let data = {
428
- f_meternumber: this.newUserfile.f_meternumber,
429
- f_gasbrand_id: this.newUserfile.f_gasbrand_id
428
+ f_meternumber: this.newUserfile.f_new_meternumber,
429
+ f_gasbrand_id: this.newUserfile.f_new_gasbrand_id
430
430
  }
431
431
  if (this.newUserfile.f_user_id) {
432
432
  data.f_user_id = this.newUserfile.f_user_id
@@ -0,0 +1,230 @@
1
+ <template>
2
+ <div style="margin-bottom: 20px" class="form-group select-overspread">
3
+ <label class="control-label-justify control-label col-sm-3">选择用户</label>
4
+ <div class="col-sm-10" >
5
+ <button class="button_search button_spacing" type="button" style="width: max-content;position: absolute" @click="openSelect" :disabled="mark === 1">选择</button>
6
+ </div>
7
+ </div>
8
+
9
+ <modal v-if="showselect" :show.sync="showselect" width="80%" title="用户信息" v-ref:modal large backdrop="false">
10
+ <article slot="modal-body" class="modal-body" style="height: 600px!important;">
11
+ <criteria-paged :model="model" v-ref:cp>
12
+ <criteria partial='criteria' @condition-changed='$parent.$parent.searchCondition' v-ref:cri>
13
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
14
+ <div class="row">
15
+ <div class="form-group col-sm-3">
16
+ <label class="font_normal_body">客户编号:</label>
17
+ <input type="text" style="width:60%" class="input_search" placeholder='客户编号' v-model="model.f_userinfo_id"
18
+ v-on:keyup.enter="search"
19
+ condition="ui.f_userinfo_id = '{}'">
20
+ </div>
21
+ <div class="form-group col-sm-3">
22
+ <label class="font_normal_body">客户名称:</label>
23
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
24
+ v-on:keyup.enter="search" condition="f_user_name like '%{}%'" placeholder='客户名称'>
25
+ </div>
26
+ <div class="form-group col-sm-3">
27
+ <label class="font_normal_body">客户电话:</label>
28
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_phone"
29
+ v-on:keyup.enter="search" condition="f_user_phone = '{}'" placeholder='客户电话'>
30
+ </div>
31
+
32
+ <div class="form-group col-sm-3 button-range">
33
+ <button class="button_search button_spacing" @click.prevent="search" v-el:cx>查询</button>
34
+ <button class="button_clear button_spacing" @click.prevent="$parent.$parent.$parent.clear()">清空</button>
35
+ <div
36
+ :class="{'button_shrink_top':$parent.$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.$parent.criteriaShow}"
37
+ @click="$parent.$parent.$parent.criteriaShow = !$parent.$parent.$parent.criteriaShow"
38
+ class="button_spacing"
39
+ style="float: right">
40
+ </div>
41
+ </div>
42
+ </div>
43
+ <div class="row" v-show="$parent.$parent.$parent.criteriaShow">
44
+ <div class="form-group col-sm-3">
45
+ <label class="font_normal_body">小&emsp;&emsp;区:</label>
46
+ <v-select
47
+ v-model="model.f_residential_area"
48
+ placeholder='小区'
49
+ condition="f_residential_area = '{}'"
50
+ :value.sync="model.f_residential_area"
51
+ :options='$parent.$parent.$parent.area'
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">
57
+ <label class="font_normal_body">楼&emsp;&emsp;号:</label>
58
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_building"
59
+ v-on:keyup.enter="search" condition="f_building like '%{}%'" placeholder='楼号'>
60
+ </div>
61
+ <div class="form-group col-sm-3">
62
+ <label class="font_normal_body">单&emsp;&emsp;元:</label>
63
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_unit"
64
+ v-on:keyup.enter="search" condition="f_unit like '%{}%'" placeholder='单元'>
65
+ </div>
66
+ <div class="form-group col-sm-3">
67
+ <label class="font_normal_body">门&nbsp;牌&nbsp;号:</label>
68
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_room"
69
+ v-on:keyup.enter="search" condition="f_room like '%{}%'" placeholder='门牌号'>
70
+ </div>
71
+ <div class="form-group col-sm-3">
72
+ <label class="font_normal_body">客户地址:</label>
73
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
74
+ v-on:keyup.enter="search" condition="f_address like '%{}%'" placeholder='客户地址'>
75
+ </div>
76
+ </div>
77
+ </div>
78
+ </criteria>
79
+ <data-grid :model="model" partial='list' v-ref:grid class="list_area table_sy" style="height: 100%">
80
+ <template partial='head'>
81
+ <tr>
82
+ <th style="white-space: nowrap;">序号</th>
83
+ <th style="white-space: nowrap;">客户编号</th>
84
+ <th style="white-space: nowrap;">客户名称</th>
85
+ <th style="white-space: nowrap;">客户电话</th>
86
+ <th style="white-space: nowrap;">地址信息</th>
87
+ <th style="white-space: nowrap;">选择</th>
88
+ </tr>
89
+ </template>
90
+ <template partial='body'>
91
+ <tr >
92
+ <td style="text-align: center;">
93
+ <nobr><font>{{$index+1}}</font></nobr>
94
+ </td>
95
+ <td style="text-align: center;">
96
+ <nobr><font>{{ row.f_userinfo_id }}</font></nobr>
97
+ </td>
98
+ <td style="text-align: center;">
99
+ <nobr><font>{{ row.f_user_name }}</font></nobr>
100
+ </td>
101
+ <td style="text-align: center;">
102
+ <nobr><font>{{ row.f_user_phone }}</font></nobr>
103
+ </td>
104
+ <td style="text-align: center;">
105
+ <nobr><font>{{ row.f_address }}</font></nobr>
106
+ </td>
107
+ <td style="text-align: center;">
108
+ <nobr><font>
109
+ <button type="button" name="button" class="button_export" @click.prevent="$parent.$parent.$parent.$parent.select(row)">确认选择</button>
110
+ </font></nobr>
111
+ </td>
112
+ </tr>
113
+ </template>
114
+ </data-grid>
115
+ </criteria-paged>
116
+ </article>
117
+ <footer slot="modal-footer" class="modal-footer">
118
+ </footer>
119
+ </modal>
120
+ </template>
121
+ <script>
122
+ import {HttpResetClass, PagedList} from 'vue-client'
123
+ import Vue from 'vue'
124
+
125
+ export default {
126
+ title: '选择用户',
127
+ props: {
128
+ selectdata: {
129
+ type: Object
130
+ },
131
+ mark: {
132
+ type: Number,
133
+ default: 0
134
+ }
135
+ },
136
+ data () {
137
+ return {
138
+ showselect: false,
139
+ model: new PagedList('rs/sql/applyGetUserinfos', 20, null),
140
+ criteriaShow: false,
141
+ area: []
142
+ }
143
+ },
144
+ ready () {
145
+ this.getArea()
146
+ },
147
+ methods: {
148
+ select (row) {
149
+ this.$dispatch('selectUserinfo', row)
150
+
151
+ this.showselect = false
152
+ },
153
+ searchCondition (args) {
154
+ args.condition = `${args.condition} and ui.f_filiale = '${this.$login.f.f_fengongsi}' and ui.f_user_state = '正常'`
155
+ this.model.search(args.condition, args.model)
156
+ },
157
+ clear () {
158
+ Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
159
+ this.$refs.cp.$refs.cri.model[key] = null
160
+ })
161
+ },
162
+ openSelect () {
163
+ this.showselect = true
164
+ setTimeout(() => {
165
+ this.$refs.cp.$refs.cri.search()
166
+ }, 100)
167
+ },
168
+ // 获取小区
169
+ async getArea () {
170
+ let data = {
171
+ tablename: 't_area_address',
172
+ condition: `f_filiale = '${this.$login.f.f_fengongsi}' and f_area_status = '启用'`
173
+ }
174
+ let http = new HttpResetClass()
175
+ let res = await http.load(
176
+ 'POST',
177
+ `rs/sql/applySingleTable`,
178
+ {data: data},
179
+ {resolveMsg: null, rejectMsg: '小区查询失败!!!'}
180
+ )
181
+ this.area = res.data.map(item => {
182
+ return {
183
+ label: item.f_residential_area,
184
+ value: item.id
185
+ }
186
+ })
187
+ },
188
+ },
189
+ events: {
190
+ },
191
+ computed: {
192
+ },
193
+ watch: {
194
+ }
195
+ }
196
+ </script>
197
+ <style scoped>
198
+ .control-label-justify {
199
+ display: inline-block;
200
+ vertical-align: top;
201
+ width: 110px;
202
+ text-align: justify;
203
+ font-family: PingFang-SC-Bold;
204
+ }
205
+
206
+ .control-label-justify::after {
207
+ content: "";
208
+ display: inline-block;
209
+ width: 100%;
210
+ overflow: hidden;
211
+ height: 0;
212
+ }
213
+ .input_view{
214
+ padding: 8px;
215
+ background-color: #ffffff;
216
+ border-radius: 2px;
217
+ border: solid 1px #c7c7c7!important;
218
+ color: #333333!important;
219
+ font-size: 15px!important;
220
+ }
221
+
222
+ .input_view[readonly]{
223
+ border: 1px solid #DDD!important;
224
+ color:#ACA899!important;
225
+ }
226
+ .input_view:disabled{
227
+ border: 1px solid #DDD!important;
228
+ color:#ACA899!important;
229
+ }
230
+ </style>
@@ -128,7 +128,11 @@ export default {
128
128
  item.value = []
129
129
  }
130
130
  }
131
-
131
+ if(this.selectdata.state === '结束'){
132
+ item.readonly = true
133
+ item.disabled = true
134
+ console.log('当前defname'+this.selectdata.defname+'当前title'+this.selectdata.title)
135
+ }
132
136
  this.selectdata[item.field] = item.value
133
137
  }
134
138
 
@@ -138,6 +142,9 @@ export default {
138
142
  if (!item.mark) {
139
143
  item.mark = 0
140
144
  }
145
+ if(this.selectdata.state === '结束'){
146
+ item.mark = 1
147
+ }
141
148
  })
142
149
  }
143
150
 
@@ -199,7 +206,7 @@ export default {
199
206
 
200
207
  // 初始化 buttons_fields
201
208
  for (const item of this.selectdata.buttons) {
202
- if (item.button_name === '下发') {
209
+ if (item.button_name === '下发' || item.button_name === '转派') {
203
210
 
204
211
  let data = {
205
212
  source: item.source,
@@ -256,6 +263,9 @@ export default {
256
263
  }
257
264
  })
258
265
  }
266
+ if(this.selectdata.state === '结束'){
267
+ item.hidden = true
268
+ }
259
269
  }
260
270
 
261
271
  if (this.selectdata.f_apply_nature === '散户' && this.selectdata.defname === '现场勘察') {
@@ -481,6 +491,9 @@ export default {
481
491
  if ((this.show_data.f_apply_type === '民用报建' && this.show_data.f_apply_nature === '小区') || this.show_data.f_apply_type === '非民用报建') {
482
492
  return
483
493
  }
494
+ if (this.show_data.f_house_type === '旧报建导入'){
495
+ return
496
+ }
484
497
  if (Number(this.show_data.f_due_money) > Number(this.show_data.f_cumulative_payment_money) || Number(this.show_data.f_surplus_money) > 0) {
485
498
  this.$showAlert('费用未结清!!!', 'warning', 3000)
486
499
  throw null
@@ -506,7 +519,7 @@ export default {
506
519
  // 获取设计人员
507
520
  async getDesignerPeople () {
508
521
  let data = {
509
- source: 'this.getParentByType($organization$).getChildByName($营业厅报装$).getChildren()',
522
+ source: 'this.getParentByType($organization$).getChildByName($设计人员$).getChildren()',
510
523
  userid: this.$login.f.id
511
524
  }
512
525
 
@@ -519,7 +532,7 @@ export default {
519
532
  return res.data.map(item => {
520
533
  return {
521
534
  label: item.name,
522
- value: item.id
535
+ value: item.name
523
536
  }
524
537
  })
525
538
  },
@@ -774,6 +787,7 @@ export default {
774
787
  }
775
788
  }))
776
789
  },
790
+ //查询现场负责人
777
791
  async getConstructionWorker(){
778
792
  let data = {
779
793
  source: 'this.getParentByType($organization$).getChildByName($建设单位$).getChildren()',
@@ -781,7 +795,7 @@ export default {
781
795
  }
782
796
 
783
797
  let res = await this.$resetpost(
784
- `${this.$androidUtil.getProxyUrl()}/rs/search`,
798
+ `rs/search`,
785
799
  {data: data},
786
800
  {resolveMsg: null, rejectMsg: '现场负责人查询失败!!!'}
787
801
  )
@@ -844,6 +858,29 @@ export default {
844
858
  userid: this.$login.f.id
845
859
  }
846
860
 
861
+ let res = await this.$resetpost(
862
+ 'rs/search',
863
+ {data: data},
864
+ {resolveMsg: null, rejectMsg: '安装单位负责人查询失败!!!'}
865
+ )
866
+ console.log("显示返回值",res)
867
+ let constructionUnit = res.data.map(item => {
868
+ return {
869
+ label: item.name,
870
+ value: item.id
871
+ }
872
+ })
873
+ constructionUnit = constructionUnit.sort((a,b) => a.value - b.value)
874
+ console.log("显示返回值1",constructionUnit)
875
+ return constructionUnit
876
+ },
877
+ // 管线施工单位
878
+ async getGuanXianBuildUnit () {
879
+ let data = {
880
+ source: 'this.getParentByType($organization$).getChildByName($工程施工队$).getChildren()',
881
+ userid: this.$login.f.id
882
+ }
883
+
847
884
  let res = await this.$resetpost(
848
885
  'rs/search',
849
886
  {data: data},
@@ -853,7 +890,7 @@ export default {
853
890
  return res.data.map(item => {
854
891
  return {
855
892
  label: item.name,
856
- value: item.id
893
+ value: item.name
857
894
  }
858
895
  })
859
896
  },
@@ -902,6 +939,26 @@ export default {
902
939
  }
903
940
  })
904
941
  },
942
+ // 管线监理单位
943
+ async getSupervisorName () {
944
+ let data = {
945
+ source: 'this.getParentByType($organization$).getChildByName($监理单位$).getChildren()',
946
+ userid: this.$login.f.id
947
+ }
948
+
949
+ let res = await this.$resetpost(
950
+ 'rs/search',
951
+ {data: data},
952
+ {resolveMsg: null, rejectMsg: '监理单位人员查询失败!!!'}
953
+ )
954
+ return res.data.map(item => {
955
+ return {
956
+ label: item.name,
957
+ value: item.name
958
+ }
959
+ })
960
+ },
961
+
905
962
  // 监理现场负责人
906
963
  async getSupervisorOperatorId () {
907
964
  let data = {
@@ -942,6 +999,28 @@ export default {
942
999
  result.push({label:'无',value:'无'})
943
1000
  return result
944
1001
  },
1002
+ // 管线土建单位
1003
+ async getEngineeringName () {
1004
+ let data = {
1005
+ source: 'this.getParentByType($organization$).getChildByName($土建单位$).getChildren()',
1006
+ userid: this.$login.f.id
1007
+ }
1008
+
1009
+ let res = await this.$resetpost(
1010
+ 'rs/search',
1011
+ {data: data},
1012
+ {resolveMsg: null, rejectMsg: '土建单位人员查询失败!!!'}
1013
+ )
1014
+ let result = res.data.map(item => {
1015
+ return {
1016
+ label: item.name,
1017
+ value: item.name
1018
+ }
1019
+ })
1020
+ result.push({label:'用户自理',value:'用户自理'})
1021
+ result.push({label:'无',value:'无'})
1022
+ return result
1023
+ },
945
1024
  // 检测单位
946
1025
  async getCheckOperator () {
947
1026
  let data = {
@@ -964,6 +1043,28 @@ export default {
964
1043
  result.push({label:'无',value:'无'})
965
1044
  return result
966
1045
  },
1046
+ // 管线检测单位
1047
+ async getCheckName () {
1048
+ let data = {
1049
+ source: 'this.getParentByType($organization$).getChildByName($检测单位$).getChildren()',
1050
+ userid: this.$login.f.id
1051
+ }
1052
+
1053
+ let res = await this.$resetpost(
1054
+ 'rs/search',
1055
+ {data: data},
1056
+ {resolveMsg: null, rejectMsg: '检测单位人员查询失败!!!'}
1057
+ )
1058
+
1059
+ let result = res.data.map(item => {
1060
+ return {
1061
+ label: item.name,
1062
+ value: item.name
1063
+ }
1064
+ })
1065
+ result.push({label:'无',value:'无'})
1066
+ return result
1067
+ },
967
1068
  // 获取气表品牌
968
1069
  async getMeterBrand () {
969
1070
  let data = {
@@ -1024,6 +1125,7 @@ export default {
1024
1125
  }
1025
1126
  })
1026
1127
  },
1128
+ //获取燃气公司内部签署人
1027
1129
  async getContractSignatory () {
1028
1130
  let data = {
1029
1131
  condition: `asj.f_type = '内部' and asj.f_subject_type = '企业' and asj.f_state = '有效' and asj.f_auth_state = '审核通过' and asg.f_state = '有效' and asg.f_sign_state = '签章成功'`
@@ -1096,7 +1198,7 @@ export default {
1096
1198
  {resolveMsg: null, rejectMsg: null}
1097
1199
  )
1098
1200
  },
1099
- // 生成合同编号
1201
+ // 生成合同编号(已作废)
1100
1202
  async getContractNumber() {
1101
1203
  const nowDate = new Date()
1102
1204
  let year = nowDate.getFullYear()
@@ -1132,6 +1234,7 @@ export default {
1132
1234
  this.setLabelValue('供气合同编号',gongQiContractNumber)
1133
1235
  }
1134
1236
  },
1237
+ //获取气价列表
1135
1238
  async getPrice (index) {
1136
1239
  if (isEmpty(this.show_data.f_gas_nature) || isEmpty(this.show_data.f_price_type)) {
1137
1240
  return
@@ -1257,13 +1360,16 @@ export default {
1257
1360
  {data: data},
1258
1361
  {resolveMsg: null, rejectMsg: null}
1259
1362
  )
1260
- for (const item of this.selectdata.fields) {
1261
- if (item.label === '缴费日期') {
1262
- item.value = res.data[0].finishtime
1263
- this.selectdata[item.field] = item.value
1363
+ if (res.data[0]) {
1364
+ for (const item of this.selectdata.fields) {
1365
+ if (item.label === '缴费日期') {
1366
+ item.value = res.data[0].finishtime
1367
+ this.selectdata[item.field] = item.value
1368
+ }
1264
1369
  }
1265
1370
  }
1266
1371
  },
1372
+ //获取工程施工时各部门当前签字环节
1267
1373
  async getSingAct() {
1268
1374
  let data = {
1269
1375
  f_process_id: this.selectdata.f_process_id
@@ -1284,6 +1390,7 @@ export default {
1284
1390
  }
1285
1391
  }
1286
1392
  },
1393
+ //获取土建的乙方
1287
1394
  getYiFang() {
1288
1395
  return [{label: '榆林榆川天然气', value: '榆林榆川天然气'},
1289
1396
  {label: this.selectdata.f_user_name, value: this.selectdata.f_user_name},
@@ -1334,7 +1441,25 @@ export default {
1334
1441
  , '户内施工备注', '庭院出单日期', '庭院回单日期', '庭院施工备注', '是否发起签字', '签字是否完成', '签字所在环节')
1335
1442
  this.requiredLabels('现场项目负责人', '安装单位', '安装单位现场负责人','建设单位', '监理单位', '土建单位', '检测单位', '现场项目负责人', '是否发起签字', '签字是否完成', '签字所在环节')
1336
1443
  }
1337
- }
1444
+ },
1445
+ //拆除流程核对气量提交
1446
+ async gasCheckBefore() {
1447
+ let http = new HttpResetClass()
1448
+ let data = {
1449
+ tablename: 't_files',
1450
+ condition: `f_blobid = '${this.selectdata.f_process_id}' and defname = '${this.selectdata.defname}' and fusetype = '气量核对单'`
1451
+ }
1452
+ let res = await http.load(
1453
+ 'POST',
1454
+ `rs/sql/applySingleTable`,
1455
+ {data: data},
1456
+ {resolveMsg: null, rejectMsg: null}
1457
+ )
1458
+ if (res.data.length <= 0) {
1459
+ this.$showMessage('气量核对单未上传,无法提交!!!')
1460
+ throw '气量核对单未上传,无法提交!'
1461
+ }
1462
+ },
1338
1463
  },
1339
1464
  events: {
1340
1465
  // 强制开关阀
@@ -1433,7 +1558,10 @@ export default {
1433
1558
  if (row.f_address_detail){
1434
1559
  this.setLabelValue('详细地址', row.f_address_detail)
1435
1560
  }
1436
-
1561
+ if (this.show_data.f_apply_type === '改线业务'){
1562
+ this.setLabelValue('工程名称', row.f_user_name)
1563
+ this.setLabelValue('联系电话', row.f_user_phone)
1564
+ }
1437
1565
  this.show_data.f_address_detail = row.f_address_detail
1438
1566
  this.show_data.f_residential_area = row.f_residential_area
1439
1567
  this.show_data.unit = row.unit
@@ -1445,10 +1573,23 @@ export default {
1445
1573
  this.show_data.f_paper_account = row.f_paper_account
1446
1574
  this.show_data.f_userinfo_id = row.f_userinfo_id
1447
1575
  console.log("当前数据",this.show_data)
1576
+ if (this.show_data.f_apply_type === '设备拆除'){
1577
+ let data = {
1578
+ userinfo: row,
1579
+ apply: this.show_data,
1580
+ loginUser: this.$login.f
1581
+ }
1582
+ let res = await this.$resetpost(
1583
+ `rs/logic/addChaiChuUser`,
1584
+ {data: data},
1585
+ {resolveMsg: '添加拆除用户成功!!!', rejectMsg: '添加拆除用户失败!!!'}
1586
+ )
1587
+ this.$dispatch('breakControl', this.show_data)
1588
+ }
1448
1589
  },
1449
1590
  async 'priceReadEvent' (index) {
1450
1591
  await this.setContractSignatory()
1451
- await this.getContractNumber()
1592
+ // await this.getContractNumber()
1452
1593
  await this.getPrice(index)
1453
1594
  await this.priceChange()
1454
1595
  },
@@ -1698,6 +1839,13 @@ export default {
1698
1839
  return
1699
1840
  }
1700
1841
  },
1842
+ // 土建单位失去焦点
1843
+ 'judgmentEngineering' (index) {
1844
+ if (this.show_data.f_engineering_operator_id === '无' && this.show_data.f_civil_engineering !== "无") {
1845
+ this.$showAlert('土建单位未选择请注意!!!', 'warning', 3000)
1846
+ throw null
1847
+ }
1848
+ },
1701
1849
  // 报建性质失去焦点
1702
1850
  'applyNatureChange' (index) {
1703
1851
  if (this.show_data.f_apply_nature === '散户') {
@@ -1797,6 +1945,13 @@ export default {
1797
1945
  this.hideLabels('纠纷原因')
1798
1946
  }
1799
1947
  },
1948
+ //金额大小写转换
1949
+ 'applyCapitalizedAmount' (index){
1950
+ // 通过正则过滤小数点后两位
1951
+ let money = (this.show_data.fields[index].value.match(/^\d*(\.?\d{0,2})/g)[0]) || null
1952
+ this.setLabelValue('应交金额大写',this.smalltoBIG(money))
1953
+ },
1954
+
1800
1955
  // ===========================================
1801
1956
  'initializtionView' () {
1802
1957
  if (this.show_data.f_apply_nature === '散户') {