Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
T
techbook
Project
Project
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
front-end-dev
techbook
Commits
d2f73d6f
Commit
d2f73d6f
authored
Jul 09, 2020
by
anxixi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
直播
parent
97e7e429
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
150 additions
and
35 deletions
+150
-35
en.js
src/common/lang/en.js
+17
-0
zh.js
src/common/lang/zh.js
+17
-0
eventdetail.vue
src/views/findeventpage/eventdetail.vue
+56
-7
eventlive.vue
src/views/findeventpage/eventlive.vue
+1
-1
eventpage.vue
src/views/findeventpage/eventpage.vue
+19
-17
index.vue
src/views/index/pages/index.vue
+30
-0
proactivity.vue
src/views/publishactivity/proactivity.vue
+10
-10
No files found.
src/common/lang/en.js
View file @
d2f73d6f
...
...
@@ -2020,6 +2020,23 @@ module.exports = {
activearea
:
'Active area'
,
},
//直播
livedata
:{
setlive
:
"Live broadcast settings"
,
islive
:
"Live broadcast or not"
,
viewrights
:
"Viewing rights"
,
required
:
'Registration required'
,
norequired
:
'No registration is required'
,
on
:
'on'
,
off
:
'off'
,
plcustomer
:
'Please contact customer service for live address'
,
plvhall
:
'Please enter the vhall key or live address link'
,
pushinformation
:
'Push information'
,
start
:
'Start'
,
finish
:
'Finish'
,
register
:
'Please register first'
,
},
//行业报告
industryjson
:{
share1
:
'Share to WeChat Moments'
,
...
...
src/common/lang/zh.js
View file @
d2f73d6f
...
...
@@ -2120,6 +2120,23 @@ module.exports = {
activearea
:
'活动区域'
,
},
//直播
livedata
:{
setlive
:
"直播设置"
,
islive
:
"是否开放直播"
,
viewrights
:
"观看权限"
,
required
:
'需报名'
,
norequired
:
'不需要报名'
,
on
:
'支持'
,
off
:
'不支持'
,
plcustomer
:
'直播地址请联系客服获取'
,
plvhall
:
'请输入微吼key或直播地址链接'
,
pushinformation
:
'开播提醒'
,
start
:
'开播'
,
finish
:
'关闭直播'
,
register
:
'请先报名'
,
},
//行业报告
industryjson
:{
share1
:
'分享到微信朋友圈'
,
...
...
src/views/findeventpage/eventdetail.vue
View file @
d2f73d6f
...
...
@@ -27,12 +27,31 @@
<div
class=
"gendisplay citystr"
v-if=
"eventdata.channelType == 3"
>
<p><i
class=
"iconfont icon-dingwei"
></i>
{{
eventdata
.
channelAddress
}}
</p>
</div>
<div
v-if=
"userInfo&&userInfo.empId!=eventdata.createdBy||!userInfo"
style=
"text-align: center;"
>
<el-button
type=
"primary"
round
style=
"width:240px;"
v-if=
"eventdata.activityState==2&&!eventdata.isApply"
@
click=
"handleApply(eventdata)"
>
{{
$t
(
'activityInfo.freeApply'
)
}}
</el-button>
<el-button
type=
"primary"
round
style=
"width:240px;"
disabled
v-if=
"eventdata.channelType!=4&&eventdata.activityState==2&&eventdata.isApply"
>
{{
$t
(
"activityInfo.hasApply"
)
}}
</el-button>
<el-button
type=
"primary"
round
style=
"width:240px;"
v-if=
"eventdata.channelType==4&&eventdata.activityState==2&&eventdata.isApply"
@
click=
"handleToSuccess"
>
{{
$t
(
"commonTitle.vipLookTitle"
)
}}
</el-button>
<el-button
type=
"primary"
round
style=
"width:240px;"
disabled
v-if=
"eventdata.activityState>2"
>
{{
eventdata
.
activityState
==
4
?
$t
(
"activityInfo.hasFilled"
):
eventdata
.
activityState
==
3
?
$t
(
"activityInfo.applyEnd"
):
eventdata
.
activityState
==
5
?
$t
(
"activityInfo.activityEnd"
):
""
}}
</el-button>
<el-button
type=
"primary"
round
style=
"width:240px;"
v-if=
"eventdata.activityState==1"
>
{{
$t
(
"activityInfo.activityNoBegin"
)
}}
</el-button>
<div
style=
"text-align: center;"
>
<span
v-if=
"userInfo&&userInfo.empId!=eventdata.createdBy||!userInfo"
>
<el-button
type=
"primary"
round
style=
"width:130px;"
v-if=
"eventdata.activityState==2&&!eventdata.isApply"
@
click=
"handleApply(eventdata)"
>
{{
$t
(
'activityInfo.freeApply'
)
}}
</el-button>
<el-button
type=
"primary"
round
style=
"width:130px;"
disabled
v-if=
"eventdata.channelType!=4&&eventdata.activityState==2&&eventdata.isApply"
>
{{
$t
(
"activityInfo.hasApply"
)
}}
</el-button>
<el-button
type=
"primary"
round
style=
"width:130px;"
v-if=
"eventdata.channelType==4&&eventdata.activityState==2&&eventdata.isApply"
@
click=
"handleToSuccess"
>
{{
$t
(
"commonTitle.vipLookTitle"
)
}}
</el-button>
<el-button
type=
"primary"
round
style=
"width:160px;"
disabled
v-if=
"eventdata.activityState>2"
>
{{
eventdata
.
activityState
==
4
?
$t
(
"activityInfo.hasFilled"
):
eventdata
.
activityState
==
3
?
$t
(
"activityInfo.applyEnd"
):
eventdata
.
activityState
==
5
?
$t
(
"activityInfo.activityEnd"
):
""
}}
</el-button>
<el-button
type=
"primary"
round
style=
"width:160px;"
v-if=
"eventdata.activityState==1"
>
{{
$t
(
"activityInfo.activityNoBegin"
)
}}
</el-button>
</span>
<span
style=
"margin-left: 15px;"
v-if=
"eventdata.hasLive == 1"
@
click=
"openeventlive(eventdata)"
>
<el-button
v-if=
"eventdata.baseLive.liveState==0"
type=
"primary"
round
style=
"width: 130px;font-size: 14px;"
>
<i
class=
"iconfont icon-zhibo"
style=
"font-size: 14px;"
></i>
{{
$t
(
'activityInfo.liveNotStart'
)
}}
</el-button>
<el-button
v-if=
"eventdata.baseLive.liveState==1"
type=
"warning"
round
style=
"width: 130px;font-size: 14px;"
>
<i
class=
"iconfont icon-zhibo"
style=
"font-size: 14px;"
></i>
{{
$t
(
'activityInfo.living'
)
}}
</el-button>
<el-button
v-if=
"eventdata.baseLive.liveState==2&&eventdata.baseLive.liveBack == 0"
type=
"primary"
round
style=
"width: 130px;font-size: 14px;"
>
<i
class=
"iconfont icon-zhibo"
style=
"font-size: 14px;"
></i>
{{
$t
(
'activityInfo.liveBack'
)
}}
</el-button>
<el-button
v-if=
"eventdata.baseLive.liveState==2&&eventdata.baseLive.liveBack == 1"
type=
"info"
round
style=
"width: 130px;font-size: 14px;"
>
{{
$t
(
'activityInfo.liveHasEnd'
)
}}
</el-button>
</span>
</div>
<div
v-if=
"eventdata.activityState!=5"
@
click=
"handleReturn"
style=
"color:#3F3F53;text-align: center;line-height: 60px;cursor: pointer;"
>
<i
class=
"iconfont icon-fenxiang"
style=
"margin-right: 10px;"
></i>
{{
$t
(
'activityInfo.shareButton'
)
}}
...
...
@@ -62,6 +81,10 @@
<qrCmpt
:url=
"url"
@
sendVisible=
"isVueQrVisible"
></qrCmpt>
</div>
<!-- 快速登录-->
<expertVisible
ref=
"login"
:registerType=
"64"
></expertVisible>
<signupbar
:tabName=
"activeName"
:detailInfo=
"eventdata"
:secondStepInfo=
"secondStepInfo"
@
cancelVisible=
"cancelVisible"
:applyVisible=
"applyVisible"
v-if=
"applyVisible"
></signupbar>
</div>
</
template
>
...
...
@@ -70,6 +93,7 @@
import
api
from
"./api/api"
;
import
signupbar
from
"./signupbar"
;
import
qrCmpt
from
"../../components/common/qrcodeCmpt"
;
import
expertVisible
from
"../../components/login/quicklogin"
;
export
default
{
name
:
"eventdetail"
,
data
()
{
...
...
@@ -88,7 +112,7 @@
}
},
components
:{
signupbar
,
qrCmpt
signupbar
,
qrCmpt
,
expertVisible
},
beforeRouteEnter
(
to
,
from
,
next
)
{
next
(
vm
=>
{
// 这里的vm指的就是vue实例,可以用来当做this使用
...
...
@@ -101,6 +125,31 @@
},
methods
:{
//打开直播
openeventlive
(
row
){
if
(
row
.
baseLive
.
liveState
!=
0
){
if
(
!
this
.
publicFun
.
getCookie
(
"userInfo"
)){
this
.
$refs
.
login
.
isexpertVisible
();
return
}
let
liveUrl
=
row
.
baseLive
.
liveUrl
.
substring
(
row
.
baseLive
.
liveUrl
.
lastIndexOf
(
'/'
)
+
1
);
if
(
this
.
userInfo
&&
this
.
userInfo
.
empId
==
row
.
createdBy
){
if
(
row
.
baseLive
.
liveState
==
1
||
row
.
baseLive
.
liveBack
==
0
){
window
.
open
(
this
.
publicFun
.
getCurrentHrefEnv
()
+
"#/eventlive?id="
+
liveUrl
);
}
}
else
{
if
(
row
.
baseLive
.
livePowers
==
0
&&
row
.
activityState
==
2
&&!
row
.
isApply
){
this
.
$message
.
error
(
this
.
$t
(
'activityInfo.applyFirst'
));
}
else
if
(
row
.
baseLive
.
livePowers
==
0
&&
row
.
activityState
==
5
&&!
row
.
isApply
){
this
.
$message
.
error
(
this
.
$t
(
'activityInfo.applyEndTitle'
));
}
else
{
if
(
row
.
baseLive
.
liveState
==
1
||
row
.
baseLive
.
liveState
==
2
&&
row
.
baseLive
.
liveBack
==
0
){
window
.
open
(
this
.
publicFun
.
getCurrentHrefEnv
()
+
"#/eventlive?id="
+
liveUrl
);
}
}
}
}
},
//二维码
isVueQrVisible
(
data
){
this
.
vueQrVisible
=
data
;
...
...
src/views/findeventpage/eventlive.vue
View file @
d2f73d6f
...
...
@@ -8,7 +8,7 @@
window
.
onload
=
function
(){
var
_iftameBody
=
document
.
getElementById
(
'child'
).
contentWindow
.
document
.
getElementsByTagName
(
"body"
)[
0
];
var
_iframe
=
document
.
getElementById
(
'child'
).
contentWindow
.
document
.
getElementsByTagName
(
"iframe"
)[
0
];
//get iframe下的id
_iframe
.
src
=
"live.html?id=
528253505"
;
_iframe
.
src
=
"live.html?id=
"
+
this
.
$route
.
query
.
disId
;
_iframe
.
style
.
width
=
"100%"
;
//修改样式
_iframe
.
style
.
height
=
"calc(100vh - 30px)"
;
//修改样式
_iftameBody
.
style
.
margin
=
0
;
...
...
src/views/findeventpage/eventpage.vue
View file @
d2f73d6f
...
...
@@ -13,7 +13,7 @@
<p
class=
"ellipsisFont2"
style=
"height: 40px;"
>
<span
v-if=
"item.hasLive == 1"
@
click=
"openeventlive(item)"
style=
"display: inline-block;background: #5d78ff;padding: 0 10px 0 30px;color: #FFFFFF;font-size: 12px;position: relative;border-radius: 3px;"
>
<i
class=
"iconfont icon-zhibo"
style=
"font-size: 16px;position: absolute;left: 8px;top: 0px;"
></i>
{{
item
.
baseLive
.
liveState
==
0
?
'直播'
:
item
.
baseLive
.
liveState
==
1
?
'直播中'
:
'直播'
}}
{{
item
.
baseLive
.
liveState
==
0
?
$t
(
'activityInfo.liveTitle'
):
item
.
baseLive
.
liveState
==
1
?
$t
(
'activityInfo.living'
):
$t
(
'activityInfo.liveTitle'
)
}}
</span>
<span
@
click=
"$router.push(
{path:'/eventdetail',query:{id:item.channelId,ismyevent:0}})">
{{
item
.
channelTitle
}}
...
...
@@ -109,26 +109,28 @@
},
//打开直播
openeventlive
(
row
){
if
(
!
this
.
publicFun
.
getCookie
(
"userInfo"
)){
this
.
$refs
.
login
.
isexpertVisible
();
return
}
if
(
this
.
userInfo
&&
this
.
userInfo
.
empId
==
row
.
createdBy
){
if
(
row
.
baseLive
.
livePowers
==
0
&&
row
.
activityState
==
2
&&
row
.
isJoin
==
2
){
this
.
$message
.
error
(
'请先报名'
);
}
else
if
(
row
.
baseLive
.
livePowers
==
0
&&
row
.
activityState
==
5
&&
row
.
isJoin
==
2
){
this
.
$message
.
error
(
'对不起您未报名该活动'
);
}
else
{
if
(
row
.
baseLive
.
liveState
!=
0
){
if
(
!
this
.
publicFun
.
getCookie
(
"userInfo"
)){
this
.
$refs
.
login
.
isexpertVisible
();
return
}
let
liveUrl
=
row
.
baseLive
.
liveUrl
.
substring
(
row
.
baseLive
.
liveUrl
.
lastIndexOf
(
'/'
)
+
1
);
if
(
this
.
userInfo
&&
this
.
userInfo
.
empId
==
row
.
createdBy
){
if
(
row
.
baseLive
.
liveState
==
1
||
row
.
baseLive
.
liveBack
==
0
){
window
.
open
(
this
.
publicFun
.
getCurrentHrefEnv
()
+
"#/eventlive"
);
window
.
open
(
this
.
publicFun
.
getCurrentHrefEnv
()
+
"#/eventlive?id="
+
liveUrl
);
}
}
else
{
if
(
row
.
baseLive
.
livePowers
==
0
&&
row
.
activityState
==
2
&&
row
.
isJoin
==
2
){
this
.
$message
.
error
(
this
.
$t
(
'activityInfo.applyFirst'
));
}
else
if
(
row
.
baseLive
.
livePowers
==
0
&&
row
.
activityState
==
5
&&
row
.
isJoin
==
2
){
this
.
$message
.
error
(
this
.
$t
(
'activityInfo.applyEndTitle'
));
}
else
{
if
(
row
.
baseLive
.
liveState
==
1
){
window
.
open
(
this
.
publicFun
.
getCurrentHrefEnv
()
+
"#/eventlive?id="
+
liveUrl
);
}
}
}
}
else
{
if
(
row
.
baseLive
.
liveState
==
1
||
row
.
baseLive
.
liveBack
==
0
){
window
.
open
(
this
.
publicFun
.
getCurrentHrefEnv
()
+
"#/eventlive"
);
}
}
},
resourcesdata
(){
let
keyName
=
'&keyName='
+
this
.
searchs
.
keyName
;
...
...
src/views/index/pages/index.vue
View file @
d2f73d6f
...
...
@@ -183,6 +183,12 @@
<span
v-if=
"item.activityState == 3"
>
{{
$t
(
'activityInfo.applyEnd'
)
}}
</span>
<span
style=
"color: #FF5D5D"
v-if=
"item.activityState == 4&&item.isJoin==2"
>
{{
$t
(
'activityInfo.hasFilled'
)
}}
</span>
<span
style=
"color: #9197B4"
v-if=
"item.activityState == 5&&item.isJoin==2"
>
{{
$t
(
'activityInfo.activityEnd'
)
}}
</span>
<span
style=
"margin-left: 15px;"
v-if=
"item.hasLive == 1"
@
click=
"openeventlive(item)"
>
<el-button
type=
"primary"
round
size=
"mini"
style=
"width: 110px;font-size: 14px;"
>
<i
class=
"iconfont icon-zhibo"
style=
"font-size: 14px;"
></i>
{{
item
.
baseLive
.
liveState
==
0
?
$t
(
'activityInfo.liveTitle'
):
item
.
baseLive
.
liveState
==
1
?
$t
(
'activityInfo.living'
):
$t
(
'activityInfo.liveTitle'
)
}}
</el-button>
</span>
</p>
</div>
</div>
...
...
@@ -593,6 +599,30 @@
};
},
methods
:
{
//打开直播
openeventlive
(
row
){
if
(
row
.
baseLive
.
liveState
!=
0
){
if
(
!
this
.
publicFun
.
getCookie
(
"userInfo"
)){
this
.
$refs
.
login
.
isexpertVisible
();
return
}
if
(
this
.
userInfo
&&
this
.
userInfo
.
empId
==
row
.
createdBy
){
if
(
row
.
baseLive
.
liveState
==
1
||
row
.
baseLive
.
liveBack
==
0
){
window
.
open
(
this
.
publicFun
.
getCurrentHrefEnv
()
+
"#/eventlive?id="
+
liveUrl
);
}
}
else
{
if
(
row
.
baseLive
.
livePowers
==
0
&&
row
.
activityState
==
2
&&
row
.
isJoin
==
2
){
this
.
$message
.
error
(
this
.
$t
(
'activityInfo.applyFirst'
));
}
else
if
(
row
.
baseLive
.
livePowers
==
0
&&
row
.
activityState
==
5
&&
row
.
isJoin
==
2
){
this
.
$message
.
error
(
this
.
$t
(
'activityInfo.applyEndTitle'
));
}
else
{
if
(
row
.
baseLive
.
liveState
==
1
||
row
.
baseLive
.
liveBack
==
0
){
window
.
open
(
this
.
publicFun
.
getCurrentHrefEnv
()
+
"#/eventlive?id="
+
liveUrl
);
}
}
}
}
},
//文章详情
gocontentdetail
(
row
)
{
globalMsg
.
$emit
(
'maiDianFunc'
,
({
type
:
'report-article-index'
,
articleId
:
row
.
contentId
}));
...
...
src/views/publishactivity/proactivity.vue
View file @
d2f73d6f
...
...
@@ -147,25 +147,25 @@
</div>
</div>
<div
class=
"btodiv"
>
<p>
直播设置
</p>
<p>
{{$t('livedata.setlive')}}
</p>
<div
style=
"margin-top: 20px"
>
<el-form
:inline=
"true"
label-width=
"180px"
:model=
"formData"
:rules=
"rulesInfo"
ref=
"formData"
class=
"contnetform180"
>
<el-form-item
label=
"是否开放直播:
"
style=
"width: 100%;"
>
<el-form-item
:label=
"$t('livedata.islive')+':'
"
style=
"width: 100%;"
>
<el-radio
@
change=
"ishasLive(formData.hasLive)"
v-model=
"formData.hasLive"
:label=
"0"
>
否
</el-radio>
<el-radio
@
change=
"ishasLive(formData.hasLive)"
v-model=
"formData.hasLive"
:label=
"1"
>
是
</el-radio>
</el-form-item>
<div
v-if=
"formData.hasLive == 1"
>
<el-form-item
label=
"观看权限:
"
style=
"width: 100%;"
>
<el-radio
v-model=
"formData.baseLive.livePowers"
:label=
"0"
>
需报名
</el-radio>
<el-radio
v-model=
"formData.baseLive.livePowers"
:label=
"1"
>
不需要报名
</el-radio>
<el-form-item
:label=
"$t('livedata.viewrights')+':'
"
style=
"width: 100%;"
>
<el-radio
v-model=
"formData.baseLive.livePowers"
:label=
"0"
>
{{$t('livedata.required')}}
</el-radio>
<el-radio
v-model=
"formData.baseLive.livePowers"
:label=
"1"
>
{{$t('livedata.norequired')}}
</el-radio>
</el-form-item>
<el-form-item
label=
"回放:
"
style=
"width: 100%;"
>
<el-radio
v-model=
"formData.baseLive.liveBack"
:label=
"0"
>
支持
</el-radio>
<el-radio
v-model=
"formData.baseLive.liveBack"
:label=
"1"
>
不支持
</el-radio>
<el-form-item
:label=
"$t('activityInfo.liveBack')+':'
"
style=
"width: 100%;"
>
<el-radio
v-model=
"formData.baseLive.liveBack"
:label=
"0"
>
{{$t('livedata.on')}}
</el-radio>
<el-radio
v-model=
"formData.baseLive.liveBack"
:label=
"1"
>
{{$t('livedata.off')}}
</el-radio>
</el-form-item>
<el-form-item
:label=
"$t('Otherjson.activitytitle')+':'"
prop=
"baseLive.liveUrl"
style=
"width: 100%;"
>
<p>
直播地址请联系客服获取
</p>
<el-input
v-model=
"formData.baseLive.liveUrl"
maxlength=
"100"
:placeholder=
"$t('
Otherjson.plactivitytitle
')"
style=
"width: 450px;height: 40px"
></el-input>
<p>
{{$t('livedata.plcustomer')}}
</p>
<el-input
v-model=
"formData.baseLive.liveUrl"
maxlength=
"100"
:placeholder=
"$t('
livedata.plvhall
')"
style=
"width: 450px;height: 40px"
></el-input>
</el-form-item>
</div>
</el-form>
...
...
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