Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
P
pica.cloud.web-education-admin
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
成员
成员
收起侧边栏
Close sidebar
动态
分支图
统计图
提交
打开侧边栏
com.pica.cloud.education.frontend
pica.cloud.web-education-admin
提交
2c840a10
提交
2c840a10
编写于
7月 13, 2020
作者:
bo.dang
浏览文件
操作
浏览文件
下载
差异文件
解决圈子小生态互动直播二期冲突
上级
a937c5f6
7c0318fd
变更
11
展开全部
隐藏空白字符变更
内嵌
并排
正在显示
11 个修改的文件
包含
1475 行增加
和
85 行删除
+1475
-85
icon_download.png
src/assets/image/icon_download.png
+0
-0
icon_upload.png
src/assets/image/icon_upload.png
+0
-0
download2.js
src/utils/download/download2.js
+132
-0
download4.js
src/utils/download/download4.js
+123
-0
fetch.js
src/utils/fetch.js
+3
-2
filter.js
src/utils/filter.js
+10
-0
qiniu-util.js
src/utils/qiniu-util.js
+5
-0
yqrangeApi.js
src/utils/yqrange/yqrangeApi.js
+30
-0
create-live.vue
src/views/yqrange/create-live.vue
+451
-67
create-range.vue
src/views/yqrange/create-range.vue
+4
-4
live-manage.vue
src/views/yqrange/live-manage.vue
+717
-12
未找到文件。
src/assets/image/icon_download.png
0 → 100644
浏览文件 @
2c840a10
1.4 KB
src/assets/image/icon_upload.png
0 → 100644
浏览文件 @
2c840a10
1.4 KB
src/utils/download/download2.js
0 → 100644
浏览文件 @
2c840a10
//download.js v3.0, by dandavis; 2008-2014. [CCBY2] see http://danml.com/download.html for tests/usage
// v1 landed a FF+Chrome compat way of downloading strings to local un-named files, upgraded to use a hidden frame and optional mime
// v2 added named files via a[download], msSaveBlob, IE (10+) support, and window.URL support for larger+faster saves than dataURLs
// v3 added dataURL and Blob Input, bind-toggle arity, and legacy dataURL fallback was improved with force-download mime and base64 support
// data can be a string, Blob, File, or dataURL
export
default
function
(
data
,
strFileName
,
strMimeType
)
{
var
self
=
window
,
// this script is only for browsers anyway...
u
=
"application/octet-stream"
,
// this default mime also triggers iframe downloads
m
=
strMimeType
||
u
,
x
=
data
,
D
=
document
,
a
=
D
.
createElement
(
"a"
),
z
=
function
(
a
){
return
String
(
a
);},
B
=
self
.
Blob
||
self
.
MozBlob
||
self
.
WebKitBlob
||
z
,
BB
=
self
.
MSBlobBuilder
||
self
.
WebKitBlobBuilder
||
self
.
BlobBuilder
,
fn
=
strFileName
||
"download"
,
blob
,
b
,
ua
,
fr
;
//if(typeof B.bind === 'function' ){ B=B.bind(self); }
if
(
String
(
this
)
===
"true"
){
//reverse arguments, allowing download.bind(true, "text/xml", "export.xml") to act as a callback
x
=
[
x
,
m
];
m
=
x
[
0
];
x
=
x
[
1
];
}
//go ahead and download dataURLs right away
if
(
String
(
x
).
match
(
/^data
\:[\w
+
\-]
+
\/[\w
+
\-]
+
[
,;
]
/
)){
return
navigator
.
msSaveBlob
?
// IE10 can't do a[download], only Blobs:
navigator
.
msSaveBlob
(
d2b
(
x
),
fn
)
:
saver
(
x
)
;
// everyone else can save dataURLs un-processed
}
//end if dataURL passed?
try
{
blob
=
x
instanceof
B
?
x
:
new
B
([
x
],
{
type
:
m
})
;
}
catch
(
y
){
if
(
BB
){
b
=
new
BB
();
b
.
append
([
x
]);
blob
=
b
.
getBlob
(
m
);
// the blob
}
}
function
d2b
(
u
)
{
var
p
=
u
.
split
(
/
[
:;,
]
/
),
t
=
p
[
1
],
dec
=
p
[
2
]
==
"base64"
?
atob
:
decodeURIComponent
,
bin
=
dec
(
p
.
pop
()),
mx
=
bin
.
length
,
i
=
0
,
uia
=
new
Uint8Array
(
mx
);
for
(
i
;
i
<
mx
;
++
i
)
uia
[
i
]
=
bin
.
charCodeAt
(
i
);
return
new
B
([
uia
],
{
type
:
t
});
}
function
saver
(
url
,
winMode
){
if
(
'download'
in
a
)
{
//html5 A[download]
a
.
href
=
url
;
a
.
setAttribute
(
"download"
,
fn
);
a
.
innerHTML
=
"downloading..."
;
D
.
body
.
appendChild
(
a
);
setTimeout
(
function
()
{
a
.
click
();
D
.
body
.
removeChild
(
a
);
if
(
winMode
===
true
){
setTimeout
(
function
(){
self
.
URL
.
revokeObjectURL
(
a
.
href
);},
250
);}
},
66
);
return
true
;
}
//do iframe dataURL download (old ch+FF):
var
f
=
D
.
createElement
(
"iframe"
);
D
.
body
.
appendChild
(
f
);
if
(
!
winMode
){
// force a mime that will download:
url
=
"data:"
+
url
.
replace
(
/^data:
([\w\/\-\+]
+
)
/
,
u
);
}
f
.
src
=
url
;
setTimeout
(
function
(){
D
.
body
.
removeChild
(
f
);
},
333
);
}
//end saver
if
(
navigator
.
msSaveBlob
)
{
// IE10+ : (has Blob, but not a[download] or URL)
return
navigator
.
msSaveBlob
(
blob
,
fn
);
}
if
(
self
.
URL
){
// simple fast and modern way using Blob and URL:
saver
(
self
.
URL
.
createObjectURL
(
blob
),
true
);
}
else
{
// handle non-Blob()+non-URL browsers:
if
(
typeof
blob
===
"string"
||
blob
.
constructor
===
z
){
try
{
return
saver
(
"data:"
+
m
+
";base64,"
+
self
.
btoa
(
blob
)
);
}
catch
(
y
){
return
saver
(
"data:"
+
m
+
","
+
encodeURIComponent
(
blob
)
);
}
}
// Blob but not URL:
fr
=
new
FileReader
();
fr
.
onload
=
function
(
e
){
saver
(
this
.
result
);
};
fr
.
readAsDataURL
(
blob
);
}
return
true
;
}
/* end download() */
src/utils/download/download4.js
0 → 100644
浏览文件 @
2c840a10
//download.js v3.0, by dandavis; 2008-2014. [CCBY2] see http://danml.com/download.html for tests/usage
// v1 landed a FF+Chrome compat way of downloading strings to local un-named files, upgraded to use a hidden frame and optional mime
// v2 added named files via a[download], msSaveBlob, IE (10+) support, and window.URL support for larger+faster saves than dataURLs
// v3 added dataURL and Blob Input, bind-toggle arity, and legacy dataURL fallback was improved with force-download mime and base64 support
// https://github.com/rndme/download
// data can be a string, Blob, File, or dataURL
// function download(data, strFileName, strMimeType) {
export
default
function
(
data
,
strFileName
,
strMimeType
)
{
var
self
=
window
,
// this script is only for browsers anyway...
u
=
"application/octet-stream"
,
// this default mime also triggers iframe downloads
m
=
strMimeType
||
u
,
x
=
data
,
D
=
document
,
a
=
D
.
createElement
(
"a"
),
z
=
function
(
a
){
return
String
(
a
);},
B
=
(
self
.
Blob
||
self
.
MozBlob
||
self
.
WebKitBlob
||
z
);
B
=
B
.
call
?
B
.
bind
(
self
)
:
Blob
;
var
fn
=
strFileName
||
"download"
,
blob
,
fr
;
if
(
String
(
this
)
===
"true"
){
//reverse arguments, allowing download.bind(true, "text/xml", "export.xml") to act as a callback
x
=
[
x
,
m
];
m
=
x
[
0
];
x
=
x
[
1
];
}
//go ahead and download dataURLs right away
if
(
String
(
x
).
match
(
/^data
\:[\w
+
\-]
+
\/[\w
+
\-]
+
[
,;
]
/
)){
return
navigator
.
msSaveBlob
?
// IE10 can't do a[download], only Blobs:
navigator
.
msSaveBlob
(
d2b
(
x
),
fn
)
:
saver
(
x
)
;
// everyone else can save dataURLs un-processed
}
//end if dataURL passed?
blob
=
x
instanceof
B
?
x
:
new
B
([
x
],
{
type
:
m
})
;
function
d2b
(
u
)
{
var
p
=
u
.
split
(
/
[
:;,
]
/
),
t
=
p
[
1
],
dec
=
p
[
2
]
==
"base64"
?
atob
:
decodeURIComponent
,
bin
=
dec
(
p
.
pop
()),
mx
=
bin
.
length
,
i
=
0
,
uia
=
new
Uint8Array
(
mx
);
for
(
i
;
i
<
mx
;
++
i
)
uia
[
i
]
=
bin
.
charCodeAt
(
i
);
return
new
B
([
uia
],
{
type
:
t
});
}
function
saver
(
url
,
winMode
){
if
(
'download'
in
a
)
{
//html5 A[download]
a
.
href
=
url
;
a
.
setAttribute
(
"download"
,
fn
);
a
.
innerHTML
=
"downloading..."
;
D
.
body
.
appendChild
(
a
);
setTimeout
(
function
()
{
a
.
click
();
D
.
body
.
removeChild
(
a
);
if
(
winMode
===
true
){
setTimeout
(
function
(){
self
.
URL
.
revokeObjectURL
(
a
.
href
);},
250
);}
},
66
);
return
true
;
}
if
(
typeof
safari
!==
"undefined"
){
// handle non-a[download] safari as best we can:
url
=
"data:"
+
url
.
replace
(
/^data:
([\w\/\-\+]
+
)
/
,
u
);
if
(
!
window
.
open
(
url
)){
// popup blocked, offer direct download:
if
(
confirm
(
"Displaying New Document
\n\n
Use Save As... to download, then click back to return to this page."
)){
location
.
href
=
url
;
}
}
return
true
;
}
//do iframe dataURL download (old ch+FF):
var
f
=
D
.
createElement
(
"iframe"
);
D
.
body
.
appendChild
(
f
);
if
(
!
winMode
){
// force a mime that will download:
url
=
"data:"
+
url
.
replace
(
/^data:
([\w\/\-\+]
+
)
/
,
u
);
}
f
.
src
=
url
;
setTimeout
(
function
(){
D
.
body
.
removeChild
(
f
);
},
333
);
}
//end saver
if
(
navigator
.
msSaveBlob
)
{
// IE10+ : (has Blob, but not a[download] or URL)
return
navigator
.
msSaveBlob
(
blob
,
fn
);
}
if
(
self
.
URL
){
// simple fast and modern way using Blob and URL:
saver
(
self
.
URL
.
createObjectURL
(
blob
),
true
);
}
else
{
// handle non-Blob()+non-URL browsers:
if
(
typeof
blob
===
"string"
||
blob
.
constructor
===
z
){
try
{
return
saver
(
"data:"
+
m
+
";base64,"
+
self
.
btoa
(
blob
)
);
}
catch
(
y
){
return
saver
(
"data:"
+
m
+
","
+
encodeURIComponent
(
blob
)
);
}
}
// Blob but not URL:
fr
=
new
FileReader
();
fr
.
onload
=
function
(
e
){
saver
(
this
.
result
);
};
fr
.
readAsDataURL
(
blob
);
}
return
true
;
}
/* end download() */
src/utils/fetch.js
浏览文件 @
2c840a10
...
@@ -54,14 +54,15 @@ service.interceptors.request.use(config => {
...
@@ -54,14 +54,15 @@ service.interceptors.request.use(config => {
}
}
if
(
process
.
env
.
BUILD_ENV
==
"development"
){
// 本地开发环境qgit
if
(
process
.
env
.
BUILD_ENV
==
"development"
){
// 本地开发环境qgit
// console.log('环境变量>>>> ', process.env.BUILD_ENV);
// console.log('环境变量>>>> ', process.env.BUILD_ENV);
config
.
headers
[
'token'
]
=
'F64D5633857D4E16B3C2CCE5E48B0D1E'
;
config
.
headers
[
'token'
]
=
'28731437A7EF482ABC5DF4D4DB13B3ED'
;
// config.headers['token'] = localStorage.getItem('storageToken')
// config.headers['token'] = localStorage.getItem('storageToken')
}
else
{
}
else
{
config
.
headers
[
'token'
]
=
localStorage
.
getItem
(
'storageToken'
)
config
.
headers
[
'token'
]
=
localStorage
.
getItem
(
'storageToken'
)
}
}
config
.
headers
[
'deviceInfo'
]
=
JSON
.
stringify
({
"app_channel"
:
""
,
"app_mac"
:
""
,
"app_uuid"
:
""
,
"app_version"
:
""
,
"device_brand"
:
""
,
"device_ip"
:
""
,
"device_model"
:
""
,
"device_net"
:
""
,
"device_ops"
:
""
,
"resolution_wh"
:
""
,
"system_level"
:
""
,
"device_type"
:
'10'
})
config
.
headers
[
'deviceInfo'
]
=
JSON
.
stringify
({
"app_channel"
:
""
,
"app_mac"
:
""
,
"app_uuid"
:
""
,
"app_version"
:
""
,
"device_brand"
:
""
,
"device_ip"
:
""
,
"device_model"
:
""
,
"device_net"
:
""
,
"device_ops"
:
""
,
"resolution_wh"
:
""
,
"system_level"
:
""
,
"device_type"
:
'10'
})
}
}
return
config
return
config
},
error
=>
{
},
error
=>
{
// logger.debug('service.interceptors.request: ', error)
// logger.debug('service.interceptors.request: ', error)
...
...
src/utils/filter.js
浏览文件 @
2c840a10
...
@@ -498,5 +498,15 @@ const vueFilter = {
...
@@ -498,5 +498,15 @@ const vueFilter = {
return
'-'
return
'-'
}
}
},
},
streamTypeFilter
:
(
value
)
=>
{
if
(
value
==
1
)
{
return
'网页直播'
}
else
if
(
value
==
2
)
{
return
'拉流直播'
}
else
{
return
'-'
}
},
}
}
export
default
vueFilter
export
default
vueFilter
src/utils/qiniu-util.js
浏览文件 @
2c840a10
import
{
isEmptyUtils
,
isNotEmptyUtils
,
subString
}
from
"./utils"
;
import
{
isEmptyUtils
,
isNotEmptyUtils
,
subString
}
from
"./utils"
;
import
fetchQiniu
from
'./fetch-qiniu.js'
;
import
fetchQiniu
from
'./fetch-qiniu.js'
;
import
{
getQiniuToken1
,
uploadVideo
,
uploadImg
}
from
'./index'
import
{
getQiniuToken1
,
uploadVideo
,
uploadImg
}
from
'./index'
import
fetch
from
"./fetch"
;
let
fileApiUrl
=
getQiniuToken1
()
let
fileApiUrl
=
getQiniuToken1
()
//该对象有一个 unsubscribe 方法取消订阅,同时终止上传行为。
//该对象有一个 unsubscribe 方法取消订阅,同时终止上传行为。
...
@@ -443,3 +444,7 @@ export const doUpload = (self, file, filePath, previewId, progressId, fileType)
...
@@ -443,3 +444,7 @@ export const doUpload = (self, file, filePath, previewId, progressId, fileType)
window
.
QNSubscription
=
subscription
;
window
.
QNSubscription
=
subscription
;
});
});
};
};
// 取消上传
export
const
unsubscribe
=
()
=>
{
subscription
.
unsubscribe
();
}
src/utils/yqrange/yqrangeApi.js
浏览文件 @
2c840a10
...
@@ -45,5 +45,35 @@ export const getRtcInfo = (params) => {
...
@@ -45,5 +45,35 @@ export const getRtcInfo = (params) => {
})
})
};
};
// 查询回放信息
export
const
getPlayback
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`rtc/liveAdmin/playback/
${
params
.
rtcId
}
`
),
method
:
'get'
,
// params: params,
description
:
'查询回放信息'
,
})
};
export
const
postPlayback
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`rtc/liveAdmin/playback`
),
method
:
'post'
,
data
:
params
,
description
:
'设置/关闭回放'
,
})
};
export
const
updateLiveStatus
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`rtc/liveAdmin/switchLiveStatus`
),
method
:
'put'
,
data
:
params
,
description
:
'更新直播状态'
,
})
};
src/views/yqrange/create-live.vue
浏览文件 @
2c840a10
此差异已折叠。
点击以展开。
src/views/yqrange/create-range.vue
浏览文件 @
2c840a10
...
@@ -85,10 +85,10 @@
...
@@ -85,10 +85,10 @@
//完成
//完成
complete
()
{
complete
()
{
if
(
this
.
$refs
.
org
.
selectionList
==
null
||
this
.
$refs
.
org
.
selectionList
==
""
){
//
if(this.$refs.org.selectionList == null || this.$refs.org.selectionList == ""){
this
.
$message
.
warning
(
'请选择机构'
);
//
this.$message.warning('请选择机构');
return
;
//
return;
}
//
}
console
.
log
(
this
.
formData
.
id
);
console
.
log
(
this
.
formData
.
id
);
let
req
=
{
let
req
=
{
circleId
:
this
.
formData
.
id
,
circleId
:
this
.
formData
.
id
,
...
...
src/views/yqrange/live-manage.vue
浏览文件 @
2c840a10
此差异已折叠。
点击以展开。
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录