Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
self-support
Project
Project
Details
Activity
Releases
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
李俊赕
self-support
Commits
10cc678c
Commit
10cc678c
authored
May 09, 2021
by
林文清
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update:学习模块
parent
d22a0f28
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
188 additions
and
158 deletions
+188
-158
pages.json
src/pages.json
+6
-3
learn.vue
src/pages/index/learn.vue
+90
-92
news-details.vue
src/pages/learn/news-details.vue
+28
-40
section.vue
src/pages/learn/section.vue
+64
-23
jianbian@3x.png
src/static/photo/jianbian@3x.png
+0
-0
jianbian@3x_bak.png
src/static/photo/jianbian@3x_bak.png
+0
-0
No files found.
src/pages.json
View file @
10cc678c
...
...
@@ -26,7 +26,8 @@
"path"
:
"pages/index/learn"
,
"style"
:
{
"navigationBarTitleText"
:
"学习"
,
"navigationStyle"
:
"custom"
//隐藏系统导航栏
"navigationStyle"
:
"custom"
,
//隐藏系统导航栏
"disableScroll"
:
true
}
},
{
...
...
@@ -89,13 +90,15 @@
{
"path"
:
"news-details"
,
"style"
:
{
"navigationBarTitleText"
:
""
"navigationBarTitleText"
:
""
,
"navigationStyle"
:
"default"
}
},
{
"path"
:
"section"
,
"style"
:{
"navigationBarTitleText"
:
""
"navigationBarTitleText"
:
""
,
"navigationStyle"
:
"default"
}
},
{
...
...
src/pages/index/learn.vue
View file @
10cc678c
...
...
@@ -4,15 +4,13 @@
<text
class=
"title-view"
>
学习
</text>
</u-navbar>
<image
:src=
"bannerImage"
mode=
""
class=
"banner"
></image>
<view>
<u-tabs-swiper
bg-color=
"#F4F5F7"
inactive-color=
"#999999"
font-size=
"28"
ref=
"uTabs"
:list=
"tabs"
:current=
"current"
@
change=
"tabsChange"
:is-scroll=
"false"
swiperWidth=
"750"
></u-tabs-swiper>
</view>
<swiper
:current=
"swiperCurrent"
@
transition=
"transition"
@
animationfinish=
"animationfinish"
style=
"height: 100%;padding-top: 30rpx;"
>
<swiper
:current=
"swiperCurrent"
@
transition=
"transition"
@
animationfinish=
"animationfinish"
>
<swiper-item
class=
"swiper-item"
>
<scroll-view
scroll-y
style=
"height:796rpx;width:100%;"
@
scrolltolower=
"onreachBottom"
>
<scroll-view
scroll-y
style=
"height:796rpx;width:100%;"
>
<view
class=
"jf-currency-class"
>
<image
:src=
"jianBianImg"
mode=
""
class=
"current-img"
></image>
<view
class=
"class1"
style=
"position: relative;"
@
click=
"goToPrint"
>
<image
class=
"jf-img"
:src=
"rule.pic"
mode=
""
></image>
<view
class=
"right u-padding-top-10 u-padding-bottom-14 jf-right"
>
...
...
@@ -33,7 +31,7 @@
<view
class=
"news"
v-html=
"item.body"
>
<u-parse
:html=
"item.body"
></u-parse>
</view>
<u-line
color=
"#F4F5F7"
class=
"content-line"
/>
<u-line
color=
"#F4F5F7"
/>
<view
class=
"notice-bottom"
>
<view
class=
"notice-bottom-left"
>
{{
item
.
create_at
}}
</view>
<view
class=
"notice-bottom-right"
>
查看详情
</view>
...
...
@@ -44,13 +42,13 @@
</view>
</scroll-view>
</swiper-item>
<swiper-item
class=
"swiper-item"
>
<swiper-item
class=
"swiper-item"
style=
"margin-top: 20rpx;"
>
<scroll-view
scroll-y
style=
"height:100%;width:100%;"
>
<view
class=
"lean"
>
<view
class=
"top"
>
<view
class=
"title u-margin-top-10 u-margin-bottom-30"
>
通用课程
</view>
<view
class=
"learn-currency-class"
>
<view
class=
"learn-class1"
@
click=
goPlay(courselist[0])
>
<view
class=
"learn-class1"
@
click=
"goPlay(courselist[0])"
>
<image
class=
"learn-img"
:src=
"courselist[0].pic"
mode=
""
></image>
<image
class=
"bofang"
:src=
"bofang"
mode=
""
></image>
<view
class=
"learn-desc"
>
...
...
@@ -70,7 +68,7 @@
v-text="courselist[0].status">
</text>
</view>
</view>
<view
class=
"learn-class1 u-margin-left-30"
@
click=
goPlay(courselist[1])
>
<view
class=
"learn-class1 u-margin-left-30"
@
click=
"goPlay(courselist[1])"
>
<image
class=
"learn-img"
:src=
"courselist[1].pic"
mode=
""
></image>
<image
class=
"bofang"
:src=
"bofang"
mode=
""
></image>
<view
class=
"learn-desc"
>
...
...
@@ -93,7 +91,7 @@
</view>
<view
class=
"title u-margin-top-50 u-margin-bottom-30"
>
技能课程
</view>
<view
class=
"learn-currency-class u-margin-bottom-20"
>
<view
class=
"learn-class1"
@
click=
goPlay(courselist[2])
>
<view
class=
"learn-class1"
@
click=
"goPlay(courselist[2])"
>
<image
class=
"learn-img"
:src=
"courselist[2].pic"
mode=
""
></image>
<image
class=
"bofang"
:src=
"bofang"
mode=
""
></image>
<view
class=
"learn-desc"
>
...
...
@@ -104,7 +102,8 @@
{{
courselist
[
2
].
desc
}}
</view>
</view>
<view
class=
"line-percent u-margin-top-35"
style=
"display:flex;justify-content: space-between;"
>
<view
class=
"line-percent u-margin-top-35"
style=
"display:flex;justify-content: space-between;"
>
<u-line-progress
active-color=
"#2979ff"
:percent=
"courselist[2].percent"
:show-percent=
"false"
>
</u-line-progress>
...
...
@@ -119,7 +118,7 @@
</scroll-view>
</swiper-item>
<swiper-item>
<scroll-view
scroll-y
style=
"height:100%;width:100%;"
@
scrolltolower=
"onreachBottom"
>
<scroll-view
scroll-y
style=
"height:100%;width:100%;"
>
<view
class=
"lean"
>
<view
class=
"top"
>
<view
class=
"title u-margin-top-10 u-margin-bottom-30"
>
通用认证
</view>
...
...
@@ -191,8 +190,7 @@
<
script
>
import
util
from
'@/utils/util.js'
var
json
=
{
"dev"
:
[
{
"dev"
:
[{
"title"
:
"服务规范"
,
"desc"
:
"为用户提供更好服务,自己赚更多钱"
,
"percent"
:
0
,
...
...
@@ -217,8 +215,7 @@
"sectionId"
:
""
}
],
"test"
:
[
{
"test"
:
[{
"title"
:
"服务规范"
,
"desc"
:
"为用户提供更好服务,自己赚更多钱"
,
"percent"
:
0
,
...
...
@@ -243,8 +240,7 @@
"sectionId"
:
""
}
],
"prod"
:
[
{
"prod"
:
[{
"title"
:
"服务规范"
,
"desc"
:
"为用户提供更好服务,自己赚更多钱"
,
"percent"
:
0
,
...
...
@@ -269,8 +265,7 @@
}
var
examJson
=
{
"dev"
:
[
{
"dev"
:
[{
title
:
'服务规范'
,
desc
:
'通过本认证,是接单的必要条件'
,
condition
:
'随机20题,及格20题'
,
...
...
@@ -293,8 +288,7 @@
isComplete
:
false
}
],
"test"
:
[
{
"test"
:
[{
title
:
'服务规范'
,
desc
:
'通过本认证,是接单的必要条件'
,
condition
:
'随机10题,及格10题'
,
...
...
@@ -317,8 +311,7 @@
isComplete
:
false
}
],
"prod"
:
[
{
"prod"
:
[{
title
:
'服务规范'
,
desc
:
'通过本认证,是接单的必要条件'
,
condition
:
'随机20题,及格20题'
,
...
...
@@ -344,7 +337,7 @@
}
// import aJson from "@/static/json/learn.json";
let
env
=
process
.
uniEnv
.
node_env
;
let
courseListJson
=
json
.[
env
];
let
courseListJson
=
json
.
[
env
];
let
examListJson
=
examJson
[
env
];
export
default
{
...
...
@@ -440,17 +433,19 @@
loadStatus
:
"loading"
,
//加载样式:loadMore-加载前样式,loading-加载加载中样式,nomore-没有数据样式
isLoadMore
:
false
,
//是否加载中
exam
:
null
,
jianBianImg
:
process
.
uniEnv
.
qn_base_url
+
"jianbian@3x_bak1.png"
};
},
onLoad
(
param
)
{
// debugger
console
.
log
(
'--node_env--'
);
console
.
log
(
process
.
uniEnv
.
node_env
);
try
{
if
(
param
.
tabs
)
{
try
{
if
(
param
.
tabs
)
{
this
.
current
=
param
.
tabs
;
this
.
swiperCurrent
=
param
.
tabs
;
}
}
catch
(
e
)
{}
}
catch
(
e
)
{}
// this.getList();
// this.getCourseList();
// this.getUserExamInfo();
...
...
@@ -461,6 +456,7 @@
},
},
onShow
:
function
()
{
// debugger
// this.onLoad();
console
.
log
(
'--返回也可以执行--'
);
},
...
...
@@ -473,8 +469,9 @@
if
(
res
.
code
==
200
)
{
if
(
res
.
data
)
{
let
length
=
res
.
data
.
length
;
for
(
let
i
=
0
;
i
<
length
;
i
++
){
res
.
data
[
i
].
create_at
=
this
.
timeFormat
(
res
.
data
[
i
].
create_at
,
'yyyy.MM.dd hh:mm'
);
for
(
let
i
=
0
;
i
<
length
;
i
++
)
{
res
.
data
[
i
].
create_at
=
this
.
timeFormat
(
res
.
data
[
i
].
create_at
,
'yyyy.MM.dd hh:mm'
);
}
this
.
list
=
this
.
list
.
concat
(
res
.
data
);
...
...
@@ -527,9 +524,9 @@
's+'
:
time
.
getSeconds
()
// 秒
}
for
(
let
i
in
fmt
)
{
if
(
new
RegExp
(
'('
+
i
+
')'
).
test
(
dataFmt
)){
dataFmt
=
dataFmt
.
replace
(
RegExp
.
$1
,
fmt
[
i
].
toString
().
length
<=
1
?
'0'
+
fmt
[
i
]
:
fmt
[
i
]
)
for
(
let
i
in
fmt
)
{
if
(
new
RegExp
(
'('
+
i
+
')'
).
test
(
dataFmt
))
{
dataFmt
=
dataFmt
.
replace
(
RegExp
.
$1
,
fmt
[
i
].
toString
().
length
<=
1
?
'0'
+
fmt
[
i
]
:
fmt
[
i
]
)
}
}
return
dataFmt
;
...
...
@@ -641,7 +638,7 @@
.
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
examList
[
i
].
examId
=
res
.
data
.
id
;
this
.
examList
[
i
].
examStatus
=
res
.
data
.
examStatus
;
//i;//
this
.
examList
[
i
].
examStatus
=
res
.
data
.
examStatus
;
//i;//
let
examResult
=
res
.
data
.
examLevelResult
;
this
.
examList
[
i
].
status
=
examResult
!=
''
?
examResult
:
'未通过'
;
// examStatus 用户考试状态 0考试中 1考试完成 2未参与
...
...
@@ -694,11 +691,11 @@
}
else
if
(
examInfo
.
examStatus
==
1
)
{
// debugger;return;
// examInfo.status = '通过';
if
(
examInfo
.
status
==
'通过'
)
{
if
(
examInfo
.
status
==
'通过'
)
{
wx
.
navigateTo
({
url
:
"/pages/learn/exam-pass?userExamId="
+
examInfo
.
examId
,
});
}
else
{
}
else
{
wx
.
navigateTo
({
url
:
"/pages/learn/result?userExamId="
+
examInfo
.
examId
+
"&examId="
+
examInfo
.
id
,
});
...
...
@@ -719,17 +716,14 @@
bbb
(
e
)
{
var
news
=
{
body
:
e
.
body
,
id
:
e
.
id
,
level
:
e
.
level
,
title
:
e
.
title
,
title
:
e
.
title
};
// console.log(news)
setTimeout
(()
=>
{
uni
.
$emit
(
"news"
,
news
);
console
.
log
(
"发送数据"
);
},
1000
);
uni
.
navigateTo
({
url
:
"/pages/learn/news-details"
,
wx
.
navigateTo
({
url
:
'/pages/learn/news-details'
,
success
:
function
(
res
)
{
// 通过eventChannel向被打开页面传送数据
res
.
eventChannel
.
emit
(
'acceptDataFromLearn'
,
news
)
}
});
console
.
log
(
"跳转结束11111111"
);
...
...
@@ -798,6 +792,7 @@
font-size
:
24
rpx
;
color
:
#666666
;
line-height
:
34
rpx
;
margin-bottom
:
20
rpx
;
}
/* //在线学习 */
...
...
@@ -819,10 +814,9 @@
.jf-currency-class
{
width
:
100%
;
height
:
180
rpx
;
background
:
#ffffff
;
position
:
absolute
;
border-radius
:
12
rpx
;
margin-top
:
60
rpx
;
background
:
#f4f5f7
url(/static/photo/jianbian@3x.png)
no-repeat
;
}
.title
{
...
...
@@ -955,10 +949,6 @@
color
:
#999999
;
}
.content-line
{
margin-top
:
30
rpx
;
}
.standard
{}
.standard-img
{
...
...
@@ -984,7 +974,7 @@
}
.notice-bottom
{
margin-top
:
3
0
rpx
;
margin-top
:
2
0
rpx
;
display
:
flex
;
}
...
...
@@ -1026,5 +1016,13 @@
//
height
:
68
rpx
;
}
.h48
{
height
:
48
rpx
;}
.h48
{
height
:
48
rpx
;
}
.current-img
{
width
:
100%
;
height
:
100%
;
position
:
absolute
;
}
</
style
>
src/pages/learn/news-details.vue
View file @
10cc678c
<
template
>
<view>
<view
class=
"title"
>
{{
newsInfo
.
title
}}
{{
title
}}
</view>
<view
class=
"u-content"
>
<u-parse
:html=
"newsInfo.
body"
:tag-style=
"style"
></u-parse>
<u-parse
:html=
"
body"
:tag-style=
"style"
></u-parse>
</view>
</view>
</
template
>
...
...
@@ -13,29 +13,17 @@
export
default
{
data
()
{
return
{
banner
:{},
obj
:{
},
newsInfo
:
{
title
:
''
,
body
:
''
}
}
},
methods
:
{
},
onLoad
()
{
},
onShow
(){
uni
.
$on
(
'news'
,(
news
)
=>
{
this
.
newsInfo
=
news
;
console
.
log
(
news
,
'news'
)
var
that
=
this
;
const
eventChannel
=
this
.
getOpenerEventChannel
()
eventChannel
.
on
(
'acceptDataFromLearn'
,
function
(
data
)
{
that
.
title
=
data
.
title
;
that
.
body
=
data
.
body
;
})
},
onLoad
()
{
this
.
$u
.
mpShare
.
path
=
''
},
}
...
...
@@ -48,7 +36,7 @@
margin-left
:
30
rpx
;
margin-top
:
30
rpx
;
}
.
content
{
.u-
content
{
font-size
:
24
rpx
;
line-height
:
36
rpx
;
color
:
#666666
;
...
...
src/pages/learn/section.vue
View file @
10cc678c
...
...
@@ -18,20 +18,25 @@
<view
class=
"learn-view"
v-if=
"courseId >= 0"
>
<view
class=
"learn-view-title color-teacher"
>
课程讲师
</view>
<view
class=
""
style=
"padding-top: 30rpx;display: flex;padding-left: 30rpx;"
>
<u-avatar
:style=
"
{'width':'100rpx', 'height':'100rpx'}" :src="teacherImage" mode="circle">
</u-avatar>
<u-avatar
:style=
"
{'width':'100rpx', 'height':'100rpx'}" :src="teacherImage" mode="circle">
</u-avatar>
<view
style=
"height:120rpx;font-size: 30rpx;padding-left:30rpx;"
>
<view
class=
""
style=
"display: flex;font-size: 32rpx;"
>
<view
class=
""
style=
"font-size: 32rpx;font-weight: bold;"
>
{{
teacher
.
name
}}
</view>
<view
class=
""
style=
"font-size: 24rpx;margin-left: 30rpx;margin-top: 6rpx;color: #999999;"
>
课程讲师
</view>
<view
class=
""
style=
"font-size: 24rpx;margin-left: 30rpx;margin-top: 6rpx;color: #999999;"
>
课程讲师
</view>
</view>
<view
class=
""
style=
"font-size: 24rpx;margin-top: 30rpx;"
>
{{
teacherIntro
}}
</view>
</view>
</view>
<view
class=
"learn-view-title"
>
目录
</view>
<view
class=
"
"
style=
"display: flex;overflow: auto;padding-top: 30rpx;padding-bottom: 30rpx;
"
>
<view
class=
"
catalogue
"
>
<view
v-for=
"(item, index) in list"
:key=
"index"
>
<view
@
click=
"goNext(item)"
class=
"list-cell list-default"
:class=
"
{'list-default-active': item.isActive}" style="width:280rpx;height:150rpx;margin-left: 20rpx;padding: 20rpx;border-radius: 12rpx;">
<view
@
click=
"goNext(item)"
class=
"list-cell list-default"
:class=
"
{'list-default-active': item.isActive}"
style="width:280rpx;height:150rpx;margin-left: 20rpx;padding: 20rpx;border-radius: 12rpx;">
<view
class=
""
style=
"font-size: 24rpx;"
>
{{
item
.
title
}}
</view>
<view
class=
""
style=
"font-size: 26rpx;margin-top: 16rpx;"
>
{{
item
.
intro
}}
...
...
@@ -70,13 +75,40 @@
section_id
:
0
,
active_section_id
:
0
,
isShowVideo
:
false
,
CourseSectionlist
:
{
name
:
''
,
content
:
''
},
//节信息
list
:
[
{
'title'
:
'第1节'
,
'intro'
:
'考核规则1:接单及 时率'
,
'isActive'
:
true
,
"id"
:
null
},
{
'title'
:
'第2节'
,
'intro'
:
'考核规则1:接单及 时率'
,
'isActive'
:
false
,
"id"
:
null
},
{
'title'
:
'第3节'
,
'intro'
:
'考核规则1:接单及 时率'
,
'isActive'
:
false
,
"id"
:
null
},
{
'title'
:
'第4节'
,
'intro'
:
'考核规则1:接单及 时率'
,
'isActive'
:
false
,
"id"
:
null
},
{
'title'
:
'第5节'
,
'intro'
:
'考核规则1:接单及 时率'
,
'isActive'
:
false
,
"id"
:
null
},
CourseSectionlist
:
{
name
:
''
,
content
:
''
},
//节信息
list
:
[{
'title'
:
'第1节'
,
'intro'
:
'考核规则1:接单及 时率'
,
'isActive'
:
true
,
"id"
:
null
},
{
'title'
:
'第2节'
,
'intro'
:
'考核规则1:接单及 时率'
,
'isActive'
:
false
,
"id"
:
null
},
{
'title'
:
'第3节'
,
'intro'
:
'考核规则1:接单及 时率'
,
'isActive'
:
false
,
"id"
:
null
},
{
'title'
:
'第4节'
,
'intro'
:
'考核规则1:接单及 时率'
,
'isActive'
:
false
,
"id"
:
null
},
{
'title'
:
'第5节'
,
'intro'
:
'考核规则1:接单及 时率'
,
'isActive'
:
false
,
"id"
:
null
},
],
teacher
:
{
name
:
""
,
...
...
@@ -100,8 +132,8 @@
fullscreenToggle
:
true
//全屏按钮
}
},
params
:{
course_id
:
null
,
params
:
{
course_id
:
null
,
},
gklog
:
''
,
videoTotalTime
:
0
,
...
...
@@ -154,7 +186,7 @@
// #endif
},
methods
:
{
goNext
(
info
){
goNext
(
info
)
{
uni
.
navigateTo
({
url
:
"./section?section_id="
+
info
.
id
+
"&course_id="
+
info
.
course_id
});
...
...
@@ -215,7 +247,7 @@
this
.
courseSrc
=
coureWareList
[
0
].
src
;
this
.
videoTotalTime
=
parseInt
(
JSON
.
parse
(
coureWareList
[
0
].
info
).
time
);
console
.
log
(
'视频时长信息:'
+
this
.
videoTotalTime
);
}
else
{
}
else
{
this
.
updateLearnedStatusForText
();
}
}
...
...
@@ -287,10 +319,11 @@
this
.
list
=
res
.
data
[
0
].
section
;
this
.
courseTotal
=
this
.
list
.
length
;
let
length
=
this
.
list
.
length
;
for
(
let
i
=
0
;
i
<
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
length
;
i
++
)
{
this
.
list
[
i
].
title
=
"第"
+
(
i
+
1
)
+
"节"
;
this
.
list
[
i
].
intro
=
this
.
list
[
i
].
name
;
this
.
list
[
i
].
isActive
=
this
.
active_section_id
==
this
.
list
[
i
].
id
?
true
:
false
;
this
.
list
[
i
].
isActive
=
this
.
active_section_id
==
this
.
list
[
i
].
id
?
true
:
false
;
}
console
.
log
(
'--select-list--'
)
console
.
log
(
this
.
list
)
...
...
@@ -461,4 +494,12 @@
.color-teacher
{
color
:
#999999
;
}
.catalogue
{
display
:
flex
;
overflow
:
auto
;
padding-top
:
30rpx
;
padding-bottom
:
30rpx
;
padding-right
:
30rpx
;
}
</
style
>
src/static/photo/jianbian@3x.png
View replaced file @
d22a0f28
View file @
10cc678c
7.64 KB
|
W:
|
H:
21.9 KB
|
W:
|
H:
2-up
Swipe
Onion skin
src/static/photo/jianbian@3x_bak.png
deleted
100644 → 0
View file @
d22a0f28
21.9 KB
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