Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
CFFP-HB
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Chao Sun
CFFP-HB
Commits
1c63d3fb
Commit
1c63d3fb
authored
Nov 16, 2022
by
kyle
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
所有标签替换以及样式调整以及拦截器调整
parent
589c8b01
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
161 additions
and
143 deletions
+161
-143
App.vue
+5
-5
api/api.ts
+4
-0
components/courseItem/courseItem.vue
+2
-2
components/login/login.vue
+10
-10
components/tabBar/tabBar.vue
+2
-5
manifest.json
+13
-2
pages/afterSales/afterSales.vue
+6
-6
pages/certifyDetail/certifyDetail.vue
+28
-28
pages/index/index.vue
+3
-3
pages/invitationRegister/invitationRegister.vue
+2
-2
pages/inviteJoin/inviteJoin.vue
+24
-24
pages/myCertify/myCertify.vue
+2
-2
pages/myLearning/myLearning.vue
+2
-2
pages/orderDetail/orderDetail.vue
+10
-10
pages/personalCenter/personalCenter.vue
+28
-14
util/interceptor.ts
+20
-28
No files found.
App.vue
View file @
1c63d3fb
...
@@ -20,11 +20,11 @@
...
@@ -20,11 +20,11 @@
height
:
100%
;
height
:
100%
;
}
}
@font-face
{
font-family
:
'iconfont'
;
@font-face
{
font-family
:
'iconfont'
;
src
:
url('iconfont.eot')
;
src
:
url('
./static/font/
iconfont.eot')
;
src
:
url('iconfont.eot?#iefix')
format
(
'embedded-opentype'
),
src
:
url('
./static/font/
iconfont.eot?#iefix')
format
(
'embedded-opentype'
),
url('iconfont.woff')
format
(
'woff'
),
url('
./static/font/
iconfont.woff')
format
(
'woff'
),
url('iconfont.ttf')
format
(
'truetype'
),
url('
./static/font/
iconfont.ttf')
format
(
'truetype'
),
url('iconfont.svg#iconfont')
format
(
'svg'
);
url('
./static/font/
iconfont.svg#iconfont')
format
(
'svg'
);
}
}
.iconfont
{
.iconfont
{
font-family
:
"iconfont"
!important
;
font-family
:
"iconfont"
!important
;
...
...
api/api.ts
View file @
1c63d3fb
...
@@ -136,5 +136,9 @@ export default {
...
@@ -136,5 +136,9 @@ export default {
// 售后详情
// 售后详情
userAfterSalesDtl
(
params
){
userAfterSalesDtl
(
params
){
return
request
(
`
${
cffpURL
}
/course/userAfterSalesDtl`
,
"POST"
,
params
)
return
request
(
`
${
cffpURL
}
/course/userAfterSalesDtl`
,
"POST"
,
params
)
},
// 个人信息查询
queryInfo
(
params
){
return
request
(
`
${
cffpURL
}
/user/queryInfo`
,
"POST"
,
params
)
}
}
}
}
components/courseItem/courseItem.vue
View file @
1c63d3fb
<
template
>
<
template
>
<view
class=
"itemContent"
>
<view
class=
"itemContent"
>
<view
class=
"thumbnailBox"
>
<view
class=
"thumbnailBox"
>
<im
g
:src=
"thumbnailPath"
alt=
""
>
<im
age
:src=
"thumbnailPath"
alt=
""
mode=
"widthFix"
></image
>
</view>
</view>
<view
class=
"courseDetailBox"
>
<view
class=
"courseDetailBox"
>
<h4>
{{
title
}}
</h4>
<h4>
{{
title
}}
</h4>
...
@@ -68,7 +68,7 @@
...
@@ -68,7 +68,7 @@
width
:
200
rpx
;
width
:
200
rpx
;
height
:
200
rpx
;
height
:
200
rpx
;
margin-right
:
26
rpx
;
margin-right
:
26
rpx
;
im
g
{
im
age
{
max-width
:
100%
;
max-width
:
100%
;
height
:
auto
;
height
:
auto
;
}
}
...
...
components/login/login.vue
View file @
1c63d3fb
<
template
>
<
template
>
<view
class=
"wrapper"
>
<view
class=
"wrapper"
>
<view
class=
"logo"
>
<view
class=
"logo"
>
<im
g
:src=
"imgSrc"
alt=
"logo"
srcset=
""
>
<im
age
:src=
"imgSrc"
alt=
"logo"
srcset=
""
class=
"iconBox"
mode=
"widthFix"
></image
>
<view>
欢迎登录使用CFFP
</view>
<view>
欢迎登录使用CFFP
</view>
</view>
</view>
<view
class=
"content"
>
<view
class=
"content"
>
...
@@ -13,15 +13,13 @@
...
@@ -13,15 +13,13 @@
<input
class=
"uni-input"
name=
"invitationCode"
placeholder=
"输入邀请码(非必填)"
v-model=
"invitation_code"
/>
<input
class=
"uni-input"
name=
"invitationCode"
placeholder=
"输入邀请码(非必填)"
v-model=
"invitation_code"
/>
</view>
</view>
<view
class=
"inputItem"
v-if=
"loginType!=='agentlogin'"
>
<view
class=
"inputItem"
v-if=
"loginType!=='agentlogin'"
>
<input
class=
"uni-input"
name=
"mobileNo"
placeholder=
"输入手机号"
v-model=
"form.mobile"
maxlength=
"11"
<input
class=
"uni-input"
name=
"mobileNo"
placeholder=
"输入手机号"
v-model=
"form.mobile"
maxlength=
"11"
/>
/>
</view>
</view>
<view
class=
"inputItem"
v-if=
"loginType==='agentlogin'"
>
<view
class=
"inputItem"
v-if=
"loginType==='agentlogin'"
>
<input
class=
"uni-input"
name=
"mobileNo"
placeholder=
"输入账号"
v-model=
"account"
maxlength=
"11"
<input
class=
"uni-input"
name=
"mobileNo"
placeholder=
"输入账号"
v-model=
"account"
maxlength=
"11"
/>
/>
</view>
</view>
<view
class=
"inputItem"
v-if=
"loginType === 'codelogin' || loginType==='register' || loginType === 'resetpw'"
>
<view
class=
"inputItem"
v-if=
"loginType === 'codelogin' || loginType==='register' || loginType === 'resetpw'"
>
<input
class=
"uni-input"
name=
"code"
placeholder=
"输入验证码"
v-model=
"form.code"
type=
"number"
maxlength=
"6"
/>
<input
class=
"uni-input
codeBtn
"
name=
"code"
placeholder=
"输入验证码"
v-model=
"form.code"
type=
"number"
maxlength=
"6"
/>
<text
@
click=
"sendMessage()"
:class=
"
{'grey':disabledSendBtn}">
{{
sendCodeHtml
}}
</text>
<text
@
click=
"sendMessage()"
:class=
"
{'grey':disabledSendBtn}">
{{
sendCodeHtml
}}
</text>
</view>
</view>
<view
class=
"inputItem"
v-if=
"loginType === 'pwlogin' || loginType==='register' || loginType==='agentlogin'"
>
<view
class=
"inputItem"
v-if=
"loginType === 'pwlogin' || loginType==='register' || loginType==='agentlogin'"
>
...
@@ -46,8 +44,6 @@
...
@@ -46,8 +44,6 @@
</view>
</view>
<view
class=
"login_btn"
@
click=
"loginInCheck()"
v-if=
"loginType!='resetpw'"
>
<view
class=
"login_btn"
@
click=
"loginInCheck()"
v-if=
"loginType!='resetpw'"
>
{{
loginType
==
'register'
?
'注册'
:
'登录'
}}
{{
loginType
==
'register'
?
'注册'
:
'登录'
}}
{{
loginType
}}
</view>
</view>
<view
class=
"login_btn"
v-if=
"loginType=='resetpw'"
@
click=
"loginInCheck()"
>
<view
class=
"login_btn"
v-if=
"loginType=='resetpw'"
@
click=
"loginInCheck()"
>
保存
保存
...
@@ -98,7 +94,7 @@
...
@@ -98,7 +94,7 @@
doublePassword
:
null
,
doublePassword
:
null
,
agreeFlag
:
false
,
agreeFlag
:
false
,
userId
:
null
,
userId
:
null
,
imgSrc
:
'static/cffp_logo.jpg'
imgSrc
:
'
../../
static/cffp_logo.jpg'
}
}
},
},
methods
:
{
methods
:
{
...
@@ -336,8 +332,9 @@
...
@@ -336,8 +332,9 @@
margin-top
:
40
rpx
;
margin-top
:
40
rpx
;
font-size
:
40
rpx
;
font-size
:
40
rpx
;
}
}
img
{
.iconBox
{
border-radius
:
15
rpx
;
border-radius
:
15
rpx
;
width
:
20%
!important
;
}
}
}
}
.content
{
.content
{
...
@@ -357,6 +354,9 @@
...
@@ -357,6 +354,9 @@
.inputItem{
.inputItem{
position
:
relative
;
position
:
relative
;
margin-bottom
:
30
rpx
;
margin-bottom
:
30
rpx
;
.codeBtn{
width
:
70%
;
}
.uni-input
{
.uni-input
{
height
:
80
rpx
;
height
:
80
rpx
;
line-height
:
80
rpx
;
line-height
:
80
rpx
;
...
...
components/tabBar/tabBar.vue
View file @
1c63d3fb
...
@@ -4,8 +4,8 @@
...
@@ -4,8 +4,8 @@
<view
v-for=
"item in menuLists"
:key=
"item.link"
class=
"tabbar_item"
:class=
"
{'active':item.link == currentPage}"
<view
v-for=
"item in menuLists"
:key=
"item.link"
class=
"tabbar_item"
:class=
"
{'active':item.link == currentPage}"
@click="navTo(item,index)">
@click="navTo(item,index)">
<view
class=
"pic"
>
<view
class=
"pic"
>
<im
g
v-if=
"item.link == currentPage"
:src=
"'../../static/tabbar/' + item.selectedIconPath + '.png'"
>
<im
age
v-if=
"item.link == currentPage"
:src=
"'/static/tabbar/' + item.selectedIconPath + '.png'"
mode=
"widthFix"
></image
>
<im
g
v-else
:src=
"'../../static/tabbar/' + item.iconPath + '.png'"
>
<im
age
v-else
:src=
"'/static/tabbar/' + item.iconPath + '.png'"
mode=
"widthFix"
></image
>
</view>
</view>
<view
class=
"name"
>
{{
item
.
name
}}
</view>
<view
class=
"name"
>
{{
item
.
name
}}
</view>
</view>
</view>
...
@@ -68,9 +68,6 @@ import tabBarVue from './tabBar.vue';
...
@@ -68,9 +68,6 @@ import tabBarVue from './tabBar.vue';
.pic{
.pic{
width
:
70
rpx
;
width
:
70
rpx
;
margin
:
0
auto
;
margin
:
0
auto
;
img{
max-width
:
100%
;
}
}
}
.name
{
.name
{
text-align
:
center
;
text-align
:
center
;
...
...
manifest.json
View file @
1c63d3fb
...
@@ -18,7 +18,8 @@
...
@@ -18,7 +18,8 @@
},
},
/*
模块配置
*/
/*
模块配置
*/
"modules"
:
{
"modules"
:
{
"Share"
:
{}
"Share"
:
{},
"Payment"
:
{}
},
},
/*
应用发布信息
*/
/*
应用发布信息
*/
"distribute"
:
{
"distribute"
:
{
...
@@ -49,7 +50,17 @@
...
@@ -49,7 +50,17 @@
/*
SDK配置
*/
/*
SDK配置
*/
"sdkConfigs"
:
{
"sdkConfigs"
:
{
"share"
:
{},
"share"
:
{},
"ad"
:
{}
"ad"
:
{},
"payment"
:
{
"alipay"
:
{
"__platform__"
:
[
"ios"
,
"android"
]
},
"weixin"
:
{
"__platform__"
:
[
"ios"
,
"android"
],
"appid"
:
"wxec09b9be6cff4eb3"
,
"UniversalLinks"
:
""
}
}
}
}
}
}
},
},
...
...
pages/afterSales/afterSales.vue
View file @
1c63d3fb
<
template
>
<
template
>
<view
class=
"container"
>
<view
class=
"container"
>
<
ul
>
<
view
class=
"ulBox"
>
<
li
v-for=
"item in userCourses"
:key=
"item.orderId"
>
<
view
class=
"liBOx"
v-for=
"item in userCourses"
:key=
"item.orderId"
>
<course-item
:thumbnailPath=
"item.displayImage"
:title=
"item.fileTitle"
:summaryBox=
"item.fileSynopsis"
:dataList=
"
{coursePrice:item.coursePrice,salesNumber:item.salesNumber}" :tagList="{v1:item.fileLecturerRanks,v2:item.fileLecturerName}">
</course-item>
<course-item
:thumbnailPath=
"item.displayImage"
:title=
"item.fileTitle"
:summaryBox=
"item.fileSynopsis"
:dataList=
"
{coursePrice:item.coursePrice,salesNumber:item.salesNumber}" :tagList="{v1:item.fileLecturerRanks,v2:item.fileLecturerName}">
</course-item>
<view
class=
"statusBox"
>
<view
class=
"statusBox"
>
<text>
{{
item
.
orderStatusName
}}
</text>
<text>
{{
item
.
orderStatusName
}}
</text>
<text
@
click=
"goDetail(item)"
>
查看详情>
</text>
<text
@
click=
"goDetail(item)"
>
查看详情>
</text>
</view>
</view>
</
li
>
</
view
>
</
ul
>
</
view
>
</view>
</view>
</
template
>
</
template
>
...
@@ -54,9 +54,9 @@
...
@@ -54,9 +54,9 @@
<
style
lang=
"scss"
>
<
style
lang=
"scss"
>
.container
{
.container
{
height
:
100%
;
height
:
100%
;
ul
{
.ulBox
{
padding
:
10
rpx
20
rpx
;
padding
:
10
rpx
20
rpx
;
li
{
.liBox
{
background-color
:
#fff
;
background-color
:
#fff
;
margin-bottom
:
20
rpx
;
margin-bottom
:
20
rpx
;
padding
:
18
rpx
10
rpx
;
padding
:
18
rpx
10
rpx
;
...
...
pages/certifyDetail/certifyDetail.vue
View file @
1c63d3fb
...
@@ -4,24 +4,24 @@
...
@@ -4,24 +4,24 @@
{{
certificateInfo
.
cerIntroduce
}}
{{
certificateInfo
.
cerIntroduce
}}
</view>
</view>
<view
class=
"certifySignInfo"
>
<view
class=
"certifySignInfo"
>
<
ul
>
<
view
class=
"ulBox"
>
<
li><text>
报名时间:
</text><text>
{{
certificateInfo
.
startDate
}}
-
{{
certificateInfo
.
endDate
}}
</text></li
>
<
view
class=
"liBox"
><text>
报名时间:
</text><text>
{{
certificateInfo
.
startDate
}}
-
{{
certificateInfo
.
endDate
}}
</text></view
>
<
li><text>
考试费用:
</text><text>
{{
certificateInfo
.
examinationPrice
}}
</text></li
>
<
view
class=
"liBox"
><text>
考试费用:
</text><text>
{{
certificateInfo
.
examinationPrice
}}
</text></view
>
<
li><text>
培训费用:
</text><text>
{{
certificateInfo
.
trainPrice
}}
</text></li
>
<
view
class=
"liBox"
><text>
培训费用:
</text><text>
{{
certificateInfo
.
trainPrice
}}
</text></view
>
<
li><text>
培训课程:
</text><text>
{{
certificateInfo
.
courseName
}}
</text></li
>
<
view
class=
"liBox"
><text>
培训课程:
</text><text>
{{
certificateInfo
.
courseName
}}
</text></view
>
<
li><text>
培训方式:
</text><text>
{{
certificateInfo
.
trainType
==
1
?
'线上培训'
:
'/'
}}
</text></li
>
<
view
class=
"liBox"
><text>
培训方式:
</text><text>
{{
certificateInfo
.
trainType
==
1
?
'线上培训'
:
'/'
}}
</text></view
>
<
li><text>
考试方式:
</text><text>
{{
certificateInfo
.
examinationType
==
1
?
'线上考试'
:
'/'
}}
</text></li
>
<
view
class=
"liBox"
><text>
考试方式:
</text><text>
{{
certificateInfo
.
examinationType
==
1
?
'线上考试'
:
'/'
}}
</text></view
>
<
li><text>
及格分数:
</text><text>
{{
certificateInfo
.
passScore
}}
</text></li
>
<
view
class=
"liBox"
><text>
及格分数:
</text><text>
{{
certificateInfo
.
passScore
}}
</text></view
>
</
ul
>
</
view
>
<view
class=
"eqrocdeContent"
>
<view
class=
"eqrocdeContent"
>
<im
g
:src=
"certificateInfo.wechatCodeUrl"
alt=
""
srcset=
""
>
<im
age
:src=
"certificateInfo.wechatCodeUrl"
alt=
""
srcset=
""
mode=
"widthFix"
></image
>
<text>
请扫二维码进群学习~
</text>
<text>
请扫二维码进群学习~
</text>
</view>
</view>
</view>
</view>
<!-- 荣誉证书 -->
<!-- 荣誉证书 -->
<view
class=
"certifyImgBox"
>
<view
class=
"certifyImgBox"
>
<h3>
荣誉证书
</h3>
<h3>
荣誉证书
</h3>
<im
g
:src=
"certificateInfo.cerUrl"
alt=
""
srcset=
""
>
<im
age
:src=
"certificateInfo.cerUrl"
alt=
""
srcset=
""
mode=
"widthFix"
></image
>
</view>
</view>
<!-- 考试计划 -->
<!-- 考试计划 -->
<view
class=
"examPlanning"
>
<view
class=
"examPlanning"
>
...
@@ -38,44 +38,44 @@
...
@@ -38,44 +38,44 @@
<!-- 考试认证流程 -->
<!-- 考试认证流程 -->
<view
class=
"examProcessContainer"
>
<view
class=
"examProcessContainer"
>
<h3>
考试认证流程
</h3>
<h3>
考试认证流程
</h3>
<
ul
>
<
view
class=
"ulBox"
>
<
li
>
<
view
class=
"liBox"
>
<view>
<view>
<im
g
src=
"../../static/certifyProcess/onlineSign.png"
alt=
""
srcset=
""
>
<im
age
src=
"../../static/certifyProcess/onlineSign.png"
alt=
""
srcset=
""
mode=
"widthFix"
></image
>
</view>
</view>
<view>
<view>
<h4>
线上报名
</h4>
<h4>
线上报名
</h4>
<view>
点击右下方“立即报名”,提交信息,选择时间 并缴费后即可完成报名。
</view>
<view>
点击右下方“立即报名”,提交信息,选择时间 并缴费后即可完成报名。
</view>
</view>
</view>
</
li
>
</
view
>
<
li
>
<
view
class=
"liBox"
>
<view>
<view>
<im
g
src=
"../../static/certifyProcess/onlineExam.png"
alt=
""
srcset=
""
>
<im
age
src=
"../../static/certifyProcess/onlineExam.png"
alt=
""
srcset=
""
mode=
"widthFix"
></image
>
</view>
</view>
<view>
<view>
<h4>
线上考试
</h4>
<h4>
线上考试
</h4>
<view>
考试必须在电脑端进行,通过浏览器访问考试链 接进行考试。电脑须配置摄像头设备用于考前人 脸和身份验证、考中监考等。考试前请确认设备 网络、摄像头可正常运行!
</view>
<view>
考试必须在电脑端进行,通过浏览器访问考试链 接进行考试。电脑须配置摄像头设备用于考前人 脸和身份验证、考中监考等。考试前请确认设备 网络、摄像头可正常运行!
</view>
</view>
</view>
</
li
>
</
view
>
<
li
>
<
view
class=
"liBox"
>
<view>
<view>
<im
g
src=
"../../static/certifyProcess/getCertify.png"
alt=
""
srcset=
""
>
<im
age
src=
"../../static/certifyProcess/getCertify.png"
alt=
""
srcset=
""
mode=
"widthFix"
></image
>
</view>
</view>
<view>
<view>
<h4>
获得证书
</h4>
<h4>
获得证书
</h4>
<view>
考试分及格后,即可获得证书
</view>
<view>
考试分及格后,即可获得证书
</view>
</view>
</view>
</
li
>
</
view
>
<
li
>
<
view
class=
"liBox"
>
<view>
<view>
<im
g
src=
"../../static/certifyProcess/feedback.png"
alt=
""
srcset=
""
>
<im
age
src=
"../../static/certifyProcess/feedback.png"
alt=
""
srcset=
""
mode=
"widthFix"
></image
>
</view>
</view>
<view>
<view>
<h4>
填写反馈
</h4>
<h4>
填写反馈
</h4>
<view>
培训完成后,请填写培训反馈,考试质量进行评估。
</view>
<view>
培训完成后,请填写培训反馈,考试质量进行评估。
</view>
</view>
</view>
</
li
>
</
view
>
</
ul
>
</
view
>
<!-- 报名按钮区域 -->
<!-- 报名按钮区域 -->
<view
class=
"signBtnContent"
>
<view
class=
"signBtnContent"
>
<view
class=
"consultBtn"
>
咨询客服
</view>
<view
class=
"consultBtn"
>
咨询客服
</view>
...
@@ -166,12 +166,12 @@
...
@@ -166,12 +166,12 @@
font-size
:
32
rpx
;
font-size
:
32
rpx
;
margin-bottom
:
30
rpx
;
margin-bottom
:
30
rpx
;
}
}
li
{
.liBox
{
margin-bottom
:
20
rpx
;
margin-bottom
:
20
rpx
;
display
:
flex
;
display
:
flex
;
view{
view{
im
g
{
im
age
{
width
:
40
rpx
;
width
:
40
rpx
!important
;
height
:
40
rpx
;
height
:
40
rpx
;
margin-right
:
10
rpx
;
margin-right
:
10
rpx
;
}
}
...
...
pages/index/index.vue
View file @
1c63d3fb
...
@@ -35,8 +35,8 @@
...
@@ -35,8 +35,8 @@
<!-- 模块导航 -->
<!-- 模块导航 -->
<view
class=
"nav_wrapper"
>
<view
class=
"nav_wrapper"
>
<view
class=
"nav_content"
v-for=
"featureItem in featureLists"
@
click=
"featureSelect(featureItem)"
>
<view
class=
"nav_content"
v-for=
"featureItem in featureLists"
@
click=
"featureSelect(featureItem)"
>
<view>
<view
style=
"width: 80rpx;"
>
<im
g
:src=
"'/static/moduleIcon/'+featureItem.icon + '.png'"
alt=
""
srcset=
""
>
<im
age
:src=
"'/static/moduleIcon/'+featureItem.icon + '.png'"
alt=
""
srcset=
""
mode=
"widthFix"
></image
>
</view>
</view>
<view>
{{
featureItem
.
name
}}
</view>
<view>
{{
featureItem
.
name
}}
</view>
</view>
</view>
...
@@ -92,7 +92,7 @@
...
@@ -92,7 +92,7 @@
announcementInfo
:
null
,
announcementInfo
:
null
,
messageUnreadCount
:
null
,
messageUnreadCount
:
null
,
tagIds
:
123
,
tagIds
:
123
,
currentPage
:
'index'
currentPage
:
'index'
,
}
}
},
},
components
:{
components
:{
...
...
pages/invitationRegister/invitationRegister.vue
View file @
1c63d3fb
<
template
>
<
template
>
<view
class=
"container"
>
<view
class=
"container"
>
<view
class=
"logo"
>
<view
class=
"logo"
>
<im
g
src=
"../../static/cffp_logo.jpg"
alt=
""
>
<im
age
src=
"../../static/cffp_logo.jpg"
alt=
""
mode=
"widthFix"
></image
>
<text>
欢迎使用CFFP
</text>
<text>
欢迎使用CFFP
</text>
</view>
</view>
<view
class=
"inviteInfo"
>
<view
class=
"inviteInfo"
>
...
@@ -37,7 +37,7 @@
...
@@ -37,7 +37,7 @@
border-radius
:
30
rpx
;
border-radius
:
30
rpx
;
overflow
:
hidden
;
overflow
:
hidden
;
font-size
:
40
rpx
;
font-size
:
40
rpx
;
im
g
{
im
age
{
margin-bottom
:
20
rpx
;
margin-bottom
:
20
rpx
;
width
:
160
rpx
;
width
:
160
rpx
;
height
:
160
rpx
;
height
:
160
rpx
;
...
...
pages/inviteJoin/inviteJoin.vue
View file @
1c63d3fb
...
@@ -9,55 +9,55 @@
...
@@ -9,55 +9,55 @@
<view
class=
"tabContent"
>
<view
class=
"tabContent"
>
<!-- 基本信息 -->
<!-- 基本信息 -->
<view
v-if=
"tabType===1"
>
<view
v-if=
"tabType===1"
>
<
ul
>
<
view
class=
"ulBox"
>
<
li
>
<
view
class=
"liBox"
>
<text>
姓名:
</text>
<text>
姓名:
</text>
<text><input
class=
"uni-input"
maxlength=
"15"
placeholder=
"姓名"
/></text>
<text><input
class=
"uni-input"
maxlength=
"15"
placeholder=
"姓名"
/></text>
</
li
>
</
view
>
<
li
>
<
view
class=
"liBox"
>
<text>
手机号:
</text>
<text>
手机号:
</text>
<text><input
class=
"uni-input"
type=
"number"
maxlength=
"11"
placeholder=
"手机号"
/></text>
<text><input
class=
"uni-input"
type=
"number"
maxlength=
"11"
placeholder=
"手机号"
/></text>
</
li
>
</
view
>
<
li
>
<
view
class=
"liBox"
>
<text>
申请身份:
</text>
<text>
申请身份:
</text>
<text>
<text>
<picker
@
change=
"bindPickerChange"
:value=
"applyIdentity"
:range=
"identityArr"
>
<picker
@
change=
"bindPickerChange"
:value=
"applyIdentity"
:range=
"identityArr"
>
<view
class=
"uni-input"
>
{{
identityArr
[
applyIdentity
]
}}
</view>
<view
class=
"uni-input"
>
{{
identityArr
[
applyIdentity
]
}}
</view>
</picker>
</picker>
</text>
</text>
</
li
>
</
view
>
<
li
>
<
view
class=
"liBox"
>
<text>
所属组织:
</text>
<text>
所属组织:
</text>
<text>
XXXXXX
</text>
<text>
XXXXXX
</text>
</
li
>
</
view
>
</
ul
>
</
view
>
<share></share>
<share></share>
<button
type=
"primary"
plain=
"true"
class=
"sendInvite"
@
click=
"uniShare"
>
发出邀请
</button>
<button
type=
"primary"
plain=
"true"
class=
"sendInvite"
@
click=
"uniShare"
>
发出邀请
</button>
</view>
</view>
<!-- 邀请信息 -->
<!-- 邀请信息 -->
<view
class=
"inviteListsBox"
v-if=
"tabType===2"
>
<view
class=
"inviteListsBox"
v-if=
"tabType===2"
>
<
ul
class=
"listUl
"
>
<
view
class=
"listUl ulBox
"
>
<
li
>
<
view
class=
"liBox"
>
<text>
姓名:
</text>
<text>
姓名:
</text>
<text></text>
<text></text>
</
li
>
</
view
>
<
li
>
<
view
class=
"liBox"
>
<text>
手机号:
</text>
<text>
手机号:
</text>
<text></text>
<text></text>
</
li
>
</
view
>
<
li
>
<
view
class=
"liBox"
>
<text>
申请身份:
</text>
<text>
申请身份:
</text>
<text></text>
<text></text>
</
li
>
</
view
>
<
li
>
<
view
class=
"liBox"
>
<text>
所属组织:
</text>
<text>
所属组织:
</text>
<text></text>
<text></text>
</
li
>
</
view
>
<
li
>
<
view
class=
"liBox"
>
<text>
邀请状态:
</text>
<text>
邀请状态:
</text>
<text></text>
<text></text>
</
li
>
</
view
>
</
ul
>
</
view
>
</view>
</view>
</view>
</view>
</view>
</view>
...
@@ -137,7 +137,7 @@
...
@@ -137,7 +137,7 @@
}
}
.tabContent
{
.tabContent
{
margin-top
:
10
rpx
;
margin-top
:
10
rpx
;
ul
{
.ulBox
{
width
:
95%
;
width
:
95%
;
margin
:
0
auto
20
rpx
;
margin
:
0
auto
20
rpx
;
padding
:
0.3125rem
1.25rem
;
padding
:
0.3125rem
1.25rem
;
...
@@ -146,7 +146,7 @@
...
@@ -146,7 +146,7 @@
background-color
:
#fff
;
background-color
:
#fff
;
box-sizing
:
border-box
;
box-sizing
:
border-box
;
position
:
relative
;
position
:
relative
;
li
{
.liBox
{
border-bottom
:
1px
solid
#F0F0F0
;
border-bottom
:
1px
solid
#F0F0F0
;
height
:
76
rpx
;
height
:
76
rpx
;
display
:
flex
;
display
:
flex
;
...
...
pages/myCertify/myCertify.vue
View file @
1c63d3fb
...
@@ -31,7 +31,7 @@
...
@@ -31,7 +31,7 @@
<view
class=
"certifyInfoItem"
v-for=
"item in userCertificates"
:key=
"item.cerNo"
>
<view
class=
"certifyInfoItem"
v-for=
"item in userCertificates"
:key=
"item.cerNo"
>
<h4>
{{
item
.
cerName
}}
</h4>
<h4>
{{
item
.
cerName
}}
</h4>
<view
class=
"certifyImgBox"
>
<view
class=
"certifyImgBox"
>
<im
g
:src=
"item.cerUrl"
alt=
""
srcset=
""
>
<im
age
:src=
"item.cerUrl"
alt=
""
srcset=
""
mode=
"widthFix"
></image
>
<view>
认证编号:
{{
item
.
authenticationCode
}}
</view>
<view>
认证编号:
{{
item
.
authenticationCode
}}
</view>
<view>
有效期至:
{{
item
.
endDate
}}
</view>
<view>
有效期至:
{{
item
.
endDate
}}
</view>
</view>
</view>
...
@@ -160,7 +160,7 @@
...
@@ -160,7 +160,7 @@
display
:
flex
;
display
:
flex
;
flex-direction
:
column
;
flex-direction
:
column
;
align-items
:
center
;
align-items
:
center
;
im
g
{
im
age
{
max-width
:
60%
;
max-width
:
60%
;
height
:
auto
;
height
:
auto
;
}
}
...
...
pages/myLearning/myLearning.vue
View file @
1c63d3fb
...
@@ -14,7 +14,7 @@
...
@@ -14,7 +14,7 @@
<!-- 课程详情 -->
<!-- 课程详情 -->
<view
class=
"courseInfoContent"
v-for=
"subItem in item.userStudyInfos"
:key=
"subItem.fileId"
>
<view
class=
"courseInfoContent"
v-for=
"subItem in item.userStudyInfos"
:key=
"subItem.fileId"
>
<view
class=
"thumbnailBox"
>
<view
class=
"thumbnailBox"
>
<im
g
:src=
"subItem.displayImage"
alt=
""
>
<im
age
:src=
"subItem.displayImage"
alt=
""
mode=
"widthFix"
></image
>
</view>
</view>
<view
class=
"courseDetailBox"
>
<view
class=
"courseDetailBox"
>
<h4>
{{
subItem
.
fileTitle
}}
</h4>
<h4>
{{
subItem
.
fileTitle
}}
</h4>
...
@@ -116,7 +116,7 @@
...
@@ -116,7 +116,7 @@
width
:
200
rpx
;
width
:
200
rpx
;
height
:
200
rpx
;
height
:
200
rpx
;
margin-right
:
26
rpx
;
margin-right
:
26
rpx
;
im
g
{
im
age
{
max-width
:
100%
;
max-width
:
100%
;
height
:
auto
;
height
:
auto
;
}
}
...
...
pages/orderDetail/orderDetail.vue
View file @
1c63d3fb
<
template
>
<
template
>
<view
class=
"container"
>
<view
class=
"container"
>
<view
class=
"orderInfoContent"
>
<view
class=
"orderInfoContent"
>
<
ul
>
<
view
class=
"ulBox"
>
<
li
v-for=
"item in orderInfoList.filter(item=>item.pageArea===1)"
:key=
"item.id
"
>
<
view
v-for=
"item in orderInfoList.filter(item=>item.pageArea===1)"
:key=
"item.id"
class=
"liBox
"
>
<text>
{{
item
.
name
}}
:
</text>
<text>
{{
item
.
name
}}
:
</text>
<text
:style=
"
{color:item.color ? item.color : '#666'}">
{{
item
.
value
}}
</text>
<text
:style=
"
{color:item.color ? item.color : '#666'}">
{{
item
.
value
}}
</text>
</
li
>
</
view
>
</
ul
>
</
view
>
<
ul
>
<
view
class=
"ulBox"
>
<
li
v-for=
"item in orderInfoList.filter(item=>item.pageArea===2)"
:key=
"item.id
"
>
<
view
v-for=
"item in orderInfoList.filter(item=>item.pageArea===2)"
:key=
"item.id"
class=
"liBox
"
>
<text>
{{
item
.
name
}}
:
</text>
<text>
{{
item
.
name
}}
:
</text>
<text
:style=
"
{color:item.color ? item.color : '#666'}">
{{
item
.
value
}}
</text>
<text
:style=
"
{color:item.color ? item.color : '#666'}">
{{
item
.
value
}}
</text>
</
li
>
</
view
>
</
ul
>
</
view
>
</view>
</view>
</view>
</view>
</
template
>
</
template
>
...
@@ -77,11 +77,11 @@
...
@@ -77,11 +77,11 @@
.container
{
.container
{
height
:
100%
;
height
:
100%
;
.orderInfoContent{
.orderInfoContent{
ul
{
.ulBox
{
background-color
:
#fff
;
background-color
:
#fff
;
margin
:
20
rpx
22
rpx
;
margin
:
20
rpx
22
rpx
;
padding
:
20
rpx
;
padding
:
20
rpx
;
li
{
.liBox
{
margin-bottom
:
20
rpx
;
margin-bottom
:
20
rpx
;
display
:
flex
;
display
:
flex
;
justify-content
:
space-between
;
justify-content
:
space-between
;
...
...
pages/personalCenter/personalCenter.vue
View file @
1c63d3fb
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
<!-- 头部信息 -->
<!-- 头部信息 -->
<view
class=
"basicInfoBox"
>
<view
class=
"basicInfoBox"
>
<view
class=
"avatar"
>
<view
class=
"avatar"
>
<im
g
src=
"/static/cffp_logo.jpg"
alt=
""
srcset=
""
>
<im
age
src=
"/static/cffp_logo.jpg"
alt=
""
srcset=
""
mode=
"widthFix"
></image
>
</view>
</view>
<view
class=
"infoBox"
>
<view
class=
"infoBox"
>
<view
class=
"firstLineBox"
>
<view
class=
"firstLineBox"
>
...
@@ -26,7 +26,7 @@
...
@@ -26,7 +26,7 @@
<h4>
{{
mainMenu
.
categoryName
}}
</h4>
<h4>
{{
mainMenu
.
categoryName
}}
</h4>
<view
class=
"menuItemBox"
>
<view
class=
"menuItemBox"
>
<view
class=
"mainMenuItem"
v-for=
"menuItem in mainMenu.children.filter(v=>v.isShow)"
:key=
"menuItem.title"
@
click=
"goDetail(menuItem)"
>
<view
class=
"mainMenuItem"
v-for=
"menuItem in mainMenu.children.filter(v=>v.isShow)"
:key=
"menuItem.title"
@
click=
"goDetail(menuItem)"
>
<im
g
:src=
"'/static/moduleIcon/'+menuItem.icon+'.png'"
alt=
""
srcset=
""
>
<im
age
:src=
"'/static/moduleIcon/'+menuItem.icon+'.png'"
alt=
""
srcset=
""
mode=
"widthFix"
></image
>
<text>
{{
menuItem
.
title
}}
</text>
<text>
{{
menuItem
.
title
}}
</text>
</view>
</view>
</view>
</view>
...
@@ -35,17 +35,17 @@
...
@@ -35,17 +35,17 @@
</view>
</view>
<!-- 个人信息 -->
<!-- 个人信息 -->
<view
class=
"personalInfo"
>
<view
class=
"personalInfo"
>
<
ul
>
<
view
class=
"ulBox"
>
<
li
v-for=
"item in minorMenuLists.filter(v=>v.isShow)"
:key=
"item.title"
@
click=
"goDetail(item)
"
>
<
view
v-for=
"item in minorMenuLists.filter(v=>v.isShow)"
:key=
"item.title"
@
click=
"goDetail(item)"
class=
"liBox
"
>
<view
class=
"infoBox"
>
<view
class=
"infoBox"
>
<im
g
:src=
"'/static/moduleIcon/'+item.icon+'.png'"
alt=
""
srcset=
""
>
<im
age
:src=
"'/static/moduleIcon/'+item.icon+'.png'"
alt=
""
srcset=
""
mode=
"widthFix"
></image
>
<text>
{{
item
.
title
}}
</text>
<text>
{{
item
.
title
}}
</text>
</view>
</view>
<view
class=
"iconBox"
>
<view
class=
"iconBox"
>
<i
class=
"iconfont icon-youjiantou"
></i>
<i
class=
"iconfont icon-youjiantou"
></i>
</view>
</view>
</
li
>
</
view
>
</
ul
>
</
view
>
</view>
</view>
<tabBar
:currentPage=
"currentPage"
></tabBar>
<tabBar
:currentPage=
"currentPage"
></tabBar>
<!-- 我的邀请码 -->
<!-- 我的邀请码 -->
...
@@ -74,9 +74,11 @@
...
@@ -74,9 +74,11 @@
<
script
>
<
script
>
import
common
from
"../../common/common"
;
import
common
from
"../../common/common"
;
import
tabBar
from
'../../components/tabBar/tabBar.vue'
;
import
tabBar
from
'../../components/tabBar/tabBar.vue'
;
import
api
from
"@/api/api"
;
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
userId
:
'1'
,
inviteEqrode
:
'XXXXXXX'
,
inviteEqrode
:
'XXXXXXX'
,
currentPage
:
'personalCenter'
,
currentPage
:
'personalCenter'
,
customerBasicInfo
:{},
customerBasicInfo
:{},
...
@@ -116,10 +118,11 @@
...
@@ -116,10 +118,11 @@
],
],
minorMenuLists
:[
minorMenuLists
:[
{
title
:
'我的邀请码'
,
icon
:
'shareEcode'
,
link
:
''
,
isOpen
:
true
,
isShow
:
true
},
{
title
:
'我的邀请码'
,
icon
:
'shareEcode'
,
link
:
''
,
isOpen
:
true
,
isShow
:
true
},
{
title
:
'我的卡包'
,
icon
:
'card'
,
link
:
''
,
isOpen
:
true
,
isShow
:
tru
e
},
{
title
:
'我的卡包'
,
icon
:
'card'
,
link
:
''
,
isOpen
:
true
,
isShow
:
fals
e
},
{
title
:
'我的认证'
,
icon
:
'myCertify'
,
link
:
'/pages/myCertify/myCertify'
,
isOpen
:
true
,
isShow
:
true
},
{
title
:
'我的认证'
,
icon
:
'myCertify'
,
link
:
'/pages/myCertify/myCertify'
,
isOpen
:
true
,
isShow
:
true
},
{
title
:
'申请修改公司周边'
,
icon
:
'message'
,
link
:
''
,
isOpen
:
true
,
isShow
:
true
},
{
title
:
'我的消息'
,
icon
:
'message'
,
link
:
''
,
isOpen
:
true
,
isShow
:
true
},
{
title
:
'我的消息'
,
icon
:
'message'
,
link
:
''
,
isOpen
:
true
,
isShow
:
true
},
{
title
:
'系统设置'
,
icon
:
'setting'
,
link
:
''
,
isOpen
:
true
,
isShow
:
tru
e
}
{
title
:
'系统设置'
,
icon
:
'setting'
,
link
:
''
,
isOpen
:
true
,
isShow
:
fals
e
}
]
]
}
}
...
@@ -157,7 +160,18 @@
...
@@ -157,7 +160,18 @@
console
.
log
(
'success'
);
console
.
log
(
'success'
);
}
}
});
});
},
// 查询个人资料
queryInfo
(){
api
.
queryInfo
({
userId
:
this
.
userId
}).
then
(
res
=>
{
if
(
res
[
'success'
]){
console
.
log
(
res
)
}
})
}
}
},
onLoad
()
{
this
.
queryInfo
();
}
}
}
}
</
script
>
</
script
>
...
@@ -237,7 +251,7 @@
...
@@ -237,7 +251,7 @@
align-items
:
center
;
align-items
:
center
;
max-width
:
20%
;
max-width
:
20%
;
flex
:
1
;
flex
:
1
;
im
g
{
im
age
{
width
:
80
rpx
;
width
:
80
rpx
;
}
}
text
{
text
{
...
@@ -252,9 +266,9 @@
...
@@ -252,9 +266,9 @@
background
:
#fff
;
background
:
#fff
;
width
:
95%
;
width
:
95%
;
margin
:
6
rpx
auto
0
;
margin
:
6
rpx
auto
0
;
ul
{
.ulBox
{
padding
:
0
30
rpx
;
padding
:
0
30
rpx
;
li
{
.liBox
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
justify-content
:
space-between
;
justify-content
:
space-between
;
...
@@ -263,8 +277,8 @@
...
@@ -263,8 +277,8 @@
.infoBox{
.infoBox{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
im
g
{
im
age
{
width
:
52
rpx
;
width
:
52
rpx
!important
;
height
:
52
rpx
;
height
:
52
rpx
;
}
}
}
}
...
...
util/interceptor.ts
View file @
1c63d3fb
import
api
from
"../api/api"
;
// import {baseURL,apiURL,cffpURL} from "../environments/environment";
// import {baseURL,apiURL,cffpURL} from "../environments/environment";
// 白名单,不需要携带token就允许被访问的接口
// 白名单,不需要携带token就允许被访问的接口
const
whiteApiList
=
[
`/api/authorize/obtainToken`
,
`/api/authorize/checkToken`
]
const
whiteApiList
=
[
`/api/authorize/obtainToken`
,
`/api/authorize/checkToken`
];
export
const
interceptor
=
()
=>
{
export
const
interceptor
=
()
=>
{
uni
.
addInterceptor
(
'request'
,
{
uni
.
addInterceptor
(
'request'
,
{
...
@@ -14,50 +11,45 @@ export const interceptor = () => {
...
@@ -14,50 +11,45 @@ export const interceptor = () => {
// 加载loading
// 加载loading
uni
.
showLoading
({
uni
.
showLoading
({
title
:
'加载中...'
title
:
'加载中...'
})
});
// 当本地没有token,并且接口地址没在白名单内,需要重新获取token
// 当本地没有token,并且接口地址没在白名单内,需要重新获取token
if
(
!
uni
.
getStorageSync
(
'uni-token'
)
&&
!
whiteApiList
.
includes
(
args
.
url
))
{
if
(
!
uni
.
getStorageSync
(
'uni-token'
)
&&
!
whiteApiList
.
includes
(
args
.
url
))
{
console
.
log
(
'-----------'
)
uni
.
request
({
return
new
Promise
((
resolve
,
reject
)
=>
{
url
:
'https://mdev.zuihuibi.cn/api/authorize/obtainToken'
,
uni
.
request
({
method
:
'POST'
,
url
:
'/api/authorize/obtainToken'
,
data
:{
ticket
:
'uni-app'
},
method
:
'POST'
,
success
:
(
res
)
=>
{
data
:{
ticket
:
'uni-app'
},
if
(
res
.
statusCode
===
200
){
success
:
(
res
)
=>
{
uni
.
setStorageSync
(
'uni-token'
,
res
.
data
[
'data'
][
'token'
]);
if
(
res
.
statusCode
===
200
){
window
.
location
.
href
=
window
.
location
.
href
+
'?'
+
't_reload='
+
new
Date
().
getTime
();
uni
.
setStorageSync
(
'uni-token'
,
res
.
data
[
'data'
][
'token'
]);
}
window
.
location
.
href
=
window
.
location
.
href
+
'?'
+
't_reload='
+
new
Date
().
getTime
();
// console.log(res)
}
}
// console.log(res)
})
},
fail
(
err
)
{
uni
.
hideLoading
();
reject
(
err
);
},
})
uni
.
hideLoading
()
return
false
})
}
}
// request 触发前拼接 url
// request 触发前拼接 url
//设置请求头及token
//设置请求头及token
args
.
header
=
{
args
.
header
=
{
'content-type'
:
args
.
method
===
'POST'
?
'application/json'
:
'application/x-www-form-urlencoded'
,
'content-type'
:
args
.
method
===
'POST'
?
'application/json'
:
'application/x-www-form-urlencoded'
,
'X-Authorization'
:
uni
.
getStorageSync
(
'uni-token'
)
'X-Authorization'
:
uni
.
getStorageSync
(
'uni-token'
)
?
uni
.
getStorageSync
(
'uni-token'
)
:
''
}
}
// console.log(args.header)
// console.log(args.header)
},
},
// 响应拦截器,可以对数据进行预处理
// 响应拦截器,可以对数据进行预处理
success
(
args
)
{
success
()
{
uni
.
hideLoading
()
uni
.
hideLoading
()
// console.log(args);
// console.log(args);
},
},
fail
(
err
)
{
fail
()
{
// console.log('interceptor-fail', err)
// console.log('interceptor-fail', err)
// console.log('请求失败')
// console.log('请求失败')
uni
.
hideLoading
()
uni
.
hideLoading
()
},
},
complete
(
res
)
{
complete
()
{
uni
.
hideLoading
()
uni
.
hideLoading
()
}
}
})
})
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment