Commit ee8e5daf authored by 郝聪敏's avatar 郝聪敏

Merge branch 'luck-draw' into 'master'

Luck draw

See merge request !32
parents aa88ae9c dde5bc50
......@@ -4,7 +4,7 @@
* @Description: 华贵大麦2020定期寿险
* @Date: 2020-07-27 15:46:37
* @LastEditors: gzw
* @LastEditTime: 2020-08-10 14:51:04
* @LastEditTime: 2020-08-11 16:26:37
*/
import goodsBg from "@/assets/images/goods/detail/shouxian/bg.png";
......@@ -14,6 +14,7 @@ import intro03 from "@/assets/images/goods/detail/shouxian/intro-03.png";
export default {
type: "li",
productNo: "HGSX001",
headerInfo: {
bgSrc: goodsBg,
type: "huagui",
......@@ -26,10 +27,9 @@ export default {
},
introImg: [intro01, intro02, intro03],
companyInfo: [
{ content: "承保公司:华泰财产保险有限公司", offset: false },
{ content: "经营范围:短期健康保险和意外伤害保险", offset: false },
{ content: "备案名称:华泰财险重大疾病保险条款", offset: false },
{ content: "备案编号:C00015431912018061501152;", offset: false }
{ content: "承保公司:华贵人寿保险股份有限公司", offset: false },
{ content: "经营范围:定期人寿保险", offset: false },
{ content: "备案编号:华贵保险[2019]207号;", offset: false }
],
navBarOptions: [
{ label: "产品介绍", value: "intro" },
......@@ -63,7 +63,10 @@ export default {
{ title: "交费期", value: "交5年/交10年/交20年/交30年/一次性交清" },
{ title: "等待期", value: "90天(因意外导致的身故或全残无等待期)" },
{ title: "犹豫期", value: "20天(犹豫期内退保,原额退还保费)" }
],
socialSecOptions: [
{ label: "有社保", value: "1" },
{ label: "无社保", value: "0" }
],
insuredOptions: [
{ label: "本人", value: "0" },
......@@ -76,8 +79,40 @@ export default {
{ label: "", value: "0" }
],
paywayOptions: [
{ label: "月缴<small style='color: #999;font-size: 11px'>(12期)</small>", value: "1" },
{ label: "一次交清", value: "2" }
{ label: "年缴", value: "1" }
],
sexOptions: [
{ label: "", value: "0" },
{ label: "", value: "1" }
],
idCardInvaildOptions: [
{ label: "非长期", value: "1" },
{ label: "长期", value: "2" }
],
insuredAmountOptions: [
{ label: "30万", value: "300000" },
{ label: "50万", value: "500000" },
{ label: "100万", value: "1000000" },
{ label: "150万", value: "15000000" },
{ label: "200万", value: "2000000" },
{ label: "250万", value: "2500000" },
{ label: "300万", value: "3000000" },
{ label: "350万", value: "3500000" }
],
termOptions: [
{ label: "10年", value: "10" },
{ label: "20年", value: "20" },
{ label: "30年", value: "30" },
{ label: "保至60周岁", value: "至60" },
{ label: "保至65周岁", value: "至65" },
{ label: "保至70周岁", value: "至70" }
],
benefitOptions: [
{ label: "交5年", value: "5" },
{ label: "交10年", value: "10" },
{ label: "交20年", value: "20" },
{ label: "交30年", value: "30" }
// { label: "一次付清", value: "5" }
],
popupArray: [
{
......@@ -172,32 +207,14 @@ export default {
],
planInfo: [
{
title: "100种重大疾病保险金",
title: "身故保险金(100%基本保额)",
desc:
"<p>重大疾病包括恶性肿瘤、急性心肌梗塞、终末期肾病(或称慢性肾功能衰竭尿毒症期)等100种。在等待期(90天,意外伤害事故无等待期)后初次发生并经医院专科医生确诊罹患本合同约定的一种或多种重大疾病,保险人按照保险单中约定的重大疾病保险金额给付重大疾病保险金,同时在本保险合同项下对该被保险人的保险责任终止。</p>",
url: "查看100种重大疾病",
path: "http://mangguo-contract.qthbx.com/hua-tai-100chong-zhong-ji-v1/",
list: ""
"被保险人因意外原因或于本合同生效(或合同效力恢复)之日起90日后因非意外导致身故或身体全残,保险公司根据保险条款给付身故或全残保险金,本合同终止。被保险人于本合同生效(或合同效力恢复)之日起90日内因非意外导致身故或身体全残,保险公司退还实际已交保费,本合同终止。"
},
{
title: "40种轻症疾病保险金",
title: "全残保险金(100%基本保额)",
desc:
"<p>轻症疾病包括冠状动脉介入手术、非危及生命的(极早期的)恶性病变、轻度中风后遗症等40种。在等待期(90天,意外伤害事故无等待期)后初次发生并经医院专科医生确诊罹患本合同约定的一种或多种轻症。保险人按照保险合同中约定的轻症保险金额给付轻症保险金,同时轻症责任终止。轻症保险金仅针对本保险合同约定的轻症进行给付,轻症疾病必须在生前诊断,对于任何身故后的尸检诊断不给付轻症疾病保险金。对于已经符合重大疾病保险金给付条件的,仅给付重大疾病保险金,不再给付轻症保险金。</p>",
url: "查看40种轻症疾病",
path: "http://mangguo-contract.qthbx.com/hua-tai-100chong-qing-zheng-v1/",
list: ""
},
{
title: "保额说明",
desc: `
<p><strong>重疾30万保额:</strong></p>
<p>30天~50周岁可投保,可逐年续保至99周岁。</p>
<p><strong>重疾20万保额:</strong></p>
<p>30天~60周岁可投保,可逐年续保至99周岁。</p>
<p><strong>重疾10万保额:</strong></p>
<p>
30天~60周岁可投保,可逐年续保至99周岁。</p>
`
"被保险人因意外原因或于本合同生效(或合同效力恢复)之日起90日后因非意外导致身故或身体全残,保险公司根据保险条款给付身故或全残保险金,本合同终止。被保险人于本合同生效(或合同效力恢复)之日起90日内因非意外导致身故或身体全残,保险公司退还实际已交保费,本合同终止。"
}
]
};
......@@ -4,7 +4,7 @@
* @Description:华太30万轻重疾险
* @Date: 2020-07-27 15:46:37
* @LastEditors: gzw
* @LastEditTime: 2020-08-07 16:06:43
* @LastEditTime: 2020-08-11 14:41:05
*/
import goodsBg from "@/assets/images/goods/detail/zhongjixian/bg.png";
......@@ -15,6 +15,7 @@ import intro04 from "@/assets/images/goods/detail/zhongjixian/intro-04.png";
export default {
type: "cii",
productNo: "HTDQZJX001",
headerInfo: {
bgSrc: goodsBg,
type: "huatai",
......
......@@ -4,7 +4,7 @@
* @Description: 泰康600万医疗保障
* @Date: 2020-07-27 15:46:37
* @LastEditors: gzw
* @LastEditTime: 2020-08-07 15:20:37
* @LastEditTime: 2020-08-11 16:10:05
*/
import goodsBg from "@/assets/images/goods/detail/yiliaoxian/bg.png";
......@@ -15,6 +15,7 @@ import intro04 from "@/assets/images/goods/detail/zhongjixian/intro-04.png";
export default {
type: "mi",
productNo: "TKYLX001",
headerInfo: {
bgSrc: goodsBg,
type: "taikang",
......@@ -222,32 +223,66 @@ export default {
],
planInfo: [
{
title: "100种重大疾病保险金",
title: "重大疾病医疗保险金",
desc:
"<p>重大疾病包括恶性肿瘤、急性心肌梗塞、终末期肾病(或称慢性肾功能衰竭尿毒症期)等100种。在等待期(90天,意外伤害事故无等待期)后初次发生并经医院专科医生确诊罹患本合同约定的一种或多种重大疾病,保险人按照保险单中约定的重大疾病保险金额给付重大疾病保险金,同时在本保险合同项下对该被保险人的保险责任终止。</p>",
url: "查看100种重大疾病",
path: "http://mangguo-contract.qthbx.com/hua-tai-100chong-zhong-ji-v1/",
list: ""
"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
},
{
title: "40种轻症疾病保险金",
title: "一般医疗保险金",
desc:
"<p>轻症疾病包括冠状动脉介入手术、非危及生命的(极早期的)恶性病变、轻度中风后遗症等40种。在等待期(90天,意外伤害事故无等待期)后初次发生并经医院专科医生确诊罹患本合同约定的一种或多种轻症。保险人按照保险合同中约定的轻症保险金额给付轻症保险金,同时轻症责任终止。轻症保险金仅针对本保险合同约定的轻症进行给付,轻症疾病必须在生前诊断,对于任何身故后的尸检诊断不给付轻症疾病保险金。对于已经符合重大疾病保险金给付条件的,仅给付重大疾病保险金,不再给付轻症保险金。</p>",
url: "查看40种轻症疾病",
path: "http://mangguo-contract.qthbx.com/hua-tai-100chong-qing-zheng-v1/",
list: ""
"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
},
{
title: "保额说明",
title: "质子重离子医疗保险金",
desc:
"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
},
{
title: "恶性肿瘤院外特定药品费用保险金",
desc:
"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
},
{
title: "恶性肿瘤特定治疗保险金",
desc:
"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
},
{
title: "康复医疗保险金",
desc:
"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
},
{
title: "指定检查费用保险金",
desc:
"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
},
{
title: "特定疾病保险金",
desc:
"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
},
{
title: "押金垫付",
desc:
"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
},
{
title: "就医绿色通道",
desc: `
<p><strong>重疾30万保额:</strong></p>
<p>30天~50周岁可投保,可逐年续保至99周岁。</p>
<p><strong>重疾20万保额:</strong></p>
<p>30天~60周岁可投保,可逐年续保至99周岁。</p>
<p><strong>重疾10万保额:</strong></p>
<p>
30天~60周岁可投保,可逐年续保至99周岁。</p>
`
<p><strong>1、专业导诊(1次/年)</strong></p>
<p>为被保险人提供专业导诊咨询服务,帮助用户找“对”专家</p>
<p><strong>2、专家门诊(1次/年)</strong></p>
<p>为被保险人提供副主任及以上专家普通/特需门诊的预约服务</p>
<p><strong>3、专业陪诊(1次/年)</strong></p>
<p>安排医学专业人员陪伴被保险人,协助完成导诊、检查、取药等全程就医环节</p>
<p><strong>4、快速住院(1次/年)</strong></p>
<p>安排被保险人快速入住病房</p>
<p><strong>5、专家手术(1次/年)</strong></p>
<p>为被保险人提供专家手术加急服务</p>
`,
url: "查看详情",
path: "/goods/plan?type=mi-more",
}
]
};
......@@ -4,7 +4,7 @@
* @Description:众安50万意外险
* @Date: 2020-07-27 15:46:37
* @LastEditors: gzw
* @LastEditTime: 2020-08-10 14:59:04
* @LastEditTime: 2020-08-11 14:41:35
*/
import goodsBg from "@/assets/images/goods/detail/yiwaixian/bg.png";
......@@ -15,6 +15,7 @@ import intro04 from "@/assets/images/goods/detail/yiwaixian/intro-04.png";
export default {
type: "ai",
productNo: "ZAYWX001",
headerInfo: {
bgSrc: goodsBg,
type: "zhongan",
......
export default {
userAgreement: "http://www.baidu.com",
privacyPolicy: "http://www.baidu.com"
};
......@@ -95,6 +95,7 @@ export default {
}
&-body {
margin-bottom: 20px;
word-break: break-all;
}
}
</style>
......@@ -36,6 +36,11 @@
<span class="login-form-remain" v-else>{{ count }}s</span>
</template>
</cr-field>
<div class="protocol">
确定登录即表示同意
<a :href="userAgreement" target="_blank">《用户协议》</a>
<a :href="privacyPolicy" target="_blank">《隐私政策》</a>
</div>
</cr-form>
</modal>
</template>
......@@ -44,6 +49,7 @@
import { mapState, mapActions } from "vuex";
import Modal from "@/components/Modal";
import { loginByPhone, getCaptchaSms } from "@/api/user";
import protocol from "@/api/protocol";
import { isPhone, isWeixinBrower } from "@/service/validation";
export default {
name: "LoginModal",
......@@ -52,6 +58,7 @@ export default {
},
data() {
return {
...protocol,
show: true,
showCount: false,
count: "",
......@@ -144,4 +151,11 @@ export default {
}
}
}
.protocol {
font-size: 11px;
text-align: center;
a {
font-size: 11px;
}
}
</style>
......@@ -18,13 +18,17 @@
v-html="content"
></div>
<!-- iframe -->
<div class="protocol-frame-wrap" v-if="url && scrollRefresh">
<div class="protocol-frame-wrap" v-if="!isPdf && url && scrollRefresh">
<iframe class="protocol-frame" :src="url" frameborder="0" height="100%"></iframe>
</div>
<!-- slot -->
<div class="protocol-wrap" v-if="!content && scrollRefresh && $slots.default">
<slot></slot>
</div>
<!-- content -->
<div class="protocol-content" v-if="isPdf && scrollRefresh && !$slots.default">
<pdf v-for="(item, index) in pdfNumPages" :key="index" :src="pdfUrl" :page="index + 1" />
</div>
</cr-popup>
</template>
......@@ -34,6 +38,7 @@
* @param {type}
* @return:
*/
import pdf from "vue-pdf";
const CHANGE_EVENT = "input";
export default {
name: "PopupWithIframe",
......@@ -52,6 +57,9 @@ export default {
default: ""
}
},
components: {
pdf
},
watch: {
value(val) {
this.popupShow = val;
......@@ -63,16 +71,40 @@ export default {
this.$emit(CHANGE_EVENT, val);
if (!val) {
setTimeout(() => {
this.pdfNumPages = null;
this.pdfUrl = null;
this.scrollRefresh = false;
}, 300);
}
}
},
computed: {
isPdf() {
const isPdf = this.url.indexOf("pdf") > -1;
isPdf && this.pdfTask();
return isPdf;
}
},
data() {
return {
popupShow: false,
scrollRefresh: true
scrollRefresh: true,
pdfUrl: "",
pdfNumPages: null
};
},
methods: {
pdfTask() {
this.pdfUrl = pdf.createLoadingTask(this.url);
console.log(this.pdfUrl);
this.pdfUrl.promise
.then(pdf => {
this.pdfNumPages = pdf.numPages;
})
.catch(err => {
console.error(err);
});
}
}
};
</script>
......
......@@ -147,8 +147,9 @@ export function parseTime(time, cFormat) {
date = new Date();
} else if (typeof time === "object") {
date = time;
} else if (!isNaN(time) && ("" + time).length === 10) {
time = parseInt(time) * 1000;
} else {
if (("" + time).length === 10) time = parseInt(time) * 1000;
if (String(time).indexOf("T") > -1) {
time = time.replace(/T/g, " ").replace(/\..*/g, "");
}
......
......@@ -21,7 +21,9 @@ a {
input::-webkit-input-placeholder {
color: #AAAAAA;
}
strong {
font-weight: @font-weight-bold;
}
.cr-button {
padding: 0 @padding-sm !important;
......
......@@ -10,9 +10,9 @@
</div>
<cr-image
class="cul-hd-img"
src="@/assets/images/consultant/culstor-demo.png"
width="215px"
height="230px"
src="@/assets/images/consultant/culstor.png"
width="175px"
height="224px"
/>
</div>
<div class="cul-det">
......
<template>
<div>
<buy v-if="orderState <= 1" :state="orderState" />
<buy v-if="orderState <= 2" :state="orderState" />
<success v-if="orderState === 3 && isLogin && !showQuestion" />
<exclusive
v-if="(orderState === 4 || orderState === 5) && isLogin"
......
......@@ -56,7 +56,8 @@
import CrRadioBtn from "@/components/CrRadioBtn";
import PopupDatePicker from "@/components/PopupDatePicker";
const DATA_CHANGE_EVENT = "input";
import liDetail from "@/api/detail.huagui.shouxian";
const { paywayOptions, sexOptions, insuredAmountOptions, termOptions, benefitOptions } = liDetail;
export default {
name: "CalInsuredFee",
components: {
......@@ -74,35 +75,11 @@ export default {
data() {
return {
formData: {},
sexOptions: [
{ label: "", value: "0" },
{ label: "", value: "1" }
],
countOptions: [
{ label: "100万", value: "1000000" },
{ label: "150万", value: "15000000" },
{ label: "200万", value: "2000000" },
{ label: "250万", value: "2500000" },
{ label: "300万", value: "3000000" },
{ label: "350万", value: "3500000" }
],
termOptions: [
{ label: "10年", value: "1" },
{ label: "20年", value: "2" },
{ label: "30年", value: "3" },
{ label: "保至60周岁", value: "4" },
{ label: "保至65周岁", value: "5" },
{ label: "保至70周岁", value: "6" }
],
paywayOptions: [
{ label: "年交", value: "1" },
{ label: "月交", value: "2" }
],
benefitOptions: [
{ label: "10年", value: "2" },
{ label: "20年", value: "3" },
{ label: "30年", value: "4" }
]
sexOptions,
countOptions: insuredAmountOptions.filter((item, index) => index > 1),
termOptions,
paywayOptions,
benefitOptions: benefitOptions.filter((item, index) => index > 0)
};
},
watch: {
......
......@@ -367,7 +367,17 @@ import { mapState, mapActions } from "vuex";
import Detail from "@/api/detail.huagui.shouxian";
import { list, trail } from "@/api/product";
import { getFamilyList } from "@/api/user";
const { headerInfo, popupArray } = Detail;
const {
headerInfo,
popupArray,
paywayOptions,
insuredAmountOptions,
termOptions,
benefitOptions,
insuredOptions,
idCardInvaildOptions,
socialSecOptions
} = Detail;
export default {
name: "AddPolicy",
mixins: [detailPayMixin],
......@@ -404,49 +414,13 @@ export default {
subFromData: {},
familyList: [],
formMaskData: {},
idCardInvaildOptions: [
{ label: "非长期", value: "1" },
{ label: "长期", value: "2" }
],
socialSecOptions: [
{ label: "有社保", value: "1" },
{ label: "无社保", value: "0" }
],
insuredOptions: [
{ label: "本人", value: "0" },
{ label: "配偶", value: "1" },
{ label: "父母", value: "2" },
{ label: "子女", value: "3" }
],
termOptions: [
{ label: "10年", value: "1" },
{ label: "20年", value: "2" },
{ label: "30年", value: "3" },
{ label: "保至60周岁", value: "4" },
{ label: "保至65周岁", value: "5" },
{ label: "保至70周岁", value: "6" }
],
paywayOptions: [
{ label: "年交", value: "1" },
{ label: "月交", value: "2" }
],
benefitOptions: [
{ label: "交5年", value: "1" },
{ label: "交10年", value: "2" },
{ label: "交20年", value: "3" },
{ label: "交30年", value: "4" }
// { label: "一次付清", value: "5" }
],
insuredAmountOptions: [
{ label: "30万", value: "300000" },
{ label: "50万", value: "500000" },
{ label: "100万", value: "1000000" },
{ label: "150万", value: "15000000" },
{ label: "200万", value: "2000000" },
{ label: "250万", value: "2500000" },
{ label: "300万", value: "3000000" },
{ label: "350万", value: "3500000" }
]
idCardInvaildOptions,
socialSecOptions,
insuredOptions,
termOptions,
paywayOptions,
benefitOptions,
insuredAmountOptions
};
},
watch: {
......
......@@ -15,7 +15,7 @@
:autoRenewPremium="data.autoRenewPremium"
:policyNo="data.policyNo"
></insurance-card>
<security-content :data="data"></security-content>
<security-content :data="data" :detail="productInfo"></security-content>
<insurance-service></insurance-service>
<customer-service></customer-service>
<insurance-recommend class="Pdb-recommend" />
......@@ -30,6 +30,11 @@ import PayCost from "../modules/PayCost";
import StatusDesc from "../modules/StatusDesc";
import CustomerService from "../modules/CustomerService";
import ciiDetail from "@/api/detail.huatai.zhongjixian";
import liDetail from "@/api/detail.huagui.shouxian";
import miDetail from "@/api/detail.taikang.yiliaobaozhang";
import aiDetail from "@/api/detail.zhongan.yiwai";
export default {
name: "Guarantee",
components: {
......@@ -48,11 +53,51 @@ export default {
}
},
data() {
return {};
return {
productInfo: {}
};
},
watch: {
data: {
deep: true,
handler() {
this.setProductInfoByNo();
}
}
},
computed: {
showPayCost() {
return ["2", "4"].includes(this.data?.cardConfig?.key);
},
SecurityDetail() {
const { type, planCellInfo: info } = this.productInfo;
const { amountInsured } = this.data.productItem;
const planCellInfo = amountInsured ? info[amountInsured] : info;
return { type, planCellInfo: planCellInfo };
}
},
methods: {
// TODO 需要剔除无用的详情输入
setProductInfoByNo() {
const { productNo } = this.data;
switch (productNo) {
case "TKYLX001":
this.productInfo = miDetail;
break;
case "HTDQZJX001":
this.productInfo = ciiDetail;
break;
case "BNZJX001":
break;
case "ZAYWX001":
this.productInfo = aiDetail;
break;
case "HGSX001":
this.productInfo = liDetail;
break;
default:
break;
}
}
}
};
......
......@@ -150,6 +150,7 @@
height: 50px;
background: #F6F7FA;
border-radius: 8px;
&:first-child {
margin-bottom: 12px;
}
......@@ -336,3 +337,12 @@
}
}
}
.Pdbc-body-item {
&.inline span:first-child {
color: #999999 !important;
}
.cr-divider {
width: 100%;
margin: 11px 0;
}
}
\ No newline at end of file
......@@ -18,8 +18,8 @@ export default {
},
methods: {
goNext(type) {
if (type === 'home') {
this.$router.push('/home')
if (type === "home") {
this.$router.push("/home");
}
}
}
......
<template>
<div class="Pdb-payment">
<p v-if="showTips" class="Pdb-payment-title Pdb-payment-title_tips">{{payCostConfig.title}}</p>
<p v-if="showTips" class="Pdb-payment-title Pdb-payment-title_tips">
{{ payCostConfig.title }}
</p>
<div v-else>
<p class="Pdb-payment-title">保障将在XX天后失效,请立即缴费</p>
<div class="Pdb-payment-content">
......@@ -18,7 +20,7 @@
</div>
</div>
</div>
<cr-button class="Pdb-payment-button">{{payCostConfig.button}}</cr-button>
<cr-button class="Pdb-payment-button">{{ payCostConfig.button }}</cr-button>
</div>
</template>
<script>
......@@ -27,7 +29,7 @@ export default {
props: {
statusKey: {
type: String,
default: '2'
default: "2"
},
payCostConfig: {
type: Object,
......
......@@ -2,40 +2,24 @@
<div class="Pdb-content">
<div class="Pdb-content-head">
<span class="Pdbc-head-name">保障内容</span>
<span class="Pdbc-head-status">查看详情</span>
<router-link
tag="span"
:to="{ name: 'GoodsPlan', query: { type: detail.type } }"
class="Pdbc-head-status"
>
查看详情
</router-link>
</div>
<div class="Pdb-content-body">
<div class="Pdbc-body-item">
<span>100种重大疾病医疗保险金(0免赔额)</span>
<span>600万</span>
</div>
<div class="Pdbc-body-item">
<span>一般医疗保险金(1万免赔额)</span>
<span>300万</span>
</div>
<div class="Pdbc-body-item">
<span>质子重离子医疗保险金(60%赔付)</span>
<span>600万</span>
</div>
<div class="Pdbc-body-item">
<span>意外身故</span>
<span>1万</span>
</div>
<div class="Pdbc-body-item">
<span>意外伤残</span>
<span>1万</span>
</div>
<div class="Pdbc-body-item">
<span>意外住院津贴</span>
<span>100元/天</span>
</div>
<div class="Pdbc-body-item">
<span>生效日期</span>
<span>{{EffectiveDate}}</span>
</div>
<div class="Pdbc-body-item">
<span>终止日期</span>
<span>{{EndDate}}</span>
<div
class="Pdbc-body-item"
v-for="(item, index) in content"
:key="index"
:class="{ inline: item.inline }"
>
<span>{{ item.title }}</span>
<span>{{ item.value }}</span>
<cr-divider v-if="item.divider" />
</div>
</div>
<div class="Pdb-content-operation">
......@@ -44,28 +28,35 @@
<div class="Pdb-content-user">
<p class="Pdbc-user-who">投保人</p>
<div class="Pdbc-user-info">
<span>{{data.holderUserNameMask}}</span>
<span>身份证号 {{data.holderIdNoMask}}</span>
<span>{{ data.holderUserNameMask }}</span>
<span>身份证号 {{ data.holderIdNoMask }}</span>
</div>
</div>
<div class="Pdb-content-user">
<p class="Pdbc-user-who">被保人</p>
<div class="Pdbc-user-info">
<span>{{data.insuredUserNameMask}}</span>
<span>身份证号 {{data.insuredIdNoMask}}</span>
<span>{{ data.insuredUserNameMask }}</span>
<span>身份证号 {{ data.insuredIdNoMask }}</span>
</div>
</div>
</div>
</template>
<script>
import { parseTime } from "@/service/utils";
export default {
name: "SecurityContent",
props: {
data: {
type: Object,
default: ({})
default() {
return {};
}
},
detail: {
type: Object,
default() {
return {};
}
}
},
data() {
......@@ -73,16 +64,24 @@ export default {
},
computed: {
EffectiveDate() {
return parseTime(this.data.policyEffectiveDate, "{y}-{m}-{d}")
return parseTime(this.data.policyEffectiveDate, "{y}-{m}-{d}");
},
EndDate() {
return parseTime(this.data.policyEndDate, "{y}-{m}-{d}")
return parseTime(this.data.policyEndDate, "{y}-{m}-{d}");
},
content() {
const planCellInfo = this.detail.planCellInfo
? JSON.parse(JSON.stringify(this.detail.planCellInfo))
: [];
planCellInfo.push(
{ title: "生效日期", value: this.EffectiveDate },
{ title: "终止日期", value: this.EndDate }
);
return planCellInfo;
}
},
methods: {
showPdf() {
}
showPdf() {}
}
};
</script>
......
......@@ -14,15 +14,15 @@ export default {
props: {
firstTitle: {
type: String,
default: ''
default: ""
},
secondTitle: {
type: String,
default: ''
default: ""
},
recordText: {
type: String,
default: ''
default: ""
}
},
data() {
......@@ -30,7 +30,7 @@ export default {
},
computed: {
secondTitleText() {
return this.firstTitle ? `${this.secondTitle}...` : this.secondTitle
return this.firstTitle ? `${this.secondTitle}...` : this.secondTitle;
}
}
};
......
......@@ -58,7 +58,7 @@ export default {
const prePath = ["/goods/inform", "/goods/detail", "/policy/add"];
if (prePath.includes(from.path)) {
vm.isFromPay = true;
console.log(2, vm.isFromPay)
console.log(2, vm.isFromPay);
}
});
}
......
......@@ -121,7 +121,8 @@ export default {
showStatusText(text) {
return text === "保障中";
},
goNext(text, item) {
// goNext(text, item) {
goNext() {
// if (text === "为家人投保") {
// } else if (text === "电子保单") {
// } else if (text === "开通自动续费") {
......
......@@ -1700,6 +1700,11 @@ babel-plugin-dynamic-import-node@^2.3.3:
dependencies:
object.assign "^4.1.0"
babel-plugin-syntax-dynamic-import@^6.18.0:
version "6.18.0"
resolved "http://npmprivate.quantgroups.com/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz#8d6a26229c83745a9982a441051572caa179b1da"
integrity sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=
babel-runtime@^6.0.0:
version "6.26.0"
resolved "http://npmprivate.quantgroups.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe"
......@@ -5228,7 +5233,7 @@ loader-utils@^0.2.16:
json5 "^0.5.0"
object-assign "^4.0.1"
loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.3, loader-utils@^1.4.0:
loader-utils@^1.0.0, loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.3, loader-utils@^1.4.0:
version "1.4.0"
resolved "http://npmprivate.quantgroups.com/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613"
integrity sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==
......@@ -5237,6 +5242,15 @@ loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.3, loader-utils@^1.4
emojis-list "^3.0.0"
json5 "^1.0.1"
loader-utils@^2.0.0:
version "2.0.0"
resolved "http://npmprivate.quantgroups.com/loader-utils/-/loader-utils-2.0.0.tgz#e4cace5b816d425a166b5f097e10cd12b36064b0"
integrity sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==
dependencies:
big.js "^5.2.2"
emojis-list "^3.0.0"
json5 "^2.1.2"
locate-path@^3.0.0:
version "3.0.0"
resolved "http://npmprivate.quantgroups.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e"
......@@ -6269,6 +6283,11 @@ pbkdf2@^3.0.3:
safe-buffer "^5.0.1"
sha.js "^2.4.8"
pdfjs-dist@^2.5.207:
version "2.5.207"
resolved "http://npmprivate.quantgroups.com/pdfjs-dist/-/pdfjs-dist-2.5.207.tgz#b5e8c19627be64269cd3fb6df3eaaf45ddffe7b6"
integrity sha512-xGDUhnCYPfHy+unMXCLCJtlpZaaZ17Ew3WIL0tnSgKFUZXHAPD49GO9xScyszSsQMoutNDgRb+rfBXIaX/lJbw==
performance-now@^2.1.0:
version "2.1.0"
resolved "http://npmprivate.quantgroups.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
......@@ -6957,6 +6976,14 @@ raw-body@2.4.0:
iconv-lite "0.4.24"
unpipe "1.0.0"
raw-loader@^4.0.1:
version "4.0.1"
resolved "http://npmprivate.quantgroups.com/raw-loader/-/raw-loader-4.0.1.tgz#14e1f726a359b68437e183d5a5b7d33a3eba6933"
integrity sha512-baolhQBSi3iNh1cglJjA0mYzga+wePk7vdEX//1dTFd+v4TsQlQE0jitJSNF1OIP82rdYulH7otaVmdlDaJ64A==
dependencies:
loader-utils "^2.0.0"
schema-utils "^2.6.5"
read-pkg@^5.1.1:
version "5.2.0"
resolved "http://npmprivate.quantgroups.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc"
......@@ -7284,6 +7311,14 @@ sax@~1.2.4:
resolved "http://npmprivate.quantgroups.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
schema-utils@^0.4.0:
version "0.4.7"
resolved "http://npmprivate.quantgroups.com/schema-utils/-/schema-utils-0.4.7.tgz#ba74f597d2be2ea880131746ee17d0a093c68187"
integrity sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==
dependencies:
ajv "^6.1.0"
ajv-keywords "^3.1.0"
schema-utils@^1.0.0:
version "1.0.0"
resolved "http://npmprivate.quantgroups.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770"
......@@ -8526,6 +8561,23 @@ vue-loader@^15.9.2:
vue-hot-reload-api "^2.3.0"
vue-style-loader "^4.1.0"
vue-pdf@^4.1.0:
version "4.1.0"
resolved "http://npmprivate.quantgroups.com/vue-pdf/-/vue-pdf-4.1.0.tgz#028019750a1246cd41c3b9781b5ba6536ab22024"
integrity sha512-kjDmCJplCtf5+qQv6uMuUoh01AsoyKNsawHtfi9x739f1sTxdIwrLu25g+EhfRdtjh6JBqW46Mff1wijKa79wA==
dependencies:
babel-plugin-syntax-dynamic-import "^6.18.0"
loader-utils "^1.4.0"
pdfjs-dist "^2.5.207"
raw-loader "^4.0.1"
vue-resize-sensor "^2.0.0"
worker-loader "^2.0.0"
vue-resize-sensor@^2.0.0:
version "2.0.0"
resolved "http://npmprivate.quantgroups.com/vue-resize-sensor/-/vue-resize-sensor-2.0.0.tgz#3a587fd6802e1688709cf2c5aadae7a0075952bf"
integrity sha512-W+y2EAI/BxS4Vlcca9scQv8ifeBFck56DRtSwWJ2H4Cw1GLNUYxiZxUHHkuzuI5JPW/cYtL1bPO5xPyEXx4LmQ==
vue-router@^3.2.0:
version "3.3.4"
resolved "http://npmprivate.quantgroups.com/vue-router/-/vue-router-3.3.4.tgz#4e38abc34a11c41b6c3d8244449a2e363ba6250b"
......@@ -8785,6 +8837,14 @@ worker-farm@^1.7.0:
dependencies:
errno "~0.1.7"
worker-loader@^2.0.0:
version "2.0.0"
resolved "http://npmprivate.quantgroups.com/worker-loader/-/worker-loader-2.0.0.tgz#45fda3ef76aca815771a89107399ee4119b430ac"
integrity sha512-tnvNp4K3KQOpfRnD20m8xltE3eWh89Ye+5oj7wXEEHKac1P4oZ6p9oTj8/8ExqoSBnk9nu5Pr4nKfQ1hn2APJw==
dependencies:
loader-utils "^1.0.0"
schema-utils "^0.4.0"
wrap-ansi@^5.1.0:
version "5.1.0"
resolved "http://npmprivate.quantgroups.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment