sale-client 3.4.112 → 3.4.113

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 (93) hide show
  1. package/.gradle/{5.2.1 → 4.4}/fileChanges/last-build.bin +0 -0
  2. package/.gradle/{6.1.1 → 4.4}/fileHashes/fileHashes.bin +0 -0
  3. package/.gradle/4.4/fileHashes/fileHashes.lock +0 -0
  4. package/build/dev-server.js +3 -3
  5. package/{.gradle/5.2.1/gc.properties → npm} +0 -0
  6. package/package.json +1 -1
  7. package/src/components/FilesManage/MeterinfoTest.vue +904 -905
  8. package/src/components/FilesManage/TemplateManage.vue +167 -167
  9. package/src/components/FilesManage/UserGeneralInfoTest.vue +642 -640
  10. package/src/components/charge/business/CardChangeFill.vue +612 -612
  11. package/src/components/charge/business/CardMeterCenter.vue +899 -899
  12. package/src/components/charge/business/FilesComplete.vue +253 -253
  13. package/src/components/charge/business/refund/IOTRefund.vue +236 -236
  14. package/src/components/charge/business/refund/RefundManage.vue +28 -28
  15. package/src/components/charge/gasloss/gasLossOperate.vue +357 -357
  16. package/src/components/chargeNew/thirdSurplus.vue +2 -0
  17. package/src/components/revenue/Common/MeterMessage.vue +184 -184
  18. package/src/components/revenue/HandManager/MeterBookManage.vue +153 -153
  19. package/src/components/revenue/base/leftview/MixPriceInfo.vue +60 -60
  20. package/src/components/revenue/base/leftview/Mulitinfo.vue +74 -74
  21. package/src/components/revenue/base/leftview/SafeCheck.vue +311 -311
  22. package/src/components/revenue/base/leftview/Stairinfo.vue +156 -156
  23. package/src/components/revenue/base/leftview/meterinfodetail.vue +195 -195
  24. package/src/components/revenue/base/rightview/CardList.vue +477 -477
  25. package/src/components/revenue/comprehen/ComprehenOperation/MeterDisable/DisableManage.vue +93 -93
  26. package/src/components/revenue/comprehen/ComprehenOperation/MeterEnable/EnableManage.vue +184 -184
  27. package/src/components/revenue/comprehen/ComprehenOperation/OtherGas/OtherGas.vue +5 -1
  28. package/src/components/revenue/comprehen/ComprehenOperation/removeTable.vue +1 -1
  29. package/src/components/revenue/comprehen/Maintenance/hand/handListMaintain.vue +638 -638
  30. package/src/components/revenue/comprehen/Maintenance/revenue/StockListmain.vue +7 -7
  31. package/src/components/revenue/comprehen/Message/MessageList.vue +587 -587
  32. package/src/components/revenue/comprehen/SpecialUser/BlackList/BlackList.vue +1 -1
  33. package/src/components/revenue/comprehen/SpecialUser/BlackList/BlackListManage.vue +1 -1
  34. package/src/components/revenue/comprehen/StairPrice/GasPriceList.vue +303 -303
  35. package/src/components/revenue/comprehen/replacement/replacementHandInfoRecord.vue +155 -155
  36. package/src/components/revenue/comprehen/wechatpay/WeChat.vue +62 -62
  37. package/src/components/webMeter/MeterManage/WebMeterBatchOperationValve.vue +8 -4
  38. package/src/filiale/alashan/PrintBill.vue +116 -116
  39. package/src/filiale/jingwei/CardHand.vue +742 -742
  40. package/src/filiale/macheng/FilesManageNew/FileUserFiles.vue +743 -0
  41. package/src/filiale/macheng/FilesManageNew/UserEssentialInfoTest.vue +371 -371
  42. package/src/filiale/macheng/FilesManageNew/UserGeneralInfoTest.vue +596 -596
  43. package/src/filiale/macheng/UserEssentialInfoTest.vue +368 -366
  44. package/src/filiale/meihekou/MeterinfoTest.vue +0 -1
  45. package/src/filiale/meihekou/PrintBill.vue +140 -140
  46. package/src/filiale/meihekou/ReissueBill.vue +322 -322
  47. package/src/filiale/qianneng/FilesManage/MeterinfoTest.vue +0 -1
  48. package/src/filiale/qianneng/GasPriceList.vue +330 -330
  49. package/src/filiale/qianneng/HandManager.vue +1838 -1838
  50. package/src/filiale/qianneng/OtherChargeNew.vue +6 -2
  51. package/src/filiale/qianneng/sale.js +30 -32
  52. package/src/filiale/qingtongxia/UserGeneralInfoTest.vue +538 -533
  53. package/src/filiale/rongcheng/FilesManageNew/UserGeneralInfoTest.vue +608 -608
  54. package/src/filiale/rongchuang/OtherGas.vue +329 -329
  55. package/src/filiale/tongchuan/CardList.vue +482 -482
  56. package/src/filiale/tongchuan/MeterinfoTest.vue +892 -892
  57. package/src/filiale/tongchuan/common/userinfo_detail/ic_detail/AutomaticPurse.vue +298 -298
  58. package/src/filiale/tongchuan/common/userinfo_detail/ic_detail/CardHandRecord.vue +267 -267
  59. package/src/filiale/tongchuan/common/userinfo_detail/ic_detail/ChangeMeterQueryUser.vue +240 -240
  60. package/src/filiale/tongchuan/common/userinfo_detail/ic_detail/ChangeRecord.vue +235 -235
  61. package/src/filiale/tongchuan/common/userinfo_detail/ic_detail/ChargeQueryUser.vue +372 -372
  62. package/src/filiale/tongchuan/common/userinfo_detail/ic_detail/DeveiceRecord.vue +251 -251
  63. package/src/filiale/tongchuan/common/userinfo_detail/ic_detail/FillCardQueryUser.vue +209 -209
  64. package/src/filiale/tongchuan/common/userinfo_detail/ic_detail/HandQueryUser.vue +365 -365
  65. package/src/filiale/tongchuan/common/userinfo_detail/ic_detail/MachineRecordQuery.vue +252 -252
  66. package/src/filiale/tongchuan/common/userinfo_detail/ic_detail/OtherChargeQueryUser.vue +250 -250
  67. package/src/filiale/tongchuan/common/userinfo_detail/ic_detail/RecordQueryUser.vue +249 -249
  68. package/src/filiale/tongchuan/common/userinfo_detail/ic_detail/TransferQueryUser.vue +222 -222
  69. package/src/filiale/tongchuan/sale.js +107 -107
  70. package/src/filiale/zhongsheng/rightview/CardList.vue +492 -492
  71. package/src/filiale/zhongsheng/wechatpay/WeChatPayDetail.vue +469 -469
  72. package/src/main.js +1 -1
  73. package/src/plugins/CardService.js +1798 -1798
  74. package/src/plugins/ChangeMeterService.js +756 -756
  75. package/src/plugins/FileManageService.js +366 -366
  76. package/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
  77. package/.gradle/6.1.1/executionHistory/executionHistory.bin +0 -0
  78. package/.gradle/6.1.1/executionHistory/executionHistory.lock +0 -0
  79. package/.gradle/6.1.1/fileChanges/last-build.bin +0 -0
  80. package/.gradle/6.1.1/fileHashes/fileHashes.lock +0 -0
  81. package/.gradle/6.1.1/gc.properties +0 -0
  82. package/.gradle/7.1/dependencies-accessors/dependencies-accessors.lock +0 -0
  83. package/.gradle/7.1/dependencies-accessors/gc.properties +0 -0
  84. package/.gradle/7.1/executionHistory/executionHistory.bin +0 -0
  85. package/.gradle/7.1/executionHistory/executionHistory.lock +0 -0
  86. package/.gradle/7.1/fileChanges/last-build.bin +0 -0
  87. package/.gradle/7.1/fileHashes/fileHashes.bin +0 -0
  88. package/.gradle/7.1/fileHashes/fileHashes.lock +0 -0
  89. package/.gradle/7.1/gc.properties +0 -0
  90. package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  91. package/.gradle/buildOutputCleanup/cache.properties +0 -2
  92. package/.gradle/checksums/checksums.lock +0 -0
  93. package/.gradle/vcs-1/gc.properties +0 -0
@@ -1,892 +1,892 @@
1
- <template>
2
- <div class="auto" id="meterInfoTest">
3
- <validator name='m' @valid="mValid(true)" @invalid="mValid(false)">
4
- <form class="form-horizontal select-overspread ">
5
- <div class="row">
6
- <div class="col-sm-4 form-group" v-if="isiot" :class="[$m.f_meternumber.required ? 'has-error' : '']">
7
- <label for="f_meternumber" class="font_normal_body">*表&emsp;&emsp;号</label>
8
- <input type="text" class="input_search" style="width:60%" v-model="row.f_meternumber"
9
- @blur="meternumberValidate()" placeholder='表号' v-validate:f_meternumber='{required: true }'
10
- v-el:meternumber v-next-el="metertitles">
11
- </div>
12
- <div class="col-sm-4 form-group" v-else>
13
- <label for="f_meternumber" class="font_normal_body">&ensp;表&emsp;&emsp;号</label>
14
- <input type="text" class="input_search" style="width:60%" v-model="row.f_meternumber"
15
- @blur="meternumberValidate()" placeholder='表号'
16
- v-el:meternumber v-next-el="metertitles">
17
- </div>
18
- <div class="col-sm-4 form-group">
19
- <label for="f_metertitles" class="font_normal_body">&ensp;表&ensp;封&ensp;号</label>
20
- <input type="text" class="input_search" style="width:60%" v-model="row.f_metertitles" placeholder='表封号'
21
- v-el:metertitles v-next-el="meterbase">
22
- </div>
23
- <div class="col-sm-4 form-group">
24
- <label for="f_meter_base" class="font_normal_body">&ensp;表&ensp;读&ensp;数</label>
25
- <input type="number" class="input_search" style="width:60%" v-model="row.f_meter_base" placeholder='表底数'
26
- :disabled="!jurisdiction.includes('档案信息查询修改')" :readonly="!row.f_userfiles_id" v-el:meterbase v-next-el="initialbase">
27
- </div>
28
- <div class="col-sm-4 form-group">
29
- <label for="f_meter_base" class="font_normal_body">&ensp;初始底数</label>
30
- <input type="number" class="input_search" style="width:60%" v-model="row.f_initial_base" placeholder='表底数'
31
- :disabled="!jurisdiction.includes('档案信息查询修改')" v-el:initialbase v-next-el="detailprice">
32
- </div>
33
-
34
- <div class="col-sm-4 form-group" :class="[$m.brand.required ? 'has-error' : '']">
35
- <label for="gasbrand" class="font_normal_body">*气表品牌</label>
36
- <input type="text" class="input_search" style="width:60%" v-show="false" v-model="$refs.brand.selectedItems"
37
- v-validate:brand='{required: true }'>
38
- <v-select :value.sync="row.gasbrand" :options='meterbrands' placeholder='气表品牌' close-on-select
39
- search @change='brandChange' v-model='row.gasbrand' v-ref:brand></v-select>
40
- </div>
41
- <div class="col-sm-4 form-group" :class="[$m.model.required ? 'has-error' : '']">
42
- <label for="gasmodel" class="font_normal_body">*气表型号</label>
43
- <input type="text" v-show="false" v-model="$refs.model.selectedItems"
44
- v-validate:model='{required: true }'>
45
- <v-select :value.sync="row.gasmodel" :options='row.gasbrand[0].gasmodel' placeholder='气表型号'
46
- close-on-select @change="getbfrq()"
47
- v-model='row.gasmodel' :disabled='row.gasbrand.length === 0 ' v-ref:model></v-select>
48
- </div>
49
- <div class="col-sm-4 form-group" v-if="row.gasbrand.length>0?(row.gasbrand[0].f_meter_brand.indexOf('莱德远传')>-1?true:false):false" :class="[$m.f_barcode.required ? 'has-error' : '']">
50
- <label for="f_meternumber" class="font_normal_body">*条&ensp;码&ensp;号</label>
51
- <input type="text" class="input_search" style="width:60%" v-model="row.f_barcode"
52
- placeholder='条码号' v-validate:f_barcode='{required: true }'
53
- v-el:f_barcode>
54
- </div>
55
- <div class="col-sm-4 form-group" v-else>
56
- <label for="f_meternumber" class="font_normal_body">&ensp;条&ensp;码&ensp;号</label>
57
- <input type="text" class="input_search" style="width:60%" v-model="row.f_barcode"
58
- placeholder='条码号'
59
- v-el:f_barcode>
60
- </div>
61
-
62
-
63
-
64
- <div class="col-sm-4 form-group" v-if="row.gasbrand[0].f_alias ==='XianFengCollector'" :class="[$m.f_concentrator_id.required ? 'has-error' : '']">
65
- <label for="f_concentrator_id" class="font_normal_body">*采集器号</label>
66
- <input type="text" class="input_search" style="width:60%" v-model="row.f_concentrator_id"
67
- placeholder='采集器号' v-validate:f_concentrator_id='{required: true }'
68
- v-el:f_concentrator_id>
69
- </div>
70
- <div class="col-sm-4 form-group" :class="[$m.name.required ? 'has-error' : '']">
71
- <label for="pricename" class="font_normal_body">*气价名称</label>
72
- <v-select :value.sync="row.pricename" v-model="row.pricename" search
73
- placeholder='气价名称' :options="getPricenames" @change="priceChange"
74
- close-on-select :disabled="permissionPrice" v-ref:name></v-select>
75
- <input type="text" v-show="false" v-model="$refs.name.selectedItems" v-validate:name='{required: true }'>
76
- </div>
77
- <div class="col-sm-4 form-group">
78
- <label for="f_username" class="font_normal_body">&ensp;客户类型</label>
79
- <v-select :value.sync="row.f_user_type"
80
- :options='usertypes' placeholder='客户类型'
81
- @change="userTypeChange()"
82
- :disabled="true"
83
- close-on-select></v-select>
84
- </div>
85
- <div class="col-sm-4 form-group"
86
- :class="[$m.gas.required ? 'select-error' : '']">
87
- <label for="f_username" class="font_normal_body">&ensp;用气性质</label>
88
- <input type="text" v-show="false" v-model="$refs.gas.selectedItems" v-validate:gas='{required: true }'>
89
- <v-select :value.sync="row.f_gasproperties" v-model="row.f_gasproperties"
90
- :options='gasproperties' placeholder='用气性质'
91
- :disabled="true"
92
- close-on-select v-ref:gas></v-select>
93
- </div>
94
- <div class="col-sm-4 form-group"
95
- :class="[$m.second.required ? 'select-error' : '']">
96
- <label for="f_gasproperties_second" class="font_normal_body" title="二级用气性质">二级用气性质</label>
97
- <input type="text" v-show="false" v-model="$refs.second.selectedItems" v-validate:second='{required: true }'>
98
- <v-select :value.sync="row.f_gasproperties_second" v-model="row.f_gasproperties_second"
99
- :options='row.f_gasproperties?(this.$appdata.getParam(row.f_gasproperties)?this.$appdata.getParam(row.f_gasproperties):[]):[]' placeholder='二级用气性质'
100
- close-on-select v-ref:second></v-select>
101
- </div>
102
- <div class="col-sm-4 form-group" v-show="row.f_gasproperties=='工业'||row.f_gasproperties=='工业用气'">
103
- <label for="f_gongye_type" class="font_normal_body" title="参数:工业备注">&ensp;工业备注</label>
104
- <v-select :value.sync="row.f_gongye_type" v-model='row.f_gongye_type'
105
- :options='gongyetype' placeholder='工业备注'
106
- close-on-select
107
- v-el:cc></v-select>
108
- </div>
109
- <div class="col-sm-4 form-group">
110
- <label for="f_detailprice" class="font_normal_body">&ensp;价&emsp;&emsp;格</label>
111
- <input type="text" class="input_search" style="width:60%" v-model="row.f_detailprice" placeholder='价格'
112
- disabled v-el:detailprice v-next-el="pricecomments">
113
- </div>
114
- <div class="col-sm-4 form-group" :class="[$m.type.required ? 'select-error' : '']">
115
- <label for="pricetype" class="font_normal_body">&ensp;气价类型</label>
116
- <v-select :value.sync="row.pricetype" v-model="row.pricetype"
117
- placeholder='气价类型' :options="pricetypes"
118
- :value-single="true"
119
- :disabled="true"
120
- close-on-select v-ref:type>
121
- </v-select>
122
- <input type="text" v-show="false" v-model="$refs.type.selectedItems" v-validate:type='{required: true }'>
123
- </div>
124
- <div class="col-sm-4 form-group">
125
- <label class="font_normal_body">&ensp;气价备注</label>
126
- <input type="text" class="input_search" style="width:60%" v-model="row.f_price_comments" placeholder='气价备注' disabled
127
- v-el:pricecomments v-next-el="meterbase">
128
- </div>
129
-
130
- <div class="col-sm-4 form-group">
131
- <label for="f_meter_base" class="font_normal_body">&ensp;累购气量</label>
132
- <input type="number" class="input_search" style="width:60%" v-model="row.f_total_gas" placeholder='累购气量'
133
- :disabled="!jurisdiction.includes('档案信息查询修改')"
134
- v-el:meterbase v-next-el="totalfee">
135
- </div>
136
-
137
- <div class="col-sm-4 form-group">
138
- <label for="f_meter_base" class="font_normal_body">&ensp;累购金额</label>
139
- <input type="number" class="input_search" style="width:60%" v-model="row.f_total_fee" placeholder='累购金额'
140
- :disabled="!jurisdiction.includes('档案信息查询修改')" v-el:totalfee v-next-el="times">
141
- </div>
142
- <div class="col-sm-4 form-group" v-show="row.f_meter_classify != '机表'">
143
- <label for="f_times" class="font_normal_body">&ensp;写卡次数</label>
144
- <input type="number" class="input_search" style="width:60%" v-model="row.f_times" placeholder='写卡次数'
145
- :disabled="!jurisdiction.includes('档案信息查询修改')"
146
- v-el:times v-next-el="gasperson">
147
- </div>
148
- <div class="col-sm-4 form-group" :class="[$m.aroundmeter.required ? 'has-error' : '']">
149
- <label class="font_normal_body">&ensp;表&ensp;&ensp;&ensp;&ensp;向</label>
150
- <input type="text" v-show="false" v-model="$refs.aroundmeter.selectedItems" v-validate:aroundmeter='{required: true }'>
151
- <v-select :value.sync="row.f_aroundmeter" v-model="row.f_aroundmeter"
152
- :options='aroundmeters' placeholder='左右表'
153
- close-on-select v-ref:aroundmeter></v-select>
154
- </div>
155
- <div class="col-sm-4 form-group">
156
- <label for="f_gas_person" class="font_normal_body">&ensp;通&ensp;气&ensp;人</label>
157
- <input type="text" class="input_search" style="width:60%" style="width:60%" v-model="row.f_gas_person"
158
- placeholder='通气人' v-el:gasperson v-next-el="limitsms"></input>
159
- <!-- <v-select :value.sync="row.f_gas_person" v-model="row.f_gas_person"
160
- :options='gasperson' placeholder='通气人'
161
- close-on-select></v-select> -->
162
- </div>
163
- <div class="col-sm-4 form-group" :class="[$m.f_gas_date.required ? 'has-error' : '']">
164
- <input type="text" v-model="$refs.f_gas_date.value" v-show="false" v-validate:f_gas_date='{required: true }'>
165
- <label for="f_gas_date" class="font_normal_body">&ensp;通气日期</label>
166
- <datepicker style="width:60%" placeholder="通气日期"
167
- v-model="row.f_gas_date"
168
- v-ref:f_gas_date
169
- :value.sync="row.f_gas_date"
170
- :format="'yyyy-MM-dd HH:mm:ss'"
171
- :show-reset-button="reset"
172
- ></datepicker>
173
- </div>
174
- <div class="col-sm-4 form-group" :class="[$m.f_gas_date.required ? 'has-error' : '']">
175
- <label for="f_gas_date" class="font_normal_body" title="参数:供气方式">&ensp;供气方式</label>
176
- <v-select :value.sync="row.f_feed_method" :options='feedmethod' placeholder='供气方式' close-on-select
177
- :value-single="true"
178
- v-model='row.f_feed_method'></v-select>
179
- </div>
180
-
181
- <div class="col-sm-4 form-group" >
182
- <label for="f_position" class="font_normal_body" title="参数:安装位置">&ensp;安装位置</label>
183
- <v-select :value.sync="row.f_position" v-model="row.f_position"
184
- :options='positions' placeholder='安装位置'
185
- close-on-select></v-select>
186
- </div>
187
- <div class="col-sm-4 form-group" v-show="false">
188
- <label for="f_remanent_gas" class="font_normal_body">剩余气量</label>
189
- <input type="number" class="input_search" style="width:60%" v-model="row.f_remanent_gas"
190
- placeholder='剩余气量'
191
- :disabled="f_userinfo_id"></input>
192
- <!--<button type="button" name="button" class="btn btn-link" @click="modefiy('f_remanent_gas')" v-if="f_userinfo_id">修改</button>-->
193
- </div>
194
- <div class="col-sm-4 form-group" v-show="true">
195
- <label for="f_install_person" class="font_normal_body">&ensp;安&ensp;装&ensp;人</label>
196
- <v-select :value.sync="row.f_install_person" v-model="row.f_install_person"
197
- :options='installperson' placeholder='安装人'
198
- close-on-select></v-select>
199
- </div>
200
- <div class="col-sm-4 form-group">
201
- <label for="f_subscribe_date" class="font_normal_body">&ensp;预约时间</label>
202
- <datepicker style="width:60%" placeholder="预约通气时间"
203
- v-model="row.f_subscribe_date"
204
- :value.sync="row.f_subscribe_date"
205
- :format="'yyyy-MM-dd HH:mm:ss'"
206
- ></datepicker>
207
- </div>
208
- <div class="col-sm-4 form-group" v-show="opteratormetrbook" >
209
- <label for="f_position" class="font_normal_body" >&ensp;抄&ensp;表&ensp;册</label>
210
- <v-select :value.sync="row.f_meter_book_num" v-model="row.f_meter_book_num"
211
- :value-single="true"
212
- :options='meterbookoptions' placeholder='抄表册'
213
- close-on-select></v-select>
214
- </div>
215
- <div class="col-sm-4 form-group" v-show="true" :class="[$m.f_install_date.required ? 'has-error' : '']">
216
- <input type="text" v-model="$refs.f_install_date.value" v-show="false" v-validate:f_install_date='{required: true }'>
217
- <label for="f_install_date" class="font_normal_body">&ensp;安装日期</label>
218
- <datepicker style="width:60%" id="startDate" placeholder="安装日期" width='100%'
219
- v-model="f_install_date"
220
- :value.sync="f_install_date"
221
- class="datepicker"
222
- v-ref:f_install_date
223
- @updatayear="updatayear"
224
- :format="'yyyy-MM-dd HH:mm:ss'"
225
- :show-reset-button="true">
226
- </datepicker>
227
- </div>
228
- <div class="col-sm-4 form-group">
229
- <label for="f_adjustable" class="font_normal_body">&ensp;调&ensp;压&ensp;箱</label>
230
- <v-select :value.sync="row.f_adjustable" :options='adjustables' placeholder='调压箱' close-on-select
231
- @change="getRisers()"
232
- v-model='row.f_adjustable' :search='true'></v-select>
233
- </div>
234
- <div class="col-sm-4 form-group">
235
- <label for="f_adjustable" class="font_normal_body">&ensp;立管编号</label>
236
- <v-select :value.sync="row.f_riser_code" :options='risers' placeholder='立管编号' close-on-select
237
- :value-single="true"
238
- v-model='row.f_riser_code' :search='true'></v-select>
239
- </div>
240
- <div class="col-sm-4 form-group">
241
- <label for="f_hand_date" class="font_normal_body">&ensp;上次抄表</label>
242
- <datepicker style="width:60%" id="f_hand_date" placeholder="上次抄表日期"
243
- v-model="row.f_hand_date"
244
- :value.sync="row.f_hand_date"
245
- class="datepicker"
246
- :format="'yyyy-MM-dd HH:mm:ss'"
247
- :show-reset-button="true">
248
- </datepicker>
249
- </div>
250
- <div v-if="ratioshow" class="col-sm-4 form-group"
251
- :class="[$m.meternumber.required ? 'has-error' : '']">
252
- <label for="f_ratio" class="font_normal_body">比&emsp;&emsp;率</label>
253
- <input type="number" class="input_search" style="width:60%" v-model="row.f_price_ratio"
254
- :value.sync="row.f_price_ratio"
255
- v-validate:meternumber='{required: true }' placeholder='比率'>
256
- </div>
257
- <div class="col-sm-4 form-group" >
258
- <label for="f_scrap_date" class="font_normal_body">&ensp;报废日期</label>
259
- <datepicker style="width:60%" id="ScrapDate" placeholder="报废日期" width='100%'
260
- :v-model="f_scrap_date"
261
- :value.sync="f_scrap_date"
262
- class="datepicker"
263
- :format="'yyyy-MM-dd'"
264
- :show-reset-button="true">
265
- </datepicker>
266
- </div>
267
- <div class="col-sm-4 form-group" v-show="row.f_meter_classify == '物联网表'">
268
- <label for="gasmodel" class="font_normal_body">&ensp;阀门状态</label>
269
- <v-select :value.sync="row.f_valve_state" :options='valvestate' placeholder='阀门状态' close-on-select
270
- v-model='row.f_valve_state'></v-select>
271
- </div>
272
- <div class="col-sm-4 form-group" :class="[$m.f_open_way.required ? 'has-error' : '']" v-if="row.gasbrand.length > 0 && row.gasbrand[0].f_meter_type == '物联网表' && row.gasbrand[0].f_hascard == '是'">
273
- <label class="font_normal_body" title="开户方式">开户方式</label>
274
- <input type="text" v-model="row.f_open_way" v-show="false" v-validate:f_open_way='{required: true }'>
275
- <v-select :value.sync="row.f_open_way" :options='openWay' value-single placeholder='开户方式' close-on-select v-if="row.f_userfiles_id"
276
- search v-model='row.f_open_way' :disabled="true"></v-select>
277
- <v-select :value.sync="row.f_open_way" :options='openWay' value-single placeholder='开户方式' close-on-select v-else
278
- search v-model='row.f_open_way' :disabled="false"></v-select>
279
- </div>
280
-
281
- <div class="col-sm-4 form-group">
282
- <label for="gasmodel" class="font_normal_body">&ensp;垃&ensp;圾&ensp;费</label>
283
- <v-select :value.sync="row.f_garbage_fee" :options='garbagefee' placeholder='垃圾费' close-on-select
284
- :value-single="true"
285
- v-model='row.f_garbage_fee'></v-select>
286
- </div>
287
- <div class="col-sm-4 form-group">
288
- <label class="font_normal_body">&ensp;抄&ensp;表&ensp;员</label>
289
- <v-select :value.sync="row.f_inputtor" v-model='row.f_inputtor'
290
- style="width:60%"
291
- :options='inputtores' placeholder='抄表员'
292
- close-on-select
293
- condition="f_inputtor like '%{}%'" v-el:cc></v-select>
294
- </div>
295
- <div class="col-sm-4 form-group" >
296
- <label for="f_usetype" class="font_normal_body" title="参数:使用类型">&ensp;壁&nbsp;挂&nbsp;炉&nbsp;</label>
297
- <v-select :value.sync="row.f_usetype" v-model="row.f_usetype"
298
- :options='usetype' placeholder='使用类型' @change="usetypechange"
299
- close-on-select></v-select>
300
- </div>
301
- <div class="col-sm-4 form-group" >
302
- <label for="f_position" class="font_normal_body" title="参数:使用状态">&ensp;使用状态</label>
303
- <v-select :value.sync="row.f_usestate" v-model="row.f_usestate"
304
- :options='usestate' placeholder='使用状态'
305
- close-on-select></v-select>
306
- </div>
307
- <div class="col-sm-4 form-group" >
308
- <label for="f_limit_sms" class="font_normal_body">&ensp;短信限定</label>
309
- <input type="text" class="input_search" style="width:60%" style="width:60%" v-model="row.f_limit_sms"
310
- placeholder='短信限定' v-el:limitsms v-next-el="alarmcode"></input>
311
- </div>
312
- <div style="" class="col-sm-4 form-group">
313
- <label for="f_alarm_code" class="font_normal_body ">&ensp;报警器号</label>
314
- <input type="text" class="input_search" style="width:60%" v-model="row.f_alarm_code" placeholder='报警器号'
315
- v-el:alarmcode v-next-el="address"/>
316
- </div>
317
- <div style="" class="col-sm-4 form-group">
318
- <label for="f_hand_month" class="font_normal_body ">&ensp;抄表月份</label>
319
- <v-select :value.sync="row.f_hand_month" v-model="row.f_hand_month"
320
- :options='handmonth' placeholder='抄表月份'
321
- close-on-select></v-select>
322
- </div>
323
- <div style="" class="col-sm-4 form-group" v-show="false">
324
- <label for="f_riser_shaft" class="font_normal_body ">&ensp;立管阀井</label>
325
- <v-select :value.sync="row.f_riser_shaft" v-model="row.f_riser_shaft"
326
- :options='risershaft' placeholder='立管阀井'
327
- close-on-select></v-select>
328
- </div>
329
- <div style="" class="col-sm-8 form-group">
330
- <label for="f_userfiles_address" class="font_normal_body ">&ensp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;场站</label>
331
- <v-select :value.sync="row.f_userfiles_address" v-model="row.f_userfiles_address"
332
- :options='userfilesaddress' placeholder='场站'
333
- close-on-select></v-select>
334
- </div>
335
- <div class="col-sm-4 form-group" v-show="false">
336
- <input type="text" v-model="$refs.f_survey_date.value" v-show="false" >
337
- <label for="f_gas_date" class="font_normal_body">&ensp;检验日期</label>
338
- <datepicker style="width:60%" placeholder="检验日期"
339
- v-model="row.f_survey_date"
340
- v-ref:f_survey_date
341
- :value.sync="row.f_survey_date"
342
- :format="'yyyy-MM-dd HH:mm:ss'"
343
- :show-reset-button="reset"
344
- ></datepicker>
345
- </div>
346
- </div>
347
- </form>
348
- </validator>
349
- <!--<idverify :show.sync="show" @change-con="changeVal"></idverify>-->
350
- <modal v-if="showParame" :show.sync="showParame" v-ref:modal backdrop="false">
351
- <header slot="modal-header" class="modal-header">
352
- <button type="button" class="close" @click="cancel"><span>&times;</span></button>
353
- <h3 class="modal-title" style="text-align: center;">添加参数</h3>
354
- </header>
355
- <article slot="modal-body" class="modal-body">
356
- <add-json-parameter v-ref:addparamlist :gasmodel_id="userfileid" :gastype="gastype"
357
- :gasid="gasid"></add-json-parameter>
358
- </article>
359
- <footer slot="modal-footer" class="modal-footer">
360
- <button type="button" class="btn btn-primary" @click='confirmUserfiles()'>确认</button>
361
- </footer>
362
- </modal>
363
- </div>
364
- </template>
365
-
366
- <script>
367
- import co from 'co'
368
- import {HttpResetClass} from 'vue-client'
369
- import Vue from 'vue'
370
- import * as Util from '../../Util'
371
-
372
- let meterBookGen = function * (self) {
373
- if (self.$login.r.find(value => value == '抄表册建档')) {
374
- self.opteratormetrbook = true
375
- }
376
- let temp = {
377
- tablename: 't_meter_book',
378
- condition: `f_book_state='有效' and f_filiale_id='${self.$login.f.orgid}'`
379
- }
380
- let http = new HttpResetClass()
381
- let meterbooks = yield http.load('POST', 'rs/sql/saleSingleTable', {data: temp},
382
- {resolveMsg: null, rejectMsg: '获取抄表册信息失败!!'})
383
- if (meterbooks.data.length > 0) {
384
- let options = []
385
- for (let i = 0; i < meterbooks.data.length; i++) {
386
- let tmp = {label: meterbooks.data[i].f_book_name, value: `${meterbooks.data[i].id}`}
387
- options.push(tmp)
388
- }
389
- self.meterbookoptions = options
390
- }
391
- }
392
- let brandChangeGen = function* (self, val) {
393
- let beforeRecord = null
394
-
395
- if (self.meter.f_meter_classify === '机表') {
396
- beforeRecord = yield self.$resetpost('rs/sql/saleSingleTable', {
397
- data: {
398
- tablename: 't_handplan',
399
- condition: `f_user_id = '${self.row.f_user_id}' and f_meter_state in ('已抄表','未抄表')`
400
- }
401
- }, {resolveMsg: null, rejectMsg: '在档案中更改气表品牌时,获取之前机表抄表信息出错!!'})
402
- } else {
403
- beforeRecord = yield self.$resetpost('rs/sql/saleSingleTable', {
404
- data: {
405
- tablename: 't_sellinggas',
406
- condition: `f_user_id = '${self.row.f_user_id}' and f_state = '有效'`
407
- }
408
- }, {resolveMsg: null, rejectMsg: '在档案中更改气表品牌时,获取之前卡表收费信息出错!!'})
409
- }
410
- if (beforeRecord.data.length > 0 && self.row.gasbrand[0].f_meter_brand != self.oldrow.gasbrand[0].f_meter_brand) {
411
- self.$showAlert('该气表已投入使用,如需更改请执行换表操作', 'warning', 3000)
412
- // self.row.gasbrand = self.meter.gasbrand
413
- self.$dispatch('success')
414
- /* self.row.valid = bool
415
- self.$dispatch('self-valid') */
416
- } else {
417
- self.row.f_whether_hairpin = self.row.gasbrand[0].f_meter_type === '机表' ? '无卡' : '未发'
418
- }
419
- console.log('111', self.row)
420
- }
421
- export default {
422
- title: '表具信息',
423
- data () {
424
- return {
425
- risers:[],
426
- viewsee: false,
427
- row: this.meter,
428
- show: false,
429
- field: '',
430
- ratioshow: false,
431
- userfileid: '',
432
- gasid: '',
433
- f_install_date: '',
434
- f_scrap_date: '',
435
- gastype: 'userfiles',
436
- showParame: false,
437
- selectUserFiles: '', // 选中的 userfiles
438
- jurisdiction: this.$login.r,
439
- positions: this.$appdata.getParam('安装位置'),
440
- openWay: this.$appdata.getParam('开户方式'),
441
- usetype: this.$appdata.getParam('使用类型'),
442
- usestate: this.$appdata.getParam('使用状态'),
443
- aroundmeters: this.$appdata.getParam('左右表'),
444
- garbagefee: this.$appdata.getParam('垃圾费'),
445
- valvestate: this.$appdata.getParam('阀门状态'),
446
- usertypes: this.$appdata.getParam('用户类型'),
447
- feedmethod: this.$appdata.getParam('供气方式')?this.$appdata.getParam('供气方式'):[],
448
- handmonth: [{label: '单月', value: '单月'}, {label: '双月', value: '双月'}],
449
- risershaft: this.$appdata.getParam('立管阀井'),
450
- bfrq:10,
451
- gasproperties: this.meter.f_user_type.length === 1 ? this.$appdata.getParam(this.meter.f_user_type[0]) : [],
452
- pricetypes: this.$appdata.getParam('气价类型'),
453
- industrycomments: this.$appdata.getParam('工业备注'),
454
- meterbookoptions: [], // 抄表册选项
455
- opteratormetrbook: false, // 抄表册操作
456
- oldrow: [],
457
- isiot: true,
458
- finalDate: ''
459
- }
460
- },
461
- props: ['f_filialeid', 'meter', 'isdecimal', 'valid', 'f_userinfo_id'],
462
- ready () {
463
- console.log('看看meter里面的数据', this.meter, this.row)
464
- console.log('--------------====================', this.meter.f_aroundmeter, this.row.f_aroundmeter)
465
- this.row = Object.assign(this.row, this.meter, {})
466
- this.oldrow = this.row
467
- this.isdecimal = this.row.gasbrand.length > 0 ? this.row.gasbrand.f_isdecimal : '否'
468
- this.row.valid = false
469
- if (this.row.pricetype === '混合气价') {
470
- this.ratioshow = true
471
- }
472
- co(meterBookGen(this))
473
- if (this.row.f_gas_date == null || this.row.f_gas_date == '') {
474
- this.row.f_gas_date = Util.toStandardTimeString()
475
- }
476
- if (this.row.f_install_date == null || this.row.f_install_date == '') {
477
- this.row.f_install_date = Util.toStandardTimeString()
478
- this.f_install_date = Util.toStandardTimeString()
479
- } else {
480
- this.f_install_date = this.row.f_install_date
481
- }
482
- this.getbfrq()
483
- this.updatayear(this.f_install_date)
484
- this.getRisers()
485
- },
486
- methods: {
487
- usetypechange(){
488
- //如果选择壁挂锅炉
489
- let usertype = '';
490
- if( this.meter.f_usetype instanceof Array){
491
- usertype = this.meter.f_usetype.length>0? this.meter.f_usetype[0]:''
492
- }else{
493
- usertype = this.meter.f_usetype? this.meter.f_usetype:''
494
- }
495
- if(usertype == '是'){
496
- this.$showAlert('请进行添加用气设备!','warning',3000);
497
- }
498
- },
499
- getbfrq(){
500
- this.bfrq=this.row.gasmodel.length>0?(this.$appdata.getSingleValue(this.row.gasmodel[0].f_type)?this.$appdata.getSingleValue(this.row.gasmodel[0].f_type):10 ) : 10
501
- this.updatayear(this.f_install_date)
502
- },
503
- getRisers(){
504
- console.log("看看选中的调压箱",this.row.f_adjustable[0])
505
- this.f_riser_code=null
506
- this.risers=[]
507
- if(this.row.f_adjustable[0]){
508
- this.risers=this.row.f_adjustable[0].risers
509
- }
510
- },
511
- async confirmUserfiles () {
512
- if (this.$refs.addparamlist.confirm()) {
513
- var paramlist = this.$refs.addparamlist.addGasParameter
514
- await this.$resetpost('rs/logic/updateGasParam', {
515
- data: {
516
- id: this.selectUserFiles.f_user_id,
517
- paramlist: paramlist,
518
- gastype: 'userfiles'
519
- }
520
- }, {resolveMsg: '更新成功', rejectMsg: '更新失败'})
521
- this.showParame = false
522
- }
523
- },
524
-
525
- priceChange (val) {
526
- if (val.length > 0) {
527
- this.row.f_user_type = [val[0].f_user_type]
528
- this.row.f_gasproperties = [val[0].f_gasproperties]
529
- this.row.pricetype = val[0].f_price_type
530
- // 展示气价备注
531
- this.$set('row.f_price_comments', val[0].f_comments ? val[0].f_comments : '无')
532
- // 展示价格明细
533
- if (val[0].detailprice) {
534
- // this.row.f_detailprice = this.$CommonService.getShowPriceDetail(val[0].detailprice)
535
- this.$set('row.f_detailprice', this.$CommonService.getShowPriceDetail(val[0].detailprice))
536
- }
537
- }
538
- },
539
- cancel () {
540
- this.gasid = ''
541
- this.userfileid = ''
542
- this.showParame = false
543
- },
544
- tablebaseChange () {
545
- if (this.isdecimal === '是') {
546
- this.$set('row.f_meter_base', (this.row.f_meter_base - 0).toFixed(4))
547
- } else {
548
- this.$set('row.f_meter_base', (this.row.f_meter_base - 0).toFixed(0))
549
- }
550
- },
551
- brandChange (val) {
552
- this.isdecimal = val.length > 0 ? val[0].f_isdecimal : '否'
553
- console.log('sadasfasf', val)
554
- if (val.length > 0 && val[0].f_meter_type === '物联网表') {
555
- this.isiot = true
556
- } else {
557
- this.isiot = false
558
- }
559
- // this.tablebaseChange()
560
- if (this.row.f_user_id) {
561
- co(brandChangeGen(this))
562
- }
563
- this.meternumberValidate()
564
- },
565
- userTypeChange () {
566
- this.gasproperties = []
567
- if (this.row.f_user_type.length === 1) {
568
- this.gasproperties = this.$appdata.getParam(this.row.f_user_type[0])
569
- }
570
- },
571
- // getPricenames(pricetype) {
572
- // console.log('气价。,。。', pricetype, this.row.f_user_type, this.row.f_gasproperties)
573
- // let rs = []
574
- // if (this.row.f_user_type.length === 1 && this.row.f_gasproperties.length === 1 && pricetype.length === 1) {
575
- // let params = {
576
- // f_user_type: this.row.f_user_type[0],
577
- // f_gasproperties: this.row.f_gasproperties[0],
578
- // f_price_type: pricetype[0],
579
- // filter: this.f_filialeid
580
- // }
581
- // rs = this.$GetSaleParam.getPrice(params)
582
- // }
583
- // if (rs.length === 0) {
584
- // this.row.f_price_name = ''
585
- // }
586
- // return rs
587
- // },
588
- mValid (bool) {
589
- this.row.valid = bool
590
- this.$dispatch('self-valid')
591
- },
592
- // 带权限修改单值返回修改后得值和修改原因
593
- modefiy (field) {
594
- this.show = true
595
- this.field = field
596
- },
597
- async meternumberValidate () {
598
- let http1 = new HttpResetClass()
599
- let res1 = await http1.load('POST', '/rs/sql/getBrandAndType', {data: {condition: ` mi.f_meternumber = '${this.row.f_meternumber}'`}}, {resolveMsg: null, rejectMsg: '获取默认气表品牌型号失败!!'})
600
- if (res1.data.length > 0) {
601
- // 替换表号自带的气表品牌和型号
602
- let meterbrands = this.meterbrands
603
- for (let row of meterbrands) {
604
- if (row.label == res1.data[0].f_meter_brand) {
605
- // 已经选择了气表品牌则不再替换
606
- if (this.row.gasbrand.length <= 0) this.row.gasbrand = [row.value]
607
- // 替换气表型号
608
- if (res1.data[0].f_meter_style) {
609
- for (let model of row.value.gasmodel) {
610
- if (model.label == res1.data[0].f_meter_style) {
611
- // 已经选择了气表型号则不再替换
612
- if (this.row.gasmodel.length <= 0) this.row.gasmodel = [model.value]
613
- continue
614
- }
615
- }
616
- }
617
- continue
618
- }
619
- }
620
- // 有一条或多条气表型号。此时给气表品牌赋值,给机表型号添加选择框
621
- // this.$refs.paged.$refs.cri.model.f_userinfo_code = newVal
622
- // this.row.f_meter_brand = this.row.f_meter_brand ? this.row.f_meter_brand : res1.data[0].f_meter_brand
623
- // this.row.f_gasbrand_id = this.row.f_gasbrand_id ? this.row.f_gasbrand_id : res1.data[0].brandid
624
- // let model = [
625
- // {
626
- // label: res1.data[0].f_meter_style,
627
- // value: {
628
- // f_meter_classify: res1.data[0].f_meter_classify,
629
- // f_meter_style: res1.data[0].f_meter_style,
630
- // id: res1.data[0].modelid,
631
- // f_gasbrand_id: res1.data[0].brandid
632
- // }
633
- // }
634
- // ]
635
- // this.row.gasbrand = this.row.gasbrand.length > 0 ? this.row.gasbrand : [{
636
- // f_meter_brand: res1.data[0].f_meter_brand,
637
- // id: res1.data[0].brandid,
638
- // gasmodel: model,
639
- // f_meter_type: res1.data[0].f_meter_classify
640
- // }]
641
- // let model2 = [
642
- // {
643
- // f_meter_style: res1.data[0].f_meter_style,
644
- // id: res1.data[0].modelid,
645
- // f_gasbrand_id: res1.data[0].brandid
646
- // }
647
- // ]
648
- // this.row.f_gasmodel_id = this.row.f_gasmodel_id ? this.row.f_gasmodel_id : res1.data[0].modelid
649
- // this.row.gasmodel = this.row.gasmodel.length > 0 ? this.row.gasmodel : model2
650
- // this.row.f_meter_classify = this.row.f_meter_classify ? this.row.f_meter_classify : res1.data[0].f_meter_classify
651
- }
652
- if (this.row.f_meternumber && this.row.gasbrand.length > 0) {
653
- // 表号位数验证
654
- let meternumberLen = this.row.gasbrand[0].f_meternumber_len
655
- if (meternumberLen) {
656
- if (this.row.f_meternumber.length != meternumberLen) {
657
- this.row.f_meternumber = ''
658
- this.$showAlert(`表号位数不正确, 当前气表品牌表号位数是: ${meternumberLen}`, 'warning', 3000)
659
- return
660
- }
661
- }
662
- // 表计信息验证
663
- if (this.row.gasbrand[0].f_meterverification == '是') {
664
- if (res1.data.length <= 0) {
665
- this.$showAlert(`当前表号: ${this.row.f_meternumber}在表计信息中无记录, 请核实!!!`, 'warning', 3000)
666
- this.row.f_meternumber = ''
667
- return
668
- }
669
- }
670
- let param = {
671
- f_meternumber: this.row.f_meternumber,
672
- f_gasbrand_id: this.row.gasbrand[0].id
673
- }
674
- if (this.row.f_userfiles_id) {
675
- param.f_userfiles_id = this.row.f_userfiles_id
676
- }
677
- let res = await this.$resetpost('rs/logic/meternumberValidate', param, {
678
- resolveMsg: null,
679
- rejectMsg: '表号验证失败!!'
680
- })
681
- console.log('标号验证返回:', res)
682
- if (this.row.gasbrand[0].f_meter_type === '物联网表') {
683
- if (res.data) {
684
- this.row.f_meternumber = ''
685
- this.$showAlert('表号已存在!!', 'warning', 3000)
686
- }
687
- } else {
688
- if (res.data) {
689
- this.$showAlert('请注意,相同的表号已存在', 'warning', 3000)
690
- }
691
- }
692
- }
693
- },
694
- updatayear (data) {
695
- const today = new Date(data)
696
- const year = today.getFullYear()
697
- const month = today.getMonth()
698
- const day = today.getDate()
699
- const date = new Date((year-0) +(this.bfrq-0), month, day)
700
- this.finalDate = date.toLocaleDateString()
701
- console.log('898989898', this.finalDate)
702
- this.row.f_scrap_date = this.finalDate
703
- this.f_scrap_date = this.finalDate
704
- console.log('898989898', this.row.f_scrap_date)
705
- }
706
- },
707
- watch: {
708
- 'meter' () {
709
- this.row = Object.assign(this.row, this.meter, {})
710
- this.isdecimal = this.row.gasbrand.f_isdecimal
711
- this.row.valid = false
712
- this.showtype = this.row.gasbrand.f_meter_type
713
- console.log('11111111111111111111111111')
714
- this.f_install_date = this.row.f_install_date
715
- },
716
- 'f_install_date' (val) {
717
- console.log('222222222222', val)
718
- this.row.f_install_date = val
719
- this.updatayear(val)
720
- },
721
- 'row.f_scrap_date' (val) {
722
- console.log('45454545')
723
- this.row.f_scrap_date = val
724
- console.log('45454545', this.row.f_scrap_date, val)
725
- },
726
- 'finalDate' () {
727
- console.log('45454545666')
728
- this.row.f_scrap_date = this.finalDate
729
- },
730
- 'row.pricetype' (val) {
731
- if (val == '混合气价') {
732
- this.ratioshow = true
733
- } else {
734
- this.ratioshow = false
735
- }
736
- },
737
- 'this.row.gasbrand'(val){
738
- console.log("赋值赋值!!",val)
739
- }
740
-
741
- },
742
- computed: {
743
-
744
- // 控制用户类型修改
745
- permissionUserType () {
746
- let res = false
747
- if (this.row.f_user_id) {
748
- res = !(this.jurisdiction.includes('民用气价修改') && this.jurisdiction.includes('非民用气价修改'))
749
- }
750
- return res
751
- },
752
-
753
- // 控制用气性质,气价类型,气价名称修改
754
- permissionPrice () {
755
- let res = false
756
- if (this.row.f_user_id) {
757
- console.log('获取权限、', this.row, this.jurisdiction)
758
- // 变更操作
759
- if (this.row.pricename.length > 0) {
760
- if (this.row.f_user_type[0] === '民用') {
761
- // 判断是否有民用气价权限
762
- res = !this.jurisdiction.includes('民用气价修改')
763
- } else if (this.row.f_user_type[0] === '非民用') {
764
- // 判断是否有非民用气价权限
765
- res = !this.jurisdiction.includes('非民用气价修改')
766
- }
767
- }
768
- }
769
- console.log('有无气价权限', res)
770
- return res
771
- },
772
-
773
- getPricenames () {
774
- let f_filialeid = this.f_filialeid
775
- let result = []
776
- this.$GetSaleParam.prices.forEach((item) => {
777
- if (item.f_state === '有效') {
778
- let value = {
779
- label: item.f_price_name,
780
- value: item
781
- }
782
- result.push(value)
783
- }
784
- })
785
- return Array.from(new Set(result))
786
- },
787
-
788
- adjustables () {
789
- let arr = []
790
- let filter = this.f_filialeid
791
- this.$GetSaleParam.getAdjustable(filter).forEach((item) => {
792
- let temp = {}
793
- temp.label = `[${item.value.f_adjustable_id}]-${item.label}`
794
- temp.value = item.value
795
- arr.push(temp)
796
- })
797
- return [{label: '全部', value: ''}, ...arr]
798
- },
799
- inputtores () {
800
- // return this.$login.f.f_gasman
801
- let rs = new Array()
802
- for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
803
- let temp = {
804
- label: this.$login.f.f_gasman[i].name,
805
- value: this.$login.f.f_gasman[i].name
806
- }
807
- rs.push(temp)
808
- }
809
- return rs
810
- },
811
- installperson () {
812
- // return this.$login.f.f_installman
813
- let rs = new Array()
814
- for (let i = 0; i < this.$login.f.f_installman.length; i++) {
815
- let temp = {
816
- label: this.$login.f.f_installman[i].name,
817
- value: this.$login.f.f_installman[i].name
818
- }
819
- rs.push(temp)
820
- }
821
- return rs
822
- },
823
- meterbrands () {
824
- return this.$GetSaleParam.getGasbrand()
825
- },
826
- aroundmeters () {
827
- return this.$appdata.getParam('左右表')
828
- },
829
- positions () {
830
- return this.$appdata.getParam('安装位置')
831
- },
832
- usetype () {
833
- return [{label:'是',value:'是'},{label:'否',value:'否'}]
834
- },
835
- usestate () {
836
- return this.$appdata.getParam('使用状态')
837
- },
838
- gongyetype () {
839
- return this.$appdata.getParam('工业备注')
840
- },
841
- userfilesaddress () {
842
- return this.$appdata.getParam('场站')
843
- },
844
- gcfs () {
845
- return this.$appdata.getParam('供气方式')
846
- }
847
- }
848
- }
849
- </script>
850
- <style lang="less">
851
- #meterInfoTest{
852
- #addboxmap {
853
- height: 300px;
854
- }
855
- .glyphicon-map-marker:hover {
856
- color: red;
857
- }
858
- .glyphicon-map-marker {
859
- color: blue;
860
- cursor: pointer;
861
- }
862
- .col-sm-4 {
863
- .font_normal_body {
864
- width: 73px;
865
- overflow: auto;
866
- white-space: nowrap;
867
- // 指滚动条两边的按钮
868
- &::-webkit-scrollbar-button {
869
- display: none;
870
- }
871
- // 滚动条的宽度
872
- &::-webkit-scrollbar {
873
- width: 5px !important;
874
- height: 5px !important;
875
- }
876
- // 滚动条的设置
877
- &::-webkit-scrollbar-thumb {
878
- background-color: #ddd;
879
- background-clip: padding-box;
880
- }
881
- &::-webkit-scrollbar-thumb:hover {
882
- background-color: #bbb;
883
- }
884
- &::-webkit-scrollbar-track {
885
- /*滚动条里面轨道*/
886
- box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
887
- background: #ededed;
888
- }
889
- }
890
- }
891
- }
892
- </style>
1
+ <template>
2
+ <div class="auto" id="meterInfoTest">
3
+ <validator name='m' @valid="mValid(true)" @invalid="mValid(false)">
4
+ <form class="form-horizontal select-overspread ">
5
+ <div class="row">
6
+ <div class="col-sm-4 form-group" v-if="isiot" :class="[$m.f_meternumber.required ? 'has-error' : '']">
7
+ <label for="f_meternumber" class="font_normal_body">*表&emsp;&emsp;号</label>
8
+ <input type="text" class="input_search" style="width:60%" v-model="row.f_meternumber"
9
+ @blur="meternumberValidate()" placeholder='表号' v-validate:f_meternumber='{required: true }'
10
+ v-el:meternumber v-next-el="metertitles">
11
+ </div>
12
+ <div class="col-sm-4 form-group" v-else>
13
+ <label for="f_meternumber" class="font_normal_body">&ensp;表&emsp;&emsp;号</label>
14
+ <input type="text" class="input_search" style="width:60%" v-model="row.f_meternumber"
15
+ @blur="meternumberValidate()" placeholder='表号'
16
+ v-el:meternumber v-next-el="metertitles">
17
+ </div>
18
+ <div class="col-sm-4 form-group">
19
+ <label for="f_metertitles" class="font_normal_body">&ensp;表&ensp;封&ensp;号</label>
20
+ <input type="text" class="input_search" style="width:60%" v-model="row.f_metertitles" placeholder='表封号'
21
+ v-el:metertitles v-next-el="meterbase">
22
+ </div>
23
+ <div class="col-sm-4 form-group">
24
+ <label for="f_meter_base" class="font_normal_body">&ensp;表&ensp;读&ensp;数</label>
25
+ <input type="number" class="input_search" style="width:60%" v-model="row.f_meter_base" placeholder='表底数'
26
+ :disabled="!jurisdiction.includes('档案信息查询修改')" :readonly="!row.f_userfiles_id" v-el:meterbase v-next-el="initialbase">
27
+ </div>
28
+ <div class="col-sm-4 form-group">
29
+ <label for="f_meter_base" class="font_normal_body">&ensp;初始底数</label>
30
+ <input type="number" class="input_search" style="width:60%" v-model="row.f_initial_base" placeholder='表底数'
31
+ :disabled="!jurisdiction.includes('档案信息查询修改')" v-el:initialbase v-next-el="detailprice">
32
+ </div>
33
+
34
+ <div class="col-sm-4 form-group" :class="[$m.brand.required ? 'has-error' : '']">
35
+ <label for="gasbrand" class="font_normal_body">*气表品牌</label>
36
+ <input type="text" class="input_search" style="width:60%" v-show="false" v-model="$refs.brand.selectedItems"
37
+ v-validate:brand='{required: true }'>
38
+ <v-select :value.sync="row.gasbrand" :options='meterbrands' placeholder='气表品牌' close-on-select
39
+ search @change='brandChange' v-model='row.gasbrand' v-ref:brand></v-select>
40
+ </div>
41
+ <div class="col-sm-4 form-group" :class="[$m.model.required ? 'has-error' : '']">
42
+ <label for="gasmodel" class="font_normal_body">*气表型号</label>
43
+ <input type="text" v-show="false" v-model="$refs.model.selectedItems"
44
+ v-validate:model='{required: true }'>
45
+ <v-select :value.sync="row.gasmodel" :options='row.gasbrand[0].gasmodel' placeholder='气表型号'
46
+ close-on-select @change="getbfrq()"
47
+ v-model='row.gasmodel' :disabled='row.gasbrand.length === 0 ' v-ref:model></v-select>
48
+ </div>
49
+ <div class="col-sm-4 form-group" v-if="row.gasbrand.length>0?(row.gasbrand[0].f_meter_brand.indexOf('莱德远传')>-1?true:false):false" :class="[$m.f_barcode.required ? 'has-error' : '']">
50
+ <label for="f_meternumber" class="font_normal_body">*条&ensp;码&ensp;号</label>
51
+ <input type="text" class="input_search" style="width:60%" v-model="row.f_barcode"
52
+ placeholder='条码号' v-validate:f_barcode='{required: true }'
53
+ v-el:f_barcode>
54
+ </div>
55
+ <div class="col-sm-4 form-group" v-else>
56
+ <label for="f_meternumber" class="font_normal_body">&ensp;条&ensp;码&ensp;号</label>
57
+ <input type="text" class="input_search" style="width:60%" v-model="row.f_barcode"
58
+ placeholder='条码号'
59
+ v-el:f_barcode>
60
+ </div>
61
+
62
+
63
+
64
+ <div class="col-sm-4 form-group" v-if="row.gasbrand[0].f_alias ==='XianFengCollector'" :class="[$m.f_concentrator_id.required ? 'has-error' : '']">
65
+ <label for="f_concentrator_id" class="font_normal_body">*采集器号</label>
66
+ <input type="text" class="input_search" style="width:60%" v-model="row.f_concentrator_id"
67
+ placeholder='采集器号' v-validate:f_concentrator_id='{required: true }'
68
+ v-el:f_concentrator_id>
69
+ </div>
70
+ <div class="col-sm-4 form-group" :class="[$m.name.required ? 'has-error' : '']">
71
+ <label for="pricename" class="font_normal_body">*气价名称</label>
72
+ <v-select :value.sync="row.pricename" v-model="row.pricename" search
73
+ placeholder='气价名称' :options="getPricenames" @change="priceChange"
74
+ close-on-select :disabled="permissionPrice" v-ref:name></v-select>
75
+ <input type="text" v-show="false" v-model="$refs.name.selectedItems" v-validate:name='{required: true }'>
76
+ </div>
77
+ <div class="col-sm-4 form-group">
78
+ <label for="f_username" class="font_normal_body">&ensp;客户类型</label>
79
+ <v-select :value.sync="row.f_user_type"
80
+ :options='usertypes' placeholder='客户类型'
81
+ @change="userTypeChange()"
82
+ :disabled="true"
83
+ close-on-select></v-select>
84
+ </div>
85
+ <div class="col-sm-4 form-group"
86
+ :class="[$m.gas.required ? 'select-error' : '']">
87
+ <label for="f_username" class="font_normal_body">&ensp;用气性质</label>
88
+ <input type="text" v-show="false" v-model="$refs.gas.selectedItems" v-validate:gas='{required: true }'>
89
+ <v-select :value.sync="row.f_gasproperties" v-model="row.f_gasproperties"
90
+ :options='gasproperties' placeholder='用气性质'
91
+ :disabled="true"
92
+ close-on-select v-ref:gas></v-select>
93
+ </div>
94
+ <div class="col-sm-4 form-group"
95
+ :class="[$m.second.required ? 'select-error' : '']">
96
+ <label for="f_gasproperties_second" class="font_normal_body" title="二级用气性质">二级用气性质</label>
97
+ <input type="text" v-show="false" v-model="$refs.second.selectedItems" v-validate:second='{required: true }'>
98
+ <v-select :value.sync="row.f_gasproperties_second" v-model="row.f_gasproperties_second"
99
+ :options='row.f_gasproperties?(this.$appdata.getParam(row.f_gasproperties)?this.$appdata.getParam(row.f_gasproperties):[]):[]' placeholder='二级用气性质'
100
+ close-on-select v-ref:second></v-select>
101
+ </div>
102
+ <div class="col-sm-4 form-group" v-show="row.f_gasproperties=='工业'||row.f_gasproperties=='工业用气'">
103
+ <label for="f_gongye_type" class="font_normal_body" title="参数:工业备注">&ensp;工业备注</label>
104
+ <v-select :value.sync="row.f_gongye_type" v-model='row.f_gongye_type'
105
+ :options='gongyetype' placeholder='工业备注'
106
+ close-on-select
107
+ v-el:cc></v-select>
108
+ </div>
109
+ <div class="col-sm-4 form-group">
110
+ <label for="f_detailprice" class="font_normal_body">&ensp;价&emsp;&emsp;格</label>
111
+ <input type="text" class="input_search" style="width:60%" v-model="row.f_detailprice" placeholder='价格'
112
+ disabled v-el:detailprice v-next-el="pricecomments">
113
+ </div>
114
+ <div class="col-sm-4 form-group" :class="[$m.type.required ? 'select-error' : '']">
115
+ <label for="pricetype" class="font_normal_body">&ensp;气价类型</label>
116
+ <v-select :value.sync="row.pricetype" v-model="row.pricetype"
117
+ placeholder='气价类型' :options="pricetypes"
118
+ :value-single="true"
119
+ :disabled="true"
120
+ close-on-select v-ref:type>
121
+ </v-select>
122
+ <input type="text" v-show="false" v-model="$refs.type.selectedItems" v-validate:type='{required: true }'>
123
+ </div>
124
+ <div class="col-sm-4 form-group">
125
+ <label class="font_normal_body">&ensp;气价备注</label>
126
+ <input type="text" class="input_search" style="width:60%" v-model="row.f_price_comments" placeholder='气价备注' disabled
127
+ v-el:pricecomments v-next-el="meterbase">
128
+ </div>
129
+
130
+ <div class="col-sm-4 form-group">
131
+ <label for="f_meter_base" class="font_normal_body">&ensp;累购气量</label>
132
+ <input type="number" class="input_search" style="width:60%" v-model="row.f_total_gas" placeholder='累购气量'
133
+ :disabled="!jurisdiction.includes('档案信息查询修改')"
134
+ v-el:meterbase v-next-el="totalfee">
135
+ </div>
136
+
137
+ <div class="col-sm-4 form-group">
138
+ <label for="f_meter_base" class="font_normal_body">&ensp;累购金额</label>
139
+ <input type="number" class="input_search" style="width:60%" v-model="row.f_total_fee" placeholder='累购金额'
140
+ :disabled="!jurisdiction.includes('档案信息查询修改')" v-el:totalfee v-next-el="times">
141
+ </div>
142
+ <div class="col-sm-4 form-group" v-show="row.f_meter_classify != '机表'">
143
+ <label for="f_times" class="font_normal_body">&ensp;写卡次数</label>
144
+ <input type="number" class="input_search" style="width:60%" v-model="row.f_times" placeholder='写卡次数'
145
+ :disabled="!jurisdiction.includes('档案信息查询修改')"
146
+ v-el:times v-next-el="gasperson">
147
+ </div>
148
+ <div class="col-sm-4 form-group" :class="[$m.aroundmeter.required ? 'has-error' : '']">
149
+ <label class="font_normal_body">&ensp;表&ensp;&ensp;&ensp;&ensp;向</label>
150
+ <input type="text" v-show="false" v-model="$refs.aroundmeter.selectedItems" v-validate:aroundmeter='{required: true }'>
151
+ <v-select :value.sync="row.f_aroundmeter" v-model="row.f_aroundmeter"
152
+ :options='aroundmeters' placeholder='左右表'
153
+ close-on-select v-ref:aroundmeter></v-select>
154
+ </div>
155
+ <div class="col-sm-4 form-group">
156
+ <label for="f_gas_person" class="font_normal_body">&ensp;通&ensp;气&ensp;人</label>
157
+ <input type="text" class="input_search" style="width:60%" style="width:60%" v-model="row.f_gas_person"
158
+ placeholder='通气人' v-el:gasperson v-next-el="limitsms"></input>
159
+ <!-- <v-select :value.sync="row.f_gas_person" v-model="row.f_gas_person"
160
+ :options='gasperson' placeholder='通气人'
161
+ close-on-select></v-select> -->
162
+ </div>
163
+ <div class="col-sm-4 form-group" :class="[$m.f_gas_date.required ? 'has-error' : '']">
164
+ <input type="text" v-model="$refs.f_gas_date.value" v-show="false" v-validate:f_gas_date='{required: true }'>
165
+ <label for="f_gas_date" class="font_normal_body">&ensp;通气日期</label>
166
+ <datepicker style="width:60%" placeholder="通气日期"
167
+ v-model="row.f_gas_date"
168
+ v-ref:f_gas_date
169
+ :value.sync="row.f_gas_date"
170
+ :format="'yyyy-MM-dd HH:mm:ss'"
171
+ :show-reset-button="reset"
172
+ ></datepicker>
173
+ </div>
174
+ <div class="col-sm-4 form-group" :class="[$m.f_gas_date.required ? 'has-error' : '']">
175
+ <label for="f_gas_date" class="font_normal_body" title="参数:供气方式">&ensp;供气方式</label>
176
+ <v-select :value.sync="row.f_feed_method" :options='feedmethod' placeholder='供气方式' close-on-select
177
+ :value-single="true"
178
+ v-model='row.f_feed_method'></v-select>
179
+ </div>
180
+
181
+ <div class="col-sm-4 form-group" >
182
+ <label for="f_position" class="font_normal_body" title="参数:安装位置">&ensp;安装位置</label>
183
+ <v-select :value.sync="row.f_position" v-model="row.f_position"
184
+ :options='positions' placeholder='安装位置'
185
+ close-on-select></v-select>
186
+ </div>
187
+ <div class="col-sm-4 form-group" v-show="false">
188
+ <label for="f_remanent_gas" class="font_normal_body">剩余气量</label>
189
+ <input type="number" class="input_search" style="width:60%" v-model="row.f_remanent_gas"
190
+ placeholder='剩余气量'
191
+ :disabled="f_userinfo_id"></input>
192
+ <!--<button type="button" name="button" class="btn btn-link" @click="modefiy('f_remanent_gas')" v-if="f_userinfo_id">修改</button>-->
193
+ </div>
194
+ <div class="col-sm-4 form-group" v-show="true">
195
+ <label for="f_install_person" class="font_normal_body">&ensp;安&ensp;装&ensp;人</label>
196
+ <v-select :value.sync="row.f_install_person" v-model="row.f_install_person"
197
+ :options='installperson' placeholder='安装人'
198
+ close-on-select></v-select>
199
+ </div>
200
+ <div class="col-sm-4 form-group">
201
+ <label for="f_subscribe_date" class="font_normal_body">&ensp;预约时间</label>
202
+ <datepicker style="width:60%" placeholder="预约通气时间"
203
+ v-model="row.f_subscribe_date"
204
+ :value.sync="row.f_subscribe_date"
205
+ :format="'yyyy-MM-dd HH:mm:ss'"
206
+ ></datepicker>
207
+ </div>
208
+ <div class="col-sm-4 form-group" v-show="opteratormetrbook" >
209
+ <label for="f_position" class="font_normal_body" >&ensp;抄&ensp;表&ensp;册</label>
210
+ <v-select :value.sync="row.f_meter_book_num" v-model="row.f_meter_book_num"
211
+ :value-single="true"
212
+ :options='meterbookoptions' placeholder='抄表册'
213
+ close-on-select></v-select>
214
+ </div>
215
+ <div class="col-sm-4 form-group" v-show="true" :class="[$m.f_install_date.required ? 'has-error' : '']">
216
+ <input type="text" v-model="$refs.f_install_date.value" v-show="false" v-validate:f_install_date='{required: true }'>
217
+ <label for="f_install_date" class="font_normal_body">&ensp;安装日期</label>
218
+ <datepicker style="width:60%" id="startDate" placeholder="安装日期" width='100%'
219
+ v-model="f_install_date"
220
+ :value.sync="f_install_date"
221
+ class="datepicker"
222
+ v-ref:f_install_date
223
+ @updatayear="updatayear"
224
+ :format="'yyyy-MM-dd HH:mm:ss'"
225
+ :show-reset-button="true">
226
+ </datepicker>
227
+ </div>
228
+ <div class="col-sm-4 form-group">
229
+ <label for="f_adjustable" class="font_normal_body">&ensp;调&ensp;压&ensp;箱</label>
230
+ <v-select :value.sync="row.f_adjustable" :options='adjustables' placeholder='调压箱' close-on-select
231
+ @change="getRisers()"
232
+ v-model='row.f_adjustable' :search='true'></v-select>
233
+ </div>
234
+ <div class="col-sm-4 form-group">
235
+ <label for="f_adjustable" class="font_normal_body">&ensp;立管编号</label>
236
+ <v-select :value.sync="row.f_riser_code" :options='risers' placeholder='立管编号' close-on-select
237
+ :value-single="true"
238
+ v-model='row.f_riser_code' :search='true'></v-select>
239
+ </div>
240
+ <div class="col-sm-4 form-group">
241
+ <label for="f_hand_date" class="font_normal_body">&ensp;上次抄表</label>
242
+ <datepicker style="width:60%" id="f_hand_date" placeholder="上次抄表日期"
243
+ v-model="row.f_hand_date"
244
+ :value.sync="row.f_hand_date"
245
+ class="datepicker"
246
+ :format="'yyyy-MM-dd HH:mm:ss'"
247
+ :show-reset-button="true">
248
+ </datepicker>
249
+ </div>
250
+ <div v-if="ratioshow" class="col-sm-4 form-group"
251
+ :class="[$m.meternumber.required ? 'has-error' : '']">
252
+ <label for="f_ratio" class="font_normal_body">比&emsp;&emsp;率</label>
253
+ <input type="number" class="input_search" style="width:60%" v-model="row.f_price_ratio"
254
+ :value.sync="row.f_price_ratio"
255
+ v-validate:meternumber='{required: true }' placeholder='比率'>
256
+ </div>
257
+ <div class="col-sm-4 form-group" >
258
+ <label for="f_scrap_date" class="font_normal_body">&ensp;报废日期</label>
259
+ <datepicker style="width:60%" id="ScrapDate" placeholder="报废日期" width='100%'
260
+ :v-model="f_scrap_date"
261
+ :value.sync="f_scrap_date"
262
+ class="datepicker"
263
+ :format="'yyyy-MM-dd'"
264
+ :show-reset-button="true">
265
+ </datepicker>
266
+ </div>
267
+ <div class="col-sm-4 form-group" v-show="row.f_meter_classify == '物联网表'">
268
+ <label for="gasmodel" class="font_normal_body">&ensp;阀门状态</label>
269
+ <v-select :value.sync="row.f_valve_state" :options='valvestate' placeholder='阀门状态' close-on-select
270
+ v-model='row.f_valve_state'></v-select>
271
+ </div>
272
+ <div class="col-sm-4 form-group" :class="[$m.f_open_way.required ? 'has-error' : '']" v-if="row.gasbrand.length > 0 && row.gasbrand[0].f_meter_type == '物联网表' && row.gasbrand[0].f_hascard == '是'">
273
+ <label class="font_normal_body" title="开户方式">开户方式</label>
274
+ <input type="text" v-model="row.f_open_way" v-show="false" v-validate:f_open_way='{required: true }'>
275
+ <v-select :value.sync="row.f_open_way" :options='openWay' value-single placeholder='开户方式' close-on-select v-if="row.f_userfiles_id"
276
+ search v-model='row.f_open_way' :disabled="true"></v-select>
277
+ <v-select :value.sync="row.f_open_way" :options='openWay' value-single placeholder='开户方式' close-on-select v-else
278
+ search v-model='row.f_open_way' :disabled="false"></v-select>
279
+ </div>
280
+
281
+ <div class="col-sm-4 form-group">
282
+ <label for="gasmodel" class="font_normal_body">&ensp;垃&ensp;圾&ensp;费</label>
283
+ <v-select :value.sync="row.f_garbage_fee" :options='garbagefee' placeholder='垃圾费' close-on-select
284
+ :value-single="true"
285
+ v-model='row.f_garbage_fee'></v-select>
286
+ </div>
287
+ <div class="col-sm-4 form-group">
288
+ <label class="font_normal_body">&ensp;抄&ensp;表&ensp;员</label>
289
+ <v-select :value.sync="row.f_inputtor" v-model='row.f_inputtor'
290
+ style="width:60%"
291
+ :options='inputtores' placeholder='抄表员'
292
+ close-on-select
293
+ condition="f_inputtor like '%{}%'" v-el:cc></v-select>
294
+ </div>
295
+ <div class="col-sm-4 form-group" >
296
+ <label for="f_usetype" class="font_normal_body" title="参数:使用类型">&ensp;壁&nbsp;挂&nbsp;炉&nbsp;</label>
297
+ <v-select :value.sync="row.f_usetype" v-model="row.f_usetype"
298
+ :options='usetype' placeholder='使用类型' @change="usetypechange"
299
+ close-on-select></v-select>
300
+ </div>
301
+ <div class="col-sm-4 form-group" >
302
+ <label for="f_position" class="font_normal_body" title="参数:使用状态">&ensp;使用状态</label>
303
+ <v-select :value.sync="row.f_usestate" v-model="row.f_usestate"
304
+ :options='usestate' placeholder='使用状态'
305
+ close-on-select></v-select>
306
+ </div>
307
+ <div class="col-sm-4 form-group" >
308
+ <label for="f_limit_sms" class="font_normal_body">&ensp;短信限定</label>
309
+ <input type="text" class="input_search" style="width:60%" style="width:60%" v-model="row.f_limit_sms"
310
+ placeholder='短信限定' v-el:limitsms v-next-el="alarmcode"></input>
311
+ </div>
312
+ <div style="" class="col-sm-4 form-group">
313
+ <label for="f_alarm_code" class="font_normal_body ">&ensp;报警器号</label>
314
+ <input type="text" class="input_search" style="width:60%" v-model="row.f_alarm_code" placeholder='报警器号'
315
+ v-el:alarmcode v-next-el="address"/>
316
+ </div>
317
+ <div style="" class="col-sm-4 form-group">
318
+ <label for="f_hand_month" class="font_normal_body ">&ensp;抄表月份</label>
319
+ <v-select :value.sync="row.f_hand_month" v-model="row.f_hand_month"
320
+ :options='handmonth' placeholder='抄表月份'
321
+ close-on-select></v-select>
322
+ </div>
323
+ <div style="" class="col-sm-4 form-group" v-show="false">
324
+ <label for="f_riser_shaft" class="font_normal_body ">&ensp;立管阀井</label>
325
+ <v-select :value.sync="row.f_riser_shaft" v-model="row.f_riser_shaft"
326
+ :options='risershaft' placeholder='立管阀井'
327
+ close-on-select></v-select>
328
+ </div>
329
+ <div style="" class="col-sm-8 form-group">
330
+ <label for="f_userfiles_address" class="font_normal_body ">&ensp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;场站</label>
331
+ <v-select :value.sync="row.f_userfiles_address" v-model="row.f_userfiles_address"
332
+ :options='userfilesaddress' placeholder='场站'
333
+ close-on-select></v-select>
334
+ </div>
335
+ <div class="col-sm-4 form-group" v-show="false">
336
+ <input type="text" v-model="$refs.f_survey_date.value" v-show="false" >
337
+ <label for="f_gas_date" class="font_normal_body">&ensp;检验日期</label>
338
+ <datepicker style="width:60%" placeholder="检验日期"
339
+ v-model="row.f_survey_date"
340
+ v-ref:f_survey_date
341
+ :value.sync="row.f_survey_date"
342
+ :format="'yyyy-MM-dd HH:mm:ss'"
343
+ :show-reset-button="reset"
344
+ ></datepicker>
345
+ </div>
346
+ </div>
347
+ </form>
348
+ </validator>
349
+ <!--<idverify :show.sync="show" @change-con="changeVal"></idverify>-->
350
+ <modal v-if="showParame" :show.sync="showParame" v-ref:modal backdrop="false">
351
+ <header slot="modal-header" class="modal-header">
352
+ <button type="button" class="close" @click="cancel"><span>&times;</span></button>
353
+ <h3 class="modal-title" style="text-align: center;">添加参数</h3>
354
+ </header>
355
+ <article slot="modal-body" class="modal-body">
356
+ <add-json-parameter v-ref:addparamlist :gasmodel_id="userfileid" :gastype="gastype"
357
+ :gasid="gasid"></add-json-parameter>
358
+ </article>
359
+ <footer slot="modal-footer" class="modal-footer">
360
+ <button type="button" class="btn btn-primary" @click='confirmUserfiles()'>确认</button>
361
+ </footer>
362
+ </modal>
363
+ </div>
364
+ </template>
365
+
366
+ <script>
367
+ import co from 'co'
368
+ import {HttpResetClass} from 'vue-client'
369
+ import Vue from 'vue'
370
+ import * as Util from '../../Util'
371
+
372
+ let meterBookGen = function * (self) {
373
+ if (self.$login.r.find(value => value == '抄表册建档')) {
374
+ self.opteratormetrbook = true
375
+ }
376
+ let temp = {
377
+ tablename: 't_meter_book',
378
+ condition: `f_book_state='有效' and f_filiale_id='${self.$login.f.orgid}'`
379
+ }
380
+ let http = new HttpResetClass()
381
+ let meterbooks = yield http.load('POST', 'rs/sql/saleSingleTable', {data: temp},
382
+ {resolveMsg: null, rejectMsg: '获取抄表册信息失败!!'})
383
+ if (meterbooks.data.length > 0) {
384
+ let options = []
385
+ for (let i = 0; i < meterbooks.data.length; i++) {
386
+ let tmp = {label: meterbooks.data[i].f_book_name, value: `${meterbooks.data[i].id}`}
387
+ options.push(tmp)
388
+ }
389
+ self.meterbookoptions = options
390
+ }
391
+ }
392
+ let brandChangeGen = function* (self, val) {
393
+ let beforeRecord = null
394
+
395
+ if (self.meter.f_meter_classify === '机表') {
396
+ beforeRecord = yield self.$resetpost('rs/sql/saleSingleTable', {
397
+ data: {
398
+ tablename: 't_handplan',
399
+ condition: `f_user_id = '${self.row.f_user_id}' and f_meter_state in ('已抄表','未抄表')`
400
+ }
401
+ }, {resolveMsg: null, rejectMsg: '在档案中更改气表品牌时,获取之前机表抄表信息出错!!'})
402
+ } else {
403
+ beforeRecord = yield self.$resetpost('rs/sql/saleSingleTable', {
404
+ data: {
405
+ tablename: 't_sellinggas',
406
+ condition: `f_user_id = '${self.row.f_user_id}' and f_state = '有效'`
407
+ }
408
+ }, {resolveMsg: null, rejectMsg: '在档案中更改气表品牌时,获取之前卡表收费信息出错!!'})
409
+ }
410
+ if (beforeRecord.data.length > 0 && self.row.gasbrand[0].f_meter_brand != self.oldrow.gasbrand[0].f_meter_brand) {
411
+ self.$showAlert('该气表已投入使用,如需更改请执行换表操作', 'warning', 3000)
412
+ // self.row.gasbrand = self.meter.gasbrand
413
+ self.$dispatch('success')
414
+ /* self.row.valid = bool
415
+ self.$dispatch('self-valid') */
416
+ } else {
417
+ self.row.f_whether_hairpin = self.row.gasbrand[0].f_meter_type === '机表' ? '无卡' : '未发'
418
+ }
419
+ console.log('111', self.row)
420
+ }
421
+ export default {
422
+ title: '表具信息',
423
+ data () {
424
+ return {
425
+ risers:[],
426
+ viewsee: false,
427
+ row: this.meter,
428
+ show: false,
429
+ field: '',
430
+ ratioshow: false,
431
+ userfileid: '',
432
+ gasid: '',
433
+ f_install_date: '',
434
+ f_scrap_date: '',
435
+ gastype: 'userfiles',
436
+ showParame: false,
437
+ selectUserFiles: '', // 选中的 userfiles
438
+ jurisdiction: this.$login.r,
439
+ positions: this.$appdata.getParam('安装位置'),
440
+ openWay: this.$appdata.getParam('开户方式'),
441
+ usetype: this.$appdata.getParam('使用类型'),
442
+ usestate: this.$appdata.getParam('使用状态'),
443
+ aroundmeters: this.$appdata.getParam('左右表'),
444
+ garbagefee: this.$appdata.getParam('垃圾费'),
445
+ valvestate: this.$appdata.getParam('阀门状态'),
446
+ usertypes: this.$appdata.getParam('用户类型'),
447
+ feedmethod: this.$appdata.getParam('供气方式')?this.$appdata.getParam('供气方式'):[],
448
+ handmonth: [{label: '单月', value: '单月'}, {label: '双月', value: '双月'}],
449
+ risershaft: this.$appdata.getParam('立管阀井'),
450
+ bfrq:10,
451
+ gasproperties: this.meter.f_user_type.length === 1 ? this.$appdata.getParam(this.meter.f_user_type[0]) : [],
452
+ pricetypes: this.$appdata.getParam('气价类型'),
453
+ industrycomments: this.$appdata.getParam('工业备注'),
454
+ meterbookoptions: [], // 抄表册选项
455
+ opteratormetrbook: false, // 抄表册操作
456
+ oldrow: [],
457
+ isiot: true,
458
+ finalDate: ''
459
+ }
460
+ },
461
+ props: ['f_filialeid', 'meter', 'isdecimal', 'valid', 'f_userinfo_id'],
462
+ ready () {
463
+ console.log('看看meter里面的数据', this.meter, this.row)
464
+ console.log('--------------====================', this.meter.f_aroundmeter, this.row.f_aroundmeter)
465
+ this.row = Object.assign(this.row, this.meter, {})
466
+ this.oldrow = this.row
467
+ this.isdecimal = this.row.gasbrand.length > 0 ? this.row.gasbrand.f_isdecimal : '否'
468
+ this.row.valid = false
469
+ if (this.row.pricetype === '混合气价') {
470
+ this.ratioshow = true
471
+ }
472
+ co(meterBookGen(this))
473
+ if (this.row.f_gas_date == null || this.row.f_gas_date == '') {
474
+ this.row.f_gas_date = Util.toStandardTimeString()
475
+ }
476
+ if (this.row.f_install_date == null || this.row.f_install_date == '') {
477
+ this.row.f_install_date = Util.toStandardTimeString()
478
+ this.f_install_date = Util.toStandardTimeString()
479
+ } else {
480
+ this.f_install_date = this.row.f_install_date
481
+ }
482
+ this.getbfrq()
483
+ this.updatayear(this.f_install_date)
484
+ this.getRisers()
485
+ },
486
+ methods: {
487
+ usetypechange(){
488
+ //如果选择壁挂锅炉
489
+ let usertype = '';
490
+ if( this.meter.f_usetype instanceof Array){
491
+ usertype = this.meter.f_usetype.length>0? this.meter.f_usetype[0]:''
492
+ }else{
493
+ usertype = this.meter.f_usetype? this.meter.f_usetype:''
494
+ }
495
+ if(usertype == '是'){
496
+ this.$showAlert('请进行添加用气设备!','warning',3000);
497
+ }
498
+ },
499
+ getbfrq(){
500
+ this.bfrq=this.row.gasmodel.length>0?(this.$appdata.getSingleValue(this.row.gasmodel[0].f_type)?this.$appdata.getSingleValue(this.row.gasmodel[0].f_type):10 ) : 10
501
+ this.updatayear(this.f_install_date)
502
+ },
503
+ getRisers(){
504
+ console.log("看看选中的调压箱",this.row.f_adjustable[0])
505
+ this.f_riser_code=null
506
+ this.risers=[]
507
+ if(this.row.f_adjustable[0]){
508
+ this.risers=this.row.f_adjustable[0].risers
509
+ }
510
+ },
511
+ async confirmUserfiles () {
512
+ if (this.$refs.addparamlist.confirm()) {
513
+ var paramlist = this.$refs.addparamlist.addGasParameter
514
+ await this.$resetpost('rs/logic/updateGasParam', {
515
+ data: {
516
+ id: this.selectUserFiles.f_user_id,
517
+ paramlist: paramlist,
518
+ gastype: 'userfiles'
519
+ }
520
+ }, {resolveMsg: '更新成功', rejectMsg: '更新失败'})
521
+ this.showParame = false
522
+ }
523
+ },
524
+
525
+ priceChange (val) {
526
+ if (val.length > 0) {
527
+ this.row.f_user_type = [val[0].f_user_type]
528
+ this.row.f_gasproperties = [val[0].f_gasproperties]
529
+ this.row.pricetype = val[0].f_price_type
530
+ // 展示气价备注
531
+ this.$set('row.f_price_comments', val[0].f_comments ? val[0].f_comments : '无')
532
+ // 展示价格明细
533
+ if (val[0].detailprice) {
534
+ // this.row.f_detailprice = this.$CommonService.getShowPriceDetail(val[0].detailprice)
535
+ this.$set('row.f_detailprice', this.$CommonService.getShowPriceDetail(val[0].detailprice))
536
+ }
537
+ }
538
+ },
539
+ cancel () {
540
+ this.gasid = ''
541
+ this.userfileid = ''
542
+ this.showParame = false
543
+ },
544
+ tablebaseChange () {
545
+ if (this.isdecimal === '是') {
546
+ this.$set('row.f_meter_base', (this.row.f_meter_base - 0).toFixed(4))
547
+ } else {
548
+ this.$set('row.f_meter_base', (this.row.f_meter_base - 0).toFixed(0))
549
+ }
550
+ },
551
+ brandChange (val) {
552
+ this.isdecimal = val.length > 0 ? val[0].f_isdecimal : '否'
553
+ console.log('sadasfasf', val)
554
+ if (val.length > 0 && val[0].f_meter_type === '物联网表') {
555
+ this.isiot = true
556
+ } else {
557
+ this.isiot = false
558
+ }
559
+ // this.tablebaseChange()
560
+ if (this.row.f_user_id) {
561
+ co(brandChangeGen(this))
562
+ }
563
+ this.meternumberValidate()
564
+ },
565
+ userTypeChange () {
566
+ this.gasproperties = []
567
+ if (this.row.f_user_type.length === 1) {
568
+ this.gasproperties = this.$appdata.getParam(this.row.f_user_type[0])
569
+ }
570
+ },
571
+ // getPricenames(pricetype) {
572
+ // console.log('气价。,。。', pricetype, this.row.f_user_type, this.row.f_gasproperties)
573
+ // let rs = []
574
+ // if (this.row.f_user_type.length === 1 && this.row.f_gasproperties.length === 1 && pricetype.length === 1) {
575
+ // let params = {
576
+ // f_user_type: this.row.f_user_type[0],
577
+ // f_gasproperties: this.row.f_gasproperties[0],
578
+ // f_price_type: pricetype[0],
579
+ // filter: this.f_filialeid
580
+ // }
581
+ // rs = this.$GetSaleParam.getPrice(params)
582
+ // }
583
+ // if (rs.length === 0) {
584
+ // this.row.f_price_name = ''
585
+ // }
586
+ // return rs
587
+ // },
588
+ mValid (bool) {
589
+ this.row.valid = bool
590
+ this.$dispatch('self-valid')
591
+ },
592
+ // 带权限修改单值返回修改后得值和修改原因
593
+ modefiy (field) {
594
+ this.show = true
595
+ this.field = field
596
+ },
597
+ async meternumberValidate () {
598
+ let http1 = new HttpResetClass()
599
+ let res1 = await http1.load('POST', '/rs/sql/getBrandAndType', {data: {condition: ` mi.f_meternumber = '${this.row.f_meternumber}'`}}, {resolveMsg: null, rejectMsg: '获取默认气表品牌型号失败!!'})
600
+ if (res1.data.length > 0) {
601
+ // 替换表号自带的气表品牌和型号
602
+ let meterbrands = this.meterbrands
603
+ for (let row of meterbrands) {
604
+ if (row.label == res1.data[0].f_meter_brand) {
605
+ // 已经选择了气表品牌则不再替换
606
+ if (this.row.gasbrand.length <= 0) this.row.gasbrand = [row.value]
607
+ // 替换气表型号
608
+ if (res1.data[0].f_meter_style) {
609
+ for (let model of row.value.gasmodel) {
610
+ if (model.label == res1.data[0].f_meter_style) {
611
+ // 已经选择了气表型号则不再替换
612
+ if (this.row.gasmodel.length <= 0) this.row.gasmodel = [model.value]
613
+ continue
614
+ }
615
+ }
616
+ }
617
+ continue
618
+ }
619
+ }
620
+ // 有一条或多条气表型号。此时给气表品牌赋值,给机表型号添加选择框
621
+ // this.$refs.paged.$refs.cri.model.f_userinfo_code = newVal
622
+ // this.row.f_meter_brand = this.row.f_meter_brand ? this.row.f_meter_brand : res1.data[0].f_meter_brand
623
+ // this.row.f_gasbrand_id = this.row.f_gasbrand_id ? this.row.f_gasbrand_id : res1.data[0].brandid
624
+ // let model = [
625
+ // {
626
+ // label: res1.data[0].f_meter_style,
627
+ // value: {
628
+ // f_meter_classify: res1.data[0].f_meter_classify,
629
+ // f_meter_style: res1.data[0].f_meter_style,
630
+ // id: res1.data[0].modelid,
631
+ // f_gasbrand_id: res1.data[0].brandid
632
+ // }
633
+ // }
634
+ // ]
635
+ // this.row.gasbrand = this.row.gasbrand.length > 0 ? this.row.gasbrand : [{
636
+ // f_meter_brand: res1.data[0].f_meter_brand,
637
+ // id: res1.data[0].brandid,
638
+ // gasmodel: model,
639
+ // f_meter_type: res1.data[0].f_meter_classify
640
+ // }]
641
+ // let model2 = [
642
+ // {
643
+ // f_meter_style: res1.data[0].f_meter_style,
644
+ // id: res1.data[0].modelid,
645
+ // f_gasbrand_id: res1.data[0].brandid
646
+ // }
647
+ // ]
648
+ // this.row.f_gasmodel_id = this.row.f_gasmodel_id ? this.row.f_gasmodel_id : res1.data[0].modelid
649
+ // this.row.gasmodel = this.row.gasmodel.length > 0 ? this.row.gasmodel : model2
650
+ // this.row.f_meter_classify = this.row.f_meter_classify ? this.row.f_meter_classify : res1.data[0].f_meter_classify
651
+ }
652
+ if (this.row.f_meternumber && this.row.gasbrand.length > 0) {
653
+ // 表号位数验证
654
+ let meternumberLen = this.row.gasbrand[0].f_meternumber_len
655
+ if (meternumberLen) {
656
+ if (this.row.f_meternumber.length != meternumberLen) {
657
+ this.row.f_meternumber = ''
658
+ this.$showAlert(`表号位数不正确, 当前气表品牌表号位数是: ${meternumberLen}`, 'warning', 3000)
659
+ return
660
+ }
661
+ }
662
+ // 表计信息验证
663
+ if (this.row.gasbrand[0].f_meterverification == '是') {
664
+ if (res1.data.length <= 0) {
665
+ this.$showAlert(`当前表号: ${this.row.f_meternumber}在表计信息中无记录, 请核实!!!`, 'warning', 3000)
666
+ this.row.f_meternumber = ''
667
+ return
668
+ }
669
+ }
670
+ let param = {
671
+ f_meternumber: this.row.f_meternumber,
672
+ f_gasbrand_id: this.row.gasbrand[0].id
673
+ }
674
+ if (this.row.f_userfiles_id) {
675
+ param.f_userfiles_id = this.row.f_userfiles_id
676
+ }
677
+ let res = await this.$resetpost('rs/logic/meternumberValidate', param, {
678
+ resolveMsg: null,
679
+ rejectMsg: '表号验证失败!!'
680
+ })
681
+ console.log('标号验证返回:', res)
682
+ if (this.row.gasbrand[0].f_meter_type === '物联网表') {
683
+ if (res.data) {
684
+ this.row.f_meternumber = ''
685
+ this.$showAlert('表号已存在!!', 'warning', 3000)
686
+ }
687
+ } else {
688
+ if (res.data) {
689
+ this.$showAlert('请注意,相同的表号已存在', 'warning', 3000)
690
+ }
691
+ }
692
+ }
693
+ },
694
+ updatayear (data) {
695
+ const today = new Date(data)
696
+ const year = today.getFullYear()
697
+ const month = today.getMonth()
698
+ const day = today.getDate()
699
+ const date = new Date((year-0) +(this.bfrq-0), month, day)
700
+ this.finalDate = date.toLocaleDateString()
701
+ console.log('898989898', this.finalDate)
702
+ this.row.f_scrap_date = this.finalDate
703
+ this.f_scrap_date = this.finalDate
704
+ console.log('898989898', this.row.f_scrap_date)
705
+ }
706
+ },
707
+ watch: {
708
+ 'meter' () {
709
+ this.row = Object.assign(this.row, this.meter, {})
710
+ this.isdecimal = this.row.gasbrand.f_isdecimal
711
+ this.row.valid = false
712
+ this.showtype = this.row.gasbrand.f_meter_type
713
+ console.log('11111111111111111111111111')
714
+ this.f_install_date = this.row.f_install_date
715
+ },
716
+ 'f_install_date' (val) {
717
+ console.log('222222222222', val)
718
+ this.row.f_install_date = val
719
+ this.updatayear(val)
720
+ },
721
+ 'row.f_scrap_date' (val) {
722
+ console.log('45454545')
723
+ this.row.f_scrap_date = val
724
+ console.log('45454545', this.row.f_scrap_date, val)
725
+ },
726
+ 'finalDate' () {
727
+ console.log('45454545666')
728
+ this.row.f_scrap_date = this.finalDate
729
+ },
730
+ 'row.pricetype' (val) {
731
+ if (val == '混合气价') {
732
+ this.ratioshow = true
733
+ } else {
734
+ this.ratioshow = false
735
+ }
736
+ },
737
+ 'this.row.gasbrand'(val){
738
+ console.log("赋值赋值!!",val)
739
+ }
740
+
741
+ },
742
+ computed: {
743
+
744
+ // 控制用户类型修改
745
+ permissionUserType () {
746
+ let res = false
747
+ if (this.row.f_user_id) {
748
+ res = !(this.jurisdiction.includes('民用气价修改') && this.jurisdiction.includes('非民用气价修改'))
749
+ }
750
+ return res
751
+ },
752
+
753
+ // 控制用气性质,气价类型,气价名称修改
754
+ permissionPrice () {
755
+ let res = false
756
+ if (this.row.f_user_id) {
757
+ console.log('获取权限、', this.row, this.jurisdiction)
758
+ // 变更操作
759
+ if (this.row.pricename.length > 0) {
760
+ if (this.row.f_user_type[0] === '民用') {
761
+ // 判断是否有民用气价权限
762
+ res = !this.jurisdiction.includes('民用气价修改')
763
+ } else if (this.row.f_user_type[0] === '非民用') {
764
+ // 判断是否有非民用气价权限
765
+ res = !this.jurisdiction.includes('非民用气价修改')
766
+ }
767
+ }
768
+ }
769
+ console.log('有无气价权限', res)
770
+ return res
771
+ },
772
+
773
+ getPricenames () {
774
+ let f_filialeid = this.f_filialeid
775
+ let result = []
776
+ this.$GetSaleParam.prices.forEach((item) => {
777
+ if (item.f_state === '有效') {
778
+ let value = {
779
+ label: item.f_price_name,
780
+ value: item
781
+ }
782
+ result.push(value)
783
+ }
784
+ })
785
+ return Array.from(new Set(result))
786
+ },
787
+
788
+ adjustables () {
789
+ let arr = []
790
+ let filter = this.f_filialeid
791
+ this.$GetSaleParam.getAdjustable(filter).forEach((item) => {
792
+ let temp = {}
793
+ temp.label = `[${item.value.f_adjustable_id}]-${item.label}`
794
+ temp.value = item.value
795
+ arr.push(temp)
796
+ })
797
+ return [{label: '全部', value: ''}, ...arr]
798
+ },
799
+ inputtores () {
800
+ // return this.$login.f.f_gasman
801
+ let rs = new Array()
802
+ for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
803
+ let temp = {
804
+ label: this.$login.f.f_gasman[i].name,
805
+ value: this.$login.f.f_gasman[i].name
806
+ }
807
+ rs.push(temp)
808
+ }
809
+ return rs
810
+ },
811
+ installperson () {
812
+ // return this.$login.f.f_installman
813
+ let rs = new Array()
814
+ for (let i = 0; i < this.$login.f.f_installman.length; i++) {
815
+ let temp = {
816
+ label: this.$login.f.f_installman[i].name,
817
+ value: this.$login.f.f_installman[i].name
818
+ }
819
+ rs.push(temp)
820
+ }
821
+ return rs
822
+ },
823
+ meterbrands () {
824
+ return this.$GetSaleParam.getGasbrand()
825
+ },
826
+ aroundmeters () {
827
+ return this.$appdata.getParam('左右表')
828
+ },
829
+ positions () {
830
+ return this.$appdata.getParam('安装位置')
831
+ },
832
+ usetype () {
833
+ return [{label:'是',value:'是'},{label:'否',value:'否'}]
834
+ },
835
+ usestate () {
836
+ return this.$appdata.getParam('使用状态')
837
+ },
838
+ gongyetype () {
839
+ return this.$appdata.getParam('工业备注')
840
+ },
841
+ userfilesaddress () {
842
+ return this.$appdata.getParam('场站')
843
+ },
844
+ gcfs () {
845
+ return this.$appdata.getParam('供气方式')
846
+ }
847
+ }
848
+ }
849
+ </script>
850
+ <style lang="less">
851
+ #meterInfoTest{
852
+ #addboxmap {
853
+ height: 300px;
854
+ }
855
+ .glyphicon-map-marker:hover {
856
+ color: red;
857
+ }
858
+ .glyphicon-map-marker {
859
+ color: blue;
860
+ cursor: pointer;
861
+ }
862
+ .col-sm-4 {
863
+ .font_normal_body {
864
+ width: 73px;
865
+ overflow: auto;
866
+ white-space: nowrap;
867
+ // 指滚动条两边的按钮
868
+ &::-webkit-scrollbar-button {
869
+ display: none;
870
+ }
871
+ // 滚动条的宽度
872
+ &::-webkit-scrollbar {
873
+ width: 5px !important;
874
+ height: 5px !important;
875
+ }
876
+ // 滚动条的设置
877
+ &::-webkit-scrollbar-thumb {
878
+ background-color: #ddd;
879
+ background-clip: padding-box;
880
+ }
881
+ &::-webkit-scrollbar-thumb:hover {
882
+ background-color: #bbb;
883
+ }
884
+ &::-webkit-scrollbar-track {
885
+ /*滚动条里面轨道*/
886
+ box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
887
+ background: #ededed;
888
+ }
889
+ }
890
+ }
891
+ }
892
+ </style>