safecheck-client 4.0.0-64 → 4.0.0-66

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.
@@ -0,0 +1,11 @@
1
+ let specialComp = {
2
+ 'paper-main': (resolve) => { require(['./pc/PaperList'], resolve) },
3
+ 'check-plan-area-list': (resolve) => {require(['./pc/CheckPlanAreaList'], resolve)},
4
+ 'safe-defect-paper-new': (resolve) => {require(['./pc/DefectPaperNew'], resolve)},
5
+ 'check-search-user': (resolve) => {require(['./pc/CheckSearchUser'], resolve)},
6
+ 'safe-defect-list-new': (resolve) => {require(['./pc/DefectListNew'], resolve)},
7
+ 'check-user-list': (resolve) => {require(['./pc/checkUserList'], resolve)},
8
+ 'plan-manage': (resolve) => {require(['./pc/PlanManage.vue'], resolve)}
9
+
10
+ }
11
+ exports.specialComp = specialComp
@@ -0,0 +1,293 @@
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 src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px" alt="">
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 src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px" alt="">
15
+ <span class="text-left font">投保人</span>
16
+ </div>
17
+ <div class="col-xs-8 col-sm-8 col-md-8">
18
+ <input type="text" class="form-control show-font" v-model="model.f_operator" placeholder="请输入投保人">
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 src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px" alt="">
24
+ <span class="text-left font">客户地址</span>
25
+ </div>
26
+ <div class="col-xs-8 col-sm-10 col-md-10">
27
+ <input type="text" class="form-control show-font" v-model="model.f_address" placeholder="请输入客户地址">
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 src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px" alt="">
33
+ <span class="text-left font">客户电话</span>
34
+ </div>
35
+ <div class="col-xs-8 col-sm-8 col-md-8">
36
+ <input type="number" class="form-control show-font" v-model="model.f_user_phone" placeholder="请输入电话号码">
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 src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px" alt="">
42
+ <span class="text-left font">身份证号</span>
43
+ </div>
44
+ <div class="col-xs-8 col-sm-8 col-md-8">
45
+ <input type="text" class="form-control show-font" v-model="model.f_idnumber" placeholder="请输入身份证号">
46
+ </div>
47
+ </div>
48
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
49
+ <div class="col-xs-4 col-sm-4 col-md-4">
50
+ <img src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px" alt="">
51
+ <span class="text-left font">保单号</span>
52
+ </div>
53
+ <div class="col-xs-8 col-sm-8 col-md-8">
54
+ <input type="number" class="form-control show-font" v-model="model.f_ins_number" placeholder="请输入保单号">
55
+ </div>
56
+ </div>
57
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
58
+ <div class="col-xs-4 col-sm-4 col-md-4">
59
+ <img src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px" alt="">
60
+ <span class="text-left font">上期保费截至日期</span>
61
+ </div>
62
+ <div class="col-xs-8 col-sm-8 col-md-8">
63
+ <p class="text-left show-font">{{ model.f_last_insexpiration_date }}</p>
64
+ </div>
65
+ </div>
66
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
67
+ <div class="col-xs-4 col-sm-4 col-md-4">
68
+ <img src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px" alt="">
69
+ <span class="text-left font">投保日期</span>
70
+ </div>
71
+ <div class="col-xs-8 col-sm-8 col-md-8">
72
+ <datepicker :value.sync="model.f_ins_start_date" v-model="model.f_ins_start_date" :format="'yyyy-MM-dd'"
73
+ placeholder="请选择投保日期" style="width: 60%" @change="changeExpirationDate">
74
+ </datepicker>
75
+ </div>
76
+ </div>
77
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
78
+ <div class="col-xs-4 col-sm-4 col-md-4">
79
+ <img src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px" alt="">
80
+ <span class="text-left font">购买年限</span>
81
+ </div>
82
+ <div class="col-xs-8 col-sm-8 col-md-8">
83
+ <input type="number" placeholder="购买年限" style="width: 60%" class="form-control show-font" v-model="model.f_salecount" @change="changeExpirationDate">
84
+ </div>
85
+ </div>
86
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
87
+ <div class="col-xs-4 col-sm-4 col-md-4">
88
+ <img src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px" alt="">
89
+ <span class="text-left font">购买日期</span>
90
+ </div>
91
+ <div class="col-xs-8 col-sm-8 col-md-8">
92
+ <datepicker :value.sync="create_date" v-model="create_date" :format="'yyyy-MM-dd'"
93
+ placeholder="购买日期" style="width: 60%">
94
+ </datepicker>
95
+ </div>
96
+ </div>
97
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
98
+ <div class="col-xs-4 col-sm-4 col-md-4">
99
+ <img src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px" alt="">
100
+ <span class="text-left font">到期日期</span>
101
+ </div>
102
+ <div class="col-xs-8 col-sm-8 col-md-8">
103
+ <datepicker :value.sync="model.f_expiration_date" v-model="model.f_expiration_date" :format="'yyyy-MM-dd'"
104
+ placeholder="到期日期" style="width: 60%">
105
+ </datepicker>
106
+ </div>
107
+ </div>
108
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
109
+ <div class="col-xs-4 col-sm-4 col-md-4">
110
+ <img src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px" alt="">
111
+ <span class="text-left font">金额</span>
112
+ </div>
113
+ <div class="col-xs-8 col-sm-8 col-md-8">
114
+ <input type="number" class="form-control show-font" v-model="model.f_money" placeholder="请输入金额">
115
+ </div>
116
+ </div>
117
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
118
+ <div class="col-xs-4 col-sm-4 col-md-4">
119
+ <img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
120
+ <span class="text-left font">保险险种</span>
121
+ </div>
122
+ <div class="col-xs-8 col-sm-8 col-md-8">
123
+ <v-select v-model="model.f_insurance_type" :options="insurance_types"
124
+ :value-single="true" :value.sync="model.f_insurance_type"
125
+ close-on-select placeholder="保险险种"
126
+ style="width: 100%">
127
+ </v-select>
128
+ </div>
129
+ </div>
130
+ <div class="row app-row col-xs-12 col-sm-6 col-md-6">
131
+ <div class="col-xs-4 col-sm-4 col-md-4">
132
+ <img src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px" alt="">
133
+ <span class="text-left font">办理人</span>
134
+ </div>
135
+ <div class="col-xs-8 col-sm-8 col-md-8">
136
+ <input type="text" class="form-control show-font" v-model="model.f_ins_number" placeholder="请输入办理人">
137
+ </div>
138
+ </div>
139
+ <div class="row app-row col-xs-12">
140
+ <div class="col-xs-4 col-sm-4 col-md-4">
141
+ <img src="../../../assets/add.png" style="width: 20px;" alt="">
142
+ <span class="text-left font">备注</span>
143
+ </div>
144
+ <div class="col-xs-8 col-sm-8 col-md-8">
145
+ <input class="form-control show-font" v-model="model.f_comments" placeholder="备注">
146
+ </div>
147
+ </div>
148
+ <div class="col-xs-12 text-center app-row">
149
+ <button type="button" class="btn btn-lg btn-font btn-color" style="width: 22%;" @click="commit()">提交</button>
150
+ </div>
151
+ </div>
152
+ </template>
153
+ <script>
154
+ import { HttpResetClass } from 'vue-client'
155
+ import * as Util from '../../../components/Util'
156
+ import Vue from 'vue'
157
+ export default {
158
+ title: '手机单户抄表',
159
+ data() {
160
+ return {
161
+ create_date:Util.getNowDate(),
162
+ insurance_types: [{label: '请选择', value: ''}, ...this.$appdata.getParam('险种')],
163
+ isCommit:false
164
+ }
165
+ },
166
+ props: {
167
+ data: {
168
+ type: Object,
169
+ default: function () {
170
+ return {
171
+ }
172
+ }
173
+ },
174
+ model: {
175
+ type: Object,
176
+ default: {}
177
+ }
178
+ },
179
+ ready() {
180
+ new HttpResetClass().load('post', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
181
+ data: {
182
+ items: 'tu.*,uf.f_userfiles_id',
183
+ tablename: 't_userinfo tu left join t_userfiles uf on tu.f_userinfo_id = uf.f_userinfo_id',
184
+ condition: `tu.f_userinfo_id = '${this.model.f_userinfo_id}' and uf.f_table_state in ('停用','正常')`,
185
+ orderitem: '1'
186
+ }
187
+ }).then(response => {
188
+ this.model = Object.assign({}, this.model, response.data[0])
189
+ this.model.f_last_insexpiration_date = response.data[0].f_ins_stop_date
190
+ this.model.f_total_ins_charge = response.data[0].f_total_ins_charge || 0
191
+ })
192
+ this.model.f_money = ''
193
+ this.model.f_fee_type = ''
194
+ this.model.f_insurance_type = '燃气险'
195
+ this.model.f_comments = ''
196
+ this.model.f_salecount = 1
197
+ this.model.f_ins_number = ''
198
+ this.model.f_ins_start_date = Util.toStandardDateString()
199
+ },
200
+ methods: {
201
+ commit() {
202
+ if (!this.model.f_money){
203
+ this.$showMessage('金额未填写,请填写后重新尝试。')
204
+ return
205
+ }
206
+ if (!this.model.f_ins_start_date){
207
+ this.$showMessage('投保日期未选择,请选择后重新尝试。')
208
+ return
209
+ }
210
+ if (!this.model.f_expiration_date){
211
+ this.$showMessage('到期日期未选择,请选择后重新尝试。')
212
+ return
213
+ }
214
+ if (!this.model.f_insurance_type){
215
+ this.$showMessage('保险险种未填写,请填写后重新尝试。')
216
+ return
217
+ }
218
+ let commit_data = this.model
219
+ commit_data.f_buy_date = this.create_date
220
+ commit_data.f_operatorid = Vue.user.id
221
+ commit_data.f_operate_date = Util.toStandardDateString()
222
+ commit_data.f_state = '有效'
223
+ commit_data.f_orgid = Vue.user.orgid
224
+ commit_data.f_orgname = Vue.user.orgs
225
+ commit_data.f_depid = Vue.user.depids
226
+ commit_data.f_depname = Vue.user.deps
227
+ new HttpResetClass().load('post', `${this.$androidUtil.getProxyUrl()}/api/af-revenue/logic/saveInsInfo`, { data: commit_data }).then(response => {
228
+ this.$showMessage('提交成功')
229
+ this.$back()
230
+ }).catch(error => {
231
+ this.$showMessage('提交失败')
232
+ this.isCommit = false
233
+ })
234
+ },
235
+ changeExpirationDate(){
236
+ if (this.model.f_ins_start_date && this.model.f_salecount){
237
+ let factoryDate = new Date(this.model.f_ins_start_date)
238
+ let scrapDate = new Date(factoryDate)
239
+ scrapDate.setFullYear(factoryDate.getFullYear() + parseInt(this.model.f_salecount))
240
+ let year = scrapDate.getFullYear()
241
+ let month = (scrapDate.getMonth() + 1).toString().padStart(2, '0')
242
+ let day = scrapDate.getDate().toString().padStart(2, '0')
243
+ this.model.f_expiration_date = `${year}-${month}-${day}`
244
+ }
245
+ }
246
+ }
247
+ }
248
+ </script>
249
+ <style scoped>
250
+ .mt-5 {
251
+ margin-top: 5px;
252
+ }
253
+
254
+ .mt-10 {
255
+ margin-top: 10px;
256
+ }
257
+
258
+ .mt-20 {
259
+ margin-top: 20px;
260
+ }
261
+
262
+ .app-row {
263
+ background-color: white;
264
+ padding: 10px 10px 0 10px;
265
+ border-bottom: 1px solid rgba(235, 235, 235, 0.5);
266
+ }
267
+
268
+ .app-row-none-border {
269
+ background-color: white;
270
+ padding: 10px 10px 0 10px;
271
+ }
272
+
273
+ .font {
274
+ font: 15px PingFang-SC-Medium;
275
+ color: #666666;
276
+ }
277
+
278
+ .show-font {
279
+ font: 15px PingFang-SC-Medium;
280
+ color: #333333
281
+ }
282
+
283
+ .btn-font {
284
+ font: 600 16px PingFang-SC-Bold;
285
+ color: #499EDF;
286
+ }
287
+
288
+ .btn-color {
289
+ background-color: #FFFFFF;
290
+ border-radius: 10px;
291
+ border: 1px solid #499EDF;
292
+ }
293
+ </style>
@@ -8,6 +8,7 @@ let specialComp = {
8
8
  'PhoneUpUserinfo': (resolve) => { require(['./android/PhoneUpUserinfo.vue'], resolve) },
9
9
  'area-plan': (resolve) => { require(['./android/AreaPlan.vue'], resolve) },
10
10
  'check-plan-list': (resolve) => { require(['./android/CheckPlanList.vue'], resolve) },
11
+ 'phone-insurance-purchase-detail': (resolve) => { require(['./android/PhoneInsurancePurchaseDetail'], resolve) },
11
12
  'check-plan-list-area': (resolve) => { require(['./android/CheckPlanListArea.vue'], resolve) },
12
13
  'current-create': (resolve) => { require(['./android/CurrentCreate.vue'], resolve) },
13
14