Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
educationStu
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
向伟
educationStu
Commits
ce6bf80c
Commit
ce6bf80c
authored
Jan 07, 2022
by
Mac
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/xiangwei/educationstu
parents
ba84084d
b9034663
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
299 additions
and
18 deletions
+299
-18
bottom.vue
src/components/bottom.vue
+18
-0
navbar.vue
src/components/navbar.vue
+36
-0
pages.json
src/pages.json
+2
-1
index.vue
src/pages/index/index.vue
+25
-5
person.vue
src/pages/person/person.vue
+210
-12
common.css
src/static/css/common.css
+8
-0
bottomlogo.png
src/static/image/bottomlogo.png
+0
-0
order3.png
src/static/image/person/order3.png
+0
-0
No files found.
src/components/bottom.vue
0 → 100644
View file @
ce6bf80c
<
template
>
<view
class=
"bottom"
>
<image
src=
"../static/image/bottomlogo.png"
mode=
""
class=
"img"
/>
</view>
</
template
>
<
style
scoped
>
.bottom
{
width
:
100vw
;
height
:
130
rpx
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
}
.img
{
width
:
165
rpx
;
height
:
55
rpx
;
}
</
style
>
src/components/navbar.vue
0 → 100644
View file @
ce6bf80c
<
template
>
<view
class=
"navbar"
:style=
"
{'padding-top':`${statusBarHeight}px`}">
<slot></slot>
</view>
</
template
>
<
script
>
import
{
ref
,
reactive
,
toRefs
,
toRef
,
getCurrentInstance
,
watch
,
computed
,
onMounted
,
}
from
"vue"
;
export
default
{
setup
()
{
let
data
=
reactive
({
statusBarHeight
:
24
});
const
os
=
uni
.
getSystemInfoSync
();
data
.
statusBarHeight
=
os
.
statusBarHeight
return
{
...
toRefs
(
data
),
};
},
};
</
script
>
<
style
scoped
>
.navbar
{
height
:
100
rpx
;
}
</
style
>
src/pages.json
View file @
ce6bf80c
...
...
@@ -30,7 +30,8 @@
"path"
:
"pages/person/person"
,
"style"
:{
"navigationBarTitleText"
:
"个人中心"
,
"backgroundColor"
:
"#f5f5f5"
"backgroundColor"
:
"#f5f5f5"
,
"navigationBarBackgroundColor"
:
"#f5f5f5"
}
}],
"subPackages"
:
[{
...
...
src/pages/index/index.vue
View file @
ce6bf80c
<
template
>
<view
class=
"page-box"
>
<van-nav-bar
:border=
"fasle"
fixed
:z-index=
"99"
>
<
!--
<
van-nav-bar
:border=
"fasle"
fixed
:z-index=
"99"
>
<view
slot=
"left"
class=
"page-title"
title=
"shouye"
>
首页
</view>
</van-nav-bar>
<view
class=
"con"
:style=
"
{ 'padding-top': `${statusBarHeight}px` }">
<view
style=
"height: 100rpx"
></view>
</van-nav-bar>
-->
<navbar>
<view
class=
"navbar-con"
>
<view
class=
"pagetitle"
>
首页
</view>
</view>
</navbar>
<view
class=
"con"
>
<view
class=
"personInfo flex flex_start_center"
>
<van-image
round
...
...
@@ -308,9 +314,11 @@ import { getIndexInfo } from "../../api/index";
import
{
getActivityList
}
from
"../../api/activity"
;
import
{
desensitization
}
from
"../../utils/index"
;
import
indexassembly
from
'./components/indexassembly.vue'
import
navbar
from
'../../components/navbar.vue'
export
default
{
components
:
{
indexassembly
,
navbar
,
},
setup
(
props
)
{
let
{
proxy
}
=
getCurrentInstance
();
...
...
@@ -527,9 +535,21 @@ export default {
</
script
>
<
style
scoped
>
.navbar-con
{
height
:
100%
;
box-sizing
:
border-box
;
padding
:
0
30
rpx
;
display
:
flex
;
align-items
:
center
;
}
.pagetitle
{
font-size
:
46
rpx
;
font-weight
:
800
;
color
:
#111111
;
}
.con
{
box-sizing
:
border-box
;
padding
:
100
rpx
30
rpx
50
rpx
;
/* padding: 0rpx 30rpx 50rpx; */
}
.page-title
{
...
...
src/pages/person/person.vue
View file @
ce6bf80c
...
...
@@ -12,7 +12,8 @@
:src=
"pageData.StuIcon"
mode=
"aspectFill"
style=
"width:100%;height:100%;border-radius: 50%;"
></image>
>
</image>
</view>
</view>
<view
class=
"orderInfo flex_between_center"
>
...
...
@@ -23,8 +24,8 @@
src=
"../../static/image/person/order1.png"
mode=
"aspectFill"
class=
"orderIcon"
></image
>
</view>
></image
>
</view>
<view
class=
"orderName"
>
语培订单
</view>
...
...
@@ -36,8 +37,8 @@
src=
"../../static/image/person/order2.png"
mode=
"aspectFill"
class=
"orderIcon"
></image
>
</view>
></image
>
</view>
<view
class=
"orderName"
>
留学订单
</view>
...
...
@@ -46,11 +47,11 @@
<view
class=
" flex_between_center"
style=
"width:100%"
>
<view
class=
"orderNum"
>
{{
pageData
.
ContractNum
}}
</view>
<image
src=
"../../static/image/person/order
1
.png"
src=
"../../static/image/person/order
3
.png"
mode=
"aspectFill"
class=
"orderIcon"
></image
>
</view>
></image
>
</view>
<view
class=
"orderName"
>
合同信息
</view>
...
...
@@ -89,10 +90,67 @@
</view>
</view>
<view
class=
"courseBox"
>
<view
class=
"left"
></view>
<view
class=
"right"
>
</view>
<view
class=
"left"
>
<image
:src=
"pageData.CourseInfo.B2BIcon"
mode=
"aspectFill"
style=
"width:100%;height:100%;border-radius: 30rpx;"
></image>
</view>
<view
class=
"right"
>
<view
class=
"className one_line"
>
{{
pageData
.
CourseInfo
.
CourseName
}}
</view>
<view
class=
"Grade"
style=
"margin-bottom:20rpx"
>
{{
pageData
.
CourseInfo
.
ClassName
}}
</view>
<view
class=
"Grade"
>
等级:
{{
pageData
.
CourseInfo
.
CourseRate
}}
</view>
<view
><text
class=
"Grade"
>
状态:
</text>
<text
class=
"StatusName"
>
{{
pageData
.
CourseInfo
.
ClassStatusName
}}
</text>
</view>
</view>
</view>
</view>
<view
class=
"serve"
>
<view
class=
"serveSubTitle"
>
随时电话联系哟
</view>
<view
class=
"serveTitle"
>
服务人员信息
</view>
<view
v-for=
"(item,index) in AssistList"
:key=
"index"
class=
"serviceItem"
>
<view
class=
"headimg"
>
<image
:src=
"item.UserIcon"
mode=
"aspectFill"
style=
"width:100%;height:100%;border-radius: 24rpx;"
v-if=
"item.UserIcon"
/>
<view
class=
"flex_center_center"
style=
"width:100%;height:100%;border-radius: 24rpx;font-size: 46rpx;font-weight: bold;color: #FFFFFF;background-color: #4c50e7;"
v-else
>
{{
item
.
EmployeeName
.
slice
(
0
,
1
)
}}
</view
>
</view>
<view
class=
"serviceInfo flex_between_center"
>
<view
class=
"flex_start_around"
style=
"width:380rpx;height:100%"
>
<view
class=
"flex_start_center"
style=
"height:32rpx"
>
<text
class=
"EmployeeName"
>
{{
item
.
EmployeeName
}}
</text
><text
class=
"AssistTypeName"
>
{{
item
.
AssistTypeName
}}
</text>
</view>
<view
class=
"Mobile"
>
{{
item
.
Mobile
}}
</view>
</view>
<view
style=
"width:60rpx;height:40rpx;"
@
click=
"callphone(item.Mobile)"
>
<image
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/educationStu/callphone.png"
mode=
"aspectFit"
style=
"width:100%;height:100%"
/>
</view>
</view>
</view>
</view>
<bottom
/>
</view>
</
template
>
...
...
@@ -108,11 +166,35 @@ import {
onMounted
,
inject
,
}
from
"vue"
;
import
bottom
from
"../../components/bottom"
;
export
default
{
components
:
{
bottom
,
},
setup
(
props
,
context
)
{
let
{
proxy
}
=
getCurrentInstance
();
let
data
=
reactive
({
pageData
:
{},
AssistList
:
[
{
AssistTypeName
:
"市场经理"
,
EmployeeName
:
"阿里粑粑"
,
UserIcon
:
""
,
Mobile
:
"18011251414"
,
},
{
AssistTypeName
:
"市场经理"
,
EmployeeName
:
"阿里粑粑"
,
UserIcon
:
""
,
Mobile
:
"18011251414"
,
},
{
AssistTypeName
:
"市场经理"
,
EmployeeName
:
"阿里粑粑"
,
UserIcon
:
""
,
Mobile
:
"18011251414"
,
},
],
});
const
methods
=
{
async
getData
()
{
...
...
@@ -121,6 +203,11 @@ export default {
console
.
log
(
431
,
data
.
pageData
);
});
},
callphone
(
num
)
{
uni
.
makePhoneCall
({
phoneNumber
:
num
,
});
},
};
onMounted
(()
=>
{
...
...
@@ -129,6 +216,7 @@ export default {
let
that
=
methods
;
return
{
...
toRefs
(
data
),
...
methods
};
},
};
...
...
@@ -136,7 +224,7 @@ export default {
<
style
scoped
>
.person
{
height
:
100vh
;
min-
height
:
100vh
;
background-color
:
#f5f5f5
;
}
...
...
@@ -188,38 +276,46 @@ export default {
flex-wrap
:
wrap
;
align-content
:
space-between
;
}
.orderItem
.orderNum
{
font-size
:
46
rpx
;
font-weight
:
800
;
font-style
:
italic
;
color
:
#111111
;
}
.orderItem
.orderIcon
{
width
:
65
rpx
;
height
:
65
rpx
;
background-color
:
#fff
;
}
.orderItem
.orderName
{
font-size
:
24
rpx
;
font-weight
:
500
;
color
:
#666666
;
}
.courseInfo
{
height
:
535
rpx
;
/* height: 535rpx; */
background-color
:
#ebebeb
;
padding
:
35
rpx
;
margin-bottom
:
50
rpx
;
}
.courseInfo
.title
{
font-size
:
28
rpx
;
font-weight
:
bold
;
color
:
#111111
;
margin-bottom
:
30
rpx
;
}
.statistic
{
/* height: 70rpx; */
display
:
flex
;
margin-bottom
:
50
rpx
;
}
.statisticItem
{
min-width
:
80
rpx
;
/* height: 70rpx; */
...
...
@@ -228,6 +324,7 @@ export default {
align-content
:
space-between
;
margin-right
:
100
rpx
;
}
.statisticItem
.time
{
width
:
100%
;
font-size
:
46
rpx
;
...
...
@@ -236,6 +333,7 @@ export default {
font-style
:
italic
;
color
:
#111111
;
}
.statisticItem
.unit
{
font-size
:
20
rpx
;
font-weight
:
500
;
...
...
@@ -243,19 +341,119 @@ export default {
font-style
:
normal
;
margin-left
:
10
rpx
;
}
.statisticName
{
font-size
:
20
rpx
;
font-weight
:
500
;
color
:
#666666
;
white-space
:
nowrap
;
}
.courseBox
{
display
:
flex
;
}
.courseBox
.left
{
width
:
215
rpx
;
height
:
275
rpx
;
background
:
#d5f3e9
;
border-radius
:
30
rpx
;
margin-right
:
40
rpx
;
}
.courseBox
.right
{
width
:
420
rpx
;
padding-top
:
25
rpx
;
}
.courseBox
.className
{
font-size
:
36
rpx
;
font-weight
:
bold
;
color
:
#111111
;
}
.courseBox
.Grade
{
font-size
:
22
rpx
;
font-weight
:
500
;
color
:
#666666
;
margin
:
10
rpx
0
;
}
.courseBox
.StatusName
{
/* height: 30rpx; */
line-height
:
30
rpx
;
font-size
:
22
rpx
;
font-weight
:
500
;
color
:
#333333
;
background-color
:
#5de3a6
;
box-sizing
:
border-box
;
border-radius
:
4
rpx
;
padding
:
5
rpx
10
rpx
;
}
.serve
{
padding
:
0
35
rpx
;
background-color
:
#f5f5f5
;
}
.serveTitle
{
font-size
:
46
rpx
;
font-weight
:
bold
;
color
:
#111111
;
}
.serveSubTitle
{
font-size
:
28
rpx
;
font-weight
:
500
;
color
:
#666666
;
margin-bottom
:
20
rpx
;
}
.serviceItem
{
box-sizing
:
border-box
;
width
:
680
rpx
;
height
:
185
rpx
;
background-color
:
#ffffff
;
border-radius
:
24
rpx
;
margin-top
:
30
rpx
;
display
:
flex
;
/* justify-content: space-between; */
align-items
:
center
;
padding
:
25
rpx
;
}
.serviceItem
.headimg
{
width
:
130
rpx
;
height
:
130
rpx
;
border-radius
:
24
rpx
;
margin-right
:
30
rpx
;
}
.serviceInfo
{
width
:
435
rpx
;
height
:
100%
;
}
.EmployeeName
{
font-size
:
34
rpx
;
font-weight
:
bold
;
color
:
#111111
;
}
.AssistTypeName
{
height
:
26
rpx
;
background-color
:
#fa9717
;
border-radius
:
6
rpx
;
font-size
:
20
rpx
;
font-weight
:
500
;
color
:
#ffffff
;
box-sizing
:
border-box
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
margin-left
:
15
rpx
;
padding
:
3
rpx
6
rpx
;
}
.Mobile
{
font-size
:
28
rpx
;
font-weight
:
500
;
color
:
#111111
;
}
</
style
>
src/static/css/common.css
View file @
ce6bf80c
...
...
@@ -12,6 +12,7 @@
}
.flex_center_center
{
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
flex-flow
:
column
wrap
...
...
@@ -35,6 +36,7 @@
}
.flex_start_center
{
display
:
flex
;
justify-content
:
flex-start
;
align-items
:
center
;
}
...
...
@@ -64,6 +66,12 @@
justify-content
:
flex-start
;
align-content
:
space-between
;
}
.flex_start_around
{
display
:
flex
;
flex-wrap
:
wrap
;
justify-content
:
flex-start
;
align-content
:
space-around
;
}
.flex_direction
{
flex-direction
:
column
;
...
...
src/static/image/bottomlogo.png
0 → 100644
View file @
ce6bf80c
7.2 KB
src/static/image/person/order3.png
0 → 100644
View file @
ce6bf80c
1.31 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