默认提交
Showing
11 changed files
with
146 additions
and
21 deletions
| ... | @@ -791,6 +791,7 @@ module.exports = { | ... | @@ -791,6 +791,7 @@ module.exports = { |
| 791 | showMore: "Show all policies.", | 791 | showMore: "Show all policies.", |
| 792 | noPolicy: "You haven't bought any policy, if you have any questions please", | 792 | noPolicy: "You haven't bought any policy, if you have any questions please", |
| 793 | customService: " contact customer service", | 793 | customService: " contact customer service", |
| 794 | downloadClick:"Download", | ||
| 794 | }, | 795 | }, |
| 795 | unauth: { | 796 | unauth: { |
| 796 | m1: { | 797 | m1: { | ... | ... |
| ... | @@ -763,6 +763,7 @@ module.exports = { | ... | @@ -763,6 +763,7 @@ module.exports = { |
| 763 | showMore: "顯示所有保單", | 763 | showMore: "顯示所有保單", |
| 764 | noPolicy: "您還未購買保單,如有疑問請", | 764 | noPolicy: "您還未購買保單,如有疑問請", |
| 765 | customService: "聯繫客服", | 765 | customService: "聯繫客服", |
| 766 | downloadClick:"點擊下載", | ||
| 766 | }, | 767 | }, |
| 767 | unauth: { | 768 | unauth: { |
| 768 | m1: { | 769 | m1: { | ... | ... |
| ... | @@ -785,6 +785,7 @@ module.exports = { | ... | @@ -785,6 +785,7 @@ module.exports = { |
| 785 | showMore: "显示所有保单", | 785 | showMore: "显示所有保单", |
| 786 | noPolicy: "您还未购买保单,如有疑问请", | 786 | noPolicy: "您还未购买保单,如有疑问请", |
| 787 | customService: "联系客服", | 787 | customService: "联系客服", |
| 788 | downloadClick:"点击下载", | ||
| 788 | }, | 789 | }, |
| 789 | unauth: { | 790 | unauth: { |
| 790 | m1: { | 791 | m1: { | ... | ... |
| ... | @@ -5,7 +5,7 @@ | ... | @@ -5,7 +5,7 @@ |
| 5 | <div class="border"> | 5 | <div class="border"> |
| 6 | <div class="close" @click="onOverLayHandler()"><img src="@/assets/images/clarms/close.png"></div> | 6 | <div class="close" @click="onOverLayHandler()"><img src="@/assets/images/clarms/close.png"></div> |
| 7 | <div class="modal"> | 7 | <div class="modal"> |
| 8 | <div class="content"> | 8 | <div class="modal-content"> |
| 9 | <div class="info-icon"> | 9 | <div class="info-icon"> |
| 10 | <img src="@/assets/images/clarms/suc.png"> | 10 | <img src="@/assets/images/clarms/suc.png"> |
| 11 | </div> | 11 | </div> | ... | ... |
| ... | @@ -108,13 +108,74 @@ export default { | ... | @@ -108,13 +108,74 @@ export default { |
| 108 | nl: [[1, 1], [1, 2], [1, 3], [5, 5], [8, 15], [9, 9]] | 108 | nl: [[1, 1], [1, 2], [1, 3], [5, 5], [8, 15], [9, 9]] |
| 109 | }, | 109 | }, |
| 110 | // 节假日,key是月份,value是日期列表 | 110 | // 节假日,key是月份,value是日期列表 |
| 111 | holiday: { | 111 | // holiday: { |
| 112 | 112 | ||
| 113 | } | 113 | // } |
| 114 | } | 114 | } |
| 115 | }, | 115 | }, |
| 116 | components: {}, | 116 | components: {}, |
| 117 | computed: { | 117 | computed: { |
| 118 | holiday(){ | ||
| 119 | // 计算新历 | ||
| 120 | let result = {}; | ||
| 121 | let year = this.year; | ||
| 122 | if (!year) { | ||
| 123 | return; | ||
| 124 | } | ||
| 125 | let hkHolidayDefine = this.hkHolidayDefine; | ||
| 126 | for (let index = 0; index < hkHolidayDefine.gl.length; index++) { | ||
| 127 | let m = hkHolidayDefine.gl[index][0]; | ||
| 128 | let d = hkHolidayDefine.gl[index][1]; | ||
| 129 | |||
| 130 | // 如果是周六/周日,顺延到下周一 | ||
| 131 | let date = Date.parse(`${year}.${m}.${d}`); | ||
| 132 | if (date.getDay() == 6) { | ||
| 133 | // 周六 | ||
| 134 | date.addDays(2); | ||
| 135 | } else if (date.getDay() == 0) { | ||
| 136 | date.addDays(1); | ||
| 137 | } | ||
| 138 | m = date.getMonth() + 1; | ||
| 139 | d = date.getDate(); | ||
| 140 | |||
| 141 | let list = result[m]; | ||
| 142 | if (!list) { | ||
| 143 | result[m] = []; | ||
| 144 | list = result[m]; | ||
| 145 | } | ||
| 146 | list.push(d); | ||
| 147 | } | ||
| 148 | |||
| 149 | |||
| 150 | for (let index = 0; index < hkHolidayDefine.nl.length; index++) { | ||
| 151 | let m = hkHolidayDefine.nl[index][0]; | ||
| 152 | let d = hkHolidayDefine.nl[index][1]; | ||
| 153 | let gl = toSolar(year, m, d); | ||
| 154 | |||
| 155 | m = gl[1]; | ||
| 156 | d = gl[2]; | ||
| 157 | |||
| 158 | // 如果是周六/周日,顺延到下周一 | ||
| 159 | let date = Date.parse(`${year}.${m}.${d}`); | ||
| 160 | |||
| 161 | if (date.getDay() == 6) { | ||
| 162 | // 周六 | ||
| 163 | date.addDays(2); | ||
| 164 | } else if (date.getDay() == 0) { | ||
| 165 | date.addDays(1); | ||
| 166 | } | ||
| 167 | m = date.getMonth() + 1; | ||
| 168 | d = date.getDate(); | ||
| 169 | |||
| 170 | let list = result[m]; | ||
| 171 | if (!list) { | ||
| 172 | result[m] = []; | ||
| 173 | list = result[m]; | ||
| 174 | } | ||
| 175 | list.push(d); | ||
| 176 | } | ||
| 177 | return result; | ||
| 178 | }, | ||
| 118 | locale() { | 179 | locale() { |
| 119 | return this.$i18n.locale || 'tc'; | 180 | return this.$i18n.locale || 'tc'; |
| 120 | }, | 181 | }, |
| ... | @@ -176,6 +237,7 @@ export default { | ... | @@ -176,6 +237,7 @@ export default { |
| 176 | * fortmatMonthData 用于渲染日历的数据 | 237 | * fortmatMonthData 用于渲染日历的数据 |
| 177 | */ | 238 | */ |
| 178 | formatDate() { | 239 | formatDate() { |
| 240 | // console.log("qqq:",this.holiday); | ||
| 179 | let result = []; | 241 | let result = []; |
| 180 | let year = this.year; | 242 | let year = this.year; |
| 181 | let month = this.month; | 243 | let month = this.month; |
| ... | @@ -217,7 +279,7 @@ export default { | ... | @@ -217,7 +279,7 @@ export default { |
| 217 | disable = true; | 279 | disable = true; |
| 218 | } else { | 280 | } else { |
| 219 | let holidayCandidates = this.holiday[month+""]; | 281 | let holidayCandidates = this.holiday[month+""]; |
| 220 | if (holidayCandidates && holidayCandidates.indexOf(d) >= 0) { | 282 | if (holidayCandidates && holidayCandidates.indexOf(date) != -1) { |
| 221 | disable = true; | 283 | disable = true; |
| 222 | } | 284 | } |
| 223 | } | 285 | } |
| ... | @@ -611,7 +673,7 @@ export default { | ... | @@ -611,7 +673,7 @@ export default { |
| 611 | this.$emit('input', val); | 673 | this.$emit('input', val); |
| 612 | }, | 674 | }, |
| 613 | year() { | 675 | year() { |
| 614 | this.calculateHolidays(); | 676 | // this.calculateHolidays(); |
| 615 | } | 677 | } |
| 616 | } | 678 | } |
| 617 | } | 679 | } | ... | ... |
| ... | @@ -7,7 +7,11 @@ import { | ... | @@ -7,7 +7,11 @@ import { |
| 7 | import { | 7 | import { |
| 8 | mapState | 8 | mapState |
| 9 | } from 'vuex'; | 9 | } from 'vuex'; |
| 10 | import { formatMoney, getInsuredPeriod, getPolicyName } from "@/utils/biz.js"; | 10 | import { |
| 11 | formatMoney, | ||
| 12 | getInsuredPeriod, | ||
| 13 | getPolicyName | ||
| 14 | } from "@/utils/biz.js"; | ||
| 11 | import Modal2Comp from '@/components/modal2-comp/modal2-comp.vue'; | 15 | import Modal2Comp from '@/components/modal2-comp/modal2-comp.vue'; |
| 12 | 16 | ||
| 13 | export default { | 17 | export default { |
| ... | @@ -30,7 +34,7 @@ export default { | ... | @@ -30,7 +34,7 @@ export default { |
| 30 | selectPolicyCode: "", | 34 | selectPolicyCode: "", |
| 31 | selectPolicyCodes: {}, | 35 | selectPolicyCodes: {}, |
| 32 | hide: false, | 36 | hide: false, |
| 33 | showDownloadError : false | 37 | showDownloadError: false |
| 34 | } | 38 | } |
| 35 | }, | 39 | }, |
| 36 | computed: { | 40 | computed: { |
| ... | @@ -45,6 +49,14 @@ export default { | ... | @@ -45,6 +49,14 @@ export default { |
| 45 | }, | 49 | }, |
| 46 | }, | 50 | }, |
| 47 | methods: { | 51 | methods: { |
| 52 | onShowTipsOverHandler(event, item, index) { | ||
| 53 | let child = event.currentTarget.childNodes[0]; | ||
| 54 | child.style.display = "block"; | ||
| 55 | }, | ||
| 56 | onShowTipsOutHandler(event, item, index) { | ||
| 57 | let child = event.currentTarget.childNodes[0]; | ||
| 58 | child.style.display = "none"; | ||
| 59 | }, | ||
| 48 | toContactUs() { | 60 | toContactUs() { |
| 49 | this.$router.push({ | 61 | this.$router.push({ |
| 50 | path: "/custom/service", | 62 | path: "/custom/service", |
| ... | @@ -62,7 +74,10 @@ export default { | ... | @@ -62,7 +74,10 @@ export default { |
| 62 | this.initSelected(); | 74 | this.initSelected(); |
| 63 | } else { | 75 | } else { |
| 64 | this.checkCustomer().then(() => { | 76 | this.checkCustomer().then(() => { |
| 65 | httpPost({ url: api.policyList, sid: true }).then(res => { | 77 | httpPost({ |
| 78 | url: api.policyList, | ||
| 79 | sid: true | ||
| 80 | }).then(res => { | ||
| 66 | if (!res || res.length == 0) { | 81 | if (!res || res.length == 0) { |
| 67 | this.myPolicyList = null; | 82 | this.myPolicyList = null; |
| 68 | } else { | 83 | } else { |
| ... | @@ -124,7 +139,10 @@ export default { | ... | @@ -124,7 +139,10 @@ export default { |
| 124 | if (!selectPolicy) { | 139 | if (!selectPolicy) { |
| 125 | let firstPolicy = this.myPolicyList[0]; | 140 | let firstPolicy = this.myPolicyList[0]; |
| 126 | this.myPolicyList[0].activity = true; | 141 | this.myPolicyList[0].activity = true; |
| 127 | selectPolicy = { id: firstPolicy.policyId, code: firstPolicy.policyCode }; | 142 | selectPolicy = { |
| 143 | id: firstPolicy.policyId, | ||
| 144 | code: firstPolicy.policyCode | ||
| 145 | }; | ||
| 128 | if (this.multiSelectable) { | 146 | if (this.multiSelectable) { |
| 129 | this.selectPolicyCodes[selectPolicy.code] = selectPolicy; | 147 | this.selectPolicyCodes[selectPolicy.code] = selectPolicy; |
| 130 | } else { | 148 | } else { |
| ... | @@ -139,7 +157,10 @@ export default { | ... | @@ -139,7 +157,10 @@ export default { |
| 139 | let c = this.selectPolicyCodes[code]; | 157 | let c = this.selectPolicyCodes[code]; |
| 140 | if (!c || typeof c == "undefined") { | 158 | if (!c || typeof c == "undefined") { |
| 141 | item.activity = true; | 159 | item.activity = true; |
| 142 | this.selectPolicyCodes[code] = { code: code, id: item.policyId }; | 160 | this.selectPolicyCodes[code] = { |
| 161 | code: code, | ||
| 162 | id: item.policyId | ||
| 163 | }; | ||
| 143 | } else { | 164 | } else { |
| 144 | item.activity = false; | 165 | item.activity = false; |
| 145 | delete this.selectPolicyCodes[code]; | 166 | delete this.selectPolicyCodes[code]; |
| ... | @@ -153,7 +174,10 @@ export default { | ... | @@ -153,7 +174,10 @@ export default { |
| 153 | } else { | 174 | } else { |
| 154 | if (code != this.selectPolicyCode) { | 175 | if (code != this.selectPolicyCode) { |
| 155 | this.selectPolicyCode = code; | 176 | this.selectPolicyCode = code; |
| 156 | this.$emit("onSelect", [{ code: code, id: item.policyId }]); | 177 | this.$emit("onSelect", [{ |
| 178 | code: code, | ||
| 179 | id: item.policyId | ||
| 180 | }]); | ||
| 157 | } | 181 | } |
| 158 | } | 182 | } |
| 159 | }, | 183 | }, |
| ... | @@ -207,7 +231,13 @@ export default { | ... | @@ -207,7 +231,13 @@ export default { |
| 207 | }, | 231 | }, |
| 208 | downloadPolicy(policy) { | 232 | downloadPolicy(policy) { |
| 209 | if (policy) { | 233 | if (policy) { |
| 210 | httpPost({ url: api.getDownloadPath, sid: true, data: { policyCode: policy.policyCode } }).then(res => { | 234 | httpPost({ |
| 235 | url: api.getDownloadPath, | ||
| 236 | sid: true, | ||
| 237 | data: { | ||
| 238 | policyCode: policy.policyCode | ||
| 239 | } | ||
| 240 | }).then(res => { | ||
| 211 | if (res) { | 241 | if (res) { |
| 212 | let url = requestDomain() + api.downloadPolicy + "/" + res; | 242 | let url = requestDomain() + api.downloadPolicy + "/" + res; |
| 213 | window.open(url); | 243 | window.open(url); | ... | ... |
| 1 | @import '@/styles/_support'; | 1 | @import '@/styles/_support'; |
| 2 | |||
| 2 | .list-container { | 3 | .list-container { |
| 3 | overflow-x: auto; | 4 | overflow-x: auto; |
| 4 | margin-bottom: 2rem; | 5 | margin-bottom: 2rem; |
| ... | @@ -13,6 +14,21 @@ | ... | @@ -13,6 +14,21 @@ |
| 13 | position: relative; | 14 | position: relative; |
| 14 | } | 15 | } |
| 15 | 16 | ||
| 17 | .download { | ||
| 18 | position: relative; | ||
| 19 | |||
| 20 | &-tips { | ||
| 21 | display: none; | ||
| 22 | position: absolute; | ||
| 23 | top: -3px; | ||
| 24 | left: 20px; | ||
| 25 | z-index: 11; | ||
| 26 | padding: 2px; | ||
| 27 | @include border-tans(); | ||
| 28 | min-width: 80px; | ||
| 29 | } | ||
| 30 | } | ||
| 31 | |||
| 16 | .guide { | 32 | .guide { |
| 17 | position: absolute; | 33 | position: absolute; |
| 18 | transition: all 0.5s; | 34 | transition: all 0.5s; |
| ... | @@ -121,6 +137,8 @@ | ... | @@ -121,6 +137,8 @@ |
| 121 | display: flex; | 137 | display: flex; |
| 122 | justify-content: center; | 138 | justify-content: center; |
| 123 | align-items: center; | 139 | align-items: center; |
| 140 | |||
| 141 | |||
| 124 | } | 142 | } |
| 125 | 143 | ||
| 126 | .cell1 { | 144 | .cell1 { |
| ... | @@ -166,7 +184,7 @@ | ... | @@ -166,7 +184,7 @@ |
| 166 | } | 184 | } |
| 167 | 185 | ||
| 168 | .sp { | 186 | .sp { |
| 169 | text-decoration :underline; | 187 | text-decoration: underline; |
| 170 | padding: 0 .4rem; | 188 | padding: 0 .4rem; |
| 171 | } | 189 | } |
| 172 | 190 | ||
| ... | @@ -178,7 +196,7 @@ | ... | @@ -178,7 +196,7 @@ |
| 178 | .show-more-btn { | 196 | .show-more-btn { |
| 179 | width: 100%; | 197 | width: 100%; |
| 180 | color: $cOrange !important; | 198 | color: $cOrange !important; |
| 181 | text-decoration :underline; | 199 | text-decoration: underline; |
| 182 | cursor: pointer; | 200 | cursor: pointer; |
| 183 | justify-content: center !important; | 201 | justify-content: center !important; |
| 184 | } | 202 | } |
| ... | @@ -190,12 +208,13 @@ | ... | @@ -190,12 +208,13 @@ |
| 190 | .activity { | 208 | .activity { |
| 191 | background-color: $cOrange !important; | 209 | background-color: $cOrange !important; |
| 192 | opacity: .5; | 210 | opacity: .5; |
| 193 | div{ | 211 | |
| 212 | div { | ||
| 194 | color: #FFFFFF !important; | 213 | color: #FFFFFF !important; |
| 195 | } | 214 | } |
| 196 | } | 215 | } |
| 197 | 216 | ||
| 198 | .empty{ | 217 | .empty { |
| 199 | height: 41.666667rem; | 218 | height: 41.666667rem; |
| 200 | display: flex; | 219 | display: flex; |
| 201 | align-items: center; | 220 | align-items: center; | ... | ... |
| ... | @@ -33,7 +33,12 @@ | ... | @@ -33,7 +33,12 @@ |
| 33 | </template> | 33 | </template> |
| 34 | <span class="sp" :class="{ac: selectPolicyCode == item.policyCode}">{{item.policyCode}}</span> | 34 | <span class="sp" :class="{ac: selectPolicyCode == item.policyCode}">{{item.policyCode}}</span> |
| 35 | <template v-if="model == 'download'"> | 35 | <template v-if="model == 'download'"> |
| 36 | <img @click="downloadPolicy(item)" class="icon-download" src="@/assets/images/insurance-query/icon-down-load.png" alt=""> | 36 | <div class="download" @mouseover="onShowTipsOverHandler($event,item,index)" @mouseout="onShowTipsOutHandler($event,item,index)"> |
| 37 | <div class="download-tips"> | ||
| 38 | <div class="cont">{{$t('customService.insuranceQuery.downloadClick')}}</div> | ||
| 39 | </div> | ||
| 40 | <img class="icon-download" src="@/assets/images/insurance-query/icon-down-load.png" alt=""> | ||
| 41 | </div> | ||
| 37 | </template> | 42 | </template> |
| 38 | </template> | 43 | </template> |
| 39 | </div> | 44 | </div> | ... | ... |
| ... | @@ -307,7 +307,8 @@ $borderSize: 6px; | ... | @@ -307,7 +307,8 @@ $borderSize: 6px; |
| 307 | 307 | ||
| 308 | &-border { | 308 | &-border { |
| 309 | width: 100%; | 309 | width: 100%; |
| 310 | height: 3px; | 310 | height: 4px; |
| 311 | background-color: $cOrange2; | ||
| 311 | } | 312 | } |
| 312 | 313 | ||
| 313 | .table-item { | 314 | .table-item { |
| ... | @@ -418,9 +419,10 @@ $borderSize: 6px; | ... | @@ -418,9 +419,10 @@ $borderSize: 6px; |
| 418 | max-width: 602px; | 419 | max-width: 602px; |
| 419 | height: 67px; | 420 | height: 67px; |
| 420 | line-height: 67px; | 421 | line-height: 67px; |
| 421 | padding: 2px; | 422 | // padding: 2px; |
| 422 | border-radius: $borderSize; | 423 | // border-radius: $borderSize; |
| 423 | cursor: pointer; | 424 | cursor: pointer; |
| 425 | @include border-tans($borderSize); | ||
| 424 | 426 | ||
| 425 | .cont { | 427 | .cont { |
| 426 | // @extend .fcc; | 428 | // @extend .fcc; | ... | ... |
| ... | @@ -87,6 +87,10 @@ input { | ... | @@ -87,6 +87,10 @@ input { |
| 87 | .text-jtf { | 87 | .text-jtf { |
| 88 | text-align: justify; | 88 | text-align: justify; |
| 89 | text-align-last: left; | 89 | text-align-last: left; |
| 90 | -webkit-text-align: justify; | ||
| 91 | -webkit-text-align-last: left; | ||
| 92 | -moz-text-align: justify; | ||
| 93 | -moz-text-align-last: left; | ||
| 90 | } | 94 | } |
| 91 | 95 | ||
| 92 | .underline { | 96 | .underline { | ... | ... |
-
Please register or sign in to post a comment