提交 0c5ef261 编写于 作者: zhongyao.qiao's avatar zhongyao.qiao

feat 三要素迁移

上级 4eaff480
...@@ -2,7 +2,7 @@ module.exports = { ...@@ -2,7 +2,7 @@ module.exports = {
root: true, root: true,
parserOptions: { parserOptions: {
parser: 'babel-eslint', parser: 'babel-eslint',
sourceType: 'module' sourceType: 'module',
}, },
env: { env: {
browser: true, browser: true,
...@@ -12,44 +12,63 @@ module.exports = { ...@@ -12,44 +12,63 @@ module.exports = {
extends: ['plugin:vue/recommended', 'eslint:recommended'], extends: ['plugin:vue/recommended', 'eslint:recommended'],
// 全局变量 // 全局变量
globals: { globals: {
'gdp': true, gdp: true,
'uni': true, uni: true,
'wx': true, wx: true,
'qq': true, qq: true,
'$':true $: true,
}, },
// add your custom rules here // add your custom rules here
//it is base on https://github.com/vuejs/eslint-config-vue //it is base on https://github.com/vuejs/eslint-config-vue
rules: { rules: {
'vue/html-self-closing': 'off',
'no-console': 0, 'no-console': 0,
'no-debugger':0, 'no-debugger': 0,
'comma-spacing': [2, { // 控制逗号前面没有空格,后面必须有空格 'comma-spacing': [
'before': false, 2,
'after': true {
}], // 控制逗号前面没有空格,后面必须有空格
'arrow-spacing': [2, { // 要求箭头函数前后有空格 before: false,
'before': true, after: true,
'after': true },
}], ],
'no-multi-spaces': 2,// 禁止使用多个空格, 'arrow-spacing': [
'no-spaced-func': 2,// 禁止 function 标识符和括号之间出现空格,this.getList () 报错 2,
'semi-spacing': [2, {// 强制分号之前不允许有空格 {
'before': false, // 要求箭头函数前后有空格
'after': true before: true,
}], after: true,
'space-infix-ops': 2,// 要求操作符前后必须有空格: 2 + 3 2 === 2 3 > 2 },
],
'no-multi-spaces': 2, // 禁止使用多个空格,
'no-spaced-func': 2, // 禁止 function 标识符和括号之间出现空格,this.getList () 报错
'semi-spacing': [
2,
{
// 强制分号之前不允许有空格
before: false,
after: true,
},
],
'space-infix-ops': 2, // 要求操作符前后必须有空格: 2 + 3 2 === 2 3 > 2
'spaced-comment': [2, 'always'], // 强制在注释中 // 或 /* 使用一致的空格 'spaced-comment': [2, 'always'], // 强制在注释中 // 或 /* 使用一致的空格
'array-bracket-spacing': [2, 'never'],// 指定数组的元素之间要以空格隔开(, 后面), never参数:[ 之后和 ] 之前不能带空格,always参数:[ 之后和 ] 之前必须带空格 'array-bracket-spacing': [2, 'never'], // 指定数组的元素之间要以空格隔开(, 后面), never参数:[ 之后和 ] 之前不能带空格,always参数:[ 之后和 ] 之前必须带空格
"space-before-blocks": 2, // if/function等的大括号之前需要有空格 'space-before-blocks': 2, // if/function等的大括号之前需要有空格
'no-undef-init': 2,// 禁止将变量初始化为 undefined,保存时会将let a = undefined变成let a 'no-undef-init': 2, // 禁止将变量初始化为 undefined,保存时会将let a = undefined变成let a
'semi': [2, 'always'],//强制结尾必须有分号; semi: [2, 'always'], //强制结尾必须有分号;
'prefer-const': 2,// 要求使用 const 声明那些声明后不再被修改的变量 'prefer-const': 2, // 要求使用 const 声明那些声明后不再被修改的变量
'quotes': [2, 'single'],//js中强制使用单引号 quotes: [2, 'single'], //js中强制使用单引号
'no-multiple-empty-lines': [2, {// 不允许多个空行,最多一行 'no-multiple-empty-lines': [
'max': 1 2,
}], {
'vue/order-in-components': ['error', { // 不允许多个空行,最多一行
'order': [ max: 1,
},
],
'vue/order-in-components': [
'error',
{
order: [
'el', 'el',
'name', 'name',
'parent', 'parent',
...@@ -67,11 +86,14 @@ module.exports = { ...@@ -67,11 +86,14 @@ module.exports = {
'LIFECYCLE_HOOKS', 'LIFECYCLE_HOOKS',
'methods', 'methods',
['template', 'render'], ['template', 'render'],
'renderError' 'renderError',
] ],
}], },
'vue/attributes-order': ['error', { ],
'order': [ 'vue/attributes-order': [
'error',
{
order: [
'DEFINITION', 'DEFINITION',
'LIST_RENDERING', 'LIST_RENDERING',
'CONDITIONALS', 'CONDITIONALS',
...@@ -82,8 +104,9 @@ module.exports = { ...@@ -82,8 +104,9 @@ module.exports = {
'OTHER_DIRECTIVES', 'OTHER_DIRECTIVES',
'OTHER_ATTR', 'OTHER_ATTR',
'EVENTS', 'EVENTS',
'CONTENT' 'CONTENT',
] ],
}], },
} ],
} },
};
import insuranceBindCode from '@/views/insurance-bind-code/insurance-bind-code'; import insuranceBindCode from '@/views/insurance-bind-code/insurance-bind-code';
import insuranceBindCodeSuccess from '@/views/insurance-bindCode-success/insurance-bindCode-success'; import insuranceBindCodeSuccess from '@/views/insurance-bindCode-success/insurance-bindCode-success';
import insuranceDetectionDetail from '@/views/insurance-detection-detail/insurance-detection-detail'; import insuranceDetectionDetail from '@/views/insurance-detection-detail/insurance-detection-detail';
import { router, } from '@pica-cli/vue-cli-plugin-pica-cli-plugin/auto'; import { router } from '@pica-cli/vue-cli-plugin-pica-cli-plugin/auto';
import { headerConfigByMeta } from 'mn-template/util/routerUtil'; import { headerConfigByMeta } from 'mn-template/util/routerUtil';
import handleAllRouter from '../public_uat'; import handleAllRouter from '../public_uat';
const routerConfig = [ const routerConfig = [
...@@ -48,7 +48,8 @@ const routerConfig = [ ...@@ -48,7 +48,8 @@ const routerConfig = [
{ {
path: '/insuranceQuestionResult', path: '/insuranceQuestionResult',
name: 'insuranceQuestionResult', name: 'insuranceQuestionResult',
component: () => import('@/views/insurance-question-result/insuranceQuestionResult.vue'), component: () =>
import('@/views/insurance-question-result/insuranceQuestionResult.vue'),
meta: { meta: {
title: '问卷结果页面', title: '问卷结果页面',
}, },
...@@ -56,7 +57,10 @@ const routerConfig = [ ...@@ -56,7 +57,10 @@ const routerConfig = [
{ {
path: '/insuranceQuestionResultPay', path: '/insuranceQuestionResultPay',
name: 'insuranceQuestionResultPay', name: 'insuranceQuestionResultPay',
component: () => import('@/views/insurance-question-result-pay/insuranceQuestionResult.vue'), component: () =>
import(
'@/views/insurance-question-result-pay/insuranceQuestionResult.vue'
),
meta: { meta: {
title: '问卷结果页面', title: '问卷结果页面',
}, },
...@@ -139,6 +143,14 @@ const routerConfig = [ ...@@ -139,6 +143,14 @@ const routerConfig = [
title: '惠民保癌筛权益领取', title: '惠民保癌筛权益领取',
}, },
}, },
{
path: '/sz-public-new2',
name: 'sz-public-new2',
component: () => import('@/views/sz-public-new/index2.vue'),
meta: {
title: '惠民保癌筛权益领取',
},
},
{ {
path: '/tb-public', path: '/tb-public',
name: 'tb-public', name: 'tb-public',
...@@ -174,7 +186,6 @@ const routerConfig = [ ...@@ -174,7 +186,6 @@ const routerConfig = [
router.beforeEach(async (to, from, next) => { router.beforeEach(async (to, from, next) => {
headerConfigByMeta(to); headerConfigByMeta(to);
next(); next();
}); });
router.addRoutes(routerConfig); router.addRoutes(routerConfig);
......
<!-- eslint-disable -->
<template>
<div class="page-wrapper">
<img
class="pic"
:src="bgPath"
/>
<div
v-for="(url, index) in staticINFO.logoUrlList"
:key="index"
>
<img
class="pic"
:src="url"
/>
</div>
<div
v-for="(url, index) in staticINFO2.descList"
:key="index"
@click="handleBanner(index)"
>
<img
class="pic"
:src="url"
/>
</div>
<div class="footer-box">
<div class="fixed-btn">
<div
class="wx-btn"
v-if="picaWechat != 'wechat'"
>
<span>领取权益</span>
</div>
<wx-open-launch-weapp
v-else
:username="openWebAppConfigPositive.username"
:path="openWebAppConfigPositive.path"
:env-version="envVersion"
@error="handleErrorFn"
@launch="handleLaunchFn"
>
<script type="text/wxtag-template">
<div class="wx-btn">
<span>领取权益</span>
</div>
<style>
.wx-btn {
display: block;
width: 350px;
height: 40px;
margin: 5px auto;
border-radius: 20px;
font-size: 16px;
font-weight: 600;
color: #ffffff;
line-height: 40px;
text-align: center;
background: linear-gradient(270deg, #ff7400 0%, #fe4000 100%);
}
</style>
</script>
</wx-open-launch-weapp>
</div>
</div>
</div>
</template>
<script>
import { getBanner } from '@/api/entitlement';
import { uploadPointData } from '@/api/question';
import { isWeixin } from '@/utils/index';
export default {
data() {
return {
picaWechat: window._picaWechat,
headerInfo: {
title: '健康服务权益领取',
isBlack: true,
backMethod: 'web',
style: 'backgroundColor:#ffffff;zIndex:100;',
background: '',
},
envVersion: process.env.VUE_APP_MINI_PROGRAM_ENV,
openWebAppConfigPositive: {
username: 'gh_e92f58174364', // 小程序唯一username 1.gh_80d54796f2d5 云鹊助手 2. gh_e92f58174364 云鹊健康
path: 'pagesInsurance/health-card/index', // 打开页面
extraData: JSON.stringify({}),
},
bgPath: '',
staticINFO: {
logoUrlList: [],
},
staticINFO2: {
descList: [],
descBottomList: [],
},
};
},
created() {
if (!isWeixin()) {
this.$dialog
.alert({
type: 'warning',
title: '提示',
message: '请在微信中扫码打开!',
confirmButtonText: '我知道了',
})
.then(() => {
// on close
});
}
},
mounted() {
document.title = this.headerInfo.title;
const {
externalOrderNo = '',
projectEquityNo = '',
rightsNo = '',
channelCode = '',
userInfo = '',
} = this.$route.query;
this.getBanner(7, rightsNo || projectEquityNo);
this.getBanner2(36, rightsNo || projectEquityNo);
this.openWebAppConfigPositive.path = `pagesInsurance/health-card/index?channelCode=${channelCode}&projectEquityNo=${projectEquityNo}&externalOrderNo=${externalOrderNo}&rightsNo=${rightsNo}&userInfo=${userInfo}`;
if (channelCode) uploadPointData({ channelCode });
this.$sendBuriedData(
{
action: 'ACTION_WEB_ENTER',
component_tag: '7802964#0#0#保险入口页面',
web_data: {
projectEquityNo: projectEquityNo,
externalOrderNo: externalOrderNo,
rightsNo: rightsNo,
userInfo: userInfo,
channelCode: channelCode,
},
},
'enter'
);
},
methods: {
getBanner(pageType, yunOrderNo) {
this.$loading.show();
getBanner(pageType, yunOrderNo).then((res) => {
if (res.code === '000000') {
this.bgPath = res.data.logoUrl;
this.staticINFO = res.data;
this.$loading.hide();
}
});
},
getBanner2(pageType, yunOrderNo) {
this.$loading.show();
getBanner(pageType, yunOrderNo).then((res) => {
if (res.code === '000000') {
this.staticINFO2 = res.data;
this.$loading.hide();
}
});
},
handleErrorFn(e) {
console.log('handleErrorFn', e);
},
handleLaunchFn(e) {
console.log('handleLaunchFn', e);
},
handleBanner(index) {
console.log('index', index);
window.location.href = this.staticINFO2.descBottomList[index];
},
},
};
</script>
<style lang="scss" scoped>
.page-wrapper {
min-height: 100vh;
background-color: #bee2fd;
}
.footer-box {
height: 50px;
padding-bottom: calc(constant(safe-area-inset-bottom) / 2);
padding-bottom: calc(env(safe-area-inset-bottom) / 2);
box-sizing: content-box;
}
.fixed-btn {
position: fixed;
left: 0;
right: 0;
bottom: 0;
height: 50px;
padding-bottom: calc(constant(safe-area-inset-bottom) / 2);
padding-bottom: calc(env(safe-area-inset-bottom) / 2);
box-shadow: inset 0px 1px 0px 0px #e9e9e9;
background-color: #fff;
box-sizing: content-box;
z-index: 9999;
.wx-btn {
display: block;
width: 350px;
height: 40px;
margin: 5px auto;
border-radius: 20px;
font-size: 16px;
font-weight: 600;
color: #ffffff;
line-height: 40px;
text-align: center;
background: linear-gradient(270deg, #ff7400 0%, #fe4000 100%);
}
}
</style>
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册