Commit c72c87c8384311b5b843fb18e3ef76820cf0f8e0
1 parent
caf8daa7
Exists in
master
feat:审核问题修改,标题栏,适老化
Showing
37 changed files
with
749 additions
and
596 deletions
Show diff stats
public/index.html
... | ... | @@ -6,43 +6,9 @@ |
6 | 6 | <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
7 | 7 | <meta name="viewport" content="width=device-width,initial-scale=1.0"> |
8 | 8 | <link rel="icon" href="<%= BASE_URL %>favicon.ico"> |
9 | - <title>绍兴研学</title> | |
10 | - <!-- 埋点 --> | |
11 | - <script> | |
12 | - (function (w, d, s, q, i) { | |
13 | - w[q] = w[q] || []; | |
14 | - var f = d.getElementsByTagName(s)[0], | |
15 | - j = d.createElement(s); | |
16 | - j.async = true; | |
17 | - j.id = 'beacon-aplus'; | |
18 | - j.src = 'https://d.alicdn.com/alilog/mlog/aplus.js?id=202951085'; | |
19 | - f.parentNode.insertBefore(j, f); | |
20 | - })(window, document, 'script', 'aplus_queue'); | |
21 | - | |
22 | - aplus_queue.push({ | |
23 | - action: 'aplus.setMetaInfo', | |
24 | - arguments: ['aplus-rhost-v', 'alog.zjzwfw.gov.cn'] | |
25 | - }); | |
26 | - | |
27 | - | |
28 | - aplus_queue.push({ | |
29 | - action: 'aplus.setMetaInfo', | |
30 | - arguments: ['aplus-rhost-g', 'alog.zjzwfw.gov.cn'] | |
31 | - }); | |
32 | - | |
33 | - aplus_queue.push({ | |
34 | - action: 'aplus.setMetaInfo', | |
35 | - arguments: ['appId', '60506758'] | |
36 | - }); | |
37 | - aplus_queue.push({ | |
38 | - 'action': 'aplus.sendPV', | |
39 | - 'arguments': [{ | |
40 | - is_auto: false | |
41 | - }, { | |
42 | - miniAppId: '2002281863', | |
43 | - }] | |
44 | - }) | |
45 | - </script> | |
9 | + <title></title> | |
10 | + <script type="text/javascript" src="https://assets.zjzwfw.gov.cn/assets/ZWJSBridge/1.1.0/zwjsbridge.js"></script> | |
11 | + <script type="text/javascript" src="https://assets.zjzwfw.gov.cn/assets/zwlog/1.0.0/zwlog.js"></script> | |
46 | 12 | </head> |
47 | 13 | |
48 | 14 | <body> |
... | ... | @@ -53,8 +19,6 @@ |
53 | 19 | <div id="app"></div> |
54 | 20 | <!-- built files will be auto injected --> |
55 | 21 | <script src="https://webapi.amap.com/maps?v=1.4.15&key=61af1988b71a634a59a0de29409baeb8"></script> |
56 | - <!-- 政务中台JSAPI --> | |
57 | - <script src="//assets.zjzwfw.gov.cn/assets/ZWJSBridge/1.0.1/zwjsbridge.js"></script> | |
58 | 22 | </body> |
59 | 23 | |
60 | 24 | </html> |
61 | 25 | \ No newline at end of file | ... | ... |
src/App.vue
... | ... | @@ -17,28 +17,34 @@ export default { |
17 | 17 | showSchool: false, |
18 | 18 | } |
19 | 19 | }, |
20 | + watch: { | |
21 | + $route(to, from) { | |
22 | + console.log('zheliban 》》》 ', to, from) | |
23 | + this.$zwlogPvGlobal({ url: to.meta.pagePath, enterPageTime: new Date() }) | |
24 | + this.$zwlogPvGlobal({ | |
25 | + url: from.meta.pagePath, | |
26 | + leavePageTime: new Date(), | |
27 | + }) | |
28 | + }, | |
29 | + }, | |
20 | 30 | mounted() { |
21 | 31 | // new vConsole() |
22 | 32 | ZWJSBridge.onReady(() => { |
23 | - console.log('初始化完成后,执行bridge方法') | |
24 | - }) | |
25 | - const isElder = localStorage.getItem('isElder') | |
26 | - if (isElder) { | |
27 | - this.isElder = true | |
28 | - } else { | |
29 | 33 | ZWJSBridge.getUiStyle({}) |
30 | 34 | .then((result) => { |
31 | 35 | console.log(result) |
32 | 36 | if (result.uiStyle == 'elder') { |
33 | 37 | this.isElder = true |
34 | 38 | localStorage.setItem('isElder', 1) |
39 | + } else { | |
40 | + localStorage.removeItem('isElder') | |
35 | 41 | } |
36 | 42 | }) |
37 | 43 | //浙里办APP 6.11.0 版本以下版本标准模式兼容 |
38 | 44 | .catch((error) => { |
39 | 45 | console.log(error) |
40 | 46 | }) |
41 | - } | |
47 | + }) | |
42 | 48 | }, |
43 | 49 | methods: { |
44 | 50 | setElder(e) { | ... | ... |
... | ... | @@ -0,0 +1,134 @@ |
1 | + | |
2 | +// 埋点对象 | |
3 | +var zwlog; | |
4 | + | |
5 | +// 页面埋点数据 | |
6 | +var pageLogMap = {}; | |
7 | + | |
8 | +/* | |
9 | + * *******用户信息采集,同时声明 Zwlog 对象实例 | |
10 | + * uerId 用户 ID 没登录就非必填,登录了必填 | |
11 | + */ | |
12 | +export function initZwlog () { | |
13 | + zwlog = new ZwLog({ | |
14 | + _user_id: localStorage.getItem('centerNo'), | |
15 | + _user_nick: localStorage.getItem('_user_nick') | |
16 | + }); | |
17 | +} | |
18 | + | |
19 | +/* | |
20 | + * *******PV 日志参数- global_args | |
21 | + * url 页面路径 【选填】(未传参默认获取当前路由地址) | |
22 | + * enterPageTime 【必填】(默认在路由改变的时候自动获取时间) 进入页面的时间 new Date() | |
23 | + * leavePageTime 【必填】(默认在路由改变的时候自动获取时间) 离开页面的时间 new Date() | |
24 | + * loadTime【必填】(页面onShow中获取当前时间) 加载完的时间 new Date() | |
25 | + * responseTime 【必填】(页面onShow的nextTick中获取当前时间) 响应完的时间 new Date() | |
26 | + */ | |
27 | +export function zwlogPvGlobal ({ | |
28 | + url = null, | |
29 | + enterPageTime = null, | |
30 | + leavePageTime = null, | |
31 | + loadTime = null, | |
32 | + responseTime = null | |
33 | +} = {}) { | |
34 | + console.log('调用zwlogPvGlobal') | |
35 | + if (!zwlog) initZwlog(); | |
36 | + let path = url || getCurRoute(); | |
37 | + if (!pageLogMap.hasOwnProperty(path)) | |
38 | + pageLogMap[path] = { | |
39 | + enterPageTime: null, | |
40 | + leavePageTime: null, | |
41 | + loadTime: null, | |
42 | + responseTime: null, | |
43 | + }; | |
44 | + | |
45 | + if (enterPageTime) pageLogMap[path].enterPageTime = enterPageTime; | |
46 | + if (leavePageTime) pageLogMap[path].leavePageTime = leavePageTime; | |
47 | + if (loadTime) pageLogMap[path].loadTime = loadTime; | |
48 | + if (responseTime) pageLogMap[path].responseTime = responseTime; | |
49 | + | |
50 | + console.log("zheliban === " + path, pageLogMap[path]); | |
51 | + | |
52 | + if ( | |
53 | + pageLogMap[path].enterPageTime && | |
54 | + pageLogMap[path].leavePageTime && | |
55 | + pageLogMap[path].loadTime && | |
56 | + pageLogMap[path].responseTime | |
57 | + ) { | |
58 | + /* | |
59 | + * miniAppId 应用开发管理 平台 appId | |
60 | + * miniAppName 应用开发管理 平台应用名称 | |
61 | + * log_status 用户登录状态 (01:未登录/ 02:单点登录) | |
62 | + * Page_duration 浏览时长 用户从进入到离开当 前页面的时长 | |
63 | + * t2 页面加载时间 页面启动到加载完成 的时间 | |
64 | + * t0 页面响应时间 页面启动到页面响应 完成的时间 | |
65 | + * pageId 应用页面 ID | |
66 | + * pageName 应用页面名称 | |
67 | + */ | |
68 | + let Page_duration = | |
69 | + pageLogMap[path].leavePageTime.getTime() - | |
70 | + pageLogMap[path].enterPageTime.getTime(); | |
71 | + let t2 = | |
72 | + pageLogMap[path].loadTime.getTime() - | |
73 | + pageLogMap[path].enterPageTime.getTime(); | |
74 | + let t0 = | |
75 | + pageLogMap[path].responseTime.getTime() - | |
76 | + pageLogMap[path].enterPageTime.getTime(); | |
77 | + setTimeout(() => { | |
78 | + let pvParams = { | |
79 | + miniAppId: "2002281863", | |
80 | + miniAppName: "绍兴研学", | |
81 | + log_status: "2002281863", | |
82 | + Page_duration: Page_duration / 1000 + "秒", | |
83 | + t2: t2 / 1000 + "秒", | |
84 | + t0: t0 / 1000 + "秒", | |
85 | + pageId: path, | |
86 | + pageName: getNavigationBarTitleText(), | |
87 | + }; | |
88 | + zwlog.onReady(function () { | |
89 | + console.log('zwlog onReady') | |
90 | + zwlog.sendPV(pvParams); | |
91 | + delete pageLogMap[path]; | |
92 | + }); | |
93 | + }, 500); | |
94 | + } else { | |
95 | + let result = ""; | |
96 | + for (let k in pageLogMap[path]) { | |
97 | + if (!pageLogMap[path][k]) result += k + ","; | |
98 | + } | |
99 | + console.log("zheliban === 浙里办页面" + path + "埋点缺少参数=>>", result); | |
100 | + } | |
101 | +} | |
102 | +// 获取页面的导航title | |
103 | +function getNavigationBarTitleText () { | |
104 | + // let pages = getCurrentPages(); | |
105 | + // let page = pages[pages.length - 1]; | |
106 | + // let title = page.$holder.navigationBarTitleText; | |
107 | + // console.log("zheliban === getNavigationBarTitleText title=", title); | |
108 | + return document.title; | |
109 | +} | |
110 | + | |
111 | +// 点击事件的埋点 | |
112 | +export function zwlogRecord ({ code = "" } = {}) { | |
113 | + if (!zwlog) initZwlog(); | |
114 | + let path = getCurRoute(); | |
115 | + zwlog.onReady(function () { | |
116 | + zwlog.record({ | |
117 | + trackerEventCode: `${code}`, | |
118 | + eventType: "OTHER", | |
119 | + eventParams: { | |
120 | + pageId: path, //采用页面路径,也可以自己给每个页面设置一个pageId | |
121 | + pageName: getNavigationBarTitleText(), | |
122 | + }, | |
123 | + }); | |
124 | + }); | |
125 | +} | |
126 | + | |
127 | + | |
128 | +let getCurRoute = () => { | |
129 | + // let routes = getCurrentPages(); // 获取当前打开过的页面路由数组 | |
130 | + // let curRoute = routes[routes.length - 1].route; // 获取当前页面路由,也就是最后一个打开的页面路由 | |
131 | + // console.log("curRoute", curRoute); | |
132 | + | |
133 | + return '/'; | |
134 | +}; | |
0 | 135 | \ No newline at end of file | ... | ... |
src/main.js
... | ... | @@ -26,6 +26,9 @@ Vue.prototype.TestUnionId = 'oJPmPuLaAx2x2DaRGfCFeYuLWzLU' //夏 |
26 | 26 | Vue.prototype.projectCity = '绍兴市'; //地区 |
27 | 27 | Vue.prototype.projectCityCode = '0575'; //地区编码 |
28 | 28 | |
29 | +import {zwlogPvGlobal} from './common/zwUtil.js' | |
30 | +Vue.prototype.$zwlogPvGlobal = zwlogPvGlobal; | |
31 | + | |
29 | 32 | Vue.use(Vant); |
30 | 33 | Vue.use(ImagePreview); |
31 | 34 | Vue.config.productionTip = false | ... | ... |
src/router/index.js
... | ... | @@ -3,10 +3,10 @@ import VueRouter from 'vue-router' |
3 | 3 | |
4 | 4 | Vue.use(VueRouter) |
5 | 5 | const [routerPush, routerReplace] = [VueRouter.prototype.push, VueRouter.prototype.replace]; |
6 | -VueRouter.prototype.push = function push(to) { | |
6 | +VueRouter.prototype.push = function push (to) { | |
7 | 7 | return routerPush.call(this, to).catch(err => err) |
8 | 8 | } |
9 | -VueRouter.prototype.replace = function replace(location) { | |
9 | +VueRouter.prototype.replace = function replace (location) { | |
10 | 10 | return routerReplace.call(this, location).catch(error => error); |
11 | 11 | }; |
12 | 12 | const routes = [ |
... | ... | @@ -14,7 +14,7 @@ const routes = [ |
14 | 14 | path: '/502', |
15 | 15 | name: '502', |
16 | 16 | component: () => |
17 | - import ('@/views/502.vue'), | |
17 | + import('@/views/502.vue'), | |
18 | 18 | meta: { |
19 | 19 | title: '502', |
20 | 20 | } |
... | ... | @@ -23,7 +23,7 @@ const routes = [ |
23 | 23 | path: '/', |
24 | 24 | name: 'Home', |
25 | 25 | component: () => |
26 | - import ('@/views/Home.vue'), | |
26 | + import('@/views/Home.vue'), | |
27 | 27 | meta: { |
28 | 28 | title: '绍兴研学' |
29 | 29 | } |
... | ... | @@ -32,7 +32,7 @@ const routes = [ |
32 | 32 | path: '/Find', |
33 | 33 | name: 'Find', |
34 | 34 | component: () => |
35 | - import ('@/views/Find.vue'), | |
35 | + import('@/views/Find.vue'), | |
36 | 36 | meta: { |
37 | 37 | title: '发现' |
38 | 38 | } |
... | ... | @@ -40,7 +40,7 @@ const routes = [ |
40 | 40 | path: '/Foot', |
41 | 41 | name: 'Foot', |
42 | 42 | component: () => |
43 | - import ('@/views/Foot.vue'), | |
43 | + import('@/views/Foot.vue'), | |
44 | 44 | meta: { |
45 | 45 | title: '足迹' |
46 | 46 | } |
... | ... | @@ -48,7 +48,7 @@ const routes = [ |
48 | 48 | path: '/Authorize', |
49 | 49 | name: 'Authorize', |
50 | 50 | component: () => |
51 | - import ('@/views/Authorize.vue'), | |
51 | + import('@/views/Authorize.vue'), | |
52 | 52 | meta: { |
53 | 53 | title: '授权中...' |
54 | 54 | } |
... | ... | @@ -57,7 +57,7 @@ const routes = [ |
57 | 57 | path: '/MyClassList', |
58 | 58 | name: 'MyClassList', |
59 | 59 | component: () => |
60 | - import ('@/views/MyClassList.vue'), | |
60 | + import('@/views/MyClassList.vue'), | |
61 | 61 | meta: { |
62 | 62 | title: '基地签到' |
63 | 63 | } |
... | ... | @@ -65,12 +65,12 @@ const routes = [ |
65 | 65 | path: '/BaseDetail', |
66 | 66 | name: 'BaseDetail', |
67 | 67 | component: () => |
68 | - import ('@/views/BaseDetail.vue') | |
68 | + import('@/views/BaseDetail.vue') | |
69 | 69 | }, { |
70 | 70 | path: '/CourseDetail', |
71 | 71 | name: 'CourseDetail', |
72 | 72 | component: () => |
73 | - import ('@/views/CourseDetail.vue'), | |
73 | + import('@/views/CourseDetail.vue'), | |
74 | 74 | meta: { |
75 | 75 | title: '课程详情' |
76 | 76 | } |
... | ... | @@ -78,52 +78,52 @@ const routes = [ |
78 | 78 | path: '/ReleaseStory', |
79 | 79 | name: 'ReleaseStory', |
80 | 80 | component: () => |
81 | - import ('@/views/ReleaseStory.vue'), | |
81 | + import('@/views/ReleaseStory.vue'), | |
82 | 82 | }, { |
83 | 83 | path: '/ReleaseEvaluate', |
84 | 84 | name: 'ReleaseEvaluate', |
85 | 85 | component: () => |
86 | - import ('@/views/ReleaseEvaluate.vue'), | |
86 | + import('@/views/ReleaseEvaluate.vue'), | |
87 | 87 | }, { |
88 | 88 | path: '/MyCollection', |
89 | 89 | name: 'MyCollection', |
90 | 90 | component: () => |
91 | - import ('@/views/MyCollection.vue'), | |
91 | + import('@/views/MyCollection.vue'), | |
92 | 92 | }, { |
93 | 93 | path: '/EvaluateDetail', |
94 | 94 | name: 'EvaluateDetail', |
95 | 95 | component: () => |
96 | - import ('@/views/EvaluateDetail.vue'), | |
96 | + import('@/views/EvaluateDetail.vue'), | |
97 | 97 | }, { |
98 | 98 | path: '/BannerDetail', |
99 | 99 | name: 'BannerDetail', |
100 | 100 | component: () => |
101 | - import ('@/views/BannerDetail.vue'), | |
101 | + import('@/views/BannerDetail.vue'), | |
102 | 102 | }, { |
103 | 103 | path: '/SearchDetail', |
104 | 104 | name: 'SearchDetail', |
105 | 105 | component: () => |
106 | - import ('@/views/SearchDetail.vue'), | |
106 | + import('@/views/SearchDetail.vue'), | |
107 | 107 | }, { |
108 | 108 | path: '/FeedBack', |
109 | 109 | name: 'FeedBack', |
110 | 110 | component: () => |
111 | - import ('@/views/FeedBack.vue'), | |
111 | + import('@/views/FeedBack.vue'), | |
112 | 112 | }, { |
113 | 113 | path: '/About', |
114 | 114 | name: 'About', |
115 | 115 | component: () => |
116 | - import ('@/views/About.vue'), | |
116 | + import('@/views/About.vue'), | |
117 | 117 | }, { |
118 | 118 | path: '/Tips', |
119 | 119 | name: 'Tips', |
120 | 120 | component: () => |
121 | - import ('@/views/Tips.vue'), | |
121 | + import('@/views/Tips.vue'), | |
122 | 122 | }, { |
123 | 123 | path: '/HomeYX', |
124 | 124 | name: 'HomeYX', |
125 | 125 | component: () => |
126 | - import ('@/views/Home/HomeYX.vue'), | |
126 | + import('@/views/Home/HomeYX.vue'), | |
127 | 127 | meta: { |
128 | 128 | title: '个人中心(绍兴研学)' |
129 | 129 | } |
... | ... | @@ -132,7 +132,7 @@ const routes = [ |
132 | 132 | path: '/service_order', |
133 | 133 | name: 'ServiceOrder', |
134 | 134 | component: () => |
135 | - import ('@/views/Home/ServiceOrder.vue'), | |
135 | + import('@/views/Home/ServiceOrder.vue'), | |
136 | 136 | meta: { |
137 | 137 | title: '我的订单' |
138 | 138 | } |
... | ... | @@ -141,19 +141,19 @@ const routes = [ |
141 | 141 | path: '/YanxueCode', |
142 | 142 | name: 'YanxueCode', |
143 | 143 | component: () => |
144 | - import ('@/views/Home/YanxueCode.vue'), | |
144 | + import('@/views/Home/YanxueCode.vue'), | |
145 | 145 | }, |
146 | 146 | { |
147 | 147 | path: '/YanxueInfo', |
148 | 148 | name: 'YanxueInfo', |
149 | 149 | component: () => |
150 | - import ('@/views/Home/YanxueInfo.vue'), | |
150 | + import('@/views/Home/YanxueInfo.vue'), | |
151 | 151 | }, |
152 | 152 | { |
153 | 153 | path: '/select_contact', |
154 | 154 | name: 'SelectContact', |
155 | 155 | component: () => |
156 | - import ('@/views/Home/SelectContact.vue'), | |
156 | + import('@/views/Home/SelectContact.vue'), | |
157 | 157 | meta: { |
158 | 158 | title: '选择联系人' |
159 | 159 | } |
... | ... | @@ -162,7 +162,7 @@ const routes = [ |
162 | 162 | path: '/edit_contact', |
163 | 163 | name: 'EditContact', |
164 | 164 | component: () => |
165 | - import ('@/views/Home/EditContact.vue'), | |
165 | + import('@/views/Home/EditContact.vue'), | |
166 | 166 | meta: { |
167 | 167 | title: '修改联系人' |
168 | 168 | } |
... | ... | @@ -171,7 +171,7 @@ const routes = [ |
171 | 171 | path: '/StudentDetail', |
172 | 172 | name: 'StudentDetail', |
173 | 173 | component: () => |
174 | - import ('@/views/Home/StudentDetail.vue'), | |
174 | + import('@/views/Home/StudentDetail.vue'), | |
175 | 175 | meta: { |
176 | 176 | title: '学生信息' |
177 | 177 | } |
... | ... | @@ -180,7 +180,7 @@ const routes = [ |
180 | 180 | path: '/login_public', |
181 | 181 | name: 'LoginPublic', |
182 | 182 | component: () => |
183 | - import ('@/views/Home/LoginPublic.vue'), | |
183 | + import('@/views/Home/LoginPublic.vue'), | |
184 | 184 | meta: { |
185 | 185 | title: '绑定手机号' |
186 | 186 | } |
... | ... | @@ -189,7 +189,7 @@ const routes = [ |
189 | 189 | path: '/evaluateCourse', |
190 | 190 | name: 'evaluateCourse', |
191 | 191 | component: () => |
192 | - import ('@/views/Home/evaluateCourse.vue'), | |
192 | + import('@/views/Home/evaluateCourse.vue'), | |
193 | 193 | meta: { |
194 | 194 | title: '评价' |
195 | 195 | } |
... | ... | @@ -198,7 +198,7 @@ const routes = [ |
198 | 198 | path: '/evaluateBase', |
199 | 199 | name: 'evaluateBase', |
200 | 200 | component: () => |
201 | - import ('@/views/Home/evaluateBase.vue'), | |
201 | + import('@/views/Home/evaluateBase.vue'), | |
202 | 202 | meta: { |
203 | 203 | title: '基地评价' |
204 | 204 | } |
... | ... | @@ -207,7 +207,7 @@ const routes = [ |
207 | 207 | path: '/evaluateDetail', |
208 | 208 | name: 'evaluateDetail', |
209 | 209 | component: () => |
210 | - import ('@/views/Home/evaluateDetail.vue'), | |
210 | + import('@/views/Home/evaluateDetail.vue'), | |
211 | 211 | meta: { |
212 | 212 | title: '评价详情' |
213 | 213 | } |
... | ... | @@ -216,7 +216,7 @@ const routes = [ |
216 | 216 | path: '/schoolFollow', |
217 | 217 | name: 'schoolFollow', |
218 | 218 | component: () => |
219 | - import ('@/views/Travel/schoolFollow.vue'), | |
219 | + import('@/views/Travel/schoolFollow.vue'), | |
220 | 220 | meta: { |
221 | 221 | title: '关注学校' |
222 | 222 | } |
... | ... | @@ -225,7 +225,7 @@ const routes = [ |
225 | 225 | path: '/schoolAttestation', |
226 | 226 | name: 'schoolAttestation', |
227 | 227 | component: () => |
228 | - import ('@/views/Travel/schoolAttestation.vue'), | |
228 | + import('@/views/Travel/schoolAttestation.vue'), | |
229 | 229 | meta: { |
230 | 230 | title: '已认证学校' |
231 | 231 | } |
... | ... | @@ -234,7 +234,7 @@ const routes = [ |
234 | 234 | path: '/classAttestation', |
235 | 235 | name: 'classAttestation', |
236 | 236 | component: () => |
237 | - import ('@/views/Travel/classAttestation.vue'), | |
237 | + import('@/views/Travel/classAttestation.vue'), | |
238 | 238 | meta: { |
239 | 239 | title: '集团认领' |
240 | 240 | } |
... | ... | @@ -243,7 +243,7 @@ const routes = [ |
243 | 243 | path: '/MyCollect', |
244 | 244 | name: 'MyCollect', |
245 | 245 | component: () => |
246 | - import ('@/views/Home/MyCollect.vue'), | |
246 | + import('@/views/Home/MyCollect.vue'), | |
247 | 247 | meta: { |
248 | 248 | title: '我的收藏' |
249 | 249 | } |
... | ... | @@ -252,7 +252,7 @@ const routes = [ |
252 | 252 | path: '/SelectionCourse', |
253 | 253 | name: 'SelectionCourse', |
254 | 254 | component: () => |
255 | - import ('@/views/Service/CourseBaseList/SelectionCourse.vue'), | |
255 | + import('@/views/Service/CourseBaseList/SelectionCourse.vue'), | |
256 | 256 | meta: { |
257 | 257 | title: '精选课程', |
258 | 258 | } |
... | ... | @@ -261,7 +261,7 @@ const routes = [ |
261 | 261 | path: '/SelectionBase', |
262 | 262 | name: 'SelectionBase', |
263 | 263 | component: () => |
264 | - import ('@/views/Service/CourseBaseList/SelectionBase.vue'), | |
264 | + import('@/views/Service/CourseBaseList/SelectionBase.vue'), | |
265 | 265 | meta: { |
266 | 266 | title: '研学基地', |
267 | 267 | } |
... | ... | @@ -270,7 +270,7 @@ const routes = [ |
270 | 270 | path: '/SearchResult', |
271 | 271 | name: 'SearchResult', |
272 | 272 | component: () => |
273 | - import ('@/views/Service/CourseBaseList/SearchResult.vue'), | |
273 | + import('@/views/Service/CourseBaseList/SearchResult.vue'), | |
274 | 274 | meta: { |
275 | 275 | title: '搜索结果', |
276 | 276 | } |
... | ... | @@ -279,7 +279,7 @@ const routes = [ |
279 | 279 | path: '/RankingList', |
280 | 280 | name: 'RankingList', |
281 | 281 | component: () => |
282 | - import ('@/views/Service/CourseBaseList/RankingList.vue'), | |
282 | + import('@/views/Service/CourseBaseList/RankingList.vue'), | |
283 | 283 | meta: { |
284 | 284 | title: '热门榜单', |
285 | 285 | } |
... | ... | @@ -288,7 +288,7 @@ const routes = [ |
288 | 288 | path: '/base_detail', |
289 | 289 | name: 'ServiceBaseDetail', |
290 | 290 | component: () => |
291 | - import ('@/views/Service/BaseDetail/BaseDetail.vue'), | |
291 | + import('@/views/Service/BaseDetail/BaseDetail.vue'), | |
292 | 292 | meta: { |
293 | 293 | title: '基地详情' |
294 | 294 | } |
... | ... | @@ -297,7 +297,7 @@ const routes = [ |
297 | 297 | path: '/abroad_detail', |
298 | 298 | name: 'ServiceAbroadDetail', |
299 | 299 | component: () => |
300 | - import ('@/views/Service/AbroadDetail/AbroadDetail.vue'), | |
300 | + import('@/views/Service/AbroadDetail/AbroadDetail.vue'), | |
301 | 301 | meta: { |
302 | 302 | title: '商品详情' |
303 | 303 | } |
... | ... | @@ -306,7 +306,7 @@ const routes = [ |
306 | 306 | path: '/abroad_detail_next', |
307 | 307 | name: 'ServiceAbroadDetailNext', |
308 | 308 | component: () => |
309 | - import ('@/views/Service/AbroadDetailNext/AbroadDetailNext.vue'), | |
309 | + import('@/views/Service/AbroadDetailNext/AbroadDetailNext.vue'), | |
310 | 310 | meta: { |
311 | 311 | title: '商品详情' |
312 | 312 | } |
... | ... | @@ -315,7 +315,7 @@ const routes = [ |
315 | 315 | path: '/talent_reserve', |
316 | 316 | name: 'TalentReserve', |
317 | 317 | component: () => |
318 | - import ('@/views/Service/TalentReserve.vue'), | |
318 | + import('@/views/Service/TalentReserve.vue'), | |
319 | 319 | meta: { |
320 | 320 | title: '预约' |
321 | 321 | } |
... | ... | @@ -324,7 +324,7 @@ const routes = [ |
324 | 324 | path: '/check_order_reserve', |
325 | 325 | name: 'ServiceCheckOrderReserve', |
326 | 326 | component: () => |
327 | - import ('@/views/Service/CheckOrderReserve.vue'), | |
327 | + import('@/views/Service/CheckOrderReserve.vue'), | |
328 | 328 | meta: { |
329 | 329 | title: '提交信息' |
330 | 330 | } |
... | ... | @@ -333,7 +333,7 @@ const routes = [ |
333 | 333 | path: '/article', |
334 | 334 | name: 'Article', |
335 | 335 | component: () => |
336 | - import ('@/views/Article/Article.vue'), | |
336 | + import('@/views/Article/Article.vue'), | |
337 | 337 | meta: { |
338 | 338 | title: '官方资讯' |
339 | 339 | } |
... | ... | @@ -342,7 +342,7 @@ const routes = [ |
342 | 342 | path: '/article_detail', |
343 | 343 | name: 'ArticleDetail', |
344 | 344 | component: () => |
345 | - import ('@/views/Article/ArticleDetail.vue'), | |
345 | + import('@/views/Article/ArticleDetail.vue'), | |
346 | 346 | meta: { |
347 | 347 | title: '官方资讯' |
348 | 348 | } |
... | ... | @@ -352,7 +352,7 @@ const routes = [ |
352 | 352 | path: '/teacher', |
353 | 353 | name: 'Teacher', |
354 | 354 | component: () => |
355 | - import ('@/views/Teacher/Teacher.vue'), | |
355 | + import('@/views/Teacher/Teacher.vue'), | |
356 | 356 | meta: { |
357 | 357 | title: '研学导师' |
358 | 358 | } |
... | ... | @@ -361,7 +361,7 @@ const routes = [ |
361 | 361 | path: '/GrowUpRecord', |
362 | 362 | name: 'GrowUpRecord', |
363 | 363 | component: () => |
364 | - import ('@/views/GrowUp/GrowUpRecord.vue'), | |
364 | + import('@/views/GrowUp/GrowUpRecord.vue'), | |
365 | 365 | meta: { |
366 | 366 | title: '成长记录' |
367 | 367 | |
... | ... | @@ -371,7 +371,7 @@ const routes = [ |
371 | 371 | path: '/MyAlbum', |
372 | 372 | name: 'MyAlbum', |
373 | 373 | component: () => |
374 | - import ('@/views/GrowUp/MyAlbum.vue'), | |
374 | + import('@/views/GrowUp/MyAlbum.vue'), | |
375 | 375 | meta: { |
376 | 376 | title: '我的相册', |
377 | 377 | } |
... | ... | @@ -380,7 +380,7 @@ const routes = [ |
380 | 380 | path: '/StoryRelease', |
381 | 381 | name: 'StoryRelease', |
382 | 382 | component: () => |
383 | - import ('@/views/GrowUp/StoryRelease.vue'), | |
383 | + import('@/views/GrowUp/StoryRelease.vue'), | |
384 | 384 | meta: { |
385 | 385 | title: '我的游记', |
386 | 386 | } |
... | ... | @@ -389,7 +389,7 @@ const routes = [ |
389 | 389 | path: '/StoryList', |
390 | 390 | name: 'StoryList', |
391 | 391 | component: () => |
392 | - import ('@/views/GrowUp/StoryList.vue'), | |
392 | + import('@/views/GrowUp/StoryList.vue'), | |
393 | 393 | meta: { |
394 | 394 | title: '研学游记', |
395 | 395 | } |
... | ... | @@ -398,7 +398,7 @@ const routes = [ |
398 | 398 | path: '/StoryDetail', |
399 | 399 | name: 'StoryDetail', |
400 | 400 | component: () => |
401 | - import ('@/views/GrowUp/StoryDetail.vue'), | |
401 | + import('@/views/GrowUp/StoryDetail.vue'), | |
402 | 402 | meta: { |
403 | 403 | title: '研学游记', |
404 | 404 | } |
... | ... | @@ -407,7 +407,7 @@ const routes = [ |
407 | 407 | path: '/MyStory', |
408 | 408 | name: 'MyStory', |
409 | 409 | component: () => |
410 | - import ('@/views/GrowUp/MyStory.vue'), | |
410 | + import('@/views/GrowUp/MyStory.vue'), | |
411 | 411 | meta: { |
412 | 412 | title: '我的游记', |
413 | 413 | } |
... | ... | @@ -416,7 +416,7 @@ const routes = [ |
416 | 416 | path: '/FeedbookList', |
417 | 417 | name: 'FeedbookList', |
418 | 418 | component: () => |
419 | - import ('@/views/Feedbook/FeedbookList.vue'), | |
419 | + import('@/views/Feedbook/FeedbookList.vue'), | |
420 | 420 | meta: { |
421 | 421 | title: '意见反馈', |
422 | 422 | } |
... | ... | @@ -425,7 +425,7 @@ const routes = [ |
425 | 425 | path: '/FeedbookReply', |
426 | 426 | name: 'FeedbookReply', |
427 | 427 | component: () => |
428 | - import ('@/views/Feedbook/FeedbookReply.vue'), | |
428 | + import('@/views/Feedbook/FeedbookReply.vue'), | |
429 | 429 | meta: { |
430 | 430 | title: '回复', |
431 | 431 | } |
... | ... | @@ -434,7 +434,7 @@ const routes = [ |
434 | 434 | path: '/FeedbookEdit', |
435 | 435 | name: 'FeedbookEdit', |
436 | 436 | component: () => |
437 | - import ('@/views/Feedbook/FeedbookEdit.vue'), | |
437 | + import('@/views/Feedbook/FeedbookEdit.vue'), | |
438 | 438 | meta: { |
439 | 439 | title: '撰写意见', |
440 | 440 | } |
... | ... | @@ -450,7 +450,10 @@ router.beforeEach((to, from, next) => { |
450 | 450 | /* 路由发生变化修改页面title */ |
451 | 451 | if (to.meta.title) { |
452 | 452 | // console.log(to) |
453 | - document.title = to.meta.title | |
453 | + // document.title = to.meta.title | |
454 | + ZWJSBridge.setTitle({ | |
455 | + "title": to.meta.title | |
456 | + }) | |
454 | 457 | } |
455 | 458 | next() |
456 | 459 | }) | ... | ... |
src/views/Article/Article.vue
... | ... | @@ -53,3 +53,12 @@ export default { |
53 | 53 | } |
54 | 54 | </script> |
55 | 55 | |
56 | +<style lang="scss"> | |
57 | +// 长辈版 | |
58 | +.elder { | |
59 | + .article .article_list_wrap_three .article_list_title,.article .article_list_wrap_three .read_num,.article .article_list_wrap_three .push_date{ | |
60 | + font-size: 36px; | |
61 | + } | |
62 | + | |
63 | +} | |
64 | +</style> | ... | ... |
src/views/Article/ArticleDetail.vue
src/views/BaseDetail.vue
... | ... | @@ -117,13 +117,12 @@ |
117 | 117 | </div> |
118 | 118 | </div> |
119 | 119 | <div class="box"> |
120 | - <span v-if="userInfo" @click="addCollect" | |
120 | + <span @click="addCollect" | |
121 | 121 | ><van-icon |
122 | 122 | :style="detailData.isCollect == 0 ? 'color:#fff;' : 'color:red;'" |
123 | 123 | :name="detailData.isCollect == 0 ? 'like-o' : 'like'" |
124 | 124 | /><b>{{ detailData.isCollect == 0 ? '加入收藏' : '已收藏' }}</b></span |
125 | 125 | > |
126 | - <span v-else @click="checkLogin"><b>去登录</b></span> | |
127 | 126 | </div> |
128 | 127 | </div> |
129 | 128 | </div> |
... | ... | @@ -154,36 +153,11 @@ export default { |
154 | 153 | var id = this.$route.query.id |
155 | 154 | if (id) { |
156 | 155 | this.id = id |
157 | - localStorage.setItem('prePageQuery', JSON.stringify({ id: this.$route.query.id })) | |
158 | 156 | } |
159 | - let openid = localStorage.getItem('openId') | |
160 | - let schoolNamesChoose = localStorage.getItem('schoolNamesChoose') | |
161 | - if (schoolNamesChoose) { | |
162 | - this.schoolNamesChoose = JSON.parse(schoolNamesChoose) | |
163 | - } | |
164 | - this.headImgUrl = localStorage.getItem('headImgUrl') | |
165 | - this.nicknameUser = localStorage.getItem('nicknameUser') | |
166 | - if (process.env.NODE_ENV === 'production' && this.common.isWeiXin()) { | |
167 | - if (!openid) { | |
168 | - this.$router.push({ name: 'Authorize' }) | |
169 | - } else { | |
170 | - this.getUserInfo() | |
171 | - } | |
172 | - } else { | |
173 | - localStorage.setItem('unionId', this.DevUnionId) | |
174 | - this.getUserInfo() | |
175 | - } | |
176 | - window.addEventListener('scroll', this.handleScroll) | |
177 | 157 | this.GetStudyBaseDetail() |
178 | 158 | }, |
179 | - beforeDestroy() { | |
180 | - window.removeEventListener('scroll', this.handleScroll) | |
181 | - }, | |
182 | 159 | |
183 | 160 | methods: { |
184 | - initPage() { | |
185 | - this.GetStudyBaseDetail() | |
186 | - }, | |
187 | 161 | |
188 | 162 | goCourseDetail(id) { |
189 | 163 | this.$router.push({ path: '/CourseDetail', query: { id: id } }) |
... | ... | @@ -202,7 +176,6 @@ export default { |
202 | 176 | } // } |
203 | 177 | }, |
204 | 178 | addCollect() { |
205 | - this.checkLogin() | |
206 | 179 | if (this.detailData.isCollect == 0) { |
207 | 180 | var that = this |
208 | 181 | this.$toast.loading({ |
... | ... | @@ -222,18 +195,6 @@ export default { |
222 | 195 | }) |
223 | 196 | } |
224 | 197 | }, |
225 | - // 判断是否已登录 | |
226 | - checkLogin() { | |
227 | - if (process.env.NODE_ENV != 'production') return true | |
228 | - const userInfo = JSON.parse(localStorage.getItem('userInfo')) | |
229 | - if (!userInfo?.phone) { | |
230 | - localStorage.setItem('prePage', 'BaseDetail') | |
231 | - localStorage.setItem('prePageQuery', JSON.stringify({ id: this.$route.query.id })) | |
232 | - this.$router.push({ name: 'LoginPublic' }) | |
233 | - return false | |
234 | - } | |
235 | - return true | |
236 | - }, | |
237 | 198 | tabClick(name, title) { |
238 | 199 | // 找到锚点 |
239 | 200 | let anchorElement = document.getElementById(name) |
... | ... | @@ -289,38 +250,6 @@ export default { |
289 | 250 | getNull(t) { |
290 | 251 | return t ? t : '' |
291 | 252 | }, |
292 | - // 获取用户信息 | |
293 | - getUserInfo() { | |
294 | - this.$toast.loading({ | |
295 | - message: '加载中...', | |
296 | - duration: 0, | |
297 | - forbidClick: true, | |
298 | - }) | |
299 | - this.yxAxios | |
300 | - .get(`${this.baseUrl}/prod/api/wx/wx1305e88d2bc74073/getUserInfo?unionId=${localStorage.getItem('unionId')}`) | |
301 | - .then((res) => { | |
302 | - this.$toast.clear() | |
303 | - if (res.data.code == 200) { | |
304 | - let userInfo = res.data.data | |
305 | - this.userInfo = userInfo | |
306 | - localStorage.setItem('userInfo', JSON.stringify(userInfo)) | |
307 | - this.initPage() | |
308 | - if (res.data.data.schoolNames || res.data.data.schoolNames == [] || res.data.data.schoolNames == 'null') { | |
309 | - localStorage.setItem('schoolNames', JSON.stringify(res.data.data.schoolNames)) | |
310 | - this.$store.commit('changeSchool', res.data.data.schoolNames) | |
311 | - if (!localStorage.getItem('schoolNamesChoose')) { | |
312 | - localStorage.setItem('schoolNamesChoose', JSON.stringify(res.data.data.schoolNames[0])) | |
313 | - this.schoolNamesChoose = res.data.data.schoolNames[0] | |
314 | - } | |
315 | - } else { | |
316 | - localStorage.setItem('schoolNames', []) | |
317 | - this.$store.commit('changeSchool', []) | |
318 | - } | |
319 | - }else{ | |
320 | - this.initPage() | |
321 | - } | |
322 | - }) | |
323 | - }, | |
324 | 253 | }, |
325 | 254 | } |
326 | 255 | </script> | ... | ... |
src/views/Feedbook/FeedbookList.vue
src/views/Feedbook/FeedbookReply.vue
src/views/Foot.vue
1 | 1 | <template> |
2 | 2 | <div class="foot"> |
3 | - <div v-if="userInfo"> | |
3 | + <div> | |
4 | 4 | <van-tabs v-model="tabValue" title-active-color="#000"> |
5 | 5 | <van-tab title="我的预约"> |
6 | 6 | <ul class="myWishList"> |
... | ... | @@ -96,9 +96,6 @@ |
96 | 96 | </van-tabs> |
97 | 97 | <van-action-sheet v-model="show" :actions="actions" cancel-text="取消" @select="onSelect" close-on-click-action /> |
98 | 98 | </div> |
99 | - <div v-else class="noLogin"> | |
100 | - <van-button type="info" @click="checkLogin">去登陆</van-button> | |
101 | - </div> | |
102 | 99 | <BottomNav :BottomNav="navActive"></BottomNav> |
103 | 100 | <div :is="background"></div> |
104 | 101 | </div> |
... | ... | @@ -140,16 +137,9 @@ export default { |
140 | 137 | } |
141 | 138 | this.headImgUrl = localStorage.getItem('headImgUrl') |
142 | 139 | this.nicknameUser = localStorage.getItem('nicknameUser') |
143 | - if (process.env.NODE_ENV === 'production' && this.common.isWeiXin()) { | |
144 | - if (!openid) { | |
145 | - this.$router.push({ name: 'Authorize' }) | |
146 | - } else { | |
147 | - this.getUserInfo() | |
148 | - } | |
149 | - } else { | |
150 | - localStorage.setItem('unionId', this.DevUnionId) | |
151 | - this.getUserInfo() | |
152 | - } | |
140 | + | |
141 | + this.unionId = localStorage.getItem('unionId') | |
142 | + this.getUserInfo() | |
153 | 143 | }, |
154 | 144 | methods: { |
155 | 145 | initPage() { |
... | ... | @@ -216,15 +206,17 @@ export default { |
216 | 206 | this.$toast.loading({ |
217 | 207 | message: '请求中...', |
218 | 208 | }) |
219 | - this.http.DeleteMyWish({ | |
220 | - id: id, | |
221 | - }).then(function (res) { | |
222 | - that.$toast.clear() | |
223 | - if (res.status == 1) { | |
224 | - that.$toast.success('删除成功') | |
225 | - that.GetMyWishList() | |
226 | - } | |
227 | - }) | |
209 | + this.http | |
210 | + .DeleteMyWish({ | |
211 | + id: id, | |
212 | + }) | |
213 | + .then(function (res) { | |
214 | + that.$toast.clear() | |
215 | + if (res.status == 1) { | |
216 | + that.$toast.success('删除成功') | |
217 | + that.GetMyWishList() | |
218 | + } | |
219 | + }) | |
228 | 220 | }) |
229 | 221 | .catch(() => { |
230 | 222 | // on cancel |
... | ... | @@ -263,15 +255,17 @@ export default { |
263 | 255 | this.$toast.loading({ |
264 | 256 | message: '请求中...', |
265 | 257 | }) |
266 | - this.http.DeleteMyStory({ | |
267 | - id: id, | |
268 | - }).then(function (res) { | |
269 | - that.$toast.clear() | |
270 | - if (res.status == 1) { | |
271 | - that.$toast.success('删除成功') | |
272 | - that.GetMyStoryList() | |
273 | - } | |
274 | - }) | |
258 | + this.http | |
259 | + .DeleteMyStory({ | |
260 | + id: id, | |
261 | + }) | |
262 | + .then(function (res) { | |
263 | + that.$toast.clear() | |
264 | + if (res.status == 1) { | |
265 | + that.$toast.success('删除成功') | |
266 | + that.GetMyStoryList() | |
267 | + } | |
268 | + }) | |
275 | 269 | }, |
276 | 270 | ReleaseStory(data) { |
277 | 271 | localStorage.setItem('YXNowCourse', JSON.stringify(data)) |
... | ... | @@ -324,17 +318,6 @@ export default { |
324 | 318 | } |
325 | 319 | }) |
326 | 320 | }, |
327 | - // 判断是否已登录 | |
328 | - checkLogin() { | |
329 | - if (process.env.NODE_ENV != "production") return true; | |
330 | - const userInfo = JSON.parse(localStorage.getItem("userInfo")); | |
331 | - if (!userInfo?.phone) { | |
332 | - localStorage.setItem("prePage", "Foot"); | |
333 | - this.$router.push({ name: "LoginPublic" }); | |
334 | - return false; | |
335 | - } | |
336 | - return true; | |
337 | - }, | |
338 | 321 | }, |
339 | 322 | filters: {}, |
340 | 323 | } | ... | ... |
src/views/GrowUp/GrowUp.vue
... | ... | @@ -123,20 +123,10 @@ export default { |
123 | 123 | forbidClick: true, |
124 | 124 | }) |
125 | 125 | localStorage.setItem('prePage', 'GrowUp') |
126 | - if (process.env.NODE_ENV === 'production' && this.common.isWeiXin()) { | |
127 | - let openId = localStorage.getItem('openId') | |
128 | - if (!openId) { | |
129 | - this.$router.push({ name: 'Authorize' }) | |
130 | - return | |
131 | - } | |
132 | - this.unionId = localStorage.getItem('unionId') | |
133 | - this.getUserInfo() | |
134 | - } else { | |
135 | - this.unionId = this.TestUnionId | |
136 | - this.$nextTick(() => { | |
137 | - this.getUserInfo() | |
138 | - }) | |
139 | - } | |
126 | + | |
127 | + this.unionId = localStorage.getItem('unionId') | |
128 | + this.getUserInfo() | |
129 | + | |
140 | 130 | // 获取并设置学校 |
141 | 131 | let schoolNames = localStorage.getItem('schoolNames') |
142 | 132 | if (schoolNames) { |
... | ... | @@ -202,21 +192,7 @@ export default { |
202 | 192 | // 获取列表 |
203 | 193 | growthContentList() { |
204 | 194 | const userInfo = JSON.parse(localStorage.getItem('userInfo')) |
205 | - if (!userInfo?.phone) { | |
206 | - // 请先登录 | |
207 | - this.$dialog | |
208 | - .alert({ | |
209 | - message: '请登录后查看,是否前往登录', | |
210 | - confirmButtonText: '去登录', | |
211 | - confirmButtonColor: 'rgb(48, 116, 255)', | |
212 | - theme: 'round-button', | |
213 | - }) | |
214 | - .then(() => { | |
215 | - // on close | |
216 | - this.checkLogin() | |
217 | - }) | |
218 | - return | |
219 | - } | |
195 | + | |
220 | 196 | if (this.pageNum == 1) { |
221 | 197 | this.$toast.loading({ |
222 | 198 | message: '加载中...', |
... | ... | @@ -404,23 +380,11 @@ export default { |
404 | 380 | } else { |
405 | 381 | console.log('getUserInfo失败') |
406 | 382 | this.getGrowthTagList() //获取并设置标签 |
407 | - | |
408 | 383 | } |
409 | 384 | }) |
410 | 385 | } |
411 | 386 | }, |
412 | - // 判断是否已登录 | |
413 | - checkLogin() { | |
414 | - if (process.env.NODE_ENV != 'production') return true | |
415 | - const userInfo = JSON.parse(localStorage.getItem('userInfo')) | |
416 | - if (!userInfo?.phone) { | |
417 | - localStorage.setItem('prePage', 'GrowUp') | |
418 | - localStorage.setItem('prePageQuery', JSON.stringify({ showTab: this.$route.query.showTab })) | |
419 | - this.$router.push({ name: 'LoginPublic' }) | |
420 | - return false | |
421 | - } | |
422 | - return true | |
423 | - }, | |
387 | + | |
424 | 388 | setWxShare() { |
425 | 389 | // 设置分享 |
426 | 390 | this.$emit('getWxConfig', { | ... | ... |
src/views/GrowUp/GrowUpDetail.vue
... | ... | @@ -106,21 +106,9 @@ export default { |
106 | 106 | this.id = this.$route.query.id |
107 | 107 | this.type = this.$route.query.type //类别1-用户; 2-基地 |
108 | 108 | localStorage.setItem('prePage', 'GrowUpDetail') |
109 | - if (process.env.NODE_ENV === 'production' && this.common.isWeiXin()) { | |
110 | - let openId = localStorage.getItem('openId') | |
111 | - if (!openId) { | |
112 | - localStorage.setItem('prePageQuery', JSON.stringify({ id: this.$route.query.id, type: this.$route.query.type })) | |
113 | - this.$router.push({ name: 'Authorize' }) | |
114 | - return | |
115 | - } | |
116 | - this.unionId = localStorage.getItem('unionId') | |
117 | - this.getUserInfo() | |
118 | - } else { | |
119 | - this.unionId = this.TestUnionId | |
120 | - this.$nextTick(() => { | |
121 | - this.getUserInfo() | |
122 | - }) | |
123 | - } | |
109 | + | |
110 | + this.unionId = localStorage.getItem('unionId') | |
111 | + this.getUserInfo() | |
124 | 112 | }, |
125 | 113 | methods: { |
126 | 114 | initPage() { |
... | ... | @@ -342,23 +330,10 @@ export default { |
342 | 330 | localStorage.setItem('schoolNames', []) |
343 | 331 | this.$store.commit('changeSchool', []) |
344 | 332 | } |
345 | - } else { | |
346 | - this.checkLogin() | |
347 | - } | |
333 | + } | |
348 | 334 | }) |
349 | 335 | } |
350 | 336 | }, |
351 | - // 判断是否已登录 | |
352 | - checkLogin() { | |
353 | - if (process.env.NODE_ENV != 'production') return true | |
354 | - const userInfo = JSON.parse(localStorage.getItem('userInfo')) | |
355 | - if (!userInfo?.phone) { | |
356 | - localStorage.setItem('prePage', 'GrowUpDetail') | |
357 | - this.$router.push({ name: 'LoginPublic' }) | |
358 | - return false | |
359 | - } | |
360 | - return true | |
361 | - }, | |
362 | 337 | setWxShare() { |
363 | 338 | // 设置分享 |
364 | 339 | this.$emit('getWxConfig', { | ... | ... |
src/views/GrowUp/GrowUpRecord.vue
... | ... | @@ -126,21 +126,15 @@ export default { |
126 | 126 | } |
127 | 127 | }, |
128 | 128 | mounted() { |
129 | + this.$zwlogPvGlobal({ loadTime: new Date() }) | |
130 | + this.$nextTick(() => { | |
131 | + this.$zwlogPvGlobal({ responseTime: new Date() }) | |
132 | + }) | |
129 | 133 | localStorage.setItem('prePage', 'GrowUpRecord') |
130 | 134 | localStorage.setItem('prePageQuery', '{}') |
131 | - if (process.env.NODE_ENV === 'production' && this.common.isWeiXin()) { | |
132 | - let openId = localStorage.getItem('openId') | |
133 | - if (!openId) { | |
134 | - this.$router.push({ name: 'Authorize' }) | |
135 | - return | |
136 | - } | |
137 | - this.unionId = localStorage.getItem('unionId') | |
138 | - this.getUserInfo() | |
139 | - } else { | |
140 | - this.unionId = this.TestUnionId | |
141 | - this.getUserInfo() | |
142 | - } | |
143 | - // this.getStudentInfo() | |
135 | + | |
136 | + this.unionId = localStorage.getItem('unionId') | |
137 | + this.getUserInfo() | |
144 | 138 | }, |
145 | 139 | methods: { |
146 | 140 | getStudentInfo() { |
... | ... | @@ -315,23 +309,11 @@ export default { |
315 | 309 | localStorage.setItem('schoolNames', []) |
316 | 310 | this.$store.commit('changeSchool', []) |
317 | 311 | } |
318 | - } else { | |
319 | - this.checkLogin() | |
320 | - } | |
312 | + } | |
321 | 313 | }) |
322 | 314 | } |
323 | 315 | }, |
324 | - // 判断是否已登录 | |
325 | - checkLogin() { | |
326 | - if (process.env.NODE_ENV != 'production') return true | |
327 | - const userInfo = JSON.parse(localStorage.getItem('userInfo')) | |
328 | - if (!userInfo?.phone) { | |
329 | - localStorage.setItem('prePage', 'GrowUpRecord') | |
330 | - this.$router.push({ name: 'LoginPublic' }) | |
331 | - return false | |
332 | - } | |
333 | - return true | |
334 | - }, | |
316 | + | |
335 | 317 | }, |
336 | 318 | components: { |
337 | 319 | HomeScan, |
... | ... | @@ -542,16 +524,16 @@ export default { |
542 | 524 | .name { |
543 | 525 | font-size: 40px; |
544 | 526 | span { |
545 | - font-size: 34px; | |
527 | + font-size: 36px; | |
546 | 528 | } |
547 | 529 | } |
548 | 530 | .school_name { |
549 | - font-size: 34px; | |
531 | + font-size: 36px; | |
550 | 532 | } |
551 | 533 | } |
552 | 534 | .count_box .count_item { |
553 | 535 | .count { |
554 | - font-size: 34px; | |
536 | + font-size: 36px; | |
555 | 537 | span { |
556 | 538 | font-size: 40px; |
557 | 539 | } |
... | ... | @@ -561,9 +543,19 @@ export default { |
561 | 543 | } |
562 | 544 | } |
563 | 545 | .icon_box .icon_item p { |
564 | - font-size: 34px; | |
546 | + font-size: 36px; | |
565 | 547 | } |
566 | 548 | } |
567 | 549 | } |
550 | + .student_detail .list_box .list_item .item_bottom .item_title,.student_detail .list_box .list_item .item_top .time, .student_detail .list_box .list_item .item_top .week,.scan2 .tishi{ | |
551 | + font-size: 36px; | |
552 | + } | |
553 | + .scan2{ | |
554 | + font-size: 36px; | |
555 | + flex-shrink: 0; | |
556 | + } | |
557 | + .student_detail .infomation .top{ | |
558 | + flex-wrap: nowrap; | |
559 | + } | |
568 | 560 | } |
569 | 561 | </style> | ... | ... |
src/views/GrowUp/MyAlbum.vue
... | ... | @@ -390,4 +390,12 @@ export default { |
390 | 390 | height: 80px; |
391 | 391 | } |
392 | 392 | } |
393 | -</style> | |
394 | 393 | \ No newline at end of file |
394 | +</style> | |
395 | +<style lang="scss"> | |
396 | +// 长辈版 | |
397 | +.elder { | |
398 | + #MyAlbum .control_panel .control_btn, #MyAlbum .control_panel .cancel_btn, #MyAlbum .control_panel .del_btn{ | |
399 | + font-size: 36px; | |
400 | + } | |
401 | +} | |
402 | +</style> | ... | ... |
src/views/GrowUp/StoryDetail.vue
... | ... | @@ -150,3 +150,15 @@ export default { |
150 | 150 | } |
151 | 151 | } |
152 | 152 | </style> |
153 | +<style lang="scss"> | |
154 | +// 长辈版 | |
155 | +.elder { | |
156 | + .storyDetail .content .info .name p:first-child,.storyDetail .content .info .name p,.storyDetail .content .cont,.storyDetail .content .info .like span{ | |
157 | + font-size: 36px; | |
158 | + } | |
159 | + .storyDetail .content .cont{ | |
160 | + width: 112%; | |
161 | + margin-left: -6%; | |
162 | + } | |
163 | +} | |
164 | +</style> | ... | ... |
src/views/Home.vue
... | ... | @@ -86,6 +86,7 @@ |
86 | 86 | <StoryList v-if="!loadingStory" :list="StoryList"></StoryList> |
87 | 87 | <van-empty v-else :image="require('@/assets/empty.png')" description="加载中..." /> |
88 | 88 | </div> |
89 | + <about-des></about-des> | |
89 | 90 | <Tabbar active="service"></Tabbar> |
90 | 91 | <div :is="background"></div> |
91 | 92 | </div> |
... | ... | @@ -99,6 +100,7 @@ import StoryList from '@/views/GrowUp/c_StoryList.vue' |
99 | 100 | import Tabbar from '@/components/c_Tabbar.vue' |
100 | 101 | import Background from '../components/Background.vue' |
101 | 102 | import AllLoveGo from '../components/AllLoveGo.vue' |
103 | +import AboutDes from './aboutDes.vue' | |
102 | 104 | import './home.scss' |
103 | 105 | const userData = require('@/views/data.json') |
104 | 106 | export default { |
... | ... | @@ -109,6 +111,7 @@ export default { |
109 | 111 | Tabbar, |
110 | 112 | Background, |
111 | 113 | AllLoveGo, |
114 | + AboutDes, | |
112 | 115 | }, |
113 | 116 | data() { |
114 | 117 | return { |
... | ... | @@ -152,7 +155,16 @@ export default { |
152 | 155 | } |
153 | 156 | }, |
154 | 157 | mounted() { |
155 | - console.log('xst mounted') | |
158 | + ZWJSBridge.onReady(() => { | |
159 | + ZWJSBridge.setTitle({ | |
160 | + title: '绍兴研学', | |
161 | + }) | |
162 | + }) | |
163 | + | |
164 | + this.$zwlogPvGlobal({ loadTime: new Date() }) | |
165 | + this.$nextTick(() => { | |
166 | + this.$zwlogPvGlobal({ responseTime: new Date() }) | |
167 | + }) | |
156 | 168 | this.checkAuth() |
157 | 169 | //二次回退 |
158 | 170 | const sUserAgent = window.navigator.userAgent.toLowerCase() |
... | ... | @@ -164,12 +176,11 @@ export default { |
164 | 176 | console.log('我来自浙里办,popstate') |
165 | 177 | window.addEventListener('popstate', this.listenerPopstate, true) |
166 | 178 | } |
167 | - this.GetNewList()// 获取资讯 | |
179 | + this.GetNewList() // 获取资讯 | |
168 | 180 | this.GetBannerList() |
169 | 181 | this.getCustomerCourseList() //精选活动 |
170 | - this.GetBaseList()//研学基地 | |
171 | - this.GetStoryList()//研学游记 | |
172 | - | |
182 | + this.GetBaseList() //研学基地 | |
183 | + this.GetStoryList() //研学游记 | |
173 | 184 | }, |
174 | 185 | //销毁监听 |
175 | 186 | destroyed() { |
... | ... | @@ -234,7 +245,7 @@ export default { |
234 | 245 | }, |
235 | 246 | // 通过ticketId获取centerNo |
236 | 247 | getCenterByTicketId(ticketId) { |
237 | - this.yxAxios.get(`${this.proxyUrl}/api/third/getCenterNoSxPrivate?ticket=${ticketId}`).then((res) => { | |
248 | + this.yxAxios.get(`${this.proxyUrl}/api/third/getCenterNoWxSxPrivate?ticket=${ticketId}`).then((res) => { | |
238 | 249 | console.log('通过ticket获取centerNo成功:', res) |
239 | 250 | if (res.data.code == 200) { |
240 | 251 | this.centerNo = res.data.message |
... | ... | @@ -285,7 +296,6 @@ export default { |
285 | 296 | if (res.data.code == 200) { |
286 | 297 | localStorage.setItem('userInfo', JSON.stringify(res.data.data.userInfo)) |
287 | 298 | this.userInfo = res.data.data.userInfo |
288 | - | |
289 | 299 | } |
290 | 300 | }) |
291 | 301 | }, |
... | ... | @@ -557,6 +567,9 @@ export default { |
557 | 567 | <style lang="scss"> |
558 | 568 | // 长辈版 |
559 | 569 | .elder { |
570 | + .home .infomation_box .new_item { | |
571 | + font-size: 36px; | |
572 | + } | |
560 | 573 | .home .type_box p { |
561 | 574 | font-size: 34px; |
562 | 575 | } |
... | ... | @@ -581,5 +594,8 @@ export default { |
581 | 594 | font-size: 32px; |
582 | 595 | } |
583 | 596 | } |
597 | + .van-tab { | |
598 | + font-size: 36px; | |
599 | + } | |
584 | 600 | } |
585 | 601 | </style> | ... | ... |
src/views/Home/HomeYX.vue
... | ... | @@ -106,6 +106,11 @@ export default { |
106 | 106 | }, |
107 | 107 | |
108 | 108 | mounted() { |
109 | + this.$zwlogPvGlobal({ loadTime: new Date() }) | |
110 | + this.$nextTick(() => { | |
111 | + this.$zwlogPvGlobal({ responseTime: new Date() }) | |
112 | + }) | |
113 | + localStorage.setItem('prePage','HomeYX') | |
109 | 114 | const isElder = localStorage.getItem('isElder') |
110 | 115 | if (isElder) { |
111 | 116 | this.isElder = true | ... | ... |
src/views/Home/LoginPublic.vue
1 | 1 | <template> |
2 | 2 | <div id="login"> |
3 | - <img class="bg" src="@/assets/login_bg.png" alt=""> | |
3 | + <img class="bg" src="@/assets/login_bg.png" alt="" /> | |
4 | 4 | <div class="box"> |
5 | 5 | <p class="login_title">绑定手机号</p> |
6 | 6 | <div class="item"> |
7 | 7 | <p class="title">手机号</p> |
8 | 8 | <div class="flex"> |
9 | - <input class="code phone" type="tel" maxlength="11" v-model="phone" placeholder="请输入您的手机号"> | |
10 | - <span class="getcode" @click="getCode">{{codeText}}</span> | |
9 | + <input class="code phone" type="tel" maxlength="11" v-model="phone" placeholder="请输入您的手机号" /> | |
10 | + <span class="getcode" @click="getCode">{{ codeText }}</span> | |
11 | 11 | </div> |
12 | 12 | </div> |
13 | 13 | <div class="item"> |
14 | 14 | <p class="title">验证码</p> |
15 | - <input class="code" type="text" v-model="code" placeholder="请输入验证码"> | |
15 | + <input class="code" type="text" v-model="code" placeholder="请输入验证码" /> | |
16 | 16 | </div> |
17 | 17 | <!-- <div class="item"> |
18 | 18 | <p class="title">学校选择</p> |
... | ... | @@ -25,22 +25,22 @@ |
25 | 25 | </div> |
26 | 26 | <van-popup v-model="chooseSchoolisShow" round get-container="body" :safe-area-inset-bottom="true"> |
27 | 27 | <div v-if="chooseSchoolisShow"> |
28 | - <chooseSchool v-model="chooseSchoolisShow" @schoolData='schoolData'></chooseSchool> | |
28 | + <chooseSchool v-model="chooseSchoolisShow" @schoolData="schoolData"></chooseSchool> | |
29 | 29 | </div> |
30 | 30 | </van-popup> |
31 | 31 | </div> |
32 | 32 | </template> |
33 | 33 | <script> |
34 | 34 | import chooseSchool from '@/views/Home/component/chooseSchool' |
35 | -var codeInterval; | |
35 | +var codeInterval | |
36 | 36 | export default { |
37 | 37 | name: 'LoginPublic', |
38 | - data () { | |
38 | + data() { | |
39 | 39 | return { |
40 | 40 | code: '', |
41 | 41 | phone: '', |
42 | 42 | |
43 | - codeText: '获取验证码',//获取验证码按钮文字 | |
43 | + codeText: '获取验证码', //获取验证码按钮文字 | |
44 | 44 | appId: 'wx1305e88d2bc74073', |
45 | 45 | unionId: '', |
46 | 46 | openId: '', |
... | ... | @@ -49,29 +49,23 @@ export default { |
49 | 49 | searchSchool: '', |
50 | 50 | school: '', |
51 | 51 | schoolId: '', |
52 | - chooseSchoolisShow: false | |
52 | + chooseSchoolisShow: false, | |
53 | 53 | } |
54 | 54 | }, |
55 | - mounted () { | |
56 | - this.openId = localStorage.getItem('openId'); | |
57 | - this.unionId = localStorage.getItem('unionId'); | |
58 | - if (process.env.NODE_ENV === "production"&&this.common.isWeiXin()) { | |
59 | - if (!this.openId) { | |
60 | - this.$router.push({ name: 'Authorize' }) | |
61 | - } | |
62 | - } | |
63 | - | |
55 | + mounted() { | |
56 | + this.openId = localStorage.getItem('openId') | |
57 | + this.unionId = localStorage.getItem('unionId') | |
64 | 58 | }, |
65 | 59 | methods: { |
66 | - getCode () { | |
67 | - if (this.codeText != '获取验证码') return; | |
60 | + getCode() { | |
61 | + if (this.codeText != '获取验证码') return | |
68 | 62 | if (!this.phone) { |
69 | 63 | this.$toast('请输入手机号') |
70 | - return; | |
64 | + return | |
71 | 65 | } |
72 | 66 | if (!this.checkPhone(this.phone)) { |
73 | 67 | this.$toast('请输入正确的手机号') |
74 | - return; | |
68 | + return | |
75 | 69 | } |
76 | 70 | // if (!this.school) { |
77 | 71 | // this.$toast('请选择关注学校') |
... | ... | @@ -80,19 +74,19 @@ export default { |
80 | 74 | this.$toast.loading({ |
81 | 75 | message: '加载中', |
82 | 76 | duration: 0, |
83 | - forbidClick: true | |
77 | + forbidClick: true, | |
84 | 78 | }) |
85 | 79 | this.yxAxios.post(`${this.baseUrl}/prod/api/wx/${this.appId}/getMsg?phone=${this.phone}`).then((res) => { |
86 | 80 | this.$toast.clear() |
87 | 81 | if (res.data.code == 200) { |
88 | - let i = 60; | |
82 | + let i = 60 | |
89 | 83 | codeInterval = setInterval(() => { |
90 | 84 | if (i == 0) { |
91 | - this.codeText = `获取验证码`; | |
92 | - clearInterval(codeInterval); | |
93 | - return; | |
85 | + this.codeText = `获取验证码` | |
86 | + clearInterval(codeInterval) | |
87 | + return | |
94 | 88 | } |
95 | - this.codeText = `重试(${i})`; | |
89 | + this.codeText = `重试(${i})` | |
96 | 90 | i-- |
97 | 91 | }, 1000) |
98 | 92 | } else { |
... | ... | @@ -100,54 +94,56 @@ export default { |
100 | 94 | } |
101 | 95 | }) |
102 | 96 | }, |
103 | - submitOperator () { | |
97 | + submitOperator() { | |
104 | 98 | if (!this.phone) { |
105 | 99 | this.$toast('请输入手机号') |
106 | - return; | |
100 | + return | |
107 | 101 | } |
108 | 102 | if (!this.checkPhone(this.phone)) { |
109 | 103 | this.$toast('请输入正确的手机号') |
110 | - return; | |
104 | + return | |
111 | 105 | } |
112 | 106 | if (!this.code) { |
113 | 107 | this.$toast('请输入验证码') |
114 | - return; | |
108 | + return | |
115 | 109 | } |
116 | 110 | this.$toast.loading({ |
117 | 111 | message: '加载中', |
118 | 112 | duration: 0, |
119 | - forbidClick: true | |
120 | - }) | |
121 | - this.yxAxios.post(`${this.baseUrl}/prod/api/wx/${this.appId}/checkPhoneAndCode`, { | |
122 | - phone: this.phone, | |
123 | - code: this.code, | |
124 | - unionId: this.unionId, | |
125 | - openId: this.openId | |
126 | - }).then((res) => { | |
127 | - this.$toast.clear() | |
128 | - if (res.data.code == 200) { | |
129 | - this.getUserInfo() | |
130 | - } else { | |
131 | - this.$toast.fail(res.data.message) | |
132 | - } | |
113 | + forbidClick: true, | |
133 | 114 | }) |
115 | + this.yxAxios | |
116 | + .post(`${this.baseUrl}/prod/api/wx/${this.appId}/checkPhoneAndCode`, { | |
117 | + phone: this.phone, | |
118 | + code: this.code, | |
119 | + unionId: this.unionId, | |
120 | + openId: this.openId, | |
121 | + }) | |
122 | + .then((res) => { | |
123 | + this.$toast.clear() | |
124 | + if (res.data.code == 200) { | |
125 | + this.getUserInfo() | |
126 | + } else { | |
127 | + this.$toast.fail(res.data.message) | |
128 | + } | |
129 | + }) | |
134 | 130 | }, |
135 | - checkPhone (phone) { | |
136 | - if ((/^1[3456789]\d{9}$/.test(phone))) { | |
131 | + checkPhone(phone) { | |
132 | + if (/^1[3456789]\d{9}$/.test(phone)) { | |
137 | 133 | return true |
138 | 134 | } else { |
139 | 135 | return false |
140 | 136 | } |
141 | 137 | }, |
142 | - complete () { | |
138 | + complete() { | |
143 | 139 | this.getUserInfo() |
144 | 140 | }, |
145 | 141 | // 获取链接参数 |
146 | - getQueryVariable (variable) { | |
142 | + getQueryVariable(variable) { | |
147 | 143 | // 取地址栏参数 |
148 | - var query = window.location.search.substr(1); | |
144 | + var query = window.location.search.substr(1) | |
149 | 145 | if (!query && window.location.hash.indexOf('?') > -1) { |
150 | - query = window.location.hash.split("?")[1]; | |
146 | + query = window.location.hash.split('?')[1] | |
151 | 147 | } |
152 | 148 | var vars = query.split('&') |
153 | 149 | for (var i = 0; i < vars.length; i++) { |
... | ... | @@ -159,29 +155,29 @@ export default { |
159 | 155 | return false |
160 | 156 | }, |
161 | 157 | // 获取用户信息 |
162 | - getUserInfo () { | |
158 | + getUserInfo() { | |
163 | 159 | this.$toast.loading({ |
164 | 160 | message: '加载中...', |
165 | 161 | duration: 0, |
166 | - forbidClick: true | |
162 | + forbidClick: true, | |
167 | 163 | }) |
168 | 164 | this.yxAxios.get(`${this.baseUrl}/prod/api/wx/${this.appId}/getUserInfo?unionId=${this.unionId}`).then((res) => { |
169 | 165 | this.$toast.clear() |
170 | 166 | if (res.data.code == 200) { |
171 | 167 | localStorage.setItem('userInfo', JSON.stringify(res.data.data)) |
172 | 168 | |
173 | - if(res.data.data.schoolNames || res.data.data.schoolNames == [] || res.data.data.schoolNames == 'null') { | |
174 | - localStorage.setItem('schoolNames',JSON.stringify(res.data.data.schoolNames)) | |
169 | + if (res.data.data.schoolNames || res.data.data.schoolNames == [] || res.data.data.schoolNames == 'null') { | |
170 | + localStorage.setItem('schoolNames', JSON.stringify(res.data.data.schoolNames)) | |
175 | 171 | this.$store.commit('changeSchool', res.data.data.schoolNames) |
176 | - if(!localStorage.getItem('schoolNamesChoose')) { | |
177 | - localStorage.setItem('schoolNamesChoose',res.data.data.schoolNames[0]) | |
172 | + if (!localStorage.getItem('schoolNamesChoose')) { | |
173 | + localStorage.setItem('schoolNamesChoose', res.data.data.schoolNames[0]) | |
178 | 174 | } |
179 | - }else { | |
180 | - localStorage.setItem('schoolNames',[]) | |
181 | - this.$store.commit('changeSchool', []) | |
175 | + } else { | |
176 | + localStorage.setItem('schoolNames', []) | |
177 | + this.$store.commit('changeSchool', []) | |
182 | 178 | } |
183 | - let prePage = localStorage.getItem('prePage'); | |
184 | - let prePageQuery = localStorage.getItem('prePageQuery'); | |
179 | + let prePage = localStorage.getItem('prePage') | |
180 | + let prePageQuery = localStorage.getItem('prePageQuery') | |
185 | 181 | if (prePage) { |
186 | 182 | this.$router.push({ name: prePage, query: JSON.parse(prePageQuery) }) |
187 | 183 | } |
... | ... | @@ -190,21 +186,21 @@ export default { |
190 | 186 | } |
191 | 187 | }) |
192 | 188 | }, |
193 | - //选择学校 | |
194 | - chooseSchool () { | |
189 | + //选择学校 | |
190 | + chooseSchool() { | |
195 | 191 | this.chooseSchoolisShow = true |
196 | 192 | }, |
197 | - schoolData (val) { | |
198 | - this.school = val.text; | |
199 | - this.schoolId = val.id; | |
193 | + schoolData(val) { | |
194 | + this.school = val.text | |
195 | + this.schoolId = val.id | |
200 | 196 | }, |
201 | 197 | }, |
202 | - destroyed () { | |
203 | - clearInterval(codeInterval); | |
198 | + destroyed() { | |
199 | + clearInterval(codeInterval) | |
204 | 200 | }, |
205 | 201 | components: { |
206 | - chooseSchool | |
207 | - } | |
202 | + chooseSchool, | |
203 | + }, | |
208 | 204 | } |
209 | 205 | </script> |
210 | 206 | <style lang="scss" scoped> |
... | ... | @@ -223,11 +219,7 @@ export default { |
223 | 219 | width: 702px; |
224 | 220 | // height: 540px; |
225 | 221 | height: 650px; |
226 | - background: linear-gradient( | |
227 | - 180deg, | |
228 | - rgba(251, 251, 251, 0.99) 0%, | |
229 | - #ffffff 100% | |
230 | - ); | |
222 | + background: linear-gradient(180deg, rgba(251, 251, 251, 0.99) 0%, #ffffff 100%); | |
231 | 223 | box-shadow: 0px 4px 12px 0px rgba(87, 214, 255, 0.2); |
232 | 224 | border-radius: 20px; |
233 | 225 | position: absolute; |
... | ... | @@ -244,8 +236,7 @@ export default { |
244 | 236 | float: right; |
245 | 237 | font-size: 28px; |
246 | 238 | background: linear-gradient(135deg, #cdf8cf 0%, #8af36f 100%); |
247 | - box-shadow: 0px 4px 8px 0px rgba(189, 189, 189, 0.5), | |
248 | - 0px 8px 12px 0px rgba(89, 199, 171, 0.5); | |
239 | + box-shadow: 0px 4px 8px 0px rgba(189, 189, 189, 0.5), 0px 8px 12px 0px rgba(89, 199, 171, 0.5); | |
249 | 240 | border-radius: 34px; |
250 | 241 | border: transparent; |
251 | 242 | color: #333333; |
... | ... | @@ -295,4 +286,4 @@ export default { |
295 | 286 | .prefect_pop { |
296 | 287 | background: transparent; |
297 | 288 | } |
298 | -</style> | |
299 | 289 | \ No newline at end of file |
290 | +</style> | ... | ... |
src/views/Home/MyCollect.vue
src/views/Home/YanxueCode.vue
... | ... | @@ -151,4 +151,12 @@ export default { |
151 | 151 | left: -100vw; |
152 | 152 | } |
153 | 153 | } |
154 | -</style> | |
155 | 154 | \ No newline at end of file |
155 | +</style> | |
156 | +<style lang="scss"> | |
157 | +// 长辈版 | |
158 | +.elder { | |
159 | + #codeBox .blueCard .school .gray,#codeBox .fontDiv{ | |
160 | + font-size: 36px; | |
161 | + } | |
162 | +} | |
163 | +</style> | ... | ... |
src/views/Home/component/AddChildPopupGroup.vue
src/views/Home/component/HomeChildList.vue
... | ... | @@ -87,8 +87,6 @@ export default { |
87 | 87 | }) |
88 | 88 | }, |
89 | 89 | addStudent () { |
90 | - let isLogin = this.checkLogin() | |
91 | - if (!isLogin) return; | |
92 | 90 | this.step = 1 |
93 | 91 | this.showAddChildPopupGroup = true |
94 | 92 | }, |
... | ... | @@ -96,18 +94,7 @@ export default { |
96 | 94 | this.showAddChildPopupGroup = false; |
97 | 95 | this.getChildList() |
98 | 96 | }, |
99 | - // 判断是否已登录 | |
100 | - checkLogin () { | |
101 | - if (process.env.NODE_ENV != "production") return true; | |
102 | - const userInfo = JSON.parse(localStorage.getItem('userInfo')) | |
103 | - if (!userInfo?.phone) { | |
104 | - localStorage.setItem('prePage', 'Home'); | |
105 | - localStorage.setItem('prePageQuery', JSON.stringify({ showTab: this.$route.query.showTab })); | |
106 | - this.$router.push({ name: 'LoginPublic' }) | |
107 | - return false; | |
108 | - } | |
109 | - return true; | |
110 | - }, | |
97 | + | |
111 | 98 | }, |
112 | 99 | components: { |
113 | 100 | AddChildPopupGroup | ... | ... |
src/views/Home/component/HomeScan.vue
1 | 1 | <template> |
2 | - <div v-if="type==2" class="scan2" @click="saoYiSao"> | |
2 | + <div v-if="type == 2" class="scan2" @click="saoYiSao"> | |
3 | 3 | <van-icon name="scan" /> |
4 | 4 | <p class="tishi">基地打卡</p> |
5 | 5 | </div> |
6 | 6 | <div v-else class="scan" @click="saoYiSao"> |
7 | 7 | <van-icon name="scan" /> |
8 | - <img class="tishi" src="@/assets/home/tishi.png" alt="扫码打卡"> | |
8 | + <img class="tishi" src="@/assets/home/tishi.png" alt="扫码打卡" /> | |
9 | 9 | </div> |
10 | 10 | </template> |
11 | 11 | <script> |
12 | 12 | export default { |
13 | - props:['type'], | |
13 | + props: ['type'], | |
14 | 14 | methods: { |
15 | - saoYiSao () { | |
16 | - let isLogin = this.checkLogin() | |
17 | - if (!isLogin) return; | |
18 | - if (process.env.NODE_ENV === "production" && this.common.isWeiXin()) { | |
19 | - // location.href = `http://sao315.com/w/api/saoyisao?redirect_uri=https://zlyx.shunzhi.net/wap/index.html%23/MyClassList`; | |
20 | - location.href = `http://sao315.com/w/api/saoyisao?redirect_uri=https://zlyx.shunzhi.net/wap/index.html%23/MyClassList`; | |
21 | - } else { | |
22 | - this.$router.push({ name: 'MyClassList', query: { qrresult: '188' } }) | |
23 | - } | |
15 | + saoYiSao() { | |
16 | + ZWJSBridge.scan({ | |
17 | + type: 'qrCode', | |
18 | + }) | |
19 | + .then((res) => { | |
20 | + if(res.qrcode&&!isNaN(Number(res.qrcode))){ | |
21 | + this.$router.push({ name: 'MyClassList', query: { qrresult: res.qrcode } }) | |
22 | + }else{ | |
23 | + this.$toast.fail('扫码失败') | |
24 | + } | |
25 | + }) | |
26 | + .catch((err) => { | |
27 | + console.log(err) | |
28 | + }) | |
24 | 29 | }, |
25 | - // 判断是否已登录 | |
26 | - checkLogin () { | |
27 | - if (process.env.NODE_ENV != "production") return true; | |
28 | - const userInfo = JSON.parse(localStorage.getItem('userInfo')) | |
29 | - if (!userInfo?.phone) { | |
30 | - localStorage.setItem('prePage', 'Home'); | |
31 | - localStorage.setItem('prePageQuery', JSON.stringify({ showTab: this.$route.query.showTab })); | |
32 | - this.$router.push({ name: 'LoginPublic' }) | |
33 | - return false; | |
34 | - } | |
35 | - return true; | |
36 | - }, | |
37 | - } | |
30 | + }, | |
38 | 31 | } |
39 | 32 | </script> |
40 | 33 | <style lang="scss" scoped> |
... | ... | @@ -53,12 +46,12 @@ export default { |
53 | 46 | width: 112px; |
54 | 47 | } |
55 | 48 | } |
56 | -.scan2{ | |
49 | +.scan2 { | |
57 | 50 | font-size: 50px; |
58 | 51 | color: #526195; |
59 | 52 | text-align: center; |
60 | -.tishi { | |
53 | + .tishi { | |
61 | 54 | font-size: 24px; |
62 | 55 | } |
63 | 56 | } |
64 | -</style> | |
65 | 57 | \ No newline at end of file |
58 | +</style> | ... | ... |
src/views/Service/AbroadDetail/AbroadDetail.vue
... | ... | @@ -73,7 +73,7 @@ export default { |
73 | 73 | BindType: '', //普通出行1 定制出行2 |
74 | 74 | bindId: '', |
75 | 75 | inviteCode: '', //达人邀请码 |
76 | - orderId:'',//集体定制id | |
76 | + orderId: '', //集体定制id | |
77 | 77 | isShowpic: false, //是否显示达人邀请码邀请图标 |
78 | 78 | detailData: '', |
79 | 79 | packageData: [], //套餐表 |
... | ... | @@ -120,26 +120,18 @@ export default { |
120 | 120 | entrance: this.entrance, |
121 | 121 | inviteCode: this.inviteCode, |
122 | 122 | BindType: this.BindType, |
123 | - orderId:this.orderId, | |
124 | - ProgramType:this.ProgramType, | |
125 | - productSceneId:this.productSceneId, | |
126 | - DateComboType:this.DateComboType, | |
127 | - ZZCTCanBuy:this.ZZCTCanBuy, | |
128 | - courseTypeLableId:this.courseTypeLableId | |
123 | + orderId: this.orderId, | |
124 | + ProgramType: this.ProgramType, | |
125 | + productSceneId: this.productSceneId, | |
126 | + DateComboType: this.DateComboType, | |
127 | + ZZCTCanBuy: this.ZZCTCanBuy, | |
128 | + courseTypeLableId: this.courseTypeLableId, | |
129 | 129 | }) |
130 | 130 | ) |
131 | - if (process.env.NODE_ENV === 'production' && this.common.isWeiXin()) { | |
132 | - let openId = localStorage.getItem('openId' ) | |
133 | - if (!openId) { | |
134 | - this.$router.push({ name: 'Authorize' }) | |
135 | - return | |
136 | - } | |
137 | - this.unionId = localStorage.getItem('unionId') | |
138 | - this.getUserInfo() | |
139 | - } else { | |
140 | - this.unionId = this.TestUnionId | |
141 | - this.getUserInfo() | |
142 | - } | |
131 | + | |
132 | + this.unionId = localStorage.getItem('unionId') | |
133 | + this.getUserInfo() | |
134 | + | |
143 | 135 | this.GetCourseDetail() |
144 | 136 | }, |
145 | 137 | methods: { |
... | ... | @@ -211,7 +203,7 @@ export default { |
211 | 203 | baseId: detailData.baseId, |
212 | 204 | marketPrice: detailData.marketPrice, |
213 | 205 | price: detailData.price, |
214 | - course_labels:detailData.course_labels | |
206 | + course_labels: detailData.course_labels, | |
215 | 207 | }) |
216 | 208 | ) |
217 | 209 | if (this.orderId) { |
... | ... | @@ -256,9 +248,7 @@ export default { |
256 | 248 | // 获取套餐列表 |
257 | 249 | getPackageData() { |
258 | 250 | let startDate = this.Moment().format('YYYY-MM-DD') |
259 | - let endDate = this.Moment() | |
260 | - .add(60, 'days') | |
261 | - .format('YYYY-MM-DD') | |
251 | + let endDate = this.Moment().add(60, 'days').format('YYYY-MM-DD') | |
262 | 252 | let bindId = this.bindId |
263 | 253 | let ProgramType = this.ProgramType |
264 | 254 | let params = { |
... | ... | @@ -336,3 +326,20 @@ export default { |
336 | 326 | }, |
337 | 327 | } |
338 | 328 | </script> |
329 | +<style lang="scss"> | |
330 | +// 长辈版 | |
331 | +.elder { | |
332 | + .abroad_detail .uni_text .course_name{ | |
333 | + font-size: 50px; | |
334 | + } | |
335 | + .abroad_detail .uni_text .course_count,.abroad_detail .uni_text .tag_box .tag,.service_bottom_btn_left .icon p,.abroad_detail .Collection .box .box_btn,.abroad_detail .tag_item .tag_text{ | |
336 | + font-size: 36px !important; | |
337 | + } | |
338 | + .abroad_detail .content_box .content_all img{ | |
339 | + width:100%; | |
340 | + } | |
341 | + .abroad_detail .tag_item{ | |
342 | + padding: 0; | |
343 | + } | |
344 | +} | |
345 | +</style> | ... | ... |
src/views/Service/AbroadDetailNext/AbroadDetailNext.vue
... | ... | @@ -28,7 +28,7 @@ |
28 | 28 | <div class="course_price" v-if="packageArr.length > 0"> |
29 | 29 | <span v-if="$route.query.bindId">¥ {{ bottomBoxData.showPrice }}</span> |
30 | 30 | <span v-else>¥ {{ detailData.showPrice }}</span |
31 | - ><span class="redmini">起{{detailData.unitName?'/':''}}{{ detailData.unitName }}</span | |
31 | + ><span class="redmini">起{{ detailData.unitName ? '/' : '' }}{{ detailData.unitName }}</span | |
32 | 32 | ><span class="tint">{{ detailData.productPrice }}</span> |
33 | 33 | </div> |
34 | 34 | <div class="course_price_free" v-else> |
... | ... | @@ -57,7 +57,7 @@ |
57 | 57 | <p class="tip">如有特殊需求请联系【客服】</p> |
58 | 58 | <div class="package top_border" v-if="packageArr.length > 0 && packageArr[packageActive].comboInfoList.length > 1"> |
59 | 59 | <div class="package_box"> |
60 | - <div style="overflow:auto;"> | |
60 | + <div style="overflow: auto"> | |
61 | 61 | <div |
62 | 62 | class="package_item package_item_type" |
63 | 63 | :class="packageTypeActive == index ? 'active' : ''" |
... | ... | @@ -141,16 +141,16 @@ export default { |
141 | 141 | AbroadCoupon, |
142 | 142 | BottomBtn, |
143 | 143 | Package, |
144 | - ShareBox | |
144 | + ShareBox, | |
145 | 145 | }, |
146 | 146 | data() { |
147 | 147 | return { |
148 | 148 | courseId: '', |
149 | - courseTypeLableId:'', | |
149 | + courseTypeLableId: '', | |
150 | 150 | BindType: '', //普通出行1 定制出行2 |
151 | 151 | bindId: '', |
152 | 152 | inviteCode: '', //达人邀请码 |
153 | - orderId:'',//集体定制id | |
153 | + orderId: '', //集体定制id | |
154 | 154 | isShowpic: false, //是否显示达人邀请码邀请图标 |
155 | 155 | detailData: '', |
156 | 156 | bottomBoxData: '', //底部成团状态 |
... | ... | @@ -171,8 +171,8 @@ export default { |
171 | 171 | codeStep: 0, //邀请码进度 |
172 | 172 | expectMoney: '', //预计赚多少钱 |
173 | 173 | feeFlag: 1, //0达人,1志愿者 |
174 | - showShareBox:false,//分享框 | |
175 | - baseDetailData:'' | |
174 | + showShareBox: false, //分享框 | |
175 | + baseDetailData: '', | |
176 | 176 | } |
177 | 177 | }, |
178 | 178 | mounted() { |
... | ... | @@ -194,7 +194,7 @@ export default { |
194 | 194 | if (this.inviteCode) { |
195 | 195 | this.codeStep = 1 |
196 | 196 | } |
197 | - | |
197 | + | |
198 | 198 | localStorage.setItem('prePage', 'ServiceAbroadDetailNext') |
199 | 199 | localStorage.setItem( |
200 | 200 | 'prePageQuery', |
... | ... | @@ -204,25 +204,17 @@ export default { |
204 | 204 | entrance: this.entrance, |
205 | 205 | inviteCode: this.inviteCode, |
206 | 206 | BindType: this.BindType, |
207 | - orderId:this.orderId, | |
208 | - ProgramType:this.ProgramType, | |
209 | - productSceneId:this.productSceneId, | |
210 | - DateComboType:this.DateComboType, | |
211 | - ZZCTCanBuy:this.ZZCTCanBuy, | |
207 | + orderId: this.orderId, | |
208 | + ProgramType: this.ProgramType, | |
209 | + productSceneId: this.productSceneId, | |
210 | + DateComboType: this.DateComboType, | |
211 | + ZZCTCanBuy: this.ZZCTCanBuy, | |
212 | 212 | }) |
213 | 213 | ) |
214 | - if (process.env.NODE_ENV === 'production' && this.common.isWeiXin()) { | |
215 | - let openId = localStorage.getItem('openId') | |
216 | - if (!openId) { | |
217 | - this.$router.push({ name: 'Authorize' }) | |
218 | - return | |
219 | - } | |
220 | - this.unionId = localStorage.getItem('unionId') | |
221 | - this.getUserInfo() | |
222 | - } else { | |
223 | - this.unionId = this.TestUnionId | |
224 | - this.getUserInfo() | |
225 | - } | |
214 | + | |
215 | + this.unionId = localStorage.getItem('unionId') | |
216 | + this.getUserInfo() | |
217 | + | |
226 | 218 | this.GetCourseDetail() |
227 | 219 | if (this.entrance == 'school') { |
228 | 220 | this.getAgentInfoBySchool() //校代联系方式 |
... | ... | @@ -317,7 +309,7 @@ export default { |
317 | 309 | marketPrice: detailData.marketPrice, |
318 | 310 | price: detailData.price, |
319 | 311 | baseId: detailData.baseId, |
320 | - course_labels:detailData.course_labels | |
312 | + course_labels: detailData.course_labels, | |
321 | 313 | }) |
322 | 314 | ) |
323 | 315 | if (this.orderId) { |
... | ... | @@ -399,9 +391,7 @@ export default { |
399 | 391 | // 获取套餐列表 |
400 | 392 | getPackageData() { |
401 | 393 | let startDate = this.Moment().format('YYYY-MM-DD') |
402 | - let endDate = this.Moment() | |
403 | - .add(3, 'month') | |
404 | - .format('YYYY-MM-DD') | |
394 | + let endDate = this.Moment().add(3, 'month').format('YYYY-MM-DD') | |
405 | 395 | let bindId = this.bindId |
406 | 396 | let ProgramType = this.ProgramType |
407 | 397 | let params = { |
... | ... | @@ -461,8 +451,8 @@ export default { |
461 | 451 | let marketPrice = 9999 |
462 | 452 | for (let j in comboList) { |
463 | 453 | // 添加商品已报名数量,过期请删除start |
464 | - if(this.$route.query.bindId==3816){ | |
465 | - comboList[j].applyCount = comboList[j].applyCount+521 | |
454 | + if (this.$route.query.bindId == 3816) { | |
455 | + comboList[j].applyCount = comboList[j].applyCount + 521 | |
466 | 456 | } |
467 | 457 | // 添加商品已报名数量,过期请删除end |
468 | 458 | for (let k in comboList[j].comboInfoList) { |
... | ... | @@ -483,7 +473,7 @@ export default { |
483 | 473 | }) |
484 | 474 | } |
485 | 475 | this.packageArr = packageArr |
486 | - console.log('111',packageArr) | |
476 | + console.log('111', packageArr) | |
487 | 477 | this.initPackageArr = true |
488 | 478 | this.getDateInfoById() |
489 | 479 | }, |
... | ... | @@ -590,7 +580,7 @@ export default { |
590 | 580 | } |
591 | 581 | } |
592 | 582 | this.periodArr = periodArr.sort(this.sortUpDate) |
593 | - this.getExpectMoney() | |
583 | + this.getExpectMoney() | |
594 | 584 | // this.periodArr = periodArr |
595 | 585 | console.log('套餐列表:', periodArr) |
596 | 586 | }) |
... | ... | @@ -602,12 +592,14 @@ export default { |
602 | 592 | } |
603 | 593 | const expertLevel = JSON.parse(localStorage.getItem('talentData')).expertLevel |
604 | 594 | this.feeFlag = JSON.parse(localStorage.getItem('talentData')).feeFlag |
605 | - if(this.feeFlag == 1) { return } //0达人(显示),1志愿者(不显示) | |
595 | + if (this.feeFlag == 1) { | |
596 | + return | |
597 | + } //0达人(显示),1志愿者(不显示) | |
606 | 598 | const userInfo = JSON.parse(localStorage.getItem('userInfo')) |
607 | 599 | let query = { |
608 | 600 | courseId: this.courseId, |
609 | 601 | loginPhone: userInfo.phone, |
610 | - shareId:this.periodArr[0].groupPeriodActivityList.id | |
602 | + shareId: this.periodArr[0].groupPeriodActivityList.id, | |
611 | 603 | } |
612 | 604 | this.yxAxios.post(`${this.proxyUrl}/user/settle/getProductFee`, query).then((res) => { |
613 | 605 | if (res.data.code) { |
... | ... | @@ -620,13 +612,13 @@ export default { |
620 | 612 | // 分享 |
621 | 613 | handleShare() { |
622 | 614 | // this.yxAxios.post(`https://zlyx.shunzhi.net/api/BaseManage/ZlCourseShareRecord`,{ |
623 | - this.yxAxios.post(`https://zlyx.shunzhi.net/api/BaseManage/ZlCourseShareRecord`,{ | |
615 | + this.yxAxios.post(`https://zlyx.shunzhi.net/api/BaseManage/ZlCourseShareRecord`, { | |
624 | 616 | courseId: this.courseId, |
625 | - courseTypeLableId:this.courseTypeLableId, | |
626 | - baseName:this.baseDetailData.baseName, | |
627 | - courseName:this.detailData.course_name, | |
628 | - location:this.detailData.address, | |
629 | - area:this.detailData.areaAddress | |
617 | + courseTypeLableId: this.courseTypeLableId, | |
618 | + baseName: this.baseDetailData.baseName, | |
619 | + courseName: this.detailData.course_name, | |
620 | + location: this.detailData.address, | |
621 | + area: this.detailData.areaAddress, | |
630 | 622 | }) |
631 | 623 | this.showShareDes = true |
632 | 624 | }, |
... | ... | @@ -634,7 +626,15 @@ export default { |
634 | 626 | handleContact() { |
635 | 627 | let mobile = this.baseDetailData.mobile[0] |
636 | 628 | if (mobile) { |
637 | - window.location.href = `tel:${mobile}` | |
629 | + ZWJSBridge.phoneCall({ | |
630 | + corpId: mobile, | |
631 | + }) | |
632 | + .then((res) => { | |
633 | + console.log(res) | |
634 | + }) | |
635 | + .catch((err) => { | |
636 | + console.log(err) | |
637 | + }) | |
638 | 638 | } else { |
639 | 639 | this.$toast('暂无联系方式') |
640 | 640 | } |
... | ... | @@ -642,3 +642,10 @@ export default { |
642 | 642 | }, |
643 | 643 | } |
644 | 644 | </script> |
645 | +<style lang="scss"> | |
646 | +.elder { | |
647 | + .abroad_detail .uni_text .address,.abroad_detail .uni_text .rate > span,.package .period_nodata,.abroad_detail .package .package_title,.abroad_detail .tip,.abroad_detail .cardCont .day_tag,.abroad_detail .cardCont table td,.abroad_detail .tag_item .tag_title,.abroad_detail .tag_item .tag_text,.abroad_detail .base .center .address,.abroad_detail .base .center .tag { | |
648 | + font-size: 36px !important; | |
649 | + } | |
650 | +} | |
651 | +</style> | ... | ... |
src/views/Service/BaseDetail/BaseDetail.vue
... | ... | @@ -80,18 +80,10 @@ export default { |
80 | 80 | this.baseId = this.$route.query.baseId |
81 | 81 | localStorage.setItem('prePage', 'ServiceBaseDetail') |
82 | 82 | localStorage.setItem('prePageQuery', JSON.stringify({ baseId: this.baseId })) |
83 | - if (process.env.NODE_ENV === 'production' && this.common.isWeiXin()) { | |
84 | - let openId = localStorage.getItem('openId') | |
85 | - if (!openId) { | |
86 | - this.$router.push({ name: 'Authorize'}) | |
87 | - return | |
88 | - } | |
89 | - this.unionId = localStorage.getItem('unionId') | |
90 | - this.getUserInfo() | |
91 | - } else { | |
92 | - this.unionId = this.TestUnionId | |
93 | - this.getUserInfo() | |
94 | - } | |
83 | + | |
84 | + this.unionId = localStorage.getItem('unionId') | |
85 | + this.getUserInfo() | |
86 | + | |
95 | 87 | this.GetBaseDetail() |
96 | 88 | }, |
97 | 89 | methods: { |
... | ... | @@ -153,11 +145,11 @@ export default { |
153 | 145 | // 分享 |
154 | 146 | handleShare() { |
155 | 147 | // this.yxAxios.post(`https://zlyx.shunzhi.net/api/BaseManage/ZlBaseShareRecord`,{ |
156 | - this.yxAxios.post(`https://zlyx.shunzhi.net/api/BaseManage/ZlBaseShareRecord`,{ | |
148 | + this.yxAxios.post(`https://zlyx.shunzhi.net/api/BaseManage/ZlBaseShareRecord`, { | |
157 | 149 | baseId: this.baseId, |
158 | - baseName:this.detailData.baseName, | |
159 | - location:this.detailData.address, | |
160 | - area:this.detailData.area | |
150 | + baseName: this.detailData.baseName, | |
151 | + location: this.detailData.address, | |
152 | + area: this.detailData.area, | |
161 | 153 | }) |
162 | 154 | this.showShareDes = true |
163 | 155 | }, |
... | ... | @@ -174,14 +166,22 @@ export default { |
174 | 166 | }, |
175 | 167 | // 点击地址 |
176 | 168 | handleAddress() { |
177 | - console.log(111) | |
178 | 169 | window.location.href = `http://uri.amap.com/marker?position=${this.detailData.signLong},${this.detailData.signLat}&name=${this.detailData.signAddress}&coordinate=gaode&callnative=1` |
179 | 170 | }, |
180 | 171 | // 点击联系方式 |
181 | 172 | handleContact() { |
182 | 173 | let mobile = this.detailData.mobile[0] |
183 | 174 | if (mobile) { |
184 | - window.location.href = `tel:${mobile}` | |
175 | + // window.location.href = `tel:${mobile}` | |
176 | + ZWJSBridge.phoneCall({ | |
177 | + corpId: mobile, | |
178 | + }) | |
179 | + .then((res) => { | |
180 | + console.log(res) | |
181 | + }) | |
182 | + .catch((err) => { | |
183 | + console.log(err) | |
184 | + }) | |
185 | 185 | } else { |
186 | 186 | this.$toast('暂无联系方式') |
187 | 187 | } |
... | ... | @@ -192,3 +192,12 @@ export default { |
192 | 192 | }, |
193 | 193 | } |
194 | 194 | </script> |
195 | +<style lang="scss"> | |
196 | +// 长辈版 | |
197 | +.elder { | |
198 | + .base_detail .tag_item .tag_text,.base_detail .uni_text .tag_box .tag,.base_detail .uni_text .address,.base_detail .content_box .content_all .teacher_box .teacher_name,.base_detail .content_box .content_all .teacher_box .teacher_level,.base_detail .content_box .content_all .teacher_box .teacher_info,.base_detail .content_box .content_all .teacher_box .teacher_location{ | |
199 | + font-size: 36px; | |
200 | + } | |
201 | + | |
202 | +} | |
203 | +</style> | |
195 | 204 | \ No newline at end of file | ... | ... |
src/views/Service/BaseDetail/c_BaseDes.vue
... | ... | @@ -16,20 +16,19 @@ |
16 | 16 | <p class="tag_title">课程一览</p> |
17 | 17 | <div class="content_box"> |
18 | 18 | <div class="content_all active_box"> |
19 | - <template v-for="(item,index) in CourseData"> | |
19 | + <template v-for="(item, index) in CourseData"> | |
20 | 20 | <div class="active_item" :key="index" @click="handleCourseDetail(item)"> |
21 | - <div class="bg_box" :style="{backgroundImage:'url('+(item.coverUrl||item.coverList[0].cover_url)+')'}"> | |
22 | - </div> | |
21 | + <div class="bg_box" :style="{ backgroundImage: 'url(' + (item.coverUrl || item.coverList[0].cover_url) + ')' }"></div> | |
23 | 22 | <div class="text_box"> |
24 | 23 | <p class="title">{{ item.course_name }}</p> |
25 | - <span class="tag" v-for="item3,index3 in item.course_labels" :key="index3">{{ item3 }}</span> | |
24 | + <span class="tag" v-for="(item3, index3) in item.course_labels" :key="index3">{{ item3 }}</span> | |
26 | 25 | <!-- <div class="count_box"> |
27 | 26 | <span class="count">{{item.read_count}}人已浏览</span> |
28 | 27 | </div> --> |
29 | 28 | </div> |
30 | 29 | </div> |
31 | 30 | </template> |
32 | - <p class="tag_text" v-if="CourseData.length==0">暂无课程</p> | |
31 | + <p class="tag_text" v-if="CourseData.length == 0">暂无课程</p> | |
33 | 32 | </div> |
34 | 33 | </div> |
35 | 34 | </div> |
... | ... | @@ -40,17 +39,19 @@ |
40 | 39 | <div class="content_box"> |
41 | 40 | <div class="content_all"> |
42 | 41 | <div class="teacher_box"> |
43 | - <div class="teacher_item" v-for="(item,index) in teacherData" :key="index"> | |
42 | + <div class="teacher_item" v-for="(item, index) in teacherData" :key="index"> | |
44 | 43 | <div class="teacher_img_box"> |
45 | - <img class="teacher_img" :src="item.photourl||defaultHead" alt=""> | |
44 | + <img class="teacher_img" :src="item.photourl || defaultHead" alt="" /> | |
46 | 45 | </div> |
47 | - <p class="teacher_name">{{item.teacher_name}}</p> | |
48 | - <p class="teacher_info">{{item.teacher_info}}</p> | |
49 | - <p class="teacher_level">导师级别:{{item.state==1?'初级':item.state==1?'中级':item.state==1?'高级':''}}</p> | |
50 | - <p class="teacher_location">所在机构:{{detailData.baseName}}</p> | |
46 | + <p class="teacher_name">{{ item.teacher_name }}</p> | |
47 | + <p class="teacher_info">{{ item.teacher_info }}</p> | |
48 | + <p class="teacher_level"> | |
49 | + 导师级别:{{ item.state == 1 ? '初级' : item.state == 1 ? '中级' : item.state == 1 ? '高级' : '' }} | |
50 | + </p> | |
51 | + <p class="teacher_location">所在机构:{{ detailData.baseName }}</p> | |
51 | 52 | </div> |
52 | 53 | </div> |
53 | - <p class="tag_text" v-if="teacherData.length==0">暂无导师</p> | |
54 | + <p class="tag_text" v-if="teacherData.length == 0">暂无导师</p> | |
54 | 55 | </div> |
55 | 56 | </div> |
56 | 57 | </div> |
... | ... | @@ -61,7 +62,7 @@ |
61 | 62 | <script> |
62 | 63 | export default { |
63 | 64 | props: ['detailData'], |
64 | - data () { | |
65 | + data() { | |
65 | 66 | return { |
66 | 67 | active: 0, |
67 | 68 | CourseData: [], |
... | ... | @@ -69,53 +70,104 @@ export default { |
69 | 70 | defaultHead: require('@/assets/service/head.png'), |
70 | 71 | } |
71 | 72 | }, |
72 | - mounted () { | |
73 | - this.GetCourseList()//获取课程列表 | |
74 | - this.GetTeacherList()//获取导师列表 | |
73 | + mounted() { | |
74 | + this.GetCourseList() //获取课程列表 | |
75 | + this.GetTeacherList() //获取导师列表 | |
75 | 76 | }, |
76 | 77 | methods: { |
77 | 78 | //获取课程列表 |
78 | - GetCourseList () { | |
79 | + GetCourseList() { | |
79 | 80 | this.yxAxios.get(`${this.yanxueUrl}/api/BaseManage/GetCourseList?baseId=${this.detailData.id}&state=-1&checkStatus=4`).then((res) => { |
80 | 81 | console.log(res) |
81 | 82 | if (res.data.status == 1) { |
82 | - let CourseData = res.data.data.list; | |
83 | + let CourseData = res.data.data.list | |
83 | 84 | console.log('课程列表:', CourseData) |
84 | 85 | for (let i in CourseData) { |
85 | - CourseData[i].course_labels = CourseData[i].course_labels.split(','); | |
86 | + CourseData[i].course_labels = CourseData[i].course_labels.split(',') | |
86 | 87 | if (CourseData[i].startDate) { |
87 | - CourseData[i].week = this.formatWeek(this.Moment(CourseData[i].startDate).format('d')); | |
88 | - CourseData[i].startDate = this.Moment(CourseData[i].startDate).format('YYYY.M.D'); | |
89 | - CourseData[i].endDate = this.Moment(CourseData[i].endDate).format('YYYY.M.D'); | |
88 | + CourseData[i].week = this.formatWeek(this.Moment(CourseData[i].startDate).format('d')) | |
89 | + CourseData[i].startDate = this.Moment(CourseData[i].startDate).format('YYYY.M.D') | |
90 | + CourseData[i].endDate = this.Moment(CourseData[i].endDate).format('YYYY.M.D') | |
90 | 91 | } |
91 | 92 | } |
92 | 93 | this.CourseData = CourseData |
93 | 94 | } else { |
94 | - this.$message.warning(res.data.message || res.data.result); | |
95 | + this.$message.warning(res.data.message || res.data.result) | |
95 | 96 | } |
96 | 97 | }) |
97 | 98 | }, |
98 | 99 | //获取导师列表 |
99 | - GetTeacherList () { | |
100 | + GetTeacherList() { | |
100 | 101 | this.yxAxios.get(`${this.yanxueUrl}/api/BaseManage/GetTeacherList?baseId=${this.detailData.id}`).then((res) => { |
101 | 102 | console.log(res) |
102 | 103 | if (res.data.status == 1) { |
103 | - let data = res.data.data.list; | |
104 | + let data = res.data.data.list | |
104 | 105 | console.log('导师列表:', data) |
105 | 106 | this.teacherData = data |
106 | 107 | } else { |
107 | - this.$message.warning(res.data.message || res.data.result); | |
108 | + this.$message.warning(res.data.message || res.data.result) | |
108 | 109 | } |
109 | 110 | }) |
110 | 111 | }, |
111 | 112 | // 点击课程 |
112 | - handleCourseDetail (item) { | |
113 | + handleCourseDetail(item) { | |
113 | 114 | this.$router.push({ name: 'ServiceAbroadDetail', query: { courseId: item.id } }) |
114 | 115 | }, |
115 | 116 | // 格式化星期 |
116 | - formatWeek (week) { | |
117 | - return week == 1 ? '周一' : week == 2 ? '周二' : week == 3 ? '周三' : week == 4 ? '周四' : week == 5 ? '周五' : week == 6 ? '周六' : week == 0 ? '周日' : ''; | |
117 | + formatWeek(week) { | |
118 | + return week == 1 | |
119 | + ? '周一' | |
120 | + : week == 2 | |
121 | + ? '周二' | |
122 | + : week == 3 | |
123 | + ? '周三' | |
124 | + : week == 4 | |
125 | + ? '周四' | |
126 | + : week == 5 | |
127 | + ? '周五' | |
128 | + : week == 6 | |
129 | + ? '周六' | |
130 | + : week == 0 | |
131 | + ? '周日' | |
132 | + : '' | |
118 | 133 | }, |
134 | + }, | |
135 | +} | |
136 | +</script> | |
137 | +<style lang="scss"> | |
138 | +// 长辈版 | |
139 | +.elder { | |
140 | + .van-tab { | |
141 | + font-size: 36px; | |
142 | + } | |
143 | + .base_detail { | |
144 | + .uni_text { | |
145 | + .course_name { | |
146 | + font-size: 52px; | |
147 | + } | |
148 | + .course_info { | |
149 | + font-size: 36px; | |
150 | + } | |
151 | + } | |
152 | + .tag_item { | |
153 | + .tag_title { | |
154 | + font-size: 42px; | |
155 | + } | |
156 | + .tag_text { | |
157 | + font-size: 36px !important; | |
158 | + line-height: 48px !important; | |
159 | + } | |
160 | + } | |
161 | + .content_box .content_all .active_item{ | |
162 | + .title{ | |
163 | + font-size: 36px; | |
164 | + line-height: 52px; | |
165 | + height: 124px; | |
166 | + } | |
167 | + .tag{ | |
168 | + font-size: 36px; | |
169 | + } | |
170 | + } | |
119 | 171 | } |
120 | 172 | } |
121 | -</script> | |
122 | 173 | \ No newline at end of file |
174 | +</style> | ... | ... |
src/views/Service/CheckOrderReserve.vue
... | ... | @@ -75,7 +75,6 @@ export default { |
75 | 75 | TalentReserveData: '', //套餐 |
76 | 76 | showCourseData: '', //当前课程的信息 |
77 | 77 | publicName: '', |
78 | - openId: '', //支付用 | |
79 | 78 | userInfo: '', //支付用 |
80 | 79 | appId: 'wx1305e88d2bc74073', |
81 | 80 | CourseParentId: '', //学习中心途径购买课程对应参数 |
... | ... | @@ -89,17 +88,8 @@ export default { |
89 | 88 | } |
90 | 89 | }, |
91 | 90 | mounted() { |
92 | - let openId = localStorage.getItem('openId') | |
93 | 91 | |
94 | - if (process.env.NODE_ENV === 'production' && this.common.isWeiXin()) { | |
95 | - if (!openId) { | |
96 | - localStorage.setItem('prePage', 'ServiceCheckOrder') | |
97 | - this.$router.push({ name: 'Authorize' }) | |
98 | - return | |
99 | - } else { | |
100 | - this.openId = openId | |
101 | - } | |
102 | - } | |
92 | + | |
103 | 93 | |
104 | 94 | let userInfo = localStorage.getItem('userInfo') |
105 | 95 | if (userInfo) { | ... | ... |
src/views/Service/CourseBaseList/RankingList.vue
... | ... | @@ -471,3 +471,12 @@ p{ |
471 | 471 | } |
472 | 472 | } |
473 | 473 | </style> |
474 | +<style lang="scss"> | |
475 | +// 长辈版 | |
476 | +.elder { | |
477 | + .dataList li h3,.dataList li .address,.dataList li .bottom,.dataList li .img .bot,#taobao-best .swiper-slide .goods .cont div,#taobao-best .swiper-slide .goods .cont .bottomLabel span,#taobao-best .swiper-slide .goods .lookNum{ | |
478 | + font-size: 36px; | |
479 | + } | |
480 | + | |
481 | +} | |
482 | +</style> | |
474 | 483 | \ No newline at end of file | ... | ... |
src/views/Service/CourseBaseList/SelectionBase.vue
... | ... | @@ -307,3 +307,12 @@ export default { |
307 | 307 | } |
308 | 308 | } |
309 | 309 | </style> |
310 | +<style lang="scss"> | |
311 | +// 长辈版 | |
312 | +.elder { | |
313 | + .select_popup .filter_title,.select_popup .select_item,#SelectionBase .drop_down_box .filter,#SelectionBase .van-dropdown-menu__title{ | |
314 | + font-size: 36px; | |
315 | + } | |
316 | + | |
317 | +} | |
318 | +</style> | ... | ... |
src/views/Service/TalentReserve.vue
... | ... | @@ -161,8 +161,6 @@ export default { |
161 | 161 | this.$toast('请先选择团期') |
162 | 162 | return |
163 | 163 | } |
164 | - let isLogin = this.checkLogin() | |
165 | - if (!isLogin) return | |
166 | 164 | const query = { |
167 | 165 | date: this.date, |
168 | 166 | count: this.count, |
... | ... | @@ -176,25 +174,7 @@ export default { |
176 | 174 | ) |
177 | 175 | this.$router.push({ name: 'ServiceCheckOrderReserve', query: query }) |
178 | 176 | }, |
179 | - // 判断是否已登录 | |
180 | - checkLogin() { | |
181 | - // if (process.env.NODE_ENV != "production") return true; | |
182 | - | |
183 | - const userInfo = JSON.parse(localStorage.getItem('userInfo')) | |
184 | - const publicName = localStorage.getItem('publicName') | |
185 | - if (!userInfo?.phone) { | |
186 | - localStorage.setItem('prePage', 'TalentReserve') | |
187 | - localStorage.setItem('prePageQuery', JSON.stringify({ ProgramType: this.$route.query.ProgramType, | |
188 | - productSceneId: this.$route.query.ProgramType })) | |
189 | - this.$router.push({ name: 'LoginQYX', query: { publicName: publicName } }) | |
190 | - return false | |
191 | - } | |
192 | - // else if (localStorage.getItem('schoolNames') == 'undefined' || !localStorage.getItem('schoolNames')) { | |
193 | - // this.showSchool = true | |
194 | - // return false; | |
195 | - // } | |
196 | - return true | |
197 | - }, | |
177 | + | |
198 | 178 | // 选择日期 |
199 | 179 | chooseDate(date) { |
200 | 180 | let hasDate = false | ... | ... |
src/views/Service/component/ServiceListSecond.vue
... | ... | @@ -214,3 +214,11 @@ export default { |
214 | 214 | } |
215 | 215 | } |
216 | 216 | </style> |
217 | +<style lang="scss"> | |
218 | +// 长辈版 | |
219 | +.elder { | |
220 | + .abroad .uni_item_mini .content .title,.abroad .uni_item_mini .content .address,.abroad .uni_item_mini .img_box .bottom{ | |
221 | + font-size: 36px !important; | |
222 | + } | |
223 | +} | |
224 | +</style> | ... | ... |
src/views/Service/component/c_CourseList.vue
... | ... | @@ -148,3 +148,11 @@ export default { |
148 | 148 | } |
149 | 149 | } |
150 | 150 | </style> |
151 | +<style lang="scss"> | |
152 | +// 长辈版 | |
153 | +.elder { | |
154 | + .abroad .uni_item_mini .content .title,.abroad .uni_item_mini .img_box .bottom .level,.abroad .uni_item_mini .img_box .bottom .count,.abroad .uni_item_mini .content .name{ | |
155 | + font-size: 36px !important; | |
156 | + } | |
157 | +} | |
158 | +</style> | ... | ... |
src/views/Teacher/Teacher.vue
src/views/Travel/schoolFollow.vue
... | ... | @@ -0,0 +1,42 @@ |
1 | +<template> | |
2 | + <p class="bottom_about_des"> | |
3 | + 本服务由浙江政务服务网、绍兴市教育局提供<br />服务咨询热线: | |
4 | + <a href="tel:400-826-2468">400-826-2468</a> | |
5 | + <!-- <span @click="call">400-826-2468</span> --> | |
6 | + </p> | |
7 | +</template> | |
8 | +<script> | |
9 | +export default { | |
10 | + methods: { | |
11 | + call() { | |
12 | + ZWJSBridge.phoneCall({ | |
13 | + corpId: '400-826-2468', | |
14 | + }) | |
15 | + .then((res) => { | |
16 | + console.log(res) | |
17 | + }) | |
18 | + .catch((err) => { | |
19 | + console.log(err) | |
20 | + }) | |
21 | + }, | |
22 | + }, | |
23 | +} | |
24 | +</script> | |
25 | +<style lang="scss"> | |
26 | +.bottom_about_des { | |
27 | + font-size: 26px; | |
28 | + text-align: center; | |
29 | + padding: 40px; | |
30 | + | |
31 | + a,span { | |
32 | + color: rgb(41, 122, 189); | |
33 | + } | |
34 | +} | |
35 | +</style> | |
36 | +<style lang="scss"> | |
37 | +.elder { | |
38 | + .bottom_about_des { | |
39 | + font-size: 36px; | |
40 | + } | |
41 | +} | |
42 | +</style> | ... | ... |