diff --git a/src/router/ebiz/proposal.js b/src/router/ebiz/proposal.js index 7f8479f87..64570abd4 100644 --- a/src/router/ebiz/proposal.js +++ b/src/router/ebiz/proposal.js @@ -7,6 +7,7 @@ const exhibition = () => import('@/views/ebiz/proposal/Exhibition') const companyProfile = () => import('@/views/ebiz/proposal/CompanyProfile') const pdf = () => import('@/views/ebiz/proposal/PDF') const proposalInfo = () => import('@/views/ebiz/proposal/ProposalInfo') +const caluePdf = () => import('@/views/ebiz/proposal/CaluePDF') export default [ { path: '/proposal/list', @@ -76,5 +77,13 @@ export default [ meta: { title: 'PDF预览' } + }, + { + path: '/proposal/caluePdf', + name: 'caluePdf', + component: caluePdf, + meta: { + title: '条款PDF查看' + } } ] diff --git a/src/views/ebiz/proposal/CaluePDF.vue b/src/views/ebiz/proposal/CaluePDF.vue new file mode 100644 index 000000000..a376e78a2 --- /dev/null +++ b/src/views/ebiz/proposal/CaluePDF.vue @@ -0,0 +1,59 @@ + + diff --git a/src/views/ebiz/proposal/ProposalInfo.vue b/src/views/ebiz/proposal/ProposalInfo.vue index fb8f9af48..7ea098697 100644 --- a/src/views/ebiz/proposal/ProposalInfo.vue +++ b/src/views/ebiz/proposal/ProposalInfo.vue @@ -82,22 +82,50 @@
保险责任
-
按责任显示
-
按险种显示
+
+ 按责任显示 +
+
+ 按险种显示 +
-
- 12
- 12
- 12
- 12
- 12
- 12
- 12
- 12
- 12
- 12
- 12
- 12
+
+
+
+
+ {{ item.riskName }} +
+
+ +
+
+ +
{{ subItem4.dutyStairExplain }}。
+
+
+
+
+
+
+
+
+ 身价保障 +
+
+
+
疾病身故保障金
+
+
每次领取3000.00元
+
+
@@ -114,7 +142,7 @@ :key="index" >
《{{ riskItem.riskName }}条款》
-
查看
+
查看
@@ -177,8 +205,8 @@
- - + +
转投保
@@ -244,6 +272,7 @@ export default { chooseProductCodes: [], // 页面显示配置 pageShowType: { + dutyShowType: '00', isFixed: false, // 粘性布局状态 productCheckStatus: true, //产品收展状态 riskCheckStatus: true //责任收展状态 @@ -331,12 +360,8 @@ export default { testRiskCheck() { this.pageShowType.riskCheckStatus = !this.pageShowType.riskCheckStatus }, - clickCalueUrl(riskItem) { - location.href = riskItem.url - }, checkShowDutyType(type) { - console.log(type) - //产品责任显示类型 + this.pageShowType.dutyShowType = type }, //页面初始化 async init() { @@ -426,7 +451,6 @@ export default { //将后端返回的数据格式化为本地 formatLocal(res) { if (res.result == '0') { - console.log('res', res) let orderDTO = res.content.orderDTO this.pageShowInfo.appntDTO = res.content.orderDTO.appntDTO this.pageShowInfo.insuredDTOs = res.content.orderDTO.insuredDTOs @@ -438,6 +462,12 @@ export default { //根据数据字典 获取当前值 v.age = getAge.getAge(v.birthdayLabel, new Date()) v.riskDTOLst.forEach(risk => { + risk.riskDutySortResult = JSON.parse( + '{"' + + risk.riskCode + + '" :[{"固定领取":[{"dutyAmnt":"3000.00","dutyStairExplain":"每次领取3000.00元","dutyName":"特别生存金(鑫享)","dutyDetailExplain":"被保险人在本合同第五、六个保单周年日仍生存,给付3000.00元"},{"dutyAmnt":"3000.00","dutyStairExplain":"每次领取3000.00元","dutyName":"生存年金(鑫享)","dutyDetailExplain":"第七个保单周年日起至保险期满,每年给付3000.00元"},{"dutyAmnt":"3955.00","dutyStairExplain":"一次给付3955.00元","dutyName":"满期生存保险金(鑫享)","dutyDetailExplain":"保险期满被保人仍生存,给付3955.00元"},{"dutyAmnt":"第五个保单周年日起至被保人64周岁,每年给付593.25元;65周岁至保险期满,每年给付1186.50元","dutyStairExplain":"第五个保单周年日起至被保人64周岁,每年给付593.25元;65周岁至保险期满,每年给付1186.50元","dutyName":"生存年金(鑫年)","dutyDetailExplain":""},{"dutyAmnt":"3955.00","dutyStairExplain":"每次领取3955.00元","dutyName":"70周岁/80周岁祝寿金(鑫年)","dutyDetailExplain":"被保人70周岁或80周岁仍生存,分别给付1977.50元"},{"dutyAmnt":"15000.00","dutyStairExplain":"一次给付15000.00元","dutyName":"满期生存保险金(鑫年)","dutyDetailExplain":"保险期满被保人仍生存,给付15000.00元"}]},{"身价保障":[{"dutyAmnt":"按照已交纳保费和现金价值较大者给付","dutyStairExplain":"按照已交纳保费和现金价值较大者给付","dutyName":"身故保险金(鑫享)","dutyDetailExplain":"若被保人身故,按照已交纳保费和现金价值较大者给付"},{"dutyAmnt":"18周岁前按已交纳15000.00元;18周岁及以后按3955.00元","dutyStairExplain":"18周岁前按已交纳15000.00元;18周岁及以后按3955.00元","dutyName":"身故保险金(八桂B)","dutyDetailExplain":"18周岁前身故,给付已交纳15000.00元;18周岁后(含18周岁)身故,给付3955.00元"},{"dutyAmnt":"按照已交纳保费和现金价值较大者给付","dutyStairExplain":"按照已交纳保费和现金价值较大者给付","dutyName":"身故保险金(鑫年)","dutyDetailExplain":"若被保人身故,按照已交纳保费和现金价值较大者给付"}]},{"疾病保障":[{"dutyAmnt":"3955.00","dutyStairExplain":"单次给付3955.00元","dutyName":"重大疾病保险金(八桂B)","dutyDetailExplain":"108种重疾分组可赔5次,每次保障3955.00元"},{"dutyAmnt":"1977.50","dutyStairExplain":"单次给付1977.50元","dutyName":"特定重大疾病保险金(八桂B)","dutyDetailExplain":"11种特定重大疾病保障1977.50元"},{"dutyAmnt":"2373.00","dutyStairExplain":"单次给付2373.00元","dutyName":"中症疾病保险金(八桂B)","dutyDetailExplain":"20种中症疾病最多给付2次,每次保障2373.00元"},{"dutyAmnt":"1186.50","dutyStairExplain":"单次给付1186.50元","dutyName":"轻症疾病保险金(八桂B)","dutyDetailExplain":"35种轻症疾病最多给付5次,每次保障1186.50元"},{"dutyAmnt":"3955.00","dutyStairExplain":"给付3955.00元","dutyName":"重大疾病保险金(附加福娃娃)","dutyDetailExplain":"100种重疾保障3955.00元"}]},{"保费豁免":[{"dutyAmnt":"确诊后免交以后各期保费,保险合同继续有效","dutyStairExplain":"确诊后免交以后各期保费,保险合同继续有效","dutyName":"重大疾病、中症疾病或轻症疾病豁免保险费(八桂B)","dutyDetailExplain":"被保险人因意外伤害或于等待期后因意外伤害以外的原因初次确诊重大疾病、中症疾病或轻症疾病,免交以后各期保费"},{"dutyAmnt":"发生后免交以后各期保费,保险合同继续有效","dutyStairExplain":"发生后免交以后各期保费,保险合同继续有效","dutyName":"投保人意外身故或全残豁免保险费(八桂B)","dutyDetailExplain":"投保人遭受意外伤害并在180日内因该意外伤害导致身故或全残,且投保人61周岁,免交以后各期保费"},{"dutyAmnt":"免交主险以后各期保费","dutyStairExplain":"免交主险以后各期保费","dutyName":"身故或全残豁免保险费(附加)","dutyDetailExplain":"若投保人因意外伤害或于等待期后因意外伤害以外的原因导致身故或全残,豁免主险以后各期保费"}]},{"医疗保障":[{"dutyAmnt":"3955.00","dutyStairExplain":"最多给付3955.00元","dutyName":"一般医疗保险金(民惠)","dutyDetailExplain":"住院医疗保险金、住院前后门诊医疗保险金、特殊门诊医疗保险金累计给付最多3955.00元"},{"dutyAmnt":"3955.00","dutyStairExplain":"最多给付3955.00元","dutyName":"恶性肿瘤住院医疗保险金(民惠)","dutyDetailExplain":"恶性肿瘤住院医疗保险金、恶性肿瘤住院前后门诊医疗保险金、恶性肿瘤特殊门诊医疗保险金累计最多给付3955.00元"},{"dutyAmnt":"年度免赔额","dutyStairExplain":"年度免赔额","dutyName":"免赔额(民惠)","dutyDetailExplain":"1万元"},{"dutyAmnt":"791.00","dutyStairExplain":"给付791.00元","dutyName":"轻症疾病保险金(附加福娃娃)","dutyDetailExplain":"30种轻症疾病保障791.00元"},{"dutyAmnt":"1186.50","dutyStairExplain":"给付1186.50元","dutyName":"少儿特定重大疾病保险金(附加福娃娃)","dutyDetailExplain":"15种少儿特定重大疾病保障1186.50元"},{"dutyAmnt":"3955.00","dutyStairExplain":"最高保障3955.00元","dutyName":"意外伤害医疗保险金","dutyDetailExplain":"被保人因意外伤害进行必要治疗的医疗费用,最高给付3955.00元"},{"dutyAmnt":"3955.00","dutyStairExplain":"按每天3955.00给付","dutyName":"意外伤害住院津贴保险金","dutyDetailExplain":"被保人因意外伤害进行住院治疗,按(被保险人自该意外伤害发生之日起180日内的实际住院天数-3日)乘以意外伤害住院津贴日额给付意外伤害住院津贴保险金"}]},{"万能账户":[{"dutyAmnt":"保证结算利率为3.0%","dutyStairExplain":"保证结算利率为3.0%","dutyName":"万能账户(福娃娃)","dutyDetailExplain":"富娃娃保证结算利率3.0%"},{"dutyAmnt":"保证结算利率为3.0%","dutyStairExplain":"保证结算利率为3.0%","dutyName":"万能账户(鑫管家)","dutyDetailExplain":"鑫管家万能账户保证结算利率3.0%"}]},{"意外保障":[{"dutyAmnt":"3955.00","dutyStairExplain":"最高保障3955.00元","dutyName":"意外身故/伤残保险金","dutyDetailExplain":"被保人因意外伤害导致身故,最高给付3955.00元"},{"dutyAmnt":"3955.00","dutyStairExplain":"最高保障3955.00元","dutyName":"轨道列车意外身故保险金/轨道列车意外伤残保险金","dutyDetailExplain":"被保人因乘坐轨道列车导致意外身故或伤残,最高给付3955.00元"},{"dutyAmnt":"3955.00","dutyStairExplain":"最高保障3955.00元","dutyName":"客运汽车意外身故保险金/客运汽车意外伤残保险金","dutyDetailExplain":"被保人因乘坐客运汽车导致意外身故或伤残,最高给付3955.00元"},{"dutyAmnt":"3955.00","dutyStairExplain":"最高保障3955.00元","dutyName":"客运轮船意外身故保险金/客运轮船意外伤残保险金","dutyDetailExplain":"被保人因乘坐客运轮船导致意外身故或伤残,最高给付3955.00元"},{"dutyAmnt":"3955.00","dutyStairExplain":"最高保障3955.00元","dutyName":"客运民航班机意外身故保险金/客运民航班机意外伤残保险金","dutyDetailExplain":"被保人因乘坐客运民航班机导致意外身故或伤残,最高给付3955.00元"},{"dutyAmnt":"3955.00","dutyStairExplain":"最高保障3955.00元","dutyName":"自驾车意外身故保险金/自驾车意外伤残保险金","dutyDetailExplain":"被保人因驾乘自驾车导致意外身故或伤残,最高给付3955.00元"}]}]}' + ) + if (risk.insuYear == 106 && risk.insuYearFlag == 'A') { risk.insureName = '终身' } else { @@ -466,7 +496,6 @@ export default { this.insuredDTOs = insuredDTOs[0].insuredDTOs this.insuredDTOs = relevanceByInsure(this.insuredDTOs, insuredLabelResult, insuredResult, insuredInfoResult) //进行数据关联 this.getWXTitle(this.insuredDTOs) //获取微信标题 - console.log('this.insuredDTOs', this.insuredDTOs) // 建议书名称 this.insuredDTOs.forEach(item => { if (item.riskDTOLst && item.riskDTOLst.length > 0) { @@ -486,10 +515,8 @@ export default { } }) }, - //转投保 insure() { - console.log(JSON.parse(localStorage.mainRiskCodes).length) if (localStorage.mainRiskCodes) { if (JSON.parse(localStorage.mainRiskCodes).length == '2') { return Toast.fail('暂不支持组合产品转投保') @@ -593,40 +620,35 @@ export default { path: '/proposal/pdf' } }) - - // let params = { - // proposalInfoDTO: { - // proposalNo: localStorage.orderNo - // } - // } - // //在微信端 直接跳转 - // if (this.isWeixin) { - // return this.$jump({ - // flag: 'h5', - // extra: { - // url: location.origin + '/#/proposal/pdf' - // }, - // routerInfo: { - // path: '/proposal/pdf' - // } - // }) - // } - // let make = await makePdf(params) - // if (make.result == '0') { - // let pdfUrl = encodeURIComponent(config.imgDomain + '/returnDirectStream?imgPath=' + make.content) - // this.$jump({ - // flag: 'h5', - // extra: { - // url: location.origin + '/pdfjs/web/viewer.html?file=' + pdfUrl, - // title: 'PDF预览' - // }, - // routerInfo: { - // path: '/proposal/pdf' - // } - // }) - // } else { - // Toast.fail(make.resultMessage) - // } + }, + // 条款PDF + async goCaluePDF(riskItem) { + location.showCaluePDFUrl = riskItem.url + this.$jump({ + flag: 'h5', + extra: { + url: location.origin + '/#/proposal/caluePdf?', + title: '条款' + }, + routerInfo: { + path: '/proposal/caluePdf' + } + }) + }, + //写成标准的方法(数组是object的一种): + getObjectKeys(object) { + var keys = [] + for (var property in object) { + keys.push(property) + } + return keys + }, + getObjectValues(object) { + var values = [] + for (var property in object) { + values.push(object[property]) + } + return values } }, components: { @@ -801,11 +823,17 @@ export default { margin: 29px 15px; padding-top: 15px; border-radius: 5px; + .cheeck_risk_type_left { + border-bottom-left-radius: 15px; + border-top-left-radius: 15px; + } + .cheeck_risk_type_right { + border-bottom-right-radius: 15px; + border-top-right-radius: 15px; + } .checked_risk_type { height: 30px; line-height: 30px; - border-bottom-left-radius: 15px; - border-top-left-radius: 15px; border: 1px solid #3a81f6; background-color: #3a81f6; padding: 0px 25px; @@ -814,8 +842,6 @@ export default { .no_check_risk_type { height: 30px; line-height: 30px; - border-bottom-right-radius: 15px; - border-top-right-radius: 15px; border: 1px solid #3a81f6; background-color: #ffffff; color: #3a81f6; @@ -915,5 +941,29 @@ export default { text-align: right; } } + .show_risk_name { + border-left: 5px solid #3a81f6; + padding-left: 7px; + text-align: left; + line-height: 20px; + margin-top: 5px; + margin-bottom: 5px; + } + .duty_by_duty { + .head_radis { + width: 6px; + height: 6px; + background-color: black; + border-radius: 3px; + } + .title_2 { + padding-left: 5px; + line-height: 25px; + } + .content_1 { + padding-left: 23px; + line-height: 25px; + } + } }