Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
media-resource
Overview
Overview
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
杨昕
media-resource
Commits
7ac7df1e
Commit
7ac7df1e
authored
Jul 07, 2020
by
杨昕
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加获取视频接口
parent
12e20d13
Pipeline
#9812
passed with stages
in 33 seconds
Changes
3
Pipelines
1
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
86 additions
and
26 deletions
+86
-26
MediaController.php
app/Http/Controllers/Api/MediaController.php
+11
-15
MediaModel.php
app/Model/MediaModel.php
+72
-8
api.php
routes/api.php
+3
-3
No files found.
app/Http/Controllers/Api/MediaController.php
View file @
7ac7df1e
...
@@ -2,7 +2,9 @@
...
@@ -2,7 +2,9 @@
namespace
App\Http\Controllers\Api
;
namespace
App\Http\Controllers\Api
;
use
App\Model\MediaModel
;
use
App\Model\QiniuModel
;
use
App\Model\QiniuModel
;
use
App\Tool\SrsHookValidate
;
use
Illuminate\Http\Request
;
use
Illuminate\Http\Request
;
use
App\Http\Controllers\Controller
;
use
App\Http\Controllers\Controller
;
...
@@ -10,11 +12,6 @@ use Qiniu\Auth;
...
@@ -10,11 +12,6 @@ use Qiniu\Auth;
class
MediaController
extends
Controller
class
MediaController
extends
Controller
{
{
private
$bucketList
=
[
'develop'
=>
'dev-offcncloud'
,
'test'
=>
'test-offcncloud'
,
'master'
=>
'offcncloud'
,
];
/**
/**
* 获取媒资ID
* 获取媒资ID
...
@@ -22,22 +19,20 @@ class MediaController extends Controller
...
@@ -22,22 +19,20 @@ class MediaController extends Controller
* @return \Illuminate\Http\JsonResponse
* @return \Illuminate\Http\JsonResponse
* @throws \App\Exceptions\ControllerException
* @throws \App\Exceptions\ControllerException
*/
*/
public
function
index
(
Request
$request
){
public
function
media_list
(
Request
$request
){
$result
=
handler_drive
(
function
()
use
(
$request
)
{
return
[
"mediaID"
=>
'mda-'
.
generateRandomNum
(
16
)];
});
return
success
(
$result
);
}
public
function
mediaIdList
(){
$result
=
handler_drive
(
function
()
use
(
$request
){
SrsHookValidate
::
srsHookCallback
(
$request
,[
'params'
=>
'required'
]);
return
MediaModel
::
getMediaList
(
$request
);
});
return
success
(
$result
);
}
}
...
@@ -49,4 +44,5 @@ class MediaController extends Controller
...
@@ -49,4 +44,5 @@ class MediaController extends Controller
}
}
app/Model/MediaModel.php
View file @
7ac7df1e
...
@@ -3,6 +3,7 @@
...
@@ -3,6 +3,7 @@
namespace
App\Model
;
namespace
App\Model
;
use
App\Exceptions\DatabaseException
;
use
App\Exceptions\DatabaseException
;
use
Illuminate\Support\Facades\DB
;
use
Jenssegers\Mongodb\Eloquent\Model
as
Eloquent
;
use
Jenssegers\Mongodb\Eloquent\Model
as
Eloquent
;
class
MediaModel
extends
Eloquent
class
MediaModel
extends
Eloquent
...
@@ -75,28 +76,46 @@ class MediaModel extends Eloquent
...
@@ -75,28 +76,46 @@ class MediaModel extends Eloquent
*/
*/
$media_info
=
explode
(
"&"
,
$request
->
media_name
);
$media_info
=
explode
(
"&"
,
$request
->
media_name
);
if
(
count
(
$media_info
)
!=
2
){
throw
new
\Exception
(
'视频名称格式不对'
);
}
$mediaCatg
=
MediaCategoryModel
::
where
(
'_id'
,
$request
->
media_type
)
->
first
();
$mediaCatg
=
MediaCategoryModel
::
where
(
'_id'
,
$request
->
media_type
)
->
first
();
if
(
empty
(
$mediaCatg
)){
if
(
empty
(
$mediaCatg
)){
throw
new
\Exception
(
"媒资类别不存在"
);
throw
new
\Exception
(
"媒资类别不存在"
);
}
}
/**
* 处理文件名称,确认是否包含"&"符合
*/
if
(
count
(
$media_info
)
>=
2
){
$data
=
[
$data
=
[
'_id'
=>
$media_id
,
'_id'
=>
$media_id
,
'media_name'
=>
$request
->
media_name
,
'media_name'
=>
$request
->
media_name
,
'media_type'
=>
$mediaCatg
->
_id
,
'media_type'
=>
$mediaCatg
->
_id
,
'media_category'
=>
$mediaCatg
[
'name'
],
'media_category'
=>
$mediaCatg
[
'name'
],
'class_id
'
=>
$media_info
[
0
],
'book_num
'
=>
$media_info
[
0
],
'class
_name'
=>
$media_info
[
1
],
'book
_name'
=>
$media_info
[
1
],
'media_url'
=>
$request
->
media_url
,
'media_url'
=>
$request
->
media_url
,
'access_key'
=>
$request
->
access_key
,
'access_key'
=>
$request
->
access_key
,
'secret_key'
=>
$request
->
secret_key
,
'secret_key'
=>
$request
->
secret_key
,
'create_time'
=>
date
(
'Y-m-d H:i:s'
,
time
())
'create_time'
=>
date
(
'Y-m-d H:i:s'
,
time
())
];
];
}
else
{
$data
=
[
'_id'
=>
$media_id
,
'media_name'
=>
$request
->
media_name
,
'media_type'
=>
$mediaCatg
->
_id
,
'media_category'
=>
$mediaCatg
[
'name'
],
'book_num'
=>
''
,
'book_name'
=>
$request
->
media_name
,
'media_url'
=>
$request
->
media_url
,
'access_key'
=>
$request
->
access_key
,
'secret_key'
=>
$request
->
secret_key
,
'create_time'
=>
date
(
'Y-m-d H:i:s'
,
time
())
];
}
$id
=
MediaModel
::
insertGetId
(
$data
);
$id
=
MediaModel
::
insertGetId
(
$data
);
}
catch
(
\Exception
$exception
){
}
catch
(
\Exception
$exception
){
throw
new
DatabaseException
(
$exception
->
getMessage
());
throw
new
DatabaseException
(
$exception
->
getMessage
());
...
@@ -156,8 +175,8 @@ class MediaModel extends Eloquent
...
@@ -156,8 +175,8 @@ class MediaModel extends Eloquent
'media_name'
=>
$request
->
media_name
,
'media_name'
=>
$request
->
media_name
,
'media_type'
=>
$mediaCatg
->
_id
,
'media_type'
=>
$mediaCatg
->
_id
,
'media_category'
=>
$mediaCatg
[
'name'
],
'media_category'
=>
$mediaCatg
[
'name'
],
'
class_id
'
=>
$media_info
[
0
],
'
book_num
'
=>
$media_info
[
0
],
'
class
_name'
=>
$media_info
[
1
],
'
book
_name'
=>
$media_info
[
1
],
'media_url'
=>
$request
->
media_url
,
'media_url'
=>
$request
->
media_url
,
'access_key'
=>
$request
->
access_key
,
'access_key'
=>
$request
->
access_key
,
'secret_key'
=>
$request
->
secret_key
,
'secret_key'
=>
$request
->
secret_key
,
...
@@ -175,4 +194,49 @@ class MediaModel extends Eloquent
...
@@ -175,4 +194,49 @@ class MediaModel extends Eloquent
return
$flag
;
return
$flag
;
}
}
/**
* 根据课件编号获取媒资编号与视频地址
* @param $request
* @return mixed
* @throws DatabaseException
*/
public
static
function
getMediaList
(
$request
){
try
{
$params
=
json_decode
(
$request
->
params
,
true
);
if
(
empty
(
$params
)){
throw
new
\Exception
(
"参数格式有误"
);
}
$tmp
=
[];
foreach
(
$params
as
$param
){
if
(
!
isset
(
$param
[
'mediaCatg'
])
||
!
isset
(
$param
[
'bookNum'
])){
throw
new
\Exception
(
"格式有误"
);
}
$media_name
=
$param
[
'mediaCatg'
];
$media_ids
=
$param
[
'bookNum'
];
$media_catg
=
MediaCategoryModel
::
where
(
'name'
,
$media_name
)
->
first
();
if
(
empty
(
$media_catg
)){
throw
new
\Exception
(
"媒资类别不存在"
);
}
$tmp
[]
=
MediaModel
::
select
(
"_id"
,
"media_url"
,
"book_num"
)
->
whereIn
(
'book_num'
,
$media_ids
)
->
get
();
}
}
catch
(
\Exception
$exception
){
throw
new
DatabaseException
(
$exception
->
getMessage
());
}
$res
=
[];
foreach
(
$tmp
as
$item
){
$res
[]
=
$item
->
groupBy
(
"book_num"
);
}
return
$res
;
}
}
}
routes/api.php
View file @
7ac7df1e
...
@@ -32,10 +32,9 @@ Route::group(['namespace' => 'Api', 'prefix' => 'v1', 'middleware' => ['auth']],
...
@@ -32,10 +32,9 @@ Route::group(['namespace' => 'Api', 'prefix' => 'v1', 'middleware' => ['auth']],
});
});
Route
::
group
([
'namespace'
=>
'Api'
,
'prefix'
=>
'v1'
,
'middleware'
=>
[
'auth'
]],
function
()
{
Route
::
group
([
'namespace'
=>
'Api'
,
'prefix'
=>
'user'
],
function
()
{
Route
::
post
(
"media_list"
,
"MediaController@media_list"
);
});
});
\ No newline at end of file
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