sale-client 4.1.230 → 4.2.1-ronghao

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 (171) hide show
  1. package/build/dev-server.js +29 -46
  2. package/package.json +2 -2
  3. package/src/App.vue +3 -3
  4. package/src/components/FilesManage/UserGeneralInfoTest.vue +4 -4
  5. package/src/components/FilesManageNew/FileUserFiles.vue +2 -4
  6. package/src/components/FilesManageNew/MeterinfoTest.vue +9 -9
  7. package/src/components/FilesManageNew/UserEssentialInfoTest.vue +201 -227
  8. package/src/components/FilesManageNew/UserGeneralInfoTest.vue +0 -2
  9. package/src/components/charge/business/CardMeterCenter.vue +1 -1
  10. package/src/components/charge/business/FilesComplete.vue +3 -3
  11. package/src/components/charge/business/IOTMeterCenter.vue +1 -1
  12. package/src/components/charge/business/OtherChargeNew.vue +68 -48
  13. package/src/components/common/userinfo_detail/UserInfoDetailManageNew.vue +10 -1
  14. package/src/components/common/userinfo_detail/ic_detail/CardHandRecord.vue +1 -1
  15. package/src/components/common/userinfo_detail/ic_detail/ChangeMeterQueryUser.vue +1 -1
  16. package/src/components/common/userinfo_detail/ic_detail/GarbageRecordList.vue +69 -0
  17. package/src/components/common/userinfo_detail/ic_detail/InsuranceChargesRecord.vue +384 -0
  18. package/src/components/common/userinfo_detail/ic_detail/WebHandQueryUser.vue +1 -1
  19. package/src/components/revenue/Common/MeterMessage.vue +1 -1
  20. package/src/components/revenue/HandManager/MeterBookUser.vue +726 -726
  21. package/src/components/revenue/HandManager/WebHand.vue +7 -4
  22. package/src/components/revenue/base/leftview/SafeCheck.vue +41 -3
  23. package/src/components/revenue/base/leftview/UserFeeInfo.vue +76 -0
  24. package/src/components/revenue/base/leftview/otherinfo.vue +1 -0
  25. package/src/components/revenue/base/rightview/CardList.vue +7 -3
  26. package/src/components/revenue/batchDeduction/batchDeductionList.vue +1 -1
  27. package/src/components/revenue/cardHandManage/cardDown.vue +18 -0
  28. package/src/components/revenue/changeInsurance/InsuranceAdd.vue +1 -0
  29. package/src/components/revenue/changeInsurance/InsuranceRecord.vue +2 -1
  30. package/src/components/revenue/comprehen/ComprehenOperation/BankPayment/BankPayment.vue +1 -1
  31. package/src/components/revenue/comprehen/ComprehenOperation/GiftFee/icTable.vue +4 -2
  32. package/src/components/revenue/comprehen/ComprehenOperation/QrPay/QrPaymentDetailed.vue +423 -423
  33. package/src/components/revenue/comprehen/Maintenance/hand/handOperate.vue +469 -469
  34. package/src/components/revenue/comprehen/Maintenance/revenue/MeterOperatemain.vue +2 -2
  35. package/src/components/revenue/machineHandManage/ArrearsQuery.vue +938 -938
  36. package/src/components/revenue/machineHandManage/HandplanQuery.vue +1 -1
  37. package/src/components/revenue/machineHandManage/machineHand.vue +3 -2
  38. package/src/components/webMeter/MeterManage/WebMeterBatchOperationValve.vue +970 -970
  39. package/src/filiale/alashan/eticket/EticketRecordList.vue +428 -428
  40. package/src/filiale/bayan/ChargeList.vue +1010 -1010
  41. package/src/filiale/bayan/StockListmain.vue +543 -543
  42. package/src/filiale/beifangshiye/OtherChargeNew.vue +625 -625
  43. package/src/filiale/dexin/MeterinfoTest.vue +1239 -0
  44. package/src/filiale/dexin/UserEssentialInfoTest.vue +602 -0
  45. package/src/filiale/dexin/sale.js +5 -0
  46. package/src/filiale/fugou/MeterinfoTest.vue +1 -1
  47. package/src/filiale/jiaxian/AutomaticPurse.vue +349 -0
  48. package/src/filiale/jiaxian/ChangeMeterQueryUser.vue +303 -0
  49. package/src/filiale/jiaxian/ChangeRecord.vue +44 -2
  50. package/src/filiale/jiaxian/FillCardQueryUser.vue +250 -0
  51. package/src/filiale/jiaxian/FillGasQueryUser.vue +270 -0
  52. package/src/filiale/jiaxian/OtherChargeQueryUser.vue +305 -0
  53. package/src/filiale/jiaxian/PriceAdjustmentQueryUser.vue +368 -0
  54. package/src/filiale/jiaxian/PriceChangeQueryUser.vue +243 -0
  55. package/src/filiale/jiaxian/QueryInstruct.vue +436 -0
  56. package/src/filiale/jiaxian/RecordQueryUser.vue +321 -0
  57. package/src/filiale/jiaxian/Repurchase.vue +181 -0
  58. package/src/filiale/jiaxian/TransferQueryUser.vue +274 -0
  59. package/src/filiale/jiaxian/UserInfoDetailManageNew.vue +11 -11
  60. package/src/filiale/jiaxian/Userinfo.vue +426 -0
  61. package/src/filiale/jiaxian/WatchCollection.vue +54 -1
  62. package/src/filiale/jiaxian/WebAutomaticPurse.vue +348 -0
  63. package/src/filiale/jiaxian/contractSigningList.vue +149 -0
  64. package/src/filiale/jiaxian/sale.js +5 -0
  65. package/src/filiale/jinhong/AutoAccountsDetail.vue +63 -0
  66. package/src/filiale/jinhong/CardList.vue +572 -0
  67. package/src/filiale/jinhong/CardMeterCenter.vue +1 -1
  68. package/src/filiale/jinhong/CardMeterCenterInner.vue +61 -22
  69. package/src/filiale/jinhong/GarbageCharge.vue +1 -1
  70. package/src/filiale/jinhong/HandplanQuery.vue +1430 -0
  71. package/src/filiale/jinhong/IOTMeterCenterInner.vue +42 -14
  72. package/src/filiale/jinhong/InsuranceAdd.vue +27 -5
  73. package/src/filiale/jinhong/InsuranceChargesDetails.vue +11 -5
  74. package/src/filiale/jinhong/InsuranceRecord.vue +4 -5
  75. package/src/filiale/jinhong/InsuranceTemp.vue +33 -5
  76. package/src/filiale/jinhong/MachineChargeService.js +8 -0
  77. package/src/filiale/jinhong/MachineMeterCenter.vue +38 -11
  78. package/src/filiale/jinhong/ShowCardSellGasInner.vue +46 -14
  79. package/src/filiale/jinhong/Userinfo.vue +75 -1
  80. package/src/filiale/jinhong/insuranceGuanL.vue +349 -0
  81. package/src/filiale/jinhong/machineDown.vue +1205 -0
  82. package/src/filiale/jinhong/sale.js +9 -0
  83. package/src/filiale/jinhuang/UserInfoDetailManageNew.vue +259 -0
  84. package/src/filiale/jinhuang/WebHand.vue +1026 -0
  85. package/src/filiale/jinhuang/WebHandQueryUser.vue +413 -0
  86. package/src/filiale/jinhuang/cardsHand.vue +911 -0
  87. package/src/filiale/jinhuang/sale.js +8 -0
  88. package/src/filiale/lixianV3/ArrearsQuery.vue +938 -938
  89. package/src/filiale/lixianV3/InsuranceAdd.vue +1 -0
  90. package/src/filiale/lixianV3/InsuranceChargesDetails.vue +425 -425
  91. package/src/filiale/meihekou/CardMeterCenter.vue +991 -0
  92. package/src/filiale/meihekou/ChargeManage.vue +3 -2
  93. package/src/filiale/meihekou/ChargeOper.vue +279 -169
  94. package/src/filiale/meihekou/HandManager.vue +57 -2
  95. package/src/filiale/meihekou/NoCardMeterCenter.vue +542 -0
  96. package/src/filiale/meihekou/OverUseCharge.vue +1 -1
  97. package/src/filiale/meihekou/PrintBill.vue +48 -41
  98. package/src/filiale/meihekou/ReissueBill.vue +4 -1
  99. package/src/filiale/meihekou/ShowCardSellGas.vue +935 -0
  100. package/src/filiale/meihekou/TransferManage.vue +704 -0
  101. package/src/filiale/meihekou/Userinfo.vue +233 -5
  102. package/src/filiale/meihekou/common/userinfo_detail/ic_detail/MachineRecordQuery.vue +281 -281
  103. package/src/filiale/meihekou/icTable.vue +233 -0
  104. package/src/filiale/meihekou/machineHand.vue +2158 -0
  105. package/src/filiale/meihekou/manualChargeCenter.vue +394 -0
  106. package/src/filiale/meihekou/meterTable.vue +220 -0
  107. package/src/filiale/meihekou/sale.js +15 -0
  108. package/src/filiale/qianneng/MeterMessage.vue +1 -1
  109. package/src/filiale/qianneng/revenue/sms/AccountMessageList.vue +508 -508
  110. package/src/filiale/rizhao/InsuranceAdd.vue +1 -0
  111. package/src/filiale/ronghao/ArrearsQuery.vue +974 -974
  112. package/src/filiale/ronghao/CardList.vue +19 -17
  113. package/src/filiale/ronghao/CardMeterChargeCancel.vue +5 -0
  114. package/src/filiale/ronghao/CardService.js +2144 -2144
  115. package/src/filiale/ronghao/ChangeMeterService.js +1 -1
  116. package/src/filiale/ronghao/ChargeList.vue +17 -17
  117. package/src/filiale/ronghao/ChargeManage.vue +325 -0
  118. package/src/filiale/ronghao/ChargeOper.vue +330 -0
  119. package/src/filiale/ronghao/FilesManageNew/UserEssentialInfoTest.vue +457 -0
  120. package/src/filiale/ronghao/FilesManageNew/UserGeneralInfoTest.vue +690 -0
  121. package/src/filiale/ronghao/HandplanQuery.vue +13 -14
  122. package/src/filiale/ronghao/IOTMeterCenter.vue +15 -6
  123. package/src/filiale/ronghao/InsuranceAdd.vue +1 -0
  124. package/src/filiale/ronghao/InsuranceManage.vue +58 -58
  125. package/src/filiale/ronghao/MachineChargeService.js +149 -149
  126. package/src/filiale/ronghao/NoCardMeterCenter.vue +534 -534
  127. package/src/filiale/ronghao/PaymentCode.vue +174 -174
  128. package/src/filiale/ronghao/PriceChangeCompensation/CompensationManage.vue +26 -26
  129. package/src/filiale/ronghao/PriceChangeCompensation/IotCompensation.vue +318 -318
  130. package/src/filiale/ronghao/PriceChangeCompensation/JbCompensation.vue +343 -343
  131. package/src/filiale/ronghao/PriceChangeCompensation/SurplusRecordDetail.vue +74 -74
  132. package/src/filiale/ronghao/ReplaceCardManage.vue +415 -415
  133. package/src/filiale/ronghao/Upload.vue +654 -654
  134. package/src/filiale/ronghao/Userinfo.vue +18 -18
  135. package/src/filiale/ronghao/cardDown.vue +1141 -1141
  136. package/src/filiale/ronghao/changemeterOperate.vue +315 -315
  137. package/src/filiale/ronghao/fillgasSpecific.vue +313 -313
  138. package/src/filiale/ronghao/ic_detail/ChargeRecordQuery.vue +106 -106
  139. package/src/filiale/ronghao/ic_detail/WatchCollection.vue +115 -115
  140. package/src/filiale/ronghao/ic_detail/WebHandQueryUser.vue +411 -411
  141. package/src/filiale/ronghao/machineDown.vue +1176 -1176
  142. package/src/filiale/ronghao/machineRefund.vue +3 -1
  143. package/src/filiale/ronghao/replacementSingleInfoOperation.vue +315 -315
  144. package/src/filiale/ronghao/sale.js +11 -0
  145. package/src/filiale/ronghao/specificInformation.vue +537 -537
  146. package/src/filiale/ronghao/uploadFilesHistory.vue +214 -0
  147. package/src/filiale/ruihua/FilesManage/MeterinfoTest.vue +10 -0
  148. package/src/filiale/shanxian/components/revenue/InsuranceAdd.vue +1 -0
  149. package/src/filiale/wuan/MeterMessage.vue +1 -1
  150. package/src/filiale/yangchun/BasicLivingList.vue +281 -0
  151. package/src/filiale/yangchun/BlackList/BlackRecordQuery.vue +1 -0
  152. package/src/filiale/yangchun/CardChangeFill.vue +1 -1
  153. package/src/filiale/yangchun/ChargeList.vue +954 -954
  154. package/src/filiale/yangchun/FilesManage/UserPaperInfoTest.vue +3 -3
  155. package/src/filiale/yangchun/NewMeterList.vue +742 -0
  156. package/src/filiale/yangchun/sale.js +3 -0
  157. package/src/filiale/yuncheng/CardList.vue +1 -1
  158. package/src/filiale/yuncheng/IndustryCommerceHand.vue +1145 -0
  159. package/src/filiale/yuncheng/IndustryCommerceHandAudit.vue +794 -0
  160. package/src/filiale/yuncheng/IndustryCommerceHandManager.vue +64 -0
  161. package/src/filiale/yuncheng/InsuranceAdd.vue +1 -0
  162. package/src/filiale/yuncheng/MeterBookUser.vue +781 -0
  163. package/src/filiale/yuncheng/UserDeviceInfoTest.vue +2 -2
  164. package/src/filiale/yuncheng/changemeterListMaintain.vue +504 -504
  165. package/src/filiale/yuncheng/industryDown.vue +1118 -0
  166. package/src/filiale/yuncheng/sale.js +11 -0
  167. package/src/filiale/yuncheng/uploadFilesHistory.vue +185 -0
  168. package/src/filiale/zhongsheng/BlackListList.vue +293 -293
  169. package/src/filiale/zhongyi/HandQueryUser.vue +389 -389
  170. package/src/plugins/CardService.js +2217 -2217
  171. package/src/sale.js +3 -1
@@ -0,0 +1,690 @@
1
+ <template>
2
+ <div>
3
+ <div style="overflow-y: scroll;height: 92%">
4
+ <div style="height: auto;width: 100%">
5
+ <div style="margin-bottom: 2%; margin-top: 2%">
6
+ <img style="margin-top: -5px" src="../../../../static/images/lefticon/矩形1183.png">
7
+ <a style="font-size: 20px;font-weight: 500;">基本 信息</a>&nbsp;<a style="color: #999999;text-decoration: none"></a>
8
+ <button class="button_search" style="width: max-content" @click="uploadFiles()">上传附件</button>
9
+ <button class="button_search" style="width: max-content" @click="uploadPictures()">拍照</button>
10
+ <div
11
+ v-if="hiddenBtn" @click="criteriaShow=!criteriaShow" class="button_spacing"
12
+ :class="{'button_shrink_top':!criteriaShow,'button_shrink_bottom':criteriaShow}"
13
+ style="float: right;margin-right:1rem"></div>
14
+ </div>
15
+ <file-user-essential-info-new :formconfig="config.fileUserEssentialInfo_New" :onlyshowmust="criteriaShow"
16
+ :baseinfo="data.baseinfo" :addressinfo="data.addressinfo" @valid="essentialInfo = true"
17
+ :f_filialeid="f_filialeid" @invalid="essentialInfo = false" v-ref:useressential :isedit="isedit"></file-user-essential-info-new>
18
+ </div>
19
+
20
+ <div style="height: auto;width: 100%">
21
+ <file-user-meter-info-new
22
+ :formconfig="config.fileUserMeterInfo_New" :onlyshowmust="criteriaShow"
23
+ :meterinfo="data.meterinfo" :f_filialeid="f_filialeid" :metervalid.sync="meterInfo"
24
+ :f_userinfo_id="data.baseinfo.base.f_userinfo_id" v-ref:meter></file-user-meter-info-new>
25
+ </div>
26
+
27
+ <div style="height: auto;width: 100%">
28
+ <div style="margin-bottom: 2%; margin-top: 2%">
29
+ <img style="margin-top: -5px" src="../../../../static/images/lefticon/矩形1183.png">
30
+ <span v-if="!usertype">
31
+ <a style="font-size: 20px;font-weight: 500;">发票信息</a>&nbsp;<a style="color: #999999"></a>
32
+ </span>
33
+ <span v-if="usertype">
34
+ <a style="font-size: 20px;font-weight: 500;">企业信息</a>&nbsp;<a style="color: #999999"></a>
35
+ </span>
36
+ </div>
37
+ <user-paper-info-test :baseinfo="data.baseinfo"></user-paper-info-test>
38
+ </div>
39
+
40
+ <!--<div style="height: auto;width: 100%">-->
41
+ <!--<div style="margin-bottom: 2%; margin-top: 2%">-->
42
+ <!--<img style="margin-top: -5px" src="../../../static/images/lefticon/矩形1183.png">-->
43
+ <!--<a style="font-size: 20px;font-weight: 500;">附件信息</a>&nbsp;<a style="color: #999999"></a>-->
44
+ <!--</div>-->
45
+ <!--<upload :blodid="blodid" isremark="true" fusetype="档案"></upload>-->
46
+ <!--</div>-->
47
+ </div>
48
+
49
+ <div class="form-horizontal auto">
50
+ <div class="form-group">
51
+ <div style="text-align:right;">
52
+ <!-- <button class="button_search" v-show="row.f_print_state === null" @click="ignitionSheet()">生成点火单</button>-->
53
+ <!-- <button class="button_search" v-show="row.f_print_state === null" @click="schedule()">生成流程单</button>-->
54
+ <button v-if="config.meter_required" class="button_search" @click="confirm()" :disabled="!(essentialInfo && meterInfo )">确认
55
+ </button>
56
+ <button v-if="!config.meter_required" class="button_search" @click="confirm()" :disabled="!essentialInfo">确认
57
+ </button>
58
+ <button class="button_search" style="width: max-content" v-if="haslimit" @click="limitClick">限购配置</button>
59
+ <button class="button_clear" @click="cancel()">取消</button>
60
+ </div>
61
+ </div>
62
+ </div>
63
+ <limit-gas :show.sync="limitShow" :f_userinfo_id="data.baseinfo.base.f_userinfo_id"
64
+ @limit="getLimitGas"></limit-gas>
65
+ <modal :show.sync="showfiles" styles="margin-top:50px" v-ref:modal backdrop="false" width="80%" >
66
+ <header slot="modal-header" class="modal-header">
67
+ <button type="button" class="close" @click="showFilesClose"><span class="glyphicon glyphicon-remove"></span></button>
68
+ </header>
69
+ <article slot="modal-body">
70
+ <upload-idcard :blodid="blodid" isremark="true" @getidinfo="confirmIdCard" style="width:auto" fusetype="档案信息"></upload-idcard>
71
+ </article>
72
+ <footer slot="modal-footer" class="modal-footer">
73
+ </footer>
74
+ </modal>
75
+ <high-meter-idcard :show.sync="highmetershow" v-if="highmetershow" @photo-finish="newPhoto" v-on:confirminfo="confirmIdCard"></high-meter-idcard>
76
+ <user-flow-sheet :show="printflag" :bill-config='configs' :bill-data='billData' :data='newdata' v-on:toggle="close" @printok="printok" v-ref:printbill></user-flow-sheet>
77
+
78
+
79
+ </div>
80
+
81
+
82
+
83
+ </template>
84
+
85
+ <script>
86
+ import UserPaperInfoTest from '../../../components/FilesManageNew/UserPaperInfoTest'
87
+ import {HttpResetClass} from 'vue-client'
88
+ import * as Util from '../../../Util'
89
+
90
+ let getConfigScope = async function (self, name) {
91
+ try {
92
+ let res = await self.$resetget('/rs/vue/' + name + '.json', {resolveMsg: null, rejectMsg: null, newly: true})
93
+ // 如果有表单配置 展示 收起按钮
94
+ if (Object.keys(res.data).length > 0) {
95
+ self.hiddenBtn = true
96
+ }
97
+ self.config[name] = res.data
98
+ } catch (error) {
99
+ // 忽略704,文件找不到异常
100
+ if (error.status !== 704) {
101
+ throw error
102
+ }
103
+ }
104
+ }
105
+ let getFileGen = async function (self, data) {
106
+ let http = new HttpResetClass()
107
+ let result = await http.load('POST', 'api/af-revenue/logic/filemanage_getFilesDetail', data, {
108
+ resolveMsg: null,
109
+ rejectMsg: '用户详细信息加载失败,请重新选择,如果多次失败,请检查系统是否正常!'
110
+ })
111
+ if (result.data.meterinfo.length === 0) {
112
+ // 预备户可以不填表具信息 所以修正时如果没有表具信息 则初始化一个
113
+ result.data.meterinfo.push({
114
+ f_meternumber: '',
115
+ f_metertitles: '',
116
+ f_area_code: '',
117
+ gasbrand: '',
118
+ gasmodel: '',
119
+ gasmodeltype: '',
120
+ pricetype: '',
121
+ pricename: '',
122
+ f_user_type: '',
123
+ f_gasproperties: '',
124
+ f_inputtor: '',
125
+ f_position: '',
126
+ f_userfiles_address: '',
127
+ f_usetype: '',
128
+ f_usestate: '',
129
+ f_aroundmeter: '',
130
+ f_garbage_fee: '否',
131
+ f_meter_base: '',
132
+ f_initial_base: '',
133
+ f_gas_person: '',
134
+ f_adjustable: '',
135
+ f_detailprice: '',
136
+ devicesinfo: []
137
+ })
138
+ }
139
+
140
+ self.data = result.data
141
+ // 更新地址
142
+ // 修改附件临时id为表档案id
143
+ self.blodid = self.data.baseinfo.base.f_userinfo_id
144
+ console.log('获取档案信息', self.data)
145
+ self.checkout()
146
+ console.log('附件id', self.blodid)
147
+ }
148
+
149
+ export default {
150
+ title: '综合信息',
151
+ props: ['f_filialeid', 'row', 'areainfo', 'haslimit', 'isedit', 'configs'],
152
+ components: {UserPaperInfoTest},
153
+ data () {
154
+ return {
155
+ config: {
156
+ adddevices: false,
157
+ // 预备户表具信息是否必填
158
+ meter_required: false,
159
+ f_building_suffix: '栋',
160
+ f_unit_suffix: '单元',
161
+ f_floor_suffix: '层',
162
+ f_room_suffix: '室',
163
+ fileUserEssentialInfo_New: {},
164
+ fileUserMeterInfo_New: {}
165
+ },
166
+ // 是否仅展示必填项
167
+ criteriaShow: false,
168
+ hiddenBtn: false,
169
+ headers: {'username': this.$login.f.name, 'blodid': '', 'fremarks': '', 'defname': '', 'fusetype': '档案信息'},
170
+ data: {
171
+ baseinfo: {
172
+ base: {
173
+ f_user_state: '',
174
+ f_print_dh: '否',
175
+ f_print_lc: '点火单',
176
+ f_credentials: '',
177
+ f_cost_type: '',
178
+ f_paper_type: '',
179
+ f_idnumber: '',
180
+ f_house_type: ''
181
+ },
182
+ bank: {
183
+ f_bank_name: ''
184
+ }
185
+ },
186
+ addressinfo: {
187
+ id: '',
188
+ f_address: '',
189
+ f_address_state: ''
190
+ },
191
+ meterinfo: [{
192
+ f_user_type: '',
193
+ f_gasproperties: '',
194
+ devicesinfo: []
195
+ }],
196
+ devicesinfo: [],
197
+ address: {
198
+ id: '',
199
+ f_address: ''
200
+ }
201
+ },
202
+ printSheet: {
203
+ f_state: '有效',
204
+ f_print_state: '未打印',
205
+ f_type: '点火单',
206
+ f_orgid: this.$login.f.orgid ? this.$login.f.orgid : '',
207
+ f_orgname: this.$login.f.orgs ? this.$login.f.orgs : '',
208
+ f_depid: this.$login.f.depids ? this.$login.f.depids : '',
209
+ f_depname: this.$login.f.deps ? this.$login.f.deps : '',
210
+ f_operator: this.$login.f.name,
211
+ f_operatorid: this.$login.f.id
212
+ }, // 插入打印的模型
213
+ billData: {
214
+ url: 'api/af-revenue/report/userignition',
215
+ bill: ''
216
+ },
217
+ oldAddress: {},
218
+ newdata: {},
219
+ highmetershow: false, // 高拍仪组件控制
220
+ showfiles: false,
221
+ // 子组件验证
222
+ essentialInfo: false,
223
+ meterInfo: false,
224
+ printflag: false,
225
+ // 地址相关属性
226
+ params: {
227
+ areas: [],
228
+ f_street: [],
229
+ f_residential_area: []
230
+ },
231
+
232
+ // 限购相关属性
233
+ limitShow: false,
234
+ limit_gas: null,
235
+ peopleNum: this.$appdata.getSingleValue('默认人口'),
236
+ blodid: '', // 附件的临时id
237
+ defaultMeterInfo: '' // 默认的表具信息
238
+ }
239
+ },
240
+ async ready () {
241
+ try {
242
+ console.log('开始获取配置文件')
243
+ // 获取配置文件 用来展示字段是否展示 是否必填
244
+ await getConfigScope(this, 'fileUserEssentialInfo_New')
245
+ await getConfigScope(this, 'fileUserMeterInfo_New')
246
+ } catch (e) {
247
+ console.warn(e)
248
+ console.warn('获取展示配置失败,按照默认展示')
249
+ }
250
+ this.blodid = '临时id' + Date.now()
251
+ try {
252
+ await this.$getConfig(this, 'FilesDetail')
253
+ } catch (error) {
254
+ console.log('捕获到异常', error)
255
+ }
256
+ console.log('FilesDetail的config:', this.config)
257
+ if (this.row) { // 修改用户
258
+ await this.areaGen(this.row)
259
+ } else if (!this.row) { // 小区批量建档
260
+ // 将小区信息转化为综合信息的格式
261
+ await this.areainfoInUser(this.areainfo)
262
+ }
263
+ },
264
+ watch: {
265
+ async 'row' (val) {
266
+ console.log('观察row', val)
267
+ if (val) {
268
+ await this.areaGen(val)
269
+ } else {
270
+ await this.areainfoInUser(this.areainfo)
271
+ }
272
+ },
273
+ 'areainfo' (val) {
274
+ console.log('小区观察。。', val)
275
+ if (val) {
276
+ this.$refs.meter.clearMeter()
277
+ this.blodid = '临时id' + Date.now()
278
+ this.areainfoInUser(val)
279
+ }
280
+ },
281
+ 'essentialInfo' (val) {
282
+ console.log('观察到验证变化', val)
283
+ }
284
+ },
285
+ methods: {
286
+ showFilesClose () {
287
+ this.showfiles = false
288
+ },
289
+ close () {
290
+ this.printflag = false
291
+ },
292
+ printok () {
293
+ console.log('======================')
294
+ this.confirm()
295
+ },
296
+ downFiles (index) {
297
+ console.log('xxxxxxxxxxxxxxxxxxxxx')
298
+ // 下载不同文件
299
+ if (index == 0) {
300
+ let url = 'api/af-revenue/report/userinstall'
301
+ this.billData.url = url
302
+ this.data.baseinfo.base.f_print_lc = '是'
303
+ } else {
304
+ let url = 'api/af-revenue/report/userignition'
305
+ this.billData.url = url
306
+ this.data.baseinfo.base.f_print_dh = '是'
307
+ }
308
+ this.newdata = this.row
309
+ this.printflag = true
310
+ },
311
+ confirmIdCard (IdCardInfo) {
312
+ this.uploadPictures()
313
+ this.data.baseinfo.base.f_user_name = IdCardInfo.strName
314
+ this.data.baseinfo.base.f_idnumber = IdCardInfo.strID
315
+ },
316
+ uploadFiles () {
317
+ this.showfiles = !this.showfiles
318
+ },
319
+
320
+ uploadPictures () {
321
+ this.highmetershow = !this.highmetershow
322
+ },
323
+ savePrintSheet (res) {
324
+ console.log('保存单子:' + this.data.baseinfo.base.f_print_dh_stats)
325
+ if (!this.data.baseinfo.base.f_print_dh_stats) {
326
+ console.log('单子类型', this.data.baseinfo.base.f_print_dh)
327
+ this.printSheet.f_userinfo_id = res.f_userinfo_id
328
+ if (this.data.baseinfo.base.f_print_dh == '点火单') {
329
+ this.ignitionSheet()
330
+ }
331
+ if (this.data.baseinfo.base.f_print_dh == '流程单') {
332
+ this.schedule()
333
+ }
334
+ }
335
+ },
336
+ ignitionSheet () { // 点火单
337
+ this.printSheet.f_type = '点火单'
338
+ this.saveTablePrintSheet()
339
+ },
340
+ schedule () { // 流程单
341
+ this.printSheet.f_type = '流程单'
342
+ this.saveTablePrintSheet()
343
+ },
344
+ async saveTablePrintSheet () {
345
+ console.log(this.printSheet)
346
+ let check = await this.$resetpost('api/af-revenue/logic/checkPrintUser', {data: {f_userinfo_id: this.printSheet.f_userinfo_id}}, {resolveMsg: '', rejectMsg: ''})
347
+ if (check.data.length === 0) {
348
+ await this.$resetpost('api/af-revenue/logic/savePrintSheet', {data: {printData: this.printSheet}}, {resolveMsg: '', rejectMsg: ''})
349
+ }
350
+ // let check = await this.$resetpost('api/af-revenue/logic/checkPrintUser', {data:{f_userinfo_id: this.printSheet.f_userinfo_id}}, {resolveMsg: '', rejectMsg: ''})
351
+ // if (check.data.length !== 0){
352
+ // if(check.data[0].num !== 0){
353
+ // // let msg = "您已生成了 \""+check.data[0].type+"\" ,请前往 [ 综合业务 ] --> [ 打印数据 ]页面查看";
354
+ // // this.$showMessage(msg);
355
+ // return ;
356
+ // }
357
+ // }
358
+ // let expiration = await this.$resetpost('api/af-revenue/logic/savePrintSheet', {
359
+ // data:{printData:this.printSheet}
360
+ // }, {resolveMsg: '', rejectMsg: ''})
361
+ // console.log(expiration);
362
+ // if(expiration.data === 200){
363
+ // this.$showMessage("您已成功生成 \""+this.printSheet.f_type+"\" ,请前往 [ 综合业务 ] --> [ 打印数据 ]页面查看")
364
+ // }
365
+ },
366
+ confirm () {
367
+ this.data.addressinfo.f_address = this.$refs.useressential.addressinfo.f_address
368
+ this.data.addressinfo.id = this.$refs.useressential.addressinfo.id
369
+ this.data.oldaddressinfo = this.oldAddress
370
+ this.data.inputcode = this.$refs.useressential.inputcode ? this.$refs.useressential.inputcode : '否'
371
+ this.data.limit_gas = this.limit_gas
372
+ if (this.f_filialeid && this.f_filialeid != '') {
373
+ this.data.f_filialeid = this.f_filialeid
374
+ } else {
375
+ this.data.f_filialeid = this.$login.f.orgid
376
+ }
377
+ if (this.row) {
378
+ this.data.baseinfo.base.version = this.row.version
379
+ }
380
+
381
+ console.log('档案保存之前,。。。', this.data)
382
+ this.data.baseinfo.base.f_user_name = Util.removerUnnecessary(this.data.baseinfo.base.f_user_name)
383
+ this.data.baseinfo.base.f_user_phone = Util.removerUnnecessary(this.data.baseinfo.base.f_user_phone)
384
+ this.data.meterinfo.forEach((item) => {
385
+ item.f_meternumber = Util.removerUnnecessary(item.f_meternumber)
386
+ })
387
+ console.log(this.$FileManageService.fileSaveBefore(this.data))
388
+ this.$FileManageService.fileSave(this.$FileManageService.fileSaveBefore(this.data)).then((res) => {
389
+ this.savePrintSheet(res.data.result[0])
390
+ this.$dispatch('success')
391
+ }).catch((error) => {
392
+ if (error.status === 603) {
393
+ this.$error('重复提交')
394
+ return
395
+ }
396
+ this.$dispatch('error', '档案保存', this.data, error)
397
+ })
398
+ },
399
+ convertBase64ToBlob (base64String) {
400
+ // 将base64解码
401
+ var bytes = atob(base64String)
402
+ // var bytes = base64;
403
+ var bytesCode = new ArrayBuffer(bytes.length)
404
+ // 转换为类型化数组
405
+ var byteArray = new Uint8Array(bytesCode)
406
+
407
+ // 将base64转换为ascii码
408
+ for (var i = 0; i < bytes.length; i++) {
409
+ byteArray[i] = bytes.charCodeAt(i)
410
+ }
411
+ // 生成Blob对象(文件对象)
412
+ return new Blob([bytesCode], {type: 'image/jpeg'})
413
+ },
414
+ newPhoto (Imgbase64) {
415
+ // console.log('imgbase----->',Imgbase64)
416
+ let form = new FormData()
417
+ let xhr = new XMLHttpRequest()
418
+ let formDataBoundary = '----WebkitFormBoundary' + 'GaoPaiYi'
419
+ form.append('Content-Type', 'multipart/form-data;boundary=' + formDataBoundary)
420
+ form.append('file', this.convertBase64ToBlob(Imgbase64), 'GaoPaiYi.jpg')
421
+ xhr.open('POST', 'api/af-revenue/file/uploadFile')
422
+
423
+ if (this.headers) {
424
+ console.log('this.blodid----->', this.blodid)
425
+ this.headers.blodid = this.blodid
426
+ for (var header in this.headers) {
427
+ xhr.setRequestHeader(header, encodeURIComponent(this.headers[header]))
428
+ }
429
+ }
430
+ xhr.send(form)
431
+ setTimeout(() => {
432
+ this.load(this)
433
+ }, 5000)
434
+ },
435
+ async areaGen (data) {
436
+ data.f_user_id = data.f_user_id + ''
437
+ await getFileGen(this, data)
438
+ },
439
+ cancel () {
440
+ this.$dispatch('clean', '取消档案修正', 'user-general-info', this.row)
441
+ },
442
+ checkout (val) {
443
+ // 对收到的综合信息进行校验(主要目的是为了防止下拉框没有默认值)
444
+ // 对综合用户基本信息进行校验
445
+ // 将oldAddress 置为空,
446
+ this.oldAddress = {}
447
+ this.data.baseinfo.base.f_user_state = ['预备']
448
+ this.data.baseinfo.base.f_cost_type = this.data.baseinfo.base.f_cost_type ? [this.data.baseinfo.base.f_cost_type] : '现金缴费'
449
+ this.data.baseinfo.base.f_paper_type = this.data.baseinfo.base.f_paper_type ? [this.data.baseinfo.base.f_paper_type] : '国税发票'
450
+ this.data.baseinfo.bank.f_bank_name = this.data.baseinfo.bank.f_bank_name ? [this.data.baseinfo.bank.f_bank_name] : '中国银行'
451
+ this.data.baseinfo.base.f_people_num = this.data.baseinfo.base.f_people_num ? this.data.baseinfo.base.f_people_num : (this.peopleNum ? this.peopleNum : 0)
452
+
453
+ if (!this.data.baseinfo.base.f_credentials) {
454
+ this.data.baseinfo.base.f_credentials = '身份证'
455
+ }
456
+
457
+ if (this.data.baseinfo.base.f_slice_area) {
458
+ this.data.baseinfo.base.f_slice_area = [this.data.baseinfo.base.f_slice_area]
459
+ } else {
460
+ this.data.baseinfo.base.f_slice_area = ''
461
+ }
462
+ this.oldAddress.f_address = this.data.addressinfo.f_address
463
+ this.oldAddress.id = this.data.addressinfo.id
464
+ // 对表具信息进行校验
465
+ this.data.meterinfo.forEach((row) => {
466
+ if (row.gasbrand) {
467
+ this.meterbrands.forEach((item) => {
468
+ if (item.label === row.gasbrand) {
469
+ row.gasbrand = [item.value]
470
+ }
471
+ })
472
+ } else {
473
+ row.gasbrand = ''
474
+ }
475
+ if (row.gasmodel && (row.gasbrand instanceof Array)) {
476
+ row.gasbrand[0].gasmodel.forEach((item) => {
477
+ if (item.label === (val === 'area' ? row.gasmodel : row.gasmodel + row.gasmodeltype)) {
478
+ row.gasmodel = [item.value]
479
+ }
480
+ })
481
+ } else {
482
+ row.gasmodel = ''
483
+ }
484
+ if (row.f_fire_state === '1') {
485
+ row.f_fire_state1 = true
486
+ } else if (row.f_fire_state === '0') {
487
+ row.f_fire_state1 = false
488
+ }
489
+ row.f_install_date = row.f_install_date ? row.f_install_date : null
490
+ row.f_gas_date = row.f_gas_date ? row.f_gas_date : null
491
+ row.f_changetube_date = row.f_changetube_date ? row.f_changetube_date : null
492
+ row.f_aroundmeter = row.f_aroundmeter ? [row.f_aroundmeter] : ''
493
+ row.f_garbage_fee = row.f_garbage_fee ? [row.f_garbage_fee] : '否'
494
+ row.f_valve_state = row.f_valve_state ? [row.f_valve_state] : '开阀'
495
+ row.f_inputtor = row.f_inputtor ? [row.f_inputtor] : ''
496
+ row.f_position = row.f_position ? row.f_position : ''
497
+
498
+ row.f_user_type = row.f_user_type ? [row.f_user_type] : ''
499
+ row.f_gasproperties = row.f_gasproperties ? [row.f_gasproperties] : ''
500
+ row.pricetype = row.pricetype ? [row.pricetype] : ''
501
+
502
+ if (row.pricename) {
503
+ let names = this.getPricenames(row.f_user_type,
504
+ row.f_gasproperties,
505
+ row.pricetype)
506
+ if (names.length > 0) {
507
+ names.forEach((item) => {
508
+ if (item.label === row.pricename) {
509
+ row.pricename = [item.value]
510
+ row.f_detailprice = this.$CommonService.getShowPriceDetail(item.value.detailprice)
511
+ }
512
+ })
513
+ } else {
514
+ row.pricename = ''
515
+ }
516
+ } else {
517
+ row.pricename = ''
518
+ }
519
+
520
+ if (row.f_adjustable) {
521
+ this.adjustables.forEach((item) => {
522
+ if (item.label === row.f_adjustable) {
523
+ row.f_adjustable = [item.value]
524
+ }
525
+ })
526
+ } else {
527
+ row.f_adjustable = ''
528
+ }
529
+ })
530
+ this.$nextTick(() => {
531
+ this.$refs.useressential.resetValidation()
532
+ })
533
+ },
534
+ getPricenames (f_user_type, f_gasproperties, f_price_type) {
535
+ let rs = []
536
+ if (f_user_type.length === 1 && f_gasproperties.length === 1 && f_price_type.length === 1) {
537
+ rs = this.$GetSaleParam.getPrice({
538
+ f_user_type: f_user_type[0],
539
+ f_gasproperties: f_gasproperties[0],
540
+ f_price_type: f_price_type[0],
541
+ filter: this.f_filialeid
542
+ })
543
+ }
544
+ return rs
545
+ },
546
+ // 将小区信息转化为综合信息的格式
547
+ async areainfoInUser (areainfo) {
548
+ this.data = {
549
+ baseinfo: {
550
+ base: {
551
+ f_user_state: '预备',
552
+ f_print_dh: '',
553
+ f_print_lc: '否',
554
+ f_is_mgq: '',
555
+ f_slice_area: '', // 片区
556
+ // 附件表临时id
557
+ blodid: this.blodid,
558
+ // 用户姓名
559
+ f_user_name: '',
560
+ // 用户电话
561
+ f_user_phone: '',
562
+ f_people_num: 0,
563
+ // 备用电话
564
+ f_rent_phone: '',
565
+ f_credentials: '身份证',
566
+ f_cost_type: '',
567
+ f_address: '',
568
+ addressid: '',
569
+ f_idnumber: '',
570
+ f_house_type: ''
571
+ },
572
+ bank: {}
573
+ },
574
+ addressinfo: {
575
+ // 详细地址
576
+ f_address: '',
577
+ id: ''
578
+ },
579
+ meterinfo: [{
580
+ // 表号
581
+ f_meternumber: '',
582
+ f_metertitles: '',
583
+ f_area_code: '',
584
+ // 气表品牌
585
+ gasbrand: '',
586
+ // 气表型号
587
+ gasmodel: '',
588
+ // 气表类型
589
+ gasmodeltype: '',
590
+ pricetype: '', // 气价类型
591
+ pricename: '', // 气价名称
592
+ f_user_type: '', // 用户类型
593
+ f_gasproperties: '', // 用气性质
594
+ f_inputtor: '',
595
+ // 安装位置
596
+ f_position: '',
597
+ // 安装地址
598
+ f_userfiles_address: '',
599
+ // 使用类型
600
+ f_usetype: '',
601
+ // 使用状态
602
+ f_usestate: '',
603
+ // 左右表
604
+ f_aroundmeter: '',
605
+ f_garbage_fee: '否',
606
+ f_meter_base: '',
607
+ f_initial_base: '',
608
+ // 通气人
609
+ f_gas_person: '',
610
+ f_adjustable: '', // 调压箱
611
+ f_detailprice: '', // 价格详情显示
612
+ devicesinfo: [] // 设备信息
613
+ }],
614
+ devicesinfo: []
615
+ }
616
+ // 若有id,则表示该地址是更新操作
617
+ /* if (areainfo.id) {
618
+ this.data.addressinfo.id = areainfo.id
619
+ }
620
+ // 改地址是 只有表没有户信息
621
+ if (areainfo.meter) {
622
+ Object.assign(this.data.meterinfo[0], this.data.meterinfo[0], areainfo.meter)
623
+ }
624
+ if (areainfo.user) {
625
+ Object.assign(this.data.baseinfo.base, this.data.baseinfo.base, areainfo.user)
626
+ } */
627
+
628
+ this.checkout('area')
629
+ },
630
+ limitClick () {
631
+ this.limitShow = true
632
+ },
633
+ getLimitGas (val) {
634
+ this.limit_gas = val
635
+ },
636
+ clearinfo () {
637
+ this.blodid = '临时id' + Date.now()
638
+ this.areainfoInUser(this.areainfo)
639
+ }
640
+ },
641
+ computed: {
642
+ usertype () {
643
+ if (this.row && this.row.f_user_type) {
644
+ return this.row.f_user_type == '非民用'
645
+ }
646
+ return this.$refs.useressential.$refs.useraddressinfile.usertype
647
+ },
648
+ meterbrands () {
649
+ return this.$GetSaleParam.getGasbrand()
650
+ },
651
+ adjustables () {
652
+ return this.$GetSaleParam.getAdjustable()
653
+ },
654
+ getMeterBooks () {
655
+ return this.$GetSaleParam.getMeterBooks()
656
+ }
657
+ },
658
+ events: {
659
+ // 设置表具气价等默认值
660
+ defaultOtheret (row) {
661
+ if (!this.isedit) {
662
+ let temp = {
663
+ gasmodel: row.f_meter_style,
664
+ gasbrand: row.f_meter_brand,
665
+ gasmodeltype: row.f_meter_style,
666
+ pricetype: row.f_price_type,
667
+ pricename: row.f_price_name,
668
+ f_user_type: row.f_user_type,
669
+ f_gasproperties: row.f_gasproperties,
670
+ f_position: row.f_position,
671
+ f_inputtor: row.f_inputtor,
672
+ f_meter_book_num: row.f_meter_book,
673
+ f_adjustable: row.f_adjustable_id,
674
+ f_hand_month: [row.f_hand_month]
675
+ }
676
+ if (!(temp.f_position instanceof Array)) {
677
+ temp.f_position = [temp.f_position]
678
+ }
679
+ Object.assign(this.data.meterinfo[0], this.data.meterinfo[0], temp)
680
+
681
+ this.checkout('area')
682
+ }
683
+ }
684
+ }
685
+ }
686
+ </script>
687
+ <style scoped>
688
+
689
+
690
+ </style>