sale-client 3.5.142 → 3.5.143

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sale-client",
3
- "version": "3.5.142",
3
+ "version": "3.5.143",
4
4
  "description": "收费模块前台组件",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
@@ -88,7 +88,7 @@
88
88
  "style-loader": "^0.20.3",
89
89
  "system-clients": "3.2.25",
90
90
  "url-loader": "^0.5.7",
91
- "vue-client": "1.24.73",
91
+ "vue-client": "1.24.76",
92
92
  "vue-clipboard2": "0.3.1",
93
93
  "vue-hot-reload-api": "^1.2.0",
94
94
  "vue-html-loader": "^1.0.0",
@@ -174,7 +174,7 @@
174
174
  meterbrand: [],
175
175
  newmeterinfo: {},
176
176
  confirmEditcheck: false,
177
- meterstyle: []
177
+ meterstyle: [],
178
178
  }
179
179
  },
180
180
  ready () {
@@ -0,0 +1,290 @@
1
+ <template>
2
+ <div class="span">
3
+ <validator name='v' style="overflow-y: auto">
4
+ <form novalidate class="form-horizontal select-overspread" @valid="confirmEditcheck = true" @invalid="confirmEditcheck = false">
5
+ <div class="row auto">
6
+ <div style="margin-top: 2%">
7
+ <img style="margin-top: -2px;margin-left: 2px" src="./../../../../static/images/lefticon/矩形1183.png">
8
+ <a style="font-size: 16px;font-weight: 500;">表计信息</a>&nbsp;<a style="color: #999999;text-decoration: none"></a>
9
+ </div>
10
+ <div class="col-sm-6" :class="[$v.f_meternumber.required ? 'has-error' : '']">
11
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;表号&nbsp;&nbsp;&nbsp;</label>
12
+ <input type="text" v-model="newmeterinfo.f_meternumber" @blur="onbulrbunmber($event)" class="input_search" style="width:60%" v-validate:f_meternumber='{required: true }' placeholder="表号">
13
+ </div>
14
+
15
+ <div class="col-sm-6" :class="[$v.f_imei.required ? 'has-error' : '']">
16
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;IMEI码&nbsp;&nbsp;&nbsp;</label>
17
+ <input type="text" v-model="newmeterinfo.f_imei" class="input_search" style="width:60%" v-validate:f_imei='{required: true }' placeholder="IMEI码">
18
+ </div>
19
+ <div class="col-sm-6" >
20
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;IMSI码&nbsp;&nbsp;&nbsp;</label>
21
+ <input type="text" v-model="newmeterinfo.f_imsi" class="input_search" style="width:60%" placeholder="IMSI码">
22
+ </div>
23
+ <div class="col-sm-6" :class="[$v.brand.required ? 'has-error' : '']">
24
+ <label class="font_normal_body" title="参数:气表类型2">&nbsp;&nbsp;&nbsp;气表类型</label>
25
+ <input type="text" v-show="false" v-model="$refs.brand.selectedItems" v-validate:brand='{required: true }'>
26
+ <v-select style="width:60%" title="气表类型2"
27
+ placeholder='气表类型'
28
+ :value.sync="newmeterinfo.f_metertype"
29
+ v-model="newmeterinfo.f_metertype"
30
+ :options='metertype'
31
+ close-on-select
32
+ :value-single="true" v-ref:brand> </v-select>
33
+ </div>
34
+ <div class="col-sm-6" :class="[$v.f_meter_brand.required ? 'has-error' : '']">
35
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;气表品牌</label>
36
+ <input type="text" v-show="false" v-model="newmeterinfo.f_meter_brand"
37
+ v-validate:f_meter_brand='{required: true }'>
38
+ <v-select
39
+ placeholder='气表品牌'
40
+ :value.sync="newmeterinfo.f_meter_brand"
41
+ style="width:60%"
42
+ :value-single="true"
43
+ v-model="newmeterinfo.f_meter_brand"
44
+ :options='meterbrand'
45
+ close-on-select>
46
+ </v-select>
47
+ </div>
48
+ <div class="col-sm-6" :class="[$v.f_meter_style.required ? 'has-error' : '']">
49
+ <label class="font_normal_body" >&nbsp;&nbsp;&nbsp;气表型号</label>
50
+ <input type="text" v-show="false" v-model="newmeterinfo.f_meter_style"
51
+ v-validate:f_meter_style='{required: true }'>
52
+ <v-select style="width:60%"
53
+ placeholder='气表型号'
54
+ :value.sync="newmeterinfo.f_meter_style"
55
+ v-model="newmeterinfo.f_meter_style"
56
+ :options='meterstyle'
57
+ close-on-select
58
+ :value-single="true"> </v-select>
59
+ </div>
60
+ <div class="col-sm-6" >
61
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;表计电话</label>
62
+ <input type="text" v-model="newmeterinfo.f_meter_phone" class="input_search" style="width:60%" placeholder="表计电话">
63
+ </div>
64
+ <div class="col-sm-12" >
65
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;设备地址</label>
66
+ <input type="text" v-model="newmeterinfo.f_device_address" class="input_search" style="width:80%" placeholder="设备地址">
67
+ </div>
68
+ <div class="col-sm-6" >
69
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;是否领用</label>
70
+ <v-select style="width:60%"
71
+ placeholder='是否领用'
72
+ :value.sync="newmeterinfo.f_is_receive"
73
+ v-model="newmeterinfo.f_is_receive"
74
+ :options='isReceive'
75
+ disabled
76
+ close-on-select
77
+ :value-single="true"> </v-select>
78
+ </div>
79
+ <div class="col-sm-6" >
80
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;气表年限</label>
81
+ <input type="text" v-model="newmeterinfo.f_years" class="input_search" style="width:60%" placeholder="气表年限">
82
+ </div>
83
+ <div class="col-sm-6" >
84
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;生产日期</label>
85
+ <datepicker placeholder="生产日期" style="width: 60%"
86
+ v-model="newmeterinfo.f_manufacture_date"
87
+ :value.sync="newmeterinfo.f_manufacture_date"
88
+ :format="'yyyy-MM-dd HH:mm:ss'">
89
+ </datepicker>
90
+ <!-- <input type="text" v-model="newmeterinfo.f_manufacture_date" class="input_search" style="width:60%" placeholder="生产日期">-->
91
+ </div>
92
+
93
+ <div class="col-sm-6" >
94
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;批次号&nbsp;&nbsp;&nbsp;</label>
95
+ <input type="text" v-model="newmeterinfo.f_batch_number" class="input_search" style="width:60%" placeholder="批次号">
96
+ </div>
97
+ <div class="col-sm-6" >
98
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;终端名称</label>
99
+ <input type="text" v-model="newmeterinfo.f_terminal_id" class="input_search" style="width:60%" placeholder="终端名称">
100
+ </div>
101
+
102
+ <div class="col-sm-6" >
103
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;设备号&nbsp;&nbsp;&nbsp;</label>
104
+ <input type="text" v-model="newmeterinfo.f_device_id" class="input_search" style="width:60%" placeholder="设备号">
105
+ </div>
106
+ <div class="col-sm-6" >
107
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;阀控标识</label>
108
+ <input type="text" v-model="newmeterinfo.f_valvemark" class="input_search" style="width:60%" placeholder="阀控标识">
109
+ </div>
110
+ <div class="col-sm-6" >
111
+ <label class="font_normal_body" style="color: red" title="参数:表通道类型">表通道类型</label>
112
+ <!-- <input type="text" v-model="newmeterinfo.f_iot_type" class="input_search" style="width:60%" placeholder="表通道类型">-->
113
+ <v-select style="width:60%"
114
+ placeholder='表通道类型'
115
+ :value.sync="newmeterinfo.f_iot_type"
116
+ v-model="newmeterinfo.f_iot_type"
117
+ :options='iottype'
118
+ close-on-select
119
+ :value-single="true"> </v-select>
120
+ </div>
121
+ <div class="col-sm-6" >
122
+ <label class="font_normal_body">表通讯序号</label>
123
+ <input type="text" v-model="newmeterinfo.f_telecomm_no" class="input_search" style="width:60%" placeholder="表通讯序号">
124
+ </div>
125
+ <div class="col-sm-6" >
126
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;采购人</label>
127
+ <input type="text" v-model="newmeterinfo.f_purchaser" class="input_search" style="width:60%" placeholder="采购人">
128
+ </div>
129
+ <div class="col-sm-6" >
130
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;采购时间</label>
131
+ <datepicker placeholder="采购时间" style="width: 60%"
132
+ v-model="newmeterinfo.f_purchase_date"
133
+ :value.sync="newmeterinfo.f_purchase_date"
134
+ :format="'yyyy-MM-dd HH:mm:ss'">
135
+ </datepicker>
136
+ </div>
137
+ <div class="col-sm-6" >
138
+ <label class="font_normal_body" title="表具状态">表具状态</label>
139
+ <!-- <input type="text" v-model="newmeterinfo.f_iot_type" class="input_search" style="width:60%" placeholder="表通道类型">-->
140
+ <v-select style="width:60%"
141
+ placeholder='表具状态'
142
+ :value.sync="newmeterinfo.f_distribution_state"
143
+ v-model="newmeterinfo.f_distribution_state"
144
+ :options='meterstate'
145
+ close-on-select
146
+ :value-single="true"> </v-select>
147
+ </div>
148
+ </div>
149
+ <div class="auto row">
150
+ <div style="margin-top: 2%">
151
+ <img style="margin-top: -2px;margin-left: 2px" src="./../../../../static/images/lefticon/矩形1183.png">
152
+ <a style="font-size: 16px;font-weight: 500;">厂商信息</a>&nbsp;<a style="color: #999999;text-decoration: none"></a>
153
+ </div>
154
+ <div class="col-sm-6" >
155
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;气表厂家</label>
156
+ <input type="text" v-model="newmeterinfo.f_manufacturers" class="input_search" style="width:60%" placeholder="气表厂家">
157
+ </div>
158
+ <div class="col-sm-6" >
159
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;厂商代码</label>
160
+ <input type="text" v-model="newmeterinfo.f_vender" class="input_search" style="width:60%" placeholder="厂商代码">
161
+ </div>
162
+ </div>
163
+ <div class="col-sm-12" style="text-align:right;height:auto;margin-top:6px;">
164
+ <button class="button_search" type="button" @click="confirmEdit()" :disabled="!confirmEditcheck">确认</button>
165
+ <button class="button_clear" type="button" @click="close()">取消</button>
166
+ </div>
167
+ </form>
168
+ </validator>
169
+ </div>
170
+ </template>
171
+
172
+
173
+ <script>
174
+ let readyGen = async function (self) {
175
+ await self.$LoadParams.loadParam()
176
+ self.initQueryParam()
177
+ // self.reflash()
178
+ }
179
+ export default {
180
+ title: '表计信息修改',
181
+ props: ['oldmeter', 'f_filialeid'],
182
+ data () {
183
+ return {
184
+ row: {},
185
+ meterbrand: [],
186
+ newmeterinfo: {},
187
+ confirmEditcheck: false,
188
+ meterstyle: [],
189
+ meterstate: [{label: '维修', value: '维修'},{label: '退回', value: '退回'},{label: '挂表', value: '挂表'},{label: '报废', value: '报废'}]
190
+ }
191
+ },
192
+ ready () {
193
+ this.newmeterinfo = Object.assign({}, {}, this.oldmeter)
194
+ this.newmeterinfo.f_is_receive = this.newmeterinfo.f_is_receive !== '是' ? '否' : '是'
195
+ readyGen(this)
196
+ },
197
+ watch: {
198
+ 'oldmeter' () {
199
+ this.newmeterinfo = Object.assign({}, {}, this.oldmeter)
200
+ },
201
+ 'newmeterinfo.f_meter_brand' () {
202
+ if (this.newmeterinfo.f_meter_brand == null || this.newmeterinfo.f_meter_brand == '') return
203
+ let gasmodels = []
204
+ let gastype = []
205
+ this.$GetSaleParam.getGasbrand().forEach((item) => {
206
+ if (item.label == this.newmeterinfo.f_meter_brand) {
207
+ gasmodels = item.value.gasmodel
208
+ }
209
+ })
210
+ gasmodels.forEach((items) => {
211
+ let temp = {}
212
+ temp.label = items.label
213
+ temp.value = items.value.f_meter_style + items.value.f_type
214
+ gastype.push(temp)
215
+ })
216
+ this.meterstyle = gastype
217
+ }
218
+ },
219
+ methods: {
220
+
221
+ initQueryParam () {
222
+ let arr = []
223
+ this.$GetSaleParam.getGasbrand().forEach((item) => {
224
+ let temp = {}
225
+ temp.label = item.label
226
+ temp.value = item.value.f_meter_brand
227
+ arr.push(temp)
228
+ })
229
+ console.log(arr)
230
+ this.meterbrand = [{label: '全部', value: ''}, ...arr]
231
+ },
232
+ async onbulrbunmber ($event) {
233
+ if ($event.target.value === '') {
234
+ return
235
+ }
236
+ let expiration = await this.$resetpost('rs/sql/singleTable_OrderBy', {data:
237
+ {orderitem: 'id',
238
+ items: 'f_meternumber',
239
+ tablename: 't_meterinfo',
240
+ condition: 'f_meternumber = \'' + $event.target.value + '\''}}, {resolveMsg: '', rejectMsg: ''})
241
+
242
+ console.log(expiration)
243
+ if (expiration.data.length !== 0) {
244
+ this.$showMessage('表号已经存在')
245
+ }
246
+ },
247
+ close () {
248
+ this.$parent.meterinfos = []
249
+ this.$dispatch('close')
250
+ },
251
+ confirmEdit () {
252
+ this.newmeterinfo.f_diameter = ''
253
+ this.newmeterinfo.f_orgid = this.$login.f.orgid
254
+ // this.newmeterinfo.f_metertype='威星民用表'
255
+ this.newmeterinfo.f_orgname = this.$login.f.orgs
256
+ this.newmeterinfo.f_depid = this.$login.f.depids
257
+ this.newmeterinfo.f_depname = this.$login.f.deps
258
+ this.newmeterinfo.f_operator = this.$login.f.name
259
+ this.newmeterinfo.f_operatorid = this.$login.f.id
260
+ if (JSON.stringify(this.oldmeter) != '{}') {
261
+ if (this.newmeterinfo.f_meternumber && this.newmeterinfo.f_imei && this.newmeterinfo.f_iot_type && this.newmeterinfo.f_meternumber !== '' && this.newmeterinfo.f_imei !== '' && this.newmeterinfo.f_iot_type !== '') {
262
+ this.$resetpost('rs/entity/t_meterinfo', this.newmeterinfo, {resolveMsg: '修改成功。', rejectMsg: '修改失败!!!请核对表号/IMSI码是否重复!'})
263
+ } else {
264
+ this.$showMessage('表号/IMEI码/表通道类型 不能为空!')
265
+ }
266
+ } else {
267
+ // 是新增
268
+ this.newmeterinfo.f_state = '待安装'
269
+ this.newmeterinfo.f_filialeid = this.f_filialeid ? this.f_filialeid : this.$login.f.orgid
270
+ this.$resetpost('rs/entity/t_meterinfo', this.newmeterinfo, {resolveMsg: '添加成功。', rejectMsg: '添加失败!!!请核对表号/IMSI码是否重复'})
271
+ }
272
+ this.$dispatch('close')
273
+ }
274
+ },
275
+ computed: {
276
+ meterbrands () {
277
+ return this.$GetSaleParam.getGasbrand()
278
+ },
279
+ iottype () {
280
+ return this.$appdata.getParam('表通道类型')
281
+ },
282
+ metertype () {
283
+ return this.$appdata.getParam('气表类型2')
284
+ },
285
+ isReceive () {
286
+ return [{label: '否', value: '否'}, {label: '是', value: '是'}]
287
+ }
288
+ }
289
+ }
290
+ </script>
@@ -26,7 +26,9 @@ let specialComp = {
26
26
  'user-info-detail-manage-new': (resolve) => { require(['./components/common/userinfo_detail/UserInfoDetailManageNew'], resolve) },
27
27
  // 物联网 批量开关阀
28
28
  'sale-web-meter-batch-operation-valve':(resolve) => { require(['./components/common/userinfo_detail/WebMeterBatchOperationValve'], resolve) },
29
- 'sale-web-meter-operate':(resolve) => { require(['./components/common/userinfo_detail/WebMeterBatchOperate'], resolve) }
29
+ 'sale-web-meter-operate':(resolve) => { require(['./components/common/userinfo_detail/WebMeterBatchOperate'], resolve) },
30
+
31
+ 'edit-meter-info':(resolve) => { require(['./components/EditWebMeterInfo'], resolve) }
30
32
 
31
33
  }
32
34
  exports.specialComp = specialComp
@@ -67,7 +67,7 @@ export default {
67
67
  // 对此数据进行验证
68
68
  if (await this.validateRow(obj)) {
69
69
  // 获取写卡失败记录
70
- let getUnWriteSell = await this.$SqlService.singleTable('t_sellinggas', `f_state = '有效' and f_write_card in ('写卡失败') and f_userfiles_id = '${obj.f_userfiles_id}'`)
70
+ let getUnWriteSell = await this.$SqlService.singleTable('t_sellinggas', `f_state = '有效' and f_write_card in ('写卡失败','未写卡') and f_userfiles_id = '${obj.f_userfiles_id}'`)
71
71
  console.log('获取写卡失败记录', getUnWriteSell)
72
72
  if (getUnWriteSell.data.length > 1) {
73
73
  this.$showAlert('此卡已缴费多次未写卡。请核实后处理!!', 'warning', 5000)
@@ -57,11 +57,12 @@
57
57
  if (self.data.unWriteSell) {
58
58
  if (self.data.unWriteSell.length > 0) {
59
59
  let lastselldate = self.data.unWriteSell[0].f_operate_date
60
+ let f_write_card = self.data.unWriteSell[0].f_write_card
60
61
  let date = new Date(lastselldate)
61
62
  let nowdate = new Date()
62
63
  let dateDiff = nowdate.getTime() - date.getTime();
63
64
  let times = 3600*1000*3
64
- if (dateDiff<=times){
65
+ if (dateDiff<=times || f_write_card === '未写卡'){
65
66
  console.log("加载线下写卡组件")
66
67
  self.temp.push({name: '线下写卡',
67
68
  value: {