Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
T
thinkApp
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
游洁
thinkApp
Commits
696bbd93
Commit
696bbd93
authored
May 27, 2022
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
页面修改
parent
7caa1d8c
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
438 additions
and
367 deletions
+438
-367
JobComponents.vue
src/components/index/JobComponents.vue
+243
-212
commentsComponents.vue
src/components/index/commentsComponents.vue
+129
-122
course-card.vue
src/components/index/course-card.vue
+5
-3
index.vue
src/pages/index/index.vue
+61
-30
No files found.
src/components/index/JobComponents.vue
View file @
696bbd93
This diff is collapsed.
Click to expand it.
src/components/index/commentsComponents.vue
View file @
696bbd93
<
template
>
<view
class=
"CommentsComponents-box"
>
<view
class=
"CommentsComponents activeOne flex"
>
<view
class=
"CommentsComponents-time-box flex"
>
<view
class=
"CommentsComponents-time"
>
<view>
05/25 17:13
</view>
</view>
<view
class=
"CommentsComponents-line"
>
<view
class=
"CommentsComponents-point"
></view>
</view>
</view>
<view
class=
"CommentsComponents-center-box"
>
<view
class=
"CommentsComponents-center-line"
></view>
<view
class=
"CommentsComponents-center flex"
>
<view
class=
"CommentsComponents-left flex"
>
<van-image
width=
"38rpx"
height=
"38rpx"
fit=
"cover"
class=
"operation-img"
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1653464014000_713.png"
/>
<view
class=
"operation-name"
>
周老师的评语
</view>
</view>
<view
class=
"CommentsComponents-right"
>
你是个做事小心翼翼,感情细腻丰富的女孩
,每次看你认真的样子老师都很感动。你也是幸运的,周
边有很多人都在关爱着你,所以,对他们,尤其是父母,记得不要
太莽撞,不要太任性,要学着体谅,学着换位思考
,学着懂事。另外,今后要多运动、多锻炼,有健康才能成就美好未来!
</view>
</view>
</view>
</view>
<view
class=
"CommentsComponents-time-box flex"
>
<view
class=
"CommentsComponents-time"
>
<view>
{{
jobData
.
CreateTime
}}
</view>
</view>
<view
class=
"CommentsComponents-line"
>
<view
class=
"CommentsComponents-point"
></view>
</view>
</view>
<view
class=
"CommentsComponents-center-box"
>
<view
class=
"CommentsComponents-center-line"
></view>
<view
class=
"CommentsComponents-center flex"
>
<view
class=
"CommentsComponents-left flex"
>
<van-image
width=
"38rpx"
height=
"38rpx"
fit=
"cover"
class=
"operation-img"
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1653464014000_713.png"
/>
<view
class=
"operation-name"
>
{{
jobData
.
Title
}}
</view>
</view>
<view
class=
"CommentsComponents-right"
>
{{
jobData
.
DataObj
.
Comment
}}
</view>
</view>
</view>
</view>
</view>
</
template
>
<
script
>
...
...
@@ -40,12 +34,9 @@
}
from
"vue"
;
export
default
{
props
:
{
},
props
:
[
"jobData"
],
components
:
{},
setup
()
{
let
data
=
reactive
({
obj
:
{
Name
:
''
,
...
...
@@ -61,95 +52,111 @@
};
</
script
>
<
style
scoped
>
.CommentsComponents-right
{
color
:
#FFFFFF
;
font-size
:
20
rpx
;
line-height
:
35
rpx
;
letter-spacing
:
1
rpx
;
}
.CommentsComponents.activeThree
.operation-name
{
color
:
#282828
;
}
.CommentsComponents.activeTwo
.operation-name
{
color
:
#282828
;
}
.CommentsComponents.activeOne
.operation-name
{
color
:
#FFFFFF
;
}
.operation-name
{
font-size
:
26
rpx
;
letter-spacing
:
1px
;
font-weight
:
500
;
flex-grow
:
1
;
}
.operation-img
{
margin-right
:
12
rpx
;
border-radius
:
50%
;
flex-shrink
:
0
;
}
.CommentsComponents-left
{
flex
:
1
;
flex-grow
:
1
;
margin-top
:
-5
rpx
;
margin-bottom
:
10
rpx
;
}
.CommentsComponents-center
{
flex-direction
:
column
;
}
.CommentsComponents-center-line
{
width
:
4
rpx
;
height
:
23
rpx
;
background
:
#FEFEFE
;
position
:
absolute
;
left
:
0
;
top
:
33
rpx
;
}
.CommentsComponents.activeOne
.CommentsComponents-center-box
{
background
:
#52C1CA
;
}
.CommentsComponents-center-box
{
flex-grow
:
1
;
position
:
relative
;
border-radius
:
30
rpx
;
padding
:
31
rpx
18
rpx
21
rpx
24
rpx
;
margin-bottom
:
50
rpx
;
}
.CommentsComponents.activeOne
.CommentsComponents-point
{
background
:
#1E7BF5
;
box-shadow
:
0px
0px
12px
0px
rgba
(
30
,
123
,
245
,
0.46
);
}
.CommentsComponents-point
{
width
:
19
rpx
;
height
:
19
rpx
;
position
:
absolute
;
top
:
20
rpx
;
left
:
-13
rpx
;
border-radius
:
50%
;
border
:
3px
solid
#FFFFFF
;
box-shadow
:
0px
0px
12px
0px
rgba
(
255
,
255
,
255
,
0.46
);
}
.CommentsComponents-line
{
width
:
4
rpx
;
height
:
100%
;
background
:
#F1F1F1
;
margin-left
:
46
rpx
;
margin-right
:
46
rpx
;
position
:
relative
;
}
.CommentsComponents-time
{
width
:
61
rpx
;
height
:
55
rpx
;
color
:
#CCC8C6
;
font-size
:
20
rpx
;
border-radius
:
20
rpx
;
padding
:
14
rpx
13
rpx
;
background
:
#F6F6F6
;
}
.CommentsComponents
{
justify-content
:
space-between
;
padding
:
0
50
rpx
;
}
.CommentsComponents-box
{
background
:
#FFFFFF
;
}
.CommentsComponents-right
{
color
:
#FFFFFF
;
font-size
:
20
rpx
;
line-height
:
35
rpx
;
letter-spacing
:
1
rpx
;
}
.CommentsComponents.activeThree
.operation-name
{
color
:
#282828
;
}
.CommentsComponents.activeTwo
.operation-name
{
color
:
#282828
;
}
.CommentsComponents.activeOne
.operation-name
{
color
:
#FFFFFF
;
}
.operation-name
{
font-size
:
26
rpx
;
letter-spacing
:
1px
;
font-weight
:
500
;
flex-grow
:
1
;
}
.operation-img
{
margin-right
:
12
rpx
;
border-radius
:
50%
;
flex-shrink
:
0
;
}
.CommentsComponents-left
{
flex
:
1
;
flex-grow
:
1
;
margin-top
:
-5
rpx
;
margin-bottom
:
10
rpx
;
}
.CommentsComponents-center
{
flex-direction
:
column
;
}
.CommentsComponents-center-line
{
width
:
4
rpx
;
height
:
23
rpx
;
background
:
#FEFEFE
;
position
:
absolute
;
left
:
0
;
top
:
33
rpx
;
}
.CommentsComponents.activeOne
.CommentsComponents-center-box
{
background
:
#52C1CA
;
}
.CommentsComponents-center-box
{
flex-grow
:
1
;
position
:
relative
;
border-radius
:
30
rpx
;
padding
:
31
rpx
18
rpx
21
rpx
24
rpx
;
margin-bottom
:
50
rpx
;
}
.CommentsComponents.activeOne
.CommentsComponents-point
{
background
:
#1E7BF5
;
box-shadow
:
0px
0px
12px
0px
rgba
(
30
,
123
,
245
,
0.46
);
}
.CommentsComponents-point
{
width
:
19
rpx
;
height
:
19
rpx
;
position
:
absolute
;
top
:
20
rpx
;
left
:
-13
rpx
;
border-radius
:
50%
;
border
:
3px
solid
#FFFFFF
;
box-shadow
:
0px
0px
12px
0px
rgba
(
255
,
255
,
255
,
0.46
);
}
.CommentsComponents-line
{
width
:
4
rpx
;
height
:
100%
;
background
:
#F1F1F1
;
margin-left
:
46
rpx
;
margin-right
:
46
rpx
;
position
:
relative
;
}
.CommentsComponents-time
{
width
:
61
rpx
;
height
:
55
rpx
;
color
:
#CCC8C6
;
font-size
:
20
rpx
;
border-radius
:
20
rpx
;
padding
:
14
rpx
13
rpx
;
background
:
#F6F6F6
;
}
.CommentsComponents
{
justify-content
:
space-between
;
padding
:
0
50
rpx
;
}
.CommentsComponents-box
{
background
:
#FFFFFF
;
}
</
style
>
src/components/index/course-card.vue
View file @
696bbd93
...
...
@@ -49,7 +49,7 @@
上课进度
{{
item
.
CompleteNum
}}
/
{{
item
.
TotalClassNum
}}
</view>
<view
style=
"text-align: right;"
>
<van-button
@
click=
"hideExchangeBoxHandler"
color=
"#C91727"
round
size=
"mini"
custom-style=
"color:#FFF;font-size: 24rpx;padding-left:16rpx;padding-right:10px;"
>
<van-button
@
click=
"hideExchangeBoxHandler
(item)
"
color=
"#C91727"
round
size=
"mini"
custom-style=
"color:#FFF;font-size: 24rpx;padding-left:16rpx;padding-right:10px;"
>
选择课程
</van-button>
</view>
...
...
@@ -80,13 +80,15 @@
setup
(
props
,
context
)
{
let
data
=
reactive
({
statusBarHeight
:
24
,
showItems
:
false
showItems
:
false
,
});
let
methods
=
{
exchangeItemHandler
()
{
data
.
showItems
=
true
},
hideExchangeBoxHandler
()
{
hideExchangeBoxHandler
(
item
)
{
this
.
$parent
.
getStuHomeWorkAndExam
(
item
.
courseId
);
data
.
showItems
=
false
}
}
...
...
src/pages/index/index.vue
View file @
696bbd93
...
...
@@ -3,12 +3,11 @@
<navbar
class=
"navbarSticky"
bg=
"#F6F6F6"
>
<view
class=
"index-header-box"
>
<view
class=
"index-header-img"
>
<van-image
width=
"100%"
height=
"100%"
fit=
"cover"
class=
"img"
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1653464014000_713.png"
/>
<van-image
width=
"100%"
height=
"100%"
fit=
"cover"
class=
"img"
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1653464014000_713.png"
/>
</view>
<view
class=
"index-header-tetx"
>
<view
class=
"index-header-title"
>
welcome
welcome
</view>
<view
class=
"index-header-name"
>
{{
userData
.
AccountName
}}
</view>
</view>
...
...
@@ -23,12 +22,15 @@
<course-card
:stuCourseList=
"stuCourseList"
></course-card>
<view
class=
"index-student-title flex"
>
<text>
考情详情
</text>
<view>
(共
53
条)
</view>
<view>
(共
{{
workList
!=
null
&&
workList
.
length
>
0
?
workList
.
length
:
0
}}
条)
</view>
</view>
<view
class=
"index-student-information"
>
<JobComponents></JobComponents>
<examComponents></examComponents>
<commentsComponents></commentsComponents>
<template
v-for=
"(item,index) in workList"
>
<JobComponents
v-if=
"item.ResultType==1"
:jobData=
"item"
></JobComponents>
<examComponents
v-if=
"item.ResultType==2"
>
>
</examComponents>
<commentsComponents
v-if=
"item.ResultType==3"
:jobData=
"item"
></commentsComponents>
</
template
>
</view>
</view>
</template>
...
...
@@ -51,9 +53,9 @@
nextTick
,
}
from
"vue"
;
import
{
getSweepCode
}
from
'../../api/index.js'
import
{
getSweepCode
}
from
'../../api/index.js'
import
{
getImageColor
}
from
'../../utils/index.js'
...
...
@@ -75,8 +77,13 @@
proxy
}
=
getCurrentInstance
();
let
data
=
reactive
({
stuCourseList
:
[],
//学员课程列表
userData
:
{},
//用户信息
stuCourseList
:
[],
//学员课程列表
userData
:
{},
//用户信息
//学员作业和考试查询参数
workMsg
:
{
courseId
:
0
,
},
workList
:
[],
//学员作业、考试、评语数据
});
let
methods
=
{
...
...
@@ -90,7 +97,7 @@
url
:
'/pages/timetable/timeTable'
,
})
},
base64_decode
(
data
)
{
var
b64
=
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
;
var
o1
,
...
...
@@ -130,11 +137,24 @@
return
dec
;
},
//获取学员课程列表
//获取学员课程列表
getStuCourse
()
{
proxy
.
$request
(
"/Stu/GetStuCourse"
,
{}).
then
(
res
=>
{
data
.
stuCourseList
=
res
.
Data
;
//console.log("data.stuCourseList",this.stuCourseList)
let
tempArray
=
res
.
Data
;
data
.
stuCourseList
=
tempArray
;
if
(
tempArray
&&
tempArray
.
length
>
0
)
{
this
.
getStuHomeWorkAndExam
(
tempArray
[
0
].
courseId
)
}
})
},
//获取学员作业、考试、评语
getStuHomeWorkAndExam
(
courseId
)
{
console
.
log
(
"courseId"
,
courseId
)
this
.
workMsg
.
courseId
=
courseId
;
data
.
workList
=
[];
proxy
.
$request
(
"/Stu/GetStuWork"
,
this
.
workMsg
).
then
(
res
=>
{
console
.
log
(
"res.Data"
,
res
.
Data
)
data
.
workList
=
res
.
Data
;
})
},
async
getColor
(
src
,
index
,
y
)
{
...
...
@@ -179,35 +199,41 @@
</
script
>
<
style
scoped
>
.index-student-title
view
{
.index-student-title
view
{
font-size
:
25
rpx
;
color
:
#ABABAB
;
margin-left
:
20
rpx
;
padding
:
13
rpx
0
0
0
;
}
.index-student-title
text
{
.index-student-title
text
{
font-size
:
36
rpx
;
font-weight
:
800
;
color
:
#282828
;
}
.index-student-title
{
.index-student-title
{
padding
:
0
50
rpx
45
rpx
;
}
.index-student-information
{
.index-student-information
{
min-height
:
500
rpx
;
background
:
rgba
(
255
,
255
,
255
,
.7
);
background
:
rgba
(
255
,
255
,
255
,
.7
);
border-radius
:
50
rpx
50
rpx
0
0
;
padding
:
71
rpx
0
0
0
;
}
.index-header-name
{
.index-header-name
{
font-size
:
30
rpx
;
color
:
#474747
;
}
.index-header-tetx
{
.index-header-tetx
{
color
:
#D0D0D0
;
font-size
:
24
rpx
;
}
.index-header-img
.img
{
.index-header-img
.img
{
display
:
block
;
border
:
2
rpx
solid
rgba
(
164
,
164
,
164
,
0.32
);
border-radius
:
50%
;
...
...
@@ -217,7 +243,8 @@
box-sizing
:
border-box
;
margin
:
4
rpx
;
}
.index-header-img
{
.index-header-img
{
width
:
68
rpx
;
height
:
68
rpx
;
border-radius
:
50%
;
...
...
@@ -226,6 +253,7 @@
margin-right
:
20
rpx
;
background
:
#FFFFFF
;
}
.indexpage
{
min-height
:
100vh
;
background-color
:
#f6f6f6
;
...
...
@@ -235,26 +263,29 @@
background-repeat
:
no-repeat
;
background-size
:
100%
auto
;
}
.index-header-box
{
.index-header-box
{
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
padding
:
0
rpx
42
rpx
;
padding
:
0
rpx
42
rpx
;
}
.index-header-box
.index-header-title
{
.index-header-box
.index-header-title
{
font-size
:
24
rpx
;
font-weight
:
400
;
color
:
#B8B8B8
;
}
.index-header-box
.index-header-name
{
.index-header-box
.index-header-name
{
font-size
:
30
rpx
;
font-weight
:
800
;
color
:
#282828
;
}
.navbarSticky
{
display
:
sticky
;
top
:
0
;
z-index
:
9
;
}
</
style
>
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