默认提交
Showing
5 changed files
with
470 additions
and
435 deletions
| 1 | import api from '@/api/api' | 1 | import api from '@/api/api' |
| 2 | import { | 2 | import { |
| 3 | httpGet, | 3 | httpGet, |
| 4 | httpPost, | 4 | httpPost, |
| 5 | formdata | 5 | formdata |
| 6 | } from '@/api/fetch-api.js' | 6 | } from '@/api/fetch-api.js' |
| 7 | 7 | ||
| 8 | import DatePicker from '@/components/date-picker/date-picker.vue'; | 8 | import DatePicker from '@/components/date-picker/date-picker.vue'; |
| 9 | import ClarmsUpload from './clarms-plugins-upload.vue'; | 9 | import ClarmsUpload from './clarms-plugins-upload.vue'; |
| 10 | import Vue from 'vue'; | 10 | import Vue from 'vue'; |
| 11 | import { Loading } from 'vant'; | 11 | import { |
| 12 | import { Select, Option } from 'element-ui'; | 12 | Loading |
| 13 | } from 'vant'; | ||
| 14 | import { | ||
| 15 | Select, | ||
| 16 | Option | ||
| 17 | } from 'element-ui'; | ||
| 13 | 18 | ||
| 14 | Vue.use(Loading); | 19 | Vue.use(Loading); |
| 15 | Vue.use(Select); | 20 | Vue.use(Select); |
| 16 | Vue.use(Option); | 21 | Vue.use(Option); |
| 17 | 22 | ||
| 18 | export default { | 23 | export default { |
| 19 | props: { | 24 | props: { |
| 20 | // 是否显示组件 | 25 | // 是否显示组件 |
| 21 | insuredList: { | 26 | insuredList: { |
| 22 | type: Array, | 27 | type: Array, |
| 23 | default() { | 28 | default () { |
| 24 | return [] | 29 | return [] |
| 25 | } | 30 | } |
| 26 | }, | 31 | }, |
| 27 | cid: { | 32 | cid: { |
| 28 | type: String, | 33 | type: String, |
| 29 | default: "" | 34 | default: "" |
| 30 | } | 35 | } |
| 31 | }, | 36 | }, |
| 32 | data() { | 37 | data() { |
| 33 | return { | 38 | return { |
| 34 | showTips: false, | 39 | showTips: false, |
| 35 | // 候选人所购买的保单可选择的类型 | 40 | // 候选人所购买的保单可选择的类型 |
| 36 | /** | 41 | /** |
| 37 | * 1 意外医疗 | 42 | * 1 意外医疗 |
| 38 | * 2 疾病医疗 | 43 | * 2 疾病医疗 |
| 39 | * 3 意外残疾 | 44 | * 3 意外残疾 |
| 40 | * 4 疾病残疾 | 45 | * 4 疾病残疾 |
| 41 | * 5 意外死亡 | 46 | * 5 意外死亡 |
| 42 | * 6 疾病死亡 | 47 | * 6 疾病死亡 |
| 43 | * 7 重大疾病 | 48 | * 7 重大疾病 |
| 44 | */ | 49 | */ |
| 45 | typeCandidates: ['1', '2', '5', '6', '7'], | 50 | typeCandidates: ['1', '2', '5', '6', '7'], |
| 46 | // 已经选择的类型, | 51 | // 已经选择的类型, |
| 47 | typeSelected: [], | 52 | typeSelected: [], |
| 48 | images: [], | 53 | images: [], |
| 49 | agress: false, | 54 | agress: false, |
| 50 | data: { | 55 | data: { |
| 51 | insuredIndex: "", | 56 | insuredIndex: "", |
| 52 | amount: null, | 57 | amount: null, |
| 53 | contactDate: "", | 58 | contactDate: "", |
| 54 | // 必传资料 | 59 | // 必传资料 |
| 55 | HT41: null, | 60 | HT41: null, |
| 56 | HT26: null, | 61 | HT26: null, |
| 57 | // 非必传资料 | 62 | // 非必传资料 |
| 58 | HT29: null, | 63 | HT29: null, |
| 59 | HT34: null, | 64 | HT34: null, |
| 60 | HT16: null, | 65 | HT16: null, |
| 61 | 66 | ||
| 62 | // 是否正在上传 | 67 | // 是否正在上传 |
| 63 | HT41Uploading: false, | 68 | HT41Uploading: false, |
| 64 | HT26Uploading: false, | 69 | HT26Uploading: false, |
| 65 | HT29Uploading: false, | 70 | HT29Uploading: false, |
| 66 | HT34Uploading: false, | 71 | HT34Uploading: false, |
| 67 | HT16Uploading: false, | 72 | HT16Uploading: false, |
| 68 | 73 | ||
| 69 | }, | 74 | }, |
| 70 | loading: false, | 75 | loading: false, |
| 71 | contactDateError: false, | 76 | contactDateError: false, |
| 72 | // 判断是否有合法的保单 | 77 | // 判断是否有合法的保单 |
| 73 | policyIllegal: true, | 78 | policyIllegal: true, |
| 74 | } | 79 | } |
| 75 | }, | 80 | }, |
| 76 | components: { | 81 | components: { |
| 77 | DatePicker, | 82 | DatePicker, |
| 78 | ClarmsUpload | 83 | ClarmsUpload |
| 79 | }, | 84 | }, |
| 80 | computed: { | 85 | computed: { |
| 81 | lan() { | 86 | lan() { |
| 82 | return this.$i18n.locale; | 87 | return this.$i18n.locale; |
| 83 | }, | 88 | }, |
| 84 | i18n() { | 89 | i18n() { |
| 85 | return this.$i18n.messages && this.$i18n.locale ? this.$i18n.messages[this.$i18n.locale] : {}; | 90 | return this.$i18n.messages && this.$i18n.locale ? this.$i18n.messages[this.$i18n.locale] : {}; |
| 86 | }, | 91 | }, |
| 87 | submitBtnDisabled() { | 92 | submitBtnDisabled() { |
| 88 | // 受保人 | 93 | // 受保人 |
| 89 | let b1 = this.data.insuredIndex ? false : true; | 94 | let b1 = this.data.insuredIndex ? false : true; |
| 90 | // 申请类型 | 95 | // 申请类型 |
| 91 | let b2 = this.typeSelected.length > 0 ? false : true; | 96 | let b2 = this.typeSelected.length > 0 ? false : true; |
| 92 | // 申请额度 | 97 | // 申请额度 |
| 93 | let b3 = this.data.amount > 0 ? false : true; | 98 | let b3 = this.data.amount > 0 ? false : true; |
| 94 | // 日期校验 | 99 | // 日期校验 |
| 95 | let b4 = this.data.contactDate ? false : true; | 100 | let b4 = this.data.contactDate ? false : true; |
| 96 | let b5 = this.contactDateError; | 101 | let b5 = this.contactDateError; |
| 97 | 102 | ||
| 98 | // 必传资料 | 103 | // 必传资料 |
| 99 | let b6 = this.data.HT41 && this.data.HT41.length > 0 ? false : true; | 104 | let b6 = this.data.HT41 && this.data.HT41.length > 0 ? false : true; |
| 100 | let b7 = this.data.HT26 && this.data.HT26.length > 0 ? false : true; | 105 | let b7 = this.data.HT26 && this.data.HT26.length > 0 ? false : true; |
| 101 | // 资料上传中 | 106 | // 资料上传中 |
| 102 | let b8 = this.data.HT41Uploading || this.data.HT26Uploading || this.data.HT29Uploading || this.data.HT34Uploading || this.data.HT16Uploading; | 107 | let b8 = this.data.HT41Uploading || this.data.HT26Uploading || this.data.HT29Uploading || this.data.HT34Uploading || this.data.HT16Uploading; |
| 103 | let b9 = !this.agress; | 108 | let b9 = !this.agress; |
| 104 | 109 | ||
| 105 | let b10 = this.policyIllegal; | 110 | let b10 = this.policyIllegal; |
| 106 | 111 | ||
| 107 | return b1 || b2 || b3 || b4 || b5 || b6 || b7 || b8 || b9 || b10; | 112 | return b1 || b2 || b3 || b4 || b5 || b6 || b7 || b8 || b9 || b10; |
| 108 | } | 113 | } |
| 109 | }, | 114 | }, |
| 110 | methods: { | 115 | methods: { |
| 111 | initData() { | 116 | initData() { |
| 112 | // console.log("this.insuredList = ", this.insuredList); | 117 | // console.log("this.insuredList = ", this.insuredList); |
| 113 | }, | 118 | }, |
| 114 | typeClickHandle(t) { | 119 | typeClickHandle(t) { |
| 115 | let index = this.typeSelected.indexOf(t); | 120 | let index = this.typeSelected.indexOf(t); |
| 116 | if (index > -1) { | 121 | if (index > -1) { |
| 117 | this.typeSelected.splice(index, 1); | 122 | this.typeSelected.splice(index, 1); |
| 118 | } else { | 123 | } else { |
| 119 | this.typeSelected.push(t); | 124 | this.typeSelected.push(t); |
| 120 | } | 125 | } |
| 121 | }, | 126 | }, |
| 122 | amountCheck() { | 127 | amountCheck() { |
| 123 | if (this.data.amount) { | 128 | if (this.data.amount) { |
| 124 | if (this.data.amount < 0) { | 129 | if (this.data.amount < 0) { |
| 125 | this.data.amount = 0; | 130 | this.data.amount = 0; |
| 126 | } else if (this.data.amount > 5000) { | 131 | } else if (this.data.amount > 5000) { |
| 127 | this.data.amount = 5000; | 132 | this.data.amount = 5000; |
| 128 | } | 133 | } |
| 129 | } | 134 | } |
| 130 | }, | 135 | }, |
| 131 | uploadSuccess(data) { | 136 | uploadSuccess(data) { |
| 132 | // console.log(data); | 137 | // console.log(data); |
| 133 | switch (data.type) { | 138 | switch (data.type) { |
| 134 | case "HT41": | 139 | case "HT41": |
| 135 | this.data.HT41Uploading = false; | 140 | this.data.HT41Uploading = false; |
| 136 | this.data.HT41 = data.list; | 141 | this.data.HT41 = data.list; |
| 137 | break; | 142 | break; |
| 138 | case "HT26": | 143 | case "HT26": |
| 139 | this.data.HT26Uploading = false; | 144 | this.data.HT26Uploading = false; |
| 140 | this.data.HT26 = data.list; | 145 | this.data.HT26 = data.list; |
| 141 | break; | 146 | break; |
| 142 | case "HT29": | 147 | case "HT29": |
| 143 | this.data.HT29Uploading = false; | 148 | this.data.HT29Uploading = false; |
| 144 | this.data.HT29 = data.list; | 149 | this.data.HT29 = data.list; |
| 145 | break; | 150 | break; |
| 146 | case "HT34": | 151 | case "HT34": |
| 147 | this.data.HT34Uploading = false; | 152 | this.data.HT34Uploading = false; |
| 148 | this.data.HT34 = data.list; | 153 | this.data.HT34 = data.list; |
| 149 | break; | 154 | break; |
| 150 | case "HT16": | 155 | case "HT16": |
| 151 | this.data.HT16Uploading = false; | 156 | this.data.HT16Uploading = false; |
| 152 | this.data.HT16 = data.list; | 157 | this.data.HT16 = data.list; |
| 153 | break; | 158 | break; |
| 154 | } | 159 | } |
| 155 | }, | 160 | }, |
| 156 | beforeUpload(data) { | 161 | beforeUpload(data) { |
| 157 | // console.log(data); | 162 | // console.log(data); |
| 158 | switch (data.type) { | 163 | switch (data.type) { |
| 159 | case "HT41": | 164 | case "HT41": |
| 160 | this.data.HT41Uploading = true; | 165 | this.data.HT41Uploading = true; |
| 161 | this.data.HT41 = []; | 166 | this.data.HT41 = []; |
| 162 | break; | 167 | break; |
| 163 | case "HT26": | 168 | case "HT26": |
| 164 | this.data.HT26Uploading = true; | 169 | this.data.HT26Uploading = true; |
| 165 | this.data.HT26 = []; | 170 | this.data.HT26 = []; |
| 166 | break; | 171 | break; |
| 167 | case "HT29": | 172 | case "HT29": |
| 168 | this.data.HT29Uploading = true; | 173 | this.data.HT29Uploading = true; |
| 169 | this.data.HT29 = []; | 174 | this.data.HT29 = []; |
| 170 | break; | 175 | break; |
| 171 | case "HT34": | 176 | case "HT34": |
| 172 | this.data.HT34Uploading = true; | 177 | this.data.HT34Uploading = true; |
| 173 | this.data.HT34 = []; | 178 | this.data.HT34 = []; |
| 174 | break; | 179 | break; |
| 175 | case "HT16": | 180 | case "HT16": |
| 176 | this.data.HT16Uploading = true; | 181 | this.data.HT16Uploading = true; |
| 177 | this.data.HT16 = []; | 182 | this.data.HT16 = []; |
| 178 | break; | 183 | break; |
| 179 | } | 184 | } |
| 180 | }, | 185 | }, |
| 181 | checkDate(data) { | 186 | checkDate(data) { |
| 182 | this.contactDateError = data.disable; | 187 | this.contactDateError = data.disable; |
| 183 | }, | 188 | }, |
| 184 | toContact() { | 189 | toContact() { |
| 185 | this.$router.push({ | 190 | this.$router.push({ |
| 186 | path: "/custom/service?q=m1" | 191 | path: "/custom/service?q=m1" |
| 187 | }); | 192 | }); |
| 188 | }, | 193 | }, |
| 189 | submitMaterial() { | 194 | submitMaterial() { |
| 190 | 195 | ||
| 191 | if (this.submitBtnDisabled) { | 196 | if (this.submitBtnDisabled) { |
| 192 | return; | 197 | return; |
| 193 | } | 198 | } |
| 194 | if (this.loading) { | 199 | if (this.loading) { |
| 195 | return; | 200 | return; |
| 196 | } | 201 | } |
| 197 | let policy = this.checkPolicy(); | 202 | let policy = this.checkPolicy(); |
| 198 | if (!policy) { | 203 | if (!policy) { |
| 199 | return; | 204 | return; |
| 200 | } | 205 | } |
| 201 | let insured = this.insuredList[this.data.insuredIndex - 1]; | 206 | let insured = this.insuredList[this.data.insuredIndex - 1]; |
| 202 | this.loading = true; | 207 | this.loading = true; |
| 203 | 208 | ||
| 204 | let imageList = []; | 209 | let imageList = []; |
| 205 | imageList = this.data.HT41 && this.data.HT41.length > 0 ? imageList.concat(this.data.HT41) : imageList; | 210 | imageList = this.data.HT41 && this.data.HT41.length > 0 ? imageList.concat(this.data.HT41) : imageList; |
| 206 | imageList = this.data.HT26 && this.data.HT26.length > 0 ? imageList.concat(this.data.HT26) : imageList; | 211 | imageList = this.data.HT26 && this.data.HT26.length > 0 ? imageList.concat(this.data.HT26) : imageList; |
| 207 | imageList = this.data.HT29 && this.data.HT29.length > 0 ? imageList.concat(this.data.HT29) : imageList; | 212 | imageList = this.data.HT29 && this.data.HT29.length > 0 ? imageList.concat(this.data.HT29) : imageList; |
| 208 | imageList = this.data.HT34 && this.data.HT34.length > 0 ? imageList.concat(this.data.HT34) : imageList; | 213 | imageList = this.data.HT34 && this.data.HT34.length > 0 ? imageList.concat(this.data.HT34) : imageList; |
| 209 | imageList = this.data.HT16 && this.data.HT16.length > 0 ? imageList.concat(this.data.HT16) : imageList; | 214 | imageList = this.data.HT16 && this.data.HT16.length > 0 ? imageList.concat(this.data.HT16) : imageList; |
| 210 | 215 | ||
| 211 | let params = { | 216 | let params = { |
| 212 | cid: this.cid, | 217 | cid: this.cid, |
| 213 | insuredId: insured.insuredId, | 218 | insuredId: insured.insuredId, |
| 214 | policyId: policy.policyId, | 219 | policyId: policy.policyId, |
| 215 | accidentTime: this.data.contactDate, | 220 | accidentTime: this.data.contactDate, |
| 216 | applyReasonList: this.typeSelected.join(","), | 221 | applyReasonList: this.typeSelected.join(","), |
| 217 | treatmentAmount: this.data.amount, | 222 | treatmentAmount: this.data.amount, |
| 218 | imageList: imageList | 223 | imageList: imageList |
| 219 | } | 224 | } |
| 220 | httpPost({ url: api.clarmsRegisterCase, data: params }).then(res => { | 225 | httpPost({ |
| 221 | this.$emit("showModal", 2); | 226 | url: api.clarmsRegisterCase, |
| 222 | this.loading = false; | 227 | data: params |
| 223 | this.agress = false; | 228 | }).then(res => { |
| 224 | }).catch(e => { | 229 | this.$emit("showModal", 2); |
| 225 | this.loading = false; | 230 | this.loading = false; |
| 226 | this.showTips = true; | 231 | this.agress = false; |
| 227 | this.agress = false; | 232 | }).catch(e => { |
| 228 | }) | 233 | this.loading = false; |
| 229 | }, | 234 | this.showTips = true; |
| 230 | checkPolicy() { | 235 | this.agress = false; |
| 231 | // 校验选择的受保人在选择的时间点内是否有保单 | 236 | }) |
| 232 | if (this.contactDateError) { | 237 | }, |
| 233 | return false; | 238 | checkPolicy() { |
| 234 | } | 239 | // 校验选择的受保人在选择的时间点内是否有保单 |
| 235 | if (!this.data.contactDate || !this.data.insuredIndex) { | 240 | if (this.contactDateError) { |
| 236 | return false; | 241 | return false; |
| 237 | } | 242 | } |
| 238 | let insured = this.insuredList[this.data.insuredIndex - 1]; | 243 | if (!this.data.contactDate || !this.data.insuredIndex) { |
| 239 | if (!insured.policyInfoList || insured.policyInfoList.length <= 0) { | 244 | return false; |
| 240 | this.$emit("showModal", 1); | 245 | } |
| 241 | return false; | 246 | let insured = this.insuredList[this.data.insuredIndex - 1]; |
| 242 | } | 247 | if (!insured.policyInfoList || insured.policyInfoList.length <= 0) { |
| 243 | // console.log("insured === ", insured); | 248 | this.$emit("showModal", 1); |
| 244 | var time = new Date(this.data.contactDate.replace(/\-/g, "/") + " 00:00:00").getTime(); | 249 | return false; |
| 245 | for (let index = 0; index < insured.policyInfoList.length; index++) { | 250 | } |
| 246 | let policy = insured.policyInfoList[index]; | 251 | // console.log("insured === ", insured); |
| 247 | // 有效期为生效日至满期日+60天 | 252 | var time = new Date(this.data.contactDate.replace(/\-/g, "/") + " 00:00:00").getTime(); |
| 248 | if (policy.activeDate <= time && policy.expireDate + 60 * 24 * 60 * 60 * 1000 >= time) { | 253 | for (let index = 0; index < insured.policyInfoList.length; index++) { |
| 249 | return policy; | 254 | let policy = insured.policyInfoList[index]; |
| 250 | } | 255 | // 有效期为生效日至满期日+60天 |
| 251 | } | 256 | if (policy.activeDate <= time && policy.expireDate + 60 * 24 * 60 * 60 * 1000 >= time) { |
| 252 | this.$emit("showModal", 1); | 257 | return policy; |
| 253 | return false; | 258 | } |
| 254 | } | 259 | } |
| 255 | }, | 260 | this.$emit("showModal", 1); |
| 256 | watch: { | 261 | return false; |
| 257 | "data.insuredIndex": function (v, ov) { | 262 | } |
| 258 | this.typeSelected = []; | 263 | }, |
| 264 | watch: { | ||
| 265 | "data.insuredIndex": function (v, ov) { | ||
| 266 | this.typeSelected = []; | ||
| 259 | 267 | ||
| 260 | let d = { | 268 | let d = { |
| 261 | insuredIndex: this.data.insuredIndex, | 269 | insuredIndex: this.data.insuredIndex, |
| 262 | amount: null, | 270 | amount: null, |
| 263 | contactDate: "", | 271 | contactDate: "", |
| 264 | // 必传资料 | 272 | // 必传资料 |
| 265 | HT41: null, | 273 | HT41: null, |
| 266 | HT26: null, | 274 | HT26: null, |
| 267 | // 非必传资料 | 275 | // 非必传资料 |
| 268 | HT29: null, | 276 | HT29: null, |
| 269 | HT34: null, | 277 | HT34: null, |
| 270 | HT16: null, | 278 | HT16: null, |
| 271 | 279 | ||
| 272 | // 是否正在上传 | 280 | // 是否正在上传 |
| 273 | HT41Uploading: false, | 281 | HT41Uploading: false, |
| 274 | HT26Uploading: false, | 282 | HT26Uploading: false, |
| 275 | HT29Uploading: false, | 283 | HT29Uploading: false, |
| 276 | HT34Uploading: false, | 284 | HT34Uploading: false, |
| 277 | HT16Uploading: false, | 285 | HT16Uploading: false, |
| 278 | }; | 286 | }; |
| 279 | this.$set(this, "data", d); | 287 | this.$set(this, "data", d); |
| 280 | if (this.checkPolicy()) { | 288 | if (this.checkPolicy()) { |
| 281 | this.policyIllegal = false; | 289 | this.policyIllegal = false; |
| 282 | } else { | 290 | } else { |
| 283 | this.policyIllegal = true; | 291 | this.policyIllegal = true; |
| 284 | } | 292 | } |
| 285 | }, | 293 | }, |
| 286 | "data.contactDate": function () { | 294 | "data.contactDate": function () { |
| 287 | if (this.checkPolicy()) { | 295 | if (this.checkPolicy()) { |
| 288 | this.policyIllegal = false; | 296 | this.policyIllegal = false; |
| 289 | } else { | 297 | } else { |
| 290 | this.policyIllegal = true; | 298 | this.policyIllegal = true; |
| 291 | } | 299 | } |
| 292 | }, | 300 | }, |
| 293 | 'agree': function () { | 301 | 'agree': function () { |
| 294 | this.showTips = false; | 302 | this.showTips = false; |
| 295 | } | 303 | } |
| 296 | }, | 304 | }, |
| 297 | mounted() { | 305 | mounted() { |
| 298 | this.initData(); | 306 | this.initData(); |
| 299 | }, | 307 | }, |
| 300 | created() { } | 308 | created() { |
| 309 | try { | ||
| 310 | this.$root.eventBus.$off("_evt_to_account_information"); | ||
| 311 | } catch (e) {} | ||
| 312 | this.$root.eventBus.$on("_evt_to_account_information", () => { | ||
| 313 | this.$nextTick(() => { | ||
| 314 | console.log("ccccc:", document.getElementById("sc")); | ||
| 315 | let sc = document.getElementById("sc"); | ||
| 316 | if (sc) { | ||
| 317 | document.getElementById("sc").scrollIntoView(); | ||
| 318 | } | ||
| 319 | }) | ||
| 320 | }); | ||
| 321 | } | ||
| 301 | } | 322 | } | ... | ... |
| ... | @@ -124,13 +124,13 @@ | ... | @@ -124,13 +124,13 @@ |
| 124 | </div> | 124 | </div> |
| 125 | <div class="value"> | 125 | <div class="value"> |
| 126 | <clarms-upload :icon="require('@/assets/images/clarms/icon3.png')" :options="{name:$t('clarms.step2.label14'),imageTypeID:'HT29',imageMainTypeID:'HT06',toast:$t('clarms.step2.toast3')}" @success="uploadSuccess" @beforeUpload="beforeUpload"></clarms-upload> | 126 | <clarms-upload :icon="require('@/assets/images/clarms/icon3.png')" :options="{name:$t('clarms.step2.label14'),imageTypeID:'HT29',imageMainTypeID:'HT06',toast:$t('clarms.step2.toast3')}" @success="uploadSuccess" @beforeUpload="beforeUpload"></clarms-upload> |
| 127 | <clarms-upload class="mt20" :icon="require('@/assets/images/clarms/icon4.png')" :options="{name:$t('clarms.step2.label15'),imageTypeID:'HT34',imageMainTypeID:'HT08',toast:$t('clarms.step2.toast4')}" @success="uploadSuccess" @beforeUpload="beforeUpload"></clarms-upload> | 127 | <clarms-upload id="sc" ref="sc" class="mt20" :icon="require('@/assets/images/clarms/icon4.png')" :options="{name:$t('clarms.step2.label15'),imageTypeID:'HT34',imageMainTypeID:'HT08',toast:$t('clarms.step2.toast4')}" @success="uploadSuccess" @beforeUpload="beforeUpload"></clarms-upload> |
| 128 | <clarms-upload class="mt20" :icon="require('@/assets/images/clarms/icon5.png')" :options="{name:$t('clarms.step2.label16'),imageTypeID:'HT16',imageMainTypeID:'HT03',toast:$t('clarms.step2.toast5')}" @success="uploadSuccess" @beforeUpload="beforeUpload"></clarms-upload> | 128 | <clarms-upload class="mt20" :icon="require('@/assets/images/clarms/icon5.png')" :options="{name:$t('clarms.step2.label16'),imageTypeID:'HT16',imageMainTypeID:'HT03',toast:$t('clarms.step2.toast5')}" @success="uploadSuccess" @beforeUpload="beforeUpload"></clarms-upload> |
| 129 | </div> | 129 | </div> |
| 130 | </div> | 130 | </div> |
| 131 | </template> | 131 | </template> |
| 132 | </div> | 132 | </div> |
| 133 | <hr v-if="data.amount > 0"> | 133 | <hr v-if="data.amount > 0" > |
| 134 | <div class="bottom-tip orange mt20">{{$t('clarms.step2.label17')}}</div> | 134 | <div class="bottom-tip orange mt20">{{$t('clarms.step2.label17')}}</div> |
| 135 | <div class="bottom-tip gray mt10">{{$t('clarms.step2.tip1')}}</div> | 135 | <div class="bottom-tip gray mt10">{{$t('clarms.step2.tip1')}}</div> |
| 136 | 136 | ... | ... |
| 1 | |||
| 2 | |||
| 3 | export default { | 1 | export default { |
| 4 | data() { | 2 | data() { |
| 5 | return { | 3 | return { |
| 6 | 4 | ||
| 7 | } | 5 | } |
| 8 | }, | 6 | }, |
| 9 | components: {}, | 7 | components: {}, |
| 10 | computed: { | 8 | computed: {}, |
| 11 | }, | 9 | methods: { |
| 12 | methods: { | 10 | initData() { |
| 13 | initData() { | ||
| 14 | 11 | ||
| 15 | }, | 12 | }, |
| 16 | onOverLayHandler() { | 13 | onOverLayHandler() { |
| 17 | this.$emit("close"); | 14 | this.$emit("close"); |
| 18 | }, | 15 | }, |
| 19 | toContact() { | 16 | toAccountInformation() { |
| 20 | this.$router.push({ | 17 | this.$emit("close"); |
| 21 | path: "/custom/service?q=m1" | 18 | this.$root.eventBus.$emit('_evt_to_account_information'); |
| 22 | }); | 19 | }, |
| 23 | } | 20 | toContact() { |
| 24 | }, | 21 | this.$router.push({ |
| 25 | mounted() { | 22 | path: "/custom/service?q=m1" |
| 23 | }); | ||
| 24 | } | ||
| 25 | }, | ||
| 26 | mounted() { | ||
| 26 | 27 | ||
| 27 | }, | 28 | }, |
| 28 | created() { | 29 | created() { |
| 29 | this.initData(); | 30 | this.initData(); |
| 30 | }, | 31 | }, |
| 31 | watch: { | 32 | watch: {}, |
| 32 | }, | ||
| 33 | } | 33 | } | ... | ... |
| ... | @@ -9,7 +9,7 @@ | ... | @@ -9,7 +9,7 @@ |
| 9 | <img src="@/assets/images/clarms/suc.png"> | 9 | <img src="@/assets/images/clarms/suc.png"> |
| 10 | </div> | 10 | </div> |
| 11 | <div class="message"> | 11 | <div class="message"> |
| 12 | {{$t('clarms.step2.tip7')}}<span @click="onOverLayHandler">{{$t('clarms.step2.tip8')}}</span> | 12 | {{$t('clarms.step2.tip7')}}<span @click="toAccountInformation">{{$t('clarms.step2.tip8')}}</span> |
| 13 | </div> | 13 | </div> |
| 14 | </div> | 14 | </div> |
| 15 | </div> | 15 | </div> | ... | ... |
| 1 | import { | 1 | import { |
| 2 | mapGetters, | 2 | mapGetters, |
| 3 | mapActions, | 3 | mapActions, |
| 4 | mapState | 4 | mapState |
| 5 | } from "vuex"; | 5 | } from "vuex"; |
| 6 | 6 | ||
| 7 | import api from '@/api/api' | 7 | import api from '@/api/api' |
| 8 | import { | 8 | import { |
| 9 | httpGet, | 9 | httpGet, |
| 10 | httpPost | 10 | httpPost |
| 11 | } from '@/api/fetch-api.js' | 11 | } from '@/api/fetch-api.js' |
| 12 | 12 | ||
| 13 | import ClarmsModalOne from '@/components/clarms/clarms-plugins-modal1.vue'; | 13 | import ClarmsModalOne from '@/components/clarms/clarms-plugins-modal1.vue'; |
| ... | @@ -25,126 +25,140 @@ import ClarmsMaterial from '@/components/clarms/clarms-plugins-material.vue'; | ... | @@ -25,126 +25,140 @@ import ClarmsMaterial from '@/components/clarms/clarms-plugins-material.vue'; |
| 25 | // 有保单 | 25 | // 有保单 |
| 26 | 26 | ||
| 27 | export default { | 27 | export default { |
| 28 | data() { | 28 | data() { |
| 29 | return { | 29 | return { |
| 30 | step: 0, // 1是表单;2是报案页面;3=信息不完整 | 30 | step: 0, // 1是表单;2是报案页面;3=信息不完整 |
| 31 | showModal1: false, | 31 | showModal1: false, |
| 32 | showModal2: false, | 32 | showModal2: false, |
| 33 | agress: false, | 33 | agress: false, |
| 34 | reservationTypes: [], | 34 | reservationTypes: [], |
| 35 | cid: false, | 35 | cid: "", |
| 36 | // 可以理赔的客户信息 | 36 | // 可以理赔的客户信息 |
| 37 | customerList: [] | 37 | customerList: [] |
| 38 | } | 38 | } |
| 39 | }, | 39 | }, |
| 40 | components: { | 40 | components: { |
| 41 | ClarmsVerifyForm, | 41 | ClarmsVerifyForm, |
| 42 | ClarmsMaterial, | 42 | ClarmsMaterial, |
| 43 | ClarmsModalOne, | 43 | ClarmsModalOne, |
| 44 | ClarmsModalTwo | 44 | ClarmsModalTwo |
| 45 | }, | 45 | }, |
| 46 | computed: { | 46 | computed: { |
| 47 | ...mapState({ | 47 | ...mapState({ |
| 48 | userInfo: state => state.userInfo | 48 | userInfo: state => state.userInfo |
| 49 | }), | 49 | }), |
| 50 | i18n() { | 50 | i18n() { |
| 51 | return this.$i18n.messages && this.$i18n.locale ? this.$i18n.messages[this.$i18n.locale] : {}; | 51 | return this.$i18n.messages && this.$i18n.locale ? this.$i18n.messages[this.$i18n.locale] : {}; |
| 52 | }, | 52 | }, |
| 53 | }, | 53 | }, |
| 54 | methods: { | 54 | methods: { |
| 55 | initData() { | 55 | initData() { |
| 56 | // this.step = 2; | 56 | // this.step = 2; |
| 57 | // return; | 57 | // return; |
| 58 | if (this.userInfo && this.userInfo.name) { | 58 | if (this.userInfo && this.userInfo.name) { |
| 59 | this.loadCidIfLogin(); | 59 | this.loadCidIfLogin(); |
| 60 | sessionStorage.removeItem("clarmsRequestCid") | 60 | sessionStorage.removeItem("clarmsRequestCid") |
| 61 | } else { | 61 | } else { |
| 62 | let cid = sessionStorage.getItem("clarmsRequestCid"); | 62 | let cid = sessionStorage.getItem("clarmsRequestCid"); |
| 63 | if (cid) { | 63 | if (cid) { |
| 64 | this.cid = cid; | 64 | this.cid = cid; |
| 65 | this.checkCid(); | 65 | this.checkCid(); |
| 66 | } else { | 66 | } else { |
| 67 | this.step = 1; | 67 | this.step = 1; |
| 68 | } | 68 | } |
| 69 | } | 69 | } |
| 70 | }, | 70 | }, |
| 71 | loadCidIfLogin() { | 71 | loadCidIfLogin() { |
| 72 | let param = { | 72 | let param = { |
| 73 | sid: this.userInfo.sid | 73 | sid: this.userInfo.sid |
| 74 | }; | 74 | }; |
| 75 | httpPost({ url: api.getCidByLogin, sid: true, data: param }).then(res => { | 75 | httpPost({ |
| 76 | if (res) { | 76 | url: api.getCidByLogin, |
| 77 | this.cid = res; | 77 | sid: true, |
| 78 | this.checkCid(); | 78 | data: param |
| 79 | } else { | 79 | }).then(res => { |
| 80 | this.step = 3; | 80 | if (res) { |
| 81 | } | 81 | this.cid = res; |
| 82 | }).catch(e => { | 82 | this.checkCid(); |
| 83 | this.step = 1; | 83 | } else { |
| 84 | }); | 84 | this.step = 3; |
| 85 | }, | 85 | } |
| 86 | checkCid() { | 86 | }).catch(e => { |
| 87 | let param = { | 87 | this.step = 1; |
| 88 | cid: this.cid | 88 | }); |
| 89 | } | 89 | }, |
| 90 | httpPost({ url: api.clarmsCustomerList, data: param }).then(res => { | 90 | checkCid() { |
| 91 | sessionStorage.removeItem("clarmsRequestCid"); | 91 | let param = { |
| 92 | if (res) { | 92 | cid: this.cid |
| 93 | this.customerList = res.insuredInfoList; | 93 | } |
| 94 | this.step = 2; | 94 | httpPost({ |
| 95 | } | 95 | url: api.clarmsCustomerList, |
| 96 | // if (res && res.insuredInfoList && res.insuredInfoList.length > 0) { | 96 | data: param |
| 97 | // this.customerList = res.insuredInfoList; | 97 | }).then(res => { |
| 98 | // this.step = 2; | 98 | sessionStorage.removeItem("clarmsRequestCid"); |
| 99 | // } else { | 99 | if (res) { |
| 100 | // sessionStorage.removeItem("clarmsRequestCid"); | 100 | this.customerList = res.insuredInfoList; |
| 101 | // this.step = 1; | 101 | this.step = 2; |
| 102 | // } | 102 | } |
| 103 | }).catch(e => { | 103 | // if (res && res.insuredInfoList && res.insuredInfoList.length > 0) { |
| 104 | sessionStorage.removeItem("clarmsRequestCid"); | 104 | // this.customerList = res.insuredInfoList; |
| 105 | this.step = 1; | 105 | // this.step = 2; |
| 106 | }); | 106 | // } else { |
| 107 | }, | 107 | // sessionStorage.removeItem("clarmsRequestCid"); |
| 108 | handleInsuredInfo(data) { | 108 | // this.step = 1; |
| 109 | this.cid = data.cid; | 109 | // } |
| 110 | this.customerList = data.list; | 110 | }).catch(e => { |
| 111 | this.step = 2; | 111 | sessionStorage.removeItem("clarmsRequestCid"); |
| 112 | }, | 112 | this.step = 1; |
| 113 | handleShowModal(modalIndex) { | 113 | }); |
| 114 | console.log(modalIndex); | 114 | }, |
| 115 | if (modalIndex == 1) { | 115 | handleInsuredInfo(data) { |
| 116 | this.showModal1 = true; | 116 | this.cid = data.cid; |
| 117 | } else if (modalIndex == 2) { | 117 | this.customerList = data.list; |
| 118 | this.showModal2 = true; | 118 | this.step = 2; |
| 119 | } | 119 | }, |
| 120 | }, | 120 | handleShowModal(modalIndex) { |
| 121 | gotoInformationPage() { | 121 | console.log(modalIndex); |
| 122 | let c = this.$route.fullPath; | 122 | if (modalIndex == 1) { |
| 123 | this.$router.push({ path: "/infomation/improve", query: { c: c, a: 1 } }); | 123 | this.showModal1 = true; |
| 124 | }, | 124 | } else if (modalIndex == 2) { |
| 125 | logoutAction() { | 125 | this.showModal2 = true; |
| 126 | this.sid = false; | 126 | } |
| 127 | this.hadQueryCustomerList = false; | 127 | }, |
| 128 | this.customerList = []; | 128 | gotoInformationPage() { |
| 129 | this.step = 1; | 129 | let c = this.$route.fullPath; |
| 130 | }, | 130 | this.$router.push({ |
| 131 | loginAction() { | 131 | path: "/infomation/improve", |
| 132 | this.sid = false; | 132 | query: { |
| 133 | this.hadQueryCustomerList = false; | 133 | c: c, |
| 134 | this.customerList = []; | 134 | a: 1 |
| 135 | } | 135 | } |
| 136 | }, | 136 | }); |
| 137 | watch: { | 137 | }, |
| 138 | userInfo(val) { | 138 | logoutAction() { |
| 139 | if (val && val.name) { | 139 | this.sid = false; |
| 140 | this.loginAction(); | 140 | this.hadQueryCustomerList = false; |
| 141 | } else { | 141 | this.customerList = []; |
| 142 | this.logoutAction(); | 142 | this.step = 1; |
| 143 | } | 143 | }, |
| 144 | } | 144 | loginAction() { |
| 145 | }, | 145 | this.sid = false; |
| 146 | mounted() { | 146 | this.hadQueryCustomerList = false; |
| 147 | this.initData(); | 147 | this.customerList = []; |
| 148 | }, | 148 | } |
| 149 | created() { } | 149 | }, |
| 150 | watch: { | ||
| 151 | userInfo(val) { | ||
| 152 | if (val && val.name) { | ||
| 153 | this.loginAction(); | ||
| 154 | } else { | ||
| 155 | this.logoutAction(); | ||
| 156 | } | ||
| 157 | } | ||
| 158 | }, | ||
| 159 | mounted() { | ||
| 160 | this.initData(); | ||
| 161 | |||
| 162 | }, | ||
| 163 | created() {} | ||
| 150 | } | 164 | } | ... | ... |
-
Please register or sign in to post a comment