Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
P
project-online-fi
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
EzijingWeb
project-online-fi
Commits
753b2757
提交
753b2757
authored
11月 22, 2022
作者:
matian
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
updates
上级
6cde4d3f
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
155 行增加
和
165 行删除
+155
-165
Confirm.vue
src/modules/pay/components/Confirm.vue
+2
-2
TeacherCard.vue
src/modules/shop/components/TeacherCard.vue
+148
-159
wxpay.js
src/utils/wxpay.js
+5
-4
没有找到文件。
src/modules/pay/components/Confirm.vue
浏览文件 @
753b2757
...
...
@@ -231,7 +231,7 @@ const handlePrev = () => {
/>
<div
class=
"radio_tit"
>
支付宝支付
</div>
<div
:class=
"payMode ===
'12'
? 'radio_check_active' : 'radio_check'"
:class=
"payMode ===
1
? 'radio_check_active' : 'radio_check'"
@
click=
"checkdChange('12')"
>
<template
v-if=
"currentCheck === '12'"
>
...
...
@@ -245,7 +245,7 @@ const handlePrev = () => {
/>
<div
class=
"radio_tit"
>
微信支付
</div>
<div
:class=
"payMode ===
'4'
? 'radio_check_active' : 'radio_check'"
:class=
"payMode ===
2
? 'radio_check_active' : 'radio_check'"
@
click=
"checkdChange('4')"
>
<
template
v-if=
"currentCheck === '4'"
>
...
...
src/modules/shop/components/TeacherCard.vue
浏览文件 @
753b2757
...
...
@@ -2,10 +2,11 @@
import
{
Swiper
,
SwiperSlide
}
from
'swiper/vue'
import
{
Grid
,
Navigation
}
from
'swiper'
import
{
useDevice
}
from
'@/composables/useDevice'
const
{
mobile
}
=
useDevice
()
import
'swiper/css'
import
'swiper/css/grid'
import
'swiper/css/navigation'
const
{
mobile
}
=
useDevice
()
defineProps
({
lecturerList
:
{
type
:
Array
...
...
@@ -20,28 +21,6 @@ function prev(swiper) {
function
next
(
swiper
)
{
swiper
?.
slideNext
()
}
const
list
=
[
{
avatar
:
'https://webapp-pub.ezijing.com/project_online/fi/teacher_01.png'
,
name
:
'张伟张伟张伟张伟张伟张伟张伟张伟张伟张伟张伟张伟'
,
title_list
:
[
'清华大学国家金融研究院副院长、副研究员'
]
},
{
avatar
:
'https://webapp-pub.ezijing.com/project_online/fi/teacher_02.png'
,
name
:
'高皓'
,
title_list
:
[
'清华大学五道口金融学院全球家族企业研究中心主任'
]
},
{
avatar
:
'https://webapp-pub.ezijing.com/project_online/fi/teacher_03.png'
,
name
:
'肇越'
,
title_list
:
[
'清华大学五道口金融学院硕士生导师首席经济学家'
]
},
{
avatar
:
'https://webapp-pub.ezijing.com/project_online/fi/teacher_04.png'
,
name
:
'陈秉正'
,
title_list
:
[
'清华大学经济管理学院金融系教授'
,
'中国保险与风险管理研究中心主任'
]
}
]
</
script
>
<
template
>
...
...
@@ -57,12 +36,19 @@ const list = [
:spaceBetween="20"
:slidePreview="1"
:modules="[Navigation, Grid]"
@swiper="
swiper
=> (swiper1 = swiper)"
@swiper="
(swiper)
=> (swiper1 = swiper)"
>
<SwiperSlide
v-for=
"(item, index) in lecturerList"
:key=
"index"
class=
"teacher-item"
>
<SwiperSlide
v-for=
"(item, index) in lecturerList"
:key=
"index"
class=
"teacher-item"
>
<div
class=
"item_top"
>
<img
:src=
"item.avatar || 'https://webapp-pub.ezijing.com/project_online/fi/teacher_04.png'"
:src=
"
item.avatar ||
'https://webapp-pub.ezijing.com/project_online/fi/teacher_04.png'
"
class=
"top_img"
/>
<div
class=
"top_name"
>
{{
item
.
name
}}
</div>
...
...
@@ -84,165 +70,169 @@ const list = [
</div>
</div>
</div>
<div
class=
"teacher_list"
v-else
>
<div
class=
"teacher_list"
v-else
>
<div
class=
"con_tit"
>
讲师介绍
</div>
<div
class=
"con_teacher"
>
<div
v-for=
"(item, index) in lecturerList"
:key=
"index"
class=
"teacher-item"
>
<div
class=
"item_top"
>
<img
:src=
"item.avatar || 'https://webapp-pub.ezijing.com/project_online/fi/teacher_04.png'"
class=
"top_img"
/>
<div
class=
"top_name"
>
{{ item.name }}
</div>
</div>
<ol
v-if=
"item.title_list?.length"
>
<li
v-for=
"it in item.title_list"
:key=
"it"
>
<p>
{{ it }}
</p>
</li>
</ol>
<div
class=
"con_teacher"
>
<div
v-for=
"(item, index) in lecturerList"
:key=
"index"
class=
"teacher-item"
>
<div
class=
"item_top"
>
<img
:src=
"
item.avatar ||
'https://webapp-pub.ezijing.com/project_online/fi/teacher_04.png'
"
class=
"top_img"
/>
<div
class=
"top_name"
>
{{ item.name }}
</div>
</div>
<ol
v-if=
"item.title_list?.length"
>
<li
v-for=
"it in item.title_list"
:key=
"it"
>
<p>
{{ it }}
</p>
</li>
</ol>
</div>
</div>
</div>
</template>
<
style
lang=
"scss"
scoped
>
.is-pc
{
.is-pc
{
.teacher_list
{
.list_con
{
width
:
396px
;
height
:
433px
;
background
:
#ffffff
;
box-shadow
:
0px
1px
18px
rgba
(
0
,
0
,
0
,
0
.1
);
border-radius
:
15px
;
border-top
:
6px
solid
#fde6c1
;
padding-top
:
27px
;
.teacher_list
{
.list_con
{
width
:
396px
;
height
:
433px
;
background
:
#ffffff
;
box-shadow
:
0px
1px
18px
rgba
(
0
,
0
,
0
,
0
.1
);
border-radius
:
15px
;
border-top
:
6px
solid
#fde6c1
;
padding-top
:
27px
;
.con_tit
{
font-size
:
18px
;
font-weight
:
500
;
line-height
:
34px
;
color
:
#333333
;
text-align
:
center
;
}
.con_line
{
width
:
31px
;
height
:
2px
;
background
:
#c1ab85
;
margin
:
9px
0
0
183px
;
}
.con_teacher
{
padding
:
0
33px
;
position
:
relative
;
.teacher-item
:nth-child
(
even
)
{
border-bottom
:
none
;
.con_tit
{
font-size
:
18px
;
font-weight
:
500
;
line-height
:
34px
;
color
:
#333333
;
text-align
:
center
;
}
.teacher-item
:last-child
{
border-bottom
:
none
;
.con_line
{
width
:
31px
;
height
:
2px
;
background
:
#c1ab85
;
margin
:
9px
0
0
183px
;
}
.teacher-item
{
padding
:
29px
27px
33px
0
;
border-bottom
:
1px
dashed
#d5d5d5
;
box-sizing
:
border-box
;
.item_top
{
display
:
flex
;
align-items
:
center
;
.top_img
{
width
:
60px
;
height
:
60px
;
}
.top_name
{
font-size
:
18px
;
font-weight
:
500
;
line-height
:
34px
;
color
:
#333333
;
margin-left
:
13px
;
}
.con_teacher
{
padding
:
0
33px
;
position
:
relative
;
.teacher-item
:nth-child
(
even
)
{
border-bottom
:
none
;
}
ol
{
margin-top
:
15px
;
li
{
list-style-type
:
disc
;
color
:
#c1ab85
!
important
;
margin-left
:
20px
;
p
{
font-size
:
14px
;
font-weight
:
400
;
line-height
:
22px
;
color
:
#666666
;
width
:
295px
;
white-space
:
wrap
;
.teacher-item
:last-child
{
border-bottom
:
none
;
}
.teacher-item
{
padding
:
29px
27px
33px
0
;
border-bottom
:
1px
dashed
#d5d5d5
;
box-sizing
:
border-box
;
.item_top
{
display
:
flex
;
align-items
:
center
;
.top_img
{
width
:
60px
;
height
:
60px
;
}
.top_name
{
font-size
:
18px
;
font-weight
:
500
;
line-height
:
34px
;
color
:
#333333
;
margin-left
:
13px
;
}
}
ol
{
margin-top
:
15px
;
li
{
list-style-type
:
disc
;
color
:
#c1ab85
!
important
;
margin-left
:
20px
;
p
{
font-size
:
14px
;
font-weight
:
400
;
line-height
:
22px
;
color
:
#666666
;
width
:
295px
;
white-space
:
wrap
;
}
}
}
}
}
}
}
}
.my-swiper
{
--swiper-navigation-size
:
14px
;
--swiper-navigation-color
:
#333333
;
position
:
relative
;
height
:
473px
;
.my-swiper
{
--swiper-navigation-size
:
14px
;
--swiper-navigation-color
:
#333333
;
position
:
relative
;
height
:
473px
;
:deep
(
.swiper-slide
)
{
height
:
33%
;
:deep
(
.swiper-slide
)
{
height
:
33%
;
}
}
.swiper-button-prev
{
left
:
5px
;
top
:
-6%
;
color
:
#333333
;
}
.swiper-button-next
{
right
:
5px
;
top
:
-6%
;
color
:
#333333
;
}
.swiper-button-next
:after
{
font-size
:
12px
;
}
.swiper-button-prev
:after
{
font-size
:
12px
;
}
}
.swiper-button-prev
{
left
:
5px
;
top
:
-6%
;
color
:
#333333
;
}
.swiper-button-next
{
right
:
5px
;
top
:
-6%
;
color
:
#333333
;
}
.swiper-button-next
:after
{
font-size
:
12px
;
}
.swiper-button-prev
:after
{
font-size
:
12px
;
}
}
.is-h5
{
.teacher_list
{
margin-top
:
0
.3rem
;
.is-h5
{
.teacher_list
{
margin-top
:
0
.3rem
;
.con_tit
{
font-size
:
0
.28rem
;
font-weight
:
500
;
line-height
:
34px
;
color
:
#333333
;
}
.con_teacher
{
overflow-x
:
auto
;
display
:
flex
;
.teacher-item
{
width
:
5
.49rem
;
background
:
#F4F8FB
;
padding
:
0
.27rem
0
.2rem
;
border-radius
:
0
.16rem
;
margin-right
:
0
.2rem
;
.item_top
{
display
:
flex
;
align-items
:
center
;
.top_img
{
width
:
0
.86rem
;
}
.top_name
{
font-size
:
0
.28rem
;
color
:
#333333
;
margin-left
:
0
.15rem
;
.con_teacher
{
overflow-x
:
auto
;
display
:
flex
;
.teacher-item
{
width
:
5
.49rem
;
background
:
#f4f8fb
;
padding
:
0
.27rem
0
.2rem
;
border-radius
:
0
.16rem
;
margin-right
:
0
.2rem
;
.item_top
{
display
:
flex
;
align-items
:
center
;
.top_img
{
width
:
0
.86rem
;
}
.top_name
{
font-size
:
0
.28rem
;
color
:
#333333
;
margin-left
:
0
.15rem
;
}
}
}
ol
{
ol
{
margin-top
:
0
.2rem
;
li
{
list-style-type
:
disc
;
...
...
@@ -257,9 +247,8 @@ const list = [
}
}
}
}
}
}
}
}
</
style
>
src/utils/wxpay.
t
s
→
src/utils/wxpay.
j
s
浏览文件 @
753b2757
...
...
@@ -14,11 +14,11 @@ import * as api from '@/api/base'
/**
* 获取微信openId
* */
export
function
getOpenId
(
code
:
any
,
callback
:
any
)
{
export
function
getOpenId
(
code
,
callback
)
{
if
(
!
code
)
{
return
getCode
()
}
api
.
getOpenId
({
code
,
identity
:
'ezijing'
}).
then
((
resp
:
any
)
=>
{
api
.
getOpenId
({
code
,
identity
:
'ezijing'
}).
then
((
resp
)
=>
{
const
openId
=
resp
.
data
.
openid
openId
&&
localStorage
.
setItem
(
'openId'
,
openId
)
callback
&&
callback
(
openId
)
...
...
@@ -28,13 +28,13 @@ import * as api from '@/api/base'
/**
* 微信JSAPI支付
* */
export
function
wxJSPay
(
order
:
any
,
callback
:
any
)
{
export
function
wxJSPay
(
order
,
callback
)
{
if
(
!
order
.
payment_more_info
)
{
alert
(
'订单创建错误'
)
return
}
const
payInfo
=
JSON
.
parse
(
order
.
payment_more_info
)
WeixinJSBridge
.
invoke
(
'getBrandWCPayRequest'
,
payInfo
,
(
resp
:
any
)
=>
{
window
.
WeixinJSBridge
.
invoke
(
'getBrandWCPayRequest'
,
payInfo
,
(
resp
)
=>
{
callback
&&
callback
(
resp
)
})
}
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论