safecheck-client 4.0.0-1 → 4.0.0-11

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.
@@ -1217,7 +1217,7 @@ export default {
1217
1217
  if (items.f_is_defect == 'true' || items.f_is_defect == true) {
1218
1218
  checkResult = '有隐患'
1219
1219
  this.result = '有隐患'
1220
- defects = `${defects}:${items.f_item_value}/`
1220
+ defects = `${defects}:${f_item_value}/`
1221
1221
  }
1222
1222
  /*let options = this.config[this.data[device][item].f_device_type].items[items.f_item_name].options
1223
1223
  for (let option in options) {
@@ -1297,7 +1297,9 @@ export default {
1297
1297
  //tag)
1298
1298
  if (this.deviceCollect.name) {
1299
1299
  //tag
1300
- this.deviceCollects.push(JSON.parse(JSON.stringify(this.deviceCollect)))
1300
+ if(this.deviceCollect.value != '正常'){
1301
+ this.deviceCollects.push(JSON.parse(JSON.stringify(this.deviceCollect)))
1302
+ }
1301
1303
  }
1302
1304
 
1303
1305
  checkResult = '正常'
@@ -1893,12 +1895,12 @@ export default {
1893
1895
  console.log('Vue.config.safecheck.DevicesConfig', Vue.config.safecheck.DevicesConfig)
1894
1896
  // 如果没有用户类型 默认按民用配置走
1895
1897
  if (this.data.f_check_type == '非民用') {
1896
- this.deviceconfig = Vue.config.safecheck.DevicesSetConfig
1898
+ this.deviceconfig = JSON.parse(JSON.stringify(Vue.config.safecheck.DevicesSetConfig))
1897
1899
  if (typeof this.deviceconfig === 'string') {
1898
1900
  this.deviceconfig = JSON.parse(this.deviceconfig)
1899
1901
  }
1900
1902
  }else{
1901
- this.deviceconfig = Vue.config.safecheck.DevicesConfig
1903
+ this.deviceconfig = JSON.parse(JSON.stringify(Vue.config.safecheck.DevicesConfig))
1902
1904
  if (typeof this.deviceconfig === 'string') {
1903
1905
  this.deviceconfig = JSON.parse(this.deviceconfig)
1904
1906
  }
@@ -103,7 +103,7 @@
103
103
  </datepicker>
104
104
  </div>
105
105
  <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
106
- <label class="font_normal_body">用户类型</label>
106
+ <label class="font_normal_body">客户类型</label>
107
107
  <v-select :value.sync="model.f_check_type" v-model='model.f_check_type'
108
108
  :value-single="true" style="width: 60%"
109
109
  class="select_list select"
@@ -0,0 +1,401 @@
1
+ <template>
2
+ <div class="auto clearfix">
3
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
4
+ <div class="col-xs-4 col-sm-4 col-md-4">
5
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
6
+ <span class="text-left font">客户编号</span>
7
+ </div>
8
+ <div class="col-xs-8 col-sm-8 col-md-8">
9
+ <p class="text-left show-font">{{ model.f_userinfo_code }}</p>
10
+ </div>
11
+ </div>
12
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
13
+ <div class="col-xs-4 col-sm-4 col-md-4">
14
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
15
+ <span class="text-left font">客户姓名</span>
16
+ </div>
17
+ <div class="col-xs-8 col-sm-8 col-md-8">
18
+ <input v-model="model.f_user_name" class="form-control show-font" placeholder="请输入客户姓名" type="text">
19
+ </div>
20
+ </div>
21
+ <div class="row app-row col-xs-12 col-sm-12 col-md-12">
22
+ <div class="col-xs-4 col-sm-2 col-md-2">
23
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
24
+ <span class="text-left font">客户地址</span>
25
+ </div>
26
+ <div class="col-xs-8 col-sm-10 col-md-10">
27
+ <input v-model="model.f_address" class="form-control show-font" placeholder="请输入客户地址" type="text">
28
+ </div>
29
+ </div>
30
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
31
+ <div class="col-xs-4 col-sm-4 col-md-4">
32
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
33
+ <span class="text-left font">客户电话</span>
34
+ </div>
35
+ <div class="col-xs-8 col-sm-8 col-md-8">
36
+ <input v-model="model.f_user_phone" class="form-control show-font" placeholder="请输入电话号码" type="number">
37
+ </div>
38
+ </div>
39
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
40
+ <div class="col-xs-4 col-sm-4 col-md-4">
41
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
42
+ <span class="text-left font">证件类型</span>
43
+ </div>
44
+ <div class="col-xs-8 col-sm-8 col-md-8">
45
+ <v-select v-model="model.f_id_type" :options="idTypeOptions"
46
+ :value-single="true" :value.sync="model.f_id_type"
47
+ close-on-select placeholder="请选择证件类型"
48
+ style="width: 100%">
49
+ </v-select>
50
+ </div>
51
+ </div>
52
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
53
+ <div class="col-xs-4 col-sm-4 col-md-4">
54
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
55
+ <span class="text-left font">证件号码</span>
56
+ </div>
57
+ <div class="col-xs-8 col-sm-8 col-md-8">
58
+ <input v-model="model.f_idnumber" class="form-control show-font" placeholder="请输入证件号码" type="text">
59
+ </div>
60
+ </div>
61
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
62
+ <div class="col-xs-4 col-sm-4 col-md-4">
63
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
64
+ <span class="text-left font">保单号</span>
65
+ </div>
66
+ <div class="col-xs-8 col-sm-8 col-md-8">
67
+ <input v-model="model.f_ins_number" class="form-control show-font" placeholder="请输入保单号" type="number">
68
+ </div>
69
+ </div>
70
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
71
+ <div class="col-xs-4 col-sm-4 col-md-4">
72
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
73
+ <span class="text-left font">上期保费截至日期</span>
74
+ </div>
75
+ <div class="col-xs-8 col-sm-8 col-md-8">
76
+ <p class="text-left show-font">{{ model.f_last_insexpiration_date }}</p>
77
+ </div>
78
+ </div>
79
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
80
+ <div class="col-xs-4 col-sm-4 col-md-4">
81
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
82
+ <span class="text-left font">投保日期</span>
83
+ </div>
84
+ <div class="col-xs-8 col-sm-8 col-md-8">
85
+ <datepicker v-model="model.f_ins_start_date" :format="'yyyy-MM-dd'" :value.sync="model.f_ins_start_date"
86
+ placeholder="请选择投保日期" style="width: 60%" @change="changeExpirationDate">
87
+ </datepicker>
88
+ </div>
89
+ </div>
90
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
91
+ <div class="col-xs-4 col-sm-4 col-md-4">
92
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
93
+ <span class="text-left font">购买年限</span>
94
+ </div>
95
+ <div class="col-xs-8 col-sm-8 col-md-8">
96
+ <input v-model="model.f_salecount" class="form-control show-font" placeholder="购买年限" style="width: 60%"
97
+ type="number" @change="changeExpirationDate">
98
+ </div>
99
+ </div>
100
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
101
+ <div class="col-xs-4 col-sm-4 col-md-4">
102
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
103
+ <span class="text-left font">购买日期</span>
104
+ </div>
105
+ <div class="col-xs-8 col-sm-8 col-md-8">
106
+ <datepicker v-model="create_date" :format="'yyyy-MM-dd'" :value.sync="create_date"
107
+ placeholder="购买日期" style="width: 60%">
108
+ </datepicker>
109
+ </div>
110
+ </div>
111
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
112
+ <div class="col-xs-4 col-sm-4 col-md-4">
113
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
114
+ <span class="text-left font">到期日期</span>
115
+ </div>
116
+ <div class="col-xs-8 col-sm-8 col-md-8">
117
+ <datepicker v-model="model.f_expiration_date" :format="'yyyy-MM-dd'" :value.sync="model.f_expiration_date"
118
+ placeholder="到期日期" style="width: 60%">
119
+ </datepicker>
120
+ </div>
121
+ </div>
122
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
123
+ <div class="col-xs-4 col-sm-4 col-md-4">
124
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
125
+ <span class="text-left font">保险险种</span>
126
+ </div>
127
+ <div class="col-xs-8 col-sm-8 col-md-8">
128
+ <v-select v-model="model.f_insurance_type" :options="insurance_types"
129
+ :value-single="true" :value.sync="model.f_insurance_type"
130
+ close-on-select placeholder="保险险种"
131
+ style="width: 100%">
132
+ </v-select>
133
+ </div>
134
+ </div>
135
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
136
+ <div class="col-xs-4 col-sm-4 col-md-4">
137
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
138
+ <span class="text-left font">金额</span>
139
+ </div>
140
+ <div class="col-xs-8 col-sm-8 col-md-8">
141
+ <input v-model="model.f_money" class="form-control show-font" placeholder="请输入金额" type="number">
142
+ </div>
143
+ </div>
144
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
145
+ <div class="col-xs-4 col-sm-4 col-md-4">
146
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
147
+ <span class="text-left font">与投保人关系</span>
148
+ </div>
149
+ <div class="col-xs-8 col-sm-8 col-md-8">
150
+ <v-select v-model="model.f_relationship" :options="relationshipOptions"
151
+ :value-single="true" :value.sync="model.f_relationship"
152
+ close-on-select placeholder="请选择关系"
153
+ style="width: 100%">
154
+ </v-select>
155
+ </div>
156
+ </div>
157
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
158
+ <div class="col-xs-4 col-sm-4 col-md-4">
159
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
160
+ <span class="text-left font">收款方式</span>
161
+ </div>
162
+ <div class="col-xs-8 col-sm-8 col-md-8">
163
+ <v-select v-model="model.f_payment" :options="payTypes"
164
+ :value-single="true" :value.sync="model.f_payment"
165
+ close-on-select placeholder="收款方式"
166
+ style="width: 100%">
167
+ </v-select>
168
+ </div>
169
+ </div>
170
+ <div class="row app-row col-xs-12">
171
+ <div class="col-xs-4 col-sm-4 col-md-4">
172
+ <img alt="" src="../../../assets/add.png" style="width: 20px;">
173
+ <span class="text-left font">备注</span>
174
+ </div>
175
+ <div class="col-xs-8 col-sm-8 col-md-8">
176
+ <input v-model="model.f_comments" class="form-control show-font" placeholder="备注">
177
+ </div>
178
+ </div>
179
+ <div class="col-xs-12 text-center app-row">
180
+ <button class="btn btn-lg btn-font btn-color" style="width: 22%;" type="button" @click="commit()">提交</button>
181
+ </div>
182
+ </div>
183
+ </template>
184
+ <script>
185
+ import {HttpResetClass} from 'vue-client'
186
+ import * as Util from '../../../components/Util'
187
+ import Vue from 'vue'
188
+
189
+ export default {
190
+ title: '手机单户抄表',
191
+ data() {
192
+ return {
193
+ create_date: Util.getNowDate(),
194
+ isCommit: false,
195
+ insurance_types: [{label: '请选择', value: ''}, ...this.$appdata.getParam('险种')],
196
+ payTypes: [{label: '请选择', value: ''}, ...this.$appdata.getParam('付款方式')],
197
+ idTypeOptions: [
198
+ {label: '身份证', value: '身份证'},
199
+ {label: '军官证', value: '军官证'},
200
+ {label: '统一社会信用代码', value: '统一社会信用代码'},
201
+ {label: '港澳居民通行证', value: '港澳居民通行证'},
202
+ {label: '外国人永久居留证', value: '外国人永久居留证'},
203
+ {label: '户口本', value: '户口本'}
204
+ ],
205
+ relationshipOptions: [
206
+ {label: '本人', value: '0'},
207
+ {label: '配偶', value: '1'},
208
+ {label: '父母', value: '2'},
209
+ {label: '子女', value: '3'},
210
+ {label: '其他', value: '9'}
211
+ ]
212
+ }
213
+ },
214
+ props: {
215
+ model: {
216
+ type: Object,
217
+ default: {}
218
+ }
219
+ },
220
+ ready() {
221
+ new HttpResetClass().load('post', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
222
+ data: {
223
+ items: 'ui.*,p.f_province,p.f_city,p.f_district,tu.f_user_type,tu.f_user_id,tu.version as table_version',
224
+ tablename: 't_userinfo ui left join t_user_address ua on ui.f_userinfo_id = ua.f_userinfo_id left join t_pcd p on ua.f_pcd_id = p.id left join t_userfiles tu on tu.f_userinfo_id = ui.f_userinfo_id',
225
+ condition: `ui.f_userinfo_id = '${this.model.f_userinfo_id}' and tu.f_table_state in ('正常','停用','预备')`,
226
+ orderitem: '1'
227
+ }
228
+ }).then(response => {
229
+ this.model = Object.assign({}, this.model, response.data[0])
230
+ this.model.f_last_insexpiration_date = response.data[0].f_ins_stop_date
231
+ if (response.data[0].f_user_type.includes('非民用')) {
232
+ this.model.f_relationship = '9'
233
+ } else {
234
+ this.model.f_relationship = '0'
235
+ }
236
+ if (!this.model.province || !this.model.city || !this.model.county){
237
+ this.$showMessage('检查档案省、市、区数据是否正常')
238
+ }
239
+ })
240
+ this.model.f_money = ''
241
+ this.model.f_fee_type = ''
242
+ this.model.f_comments = ''
243
+ this.model.f_salecount = 1
244
+ this.model.f_ins_number = ''
245
+ this.model.f_ins_start_date = Util.toStandardDateString()
246
+ this.model.f_id_type = '身份证'
247
+ },
248
+ methods: {
249
+ async commit() {
250
+ if (!this.model.f_ins_start_date) {
251
+ this.$showMessage('投保日期未选择,请选择后重新尝试。')
252
+ return
253
+ }
254
+ if (!this.model.f_expiration_date) {
255
+ this.$showMessage('到期日期未选择,请选择后重新尝试。')
256
+ return
257
+ }
258
+ if (!this.model.f_insurance_type) {
259
+ this.$showMessage('保险险种未填写,请填写后重新尝试。')
260
+ return
261
+ }
262
+ if (!this.model.f_money) {
263
+ this.$showMessage('金额未填写,请填写后重新尝试。')
264
+ return
265
+ }
266
+ if (!this.model.f_id_type) {
267
+ this.$showMessage('证件类型未选择,请选择后重新尝试。')
268
+ return
269
+ }
270
+ if (!this.model.f_idnumber) {
271
+ this.$showMessage('证件号码未填写,请填写后重新尝试。')
272
+ return
273
+ }
274
+ if (!this.model.f_relationship) {
275
+ this.$showMessage('与投保人关系未选择,请选择后重新尝试。')
276
+ return
277
+ }
278
+ let data = {
279
+ "begin_date": this.model.f_ins_start_date,// 保单开始日期 yyyy-mm-dd
280
+ "insure_period_display": `${this.model.f_salecount}年`,// 保期
281
+ "user_name": this.model.f_user_name,// 投保人姓名
282
+ "id_type": this.model.f_id_type,//证件类型
283
+ "id_number": this.model.f_idnumber,// 证件号码
284
+ "user_phone": this.model.f_user_phone,// 投保人电话
285
+ "user_address": this.model.f_address,// 投保人地址
286
+ "province": this.model.f_province,//省
287
+ "city": this.model.f_city,//市
288
+ "county": this.model.f_district,//区
289
+ "insuredList": [ //被保人信息
290
+ {
291
+ "user_name": this.model.f_user_name,// 被保人姓名
292
+ "id_type": this.model.f_id_type,//证件类型
293
+ "id_number": this.model.f_idnumber,// 证件号码
294
+ "relationship": this.model.f_relationship//与投保人关系: 0 本人 1 配偶 2 父母 3 子女 9 其他 若投保人是企业,默认传9
295
+ }
296
+ ]
297
+ }
298
+ try {
299
+ const response = await new HttpResetClass().load('post', `${this.$androidUtil.getProxyUrl()}/api/af-revenue/jingSuanShi/specialToPolicy`, data)
300
+ let commit_data = JSON.parse(JSON.stringify(this.model))
301
+ if (response.data.message.includes('成功')) {
302
+ commit_data.f_serial_id = response.data.orderNo
303
+ } else {
304
+ this.$showMessage(response.data.message)
305
+ return
306
+ }
307
+ commit_data.f_buy_date = this.create_date
308
+ commit_data.f_total_ins_charge = 0
309
+ commit_data.f_operatorid = Vue.user.id
310
+ commit_data.f_operator = Vue.user.name
311
+ if (this.model.f_payment == '余额抵扣'){
312
+ if (this.model.f_meter_classify == '机表'){
313
+ if((this.model.f_balance -0)-this.model.f_money < 0){
314
+ this.$showMessage('当前用户账户余额不够抵扣本次收费,请选择其他的收费方式进行收费')
315
+ return
316
+ }
317
+ commit_data.f_receivable = Number(commit_data.f_money)
318
+ commit_data.f_money = 0
319
+ }else {
320
+ this.$showMessage('仅有机表用户可选择余额抵扣')
321
+ return
322
+ }
323
+ }
324
+ commit_data.f_operate_date = Util.toStandardDateString()
325
+ commit_data.f_state = '有效'
326
+ commit_data.f_orgid = Vue.user.orgid
327
+ commit_data.f_orgname = Vue.user.orgs
328
+ commit_data.f_depid = Vue.user.depids
329
+ commit_data.f_depname = Vue.user.deps
330
+ await new HttpResetClass().load('post', `${this.$androidUtil.getProxyUrl()}/api/af-revenue/logic/saveInsInfo`, {data: commit_data})
331
+ this.$showMessage('提交成功')
332
+ this.$back()
333
+ } catch (error) {
334
+ this.$showMessage('提交失败')
335
+ this.isCommit = false
336
+ }
337
+ },
338
+ changeExpirationDate() {
339
+ if (this.model.f_ins_start_date && this.model.f_salecount) {
340
+ let factoryDate = new Date(this.model.f_ins_start_date);
341
+ let scrapDate = new Date(factoryDate);
342
+ scrapDate.setFullYear(factoryDate.getFullYear() + parseInt(this.model.f_salecount));
343
+ let year = scrapDate.getFullYear();
344
+ let month = (scrapDate.getMonth() + 1).toString().padStart(2, '0');
345
+ let day = scrapDate.getDate().toString().padStart(2, '0');
346
+ this.model.f_expiration_date = `${year}-${month}-${day}`
347
+ }
348
+ }
349
+ },
350
+ watch: {
351
+ 'model.f_insurance_type'() {
352
+ this.model.f_money = this.$appdata.getSingleValue(this.model.f_insurance_type) || 0
353
+ }
354
+ }
355
+ }
356
+ </script>
357
+ <style scoped>
358
+ .mt-5 {
359
+ margin-top: 5px;
360
+ }
361
+
362
+ .mt-10 {
363
+ margin-top: 10px;
364
+ }
365
+
366
+ .mt-20 {
367
+ margin-top: 20px;
368
+ }
369
+
370
+ .app-row {
371
+ background-color: white;
372
+ padding: 10px 10px 0 10px;
373
+ border-bottom: 1px solid rgba(235, 235, 235, 0.5);
374
+ }
375
+
376
+ .app-row-none-border {
377
+ background-color: white;
378
+ padding: 10px 10px 0 10px;
379
+ }
380
+
381
+ .font {
382
+ font: 15px PingFang-SC-Medium;
383
+ color: #666666;
384
+ }
385
+
386
+ .show-font {
387
+ font: 15px PingFang-SC-Medium;
388
+ color: #333333
389
+ }
390
+
391
+ .btn-font {
392
+ font: 600 16px PingFang-SC-Bold;
393
+ color: #499EDF;
394
+ }
395
+
396
+ .btn-color {
397
+ background-color: #FFFFFF;
398
+ border-radius: 10px;
399
+ border: 1px solid #499EDF;
400
+ }
401
+ </style>
@@ -0,0 +1,9 @@
1
+ // 分公司特殊组件页面注册
2
+ import Vue from "vue";
3
+
4
+ // 手机特殊目录注册到该文件中
5
+ let specialComp = {
6
+ 'phone-insurance-purchase-detail': (resolve) => { require(['./android/PhoneInsurancePurchaseDetail'], resolve) }
7
+ }
8
+ exports.specialComp = specialComp
9
+
@@ -709,6 +709,7 @@ export default {
709
709
  }).then((res) => {
710
710
  if (res.data.code == 200) {
711
711
  this.loading = false;
712
+ this.$root.$emit('audit-status-changed')
712
713
  this.$back()
713
714
  }
714
715
  })
@@ -738,6 +739,7 @@ export default {
738
739
  this.loading = false;
739
740
  this.message = '';
740
741
  this.showModel = false;
742
+ this.$root.$emit('audit-status-changed')
741
743
  this.back();
742
744
  }
743
745
  })
@@ -1090,6 +1092,7 @@ export default {
1090
1092
  })
1091
1093
  }
1092
1094
  } else {
1095
+ this.$root.$emit('audit-status-changed')
1093
1096
  this.$back()
1094
1097
  }
1095
1098
  },