Commit f5721849 by 杨昕

优化获取mis数据

parent a5e79bed
Pipeline #14304 passed with stages
in 5 minutes 47 seconds
......@@ -345,14 +345,10 @@ function generateRandomNum( $len = 32, $md5 = true ) {
function getRbac($request,$url='api/ram',$appid = '' ,$type='base'){
if ($appid){
$appid = $appid;
}else{
if (!$appid){
$appid = $request->appid??"";
}
$mis_uid = $request->mis_uid;
//https://api.eoffcn.com/demo/get?t=xx&sign=xx&ak=xx
//其中sign=md5(ak=$ak&t=时间戳&sk=$sk)
......@@ -369,11 +365,12 @@ function getRbac($request,$url='api/ram',$appid = '' ,$type='base'){
switch ($type){
case 'base':
$mis_uid = $request->mis_uid;
$rbac_url = $rbac.'/rbac/'.$url.'?t='.$time.'&sign='.$sign.'&ak='.$rbac_ak.'&appid='.$appid.'&uid='.$mis_uid;
break;
case 'mis_user': //获取mis员工基本信息
$staffNo = $request->username;
$staffNo = $request->staffNo;
$rbac_url = $rbac.'/rbac/'.$url.'?t='.$time.'&sign='.$sign.'&ak='.$rbac_ak.'&staffNo='.$staffNo;
break;
#清除CND缓存
......@@ -391,6 +388,7 @@ function getRbac($request,$url='api/ram',$appid = '' ,$type='base'){
break;
default:
$mis_uid = $request->mis_uid;
$rbac_url = $rbac.'/rbac/'.$url.'?t='.$time.'&sign='.$sign.'&ak='.$rbac_ak.'&appid='.$appid.'&uid='.$mis_uid;
}
......
......@@ -299,6 +299,11 @@ class MediaController extends Controller
}
/**
* @param Request $request
* @return \Illuminate\Http\JsonResponse
* @throws \App\Exceptions\ControllerException
*/
public function getMediaForeverM3u8(Request $request){
$data = handler_drive(function () use ($request) {
......
......@@ -32,6 +32,7 @@ class LoginController extends Controller
/**
* @param Request $request
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\JsonResponse|\Illuminate\View\View
* @throws ControllerException
*/
public function login(Request $request)
{
......@@ -46,7 +47,6 @@ class LoginController extends Controller
if (!$request->username) {
throw new ControllerException(400, '昵称必须填写');
}
/**
* 用户名称是有四部分组成,姓名-新账号-旧账号-mis_uid
*/
......@@ -60,6 +60,8 @@ class LoginController extends Controller
}
if (!$user->mis_uid){
$request->replace(array_merge($request->all(),["staffNo"=>$request->username]));
/**
* 获取mis用户信息
*/
......@@ -78,6 +80,7 @@ class LoginController extends Controller
}else{
$request->replace(array_merge($request->all(),["staffNo"=>$request->username]));
$userInfo = UserModel::getMisInfo($request);
$mis_uid = $userInfo["userId"];
......@@ -107,6 +110,8 @@ class LoginController extends Controller
}
Auth::login($user);
return $user;
......
......@@ -3,7 +3,10 @@
namespace App\Http\Middleware;
use App\Exceptions\ControllerException;
use App\Exceptions\DatabaseException;
use App\Model\LogModel;
use App\Model\MediaCategoryModel;
use App\Model\UserModel;
use Closure;
use Illuminate\Http\Response;
use Illuminate\Support\Facades\Auth;
......@@ -12,11 +15,10 @@ use Illuminate\Support\Facades\Redirect;
class ApiMiddleware
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
* @param $request
* @param Closure $next
* @return \Illuminate\Http\RedirectResponse|mixed
* @throws \Exception
*/
public function handle($request, Closure $next)
{
......@@ -32,25 +34,51 @@ class ApiMiddleware
}
$ajax = $request->ajax();
$user = Auth::user();
if (empty($user)){
if ($ajax){
return error(Response::HTTP_UNAUTHORIZED);
}
return Redirect::to("web/logout");
}
if ($request->category_id){
$mediaCatg = MediaCategoryModel::where("_id",$request->category_id)->first();
if (empty($mediaCatg)){
return error("类别不存在");
}
$request->replace(array_merge($request->all(),['catetory_name'=>$mediaCatg->name]));
}
if (isset($user->mis_uid)){
$request->replace(array_merge($request->all(),['mis_uid'=>$user->mis_uid]));
}
if (empty($user->name)){
if ($ajax){
throw new ControllerException(Response::HTTP_UNAUTHORIZED);
if ($user->mis_uid){
$request->replace(array_merge($request->all(),[
'mis_uid'=>$user->mis_uid,
]));
}else{
$username = $user->name;
$staffNo = substr($username,strrpos($username,"-"));
$request->replace(array_merge($request->all(),["staffNo"=>$staffNo]));
/**
* 获取mis用户信息
*/
$userInfo = UserModel::getMisInfo($request);
$userid = $userInfo['userId'];
$flag = UserModel::where("_id",$user->_id)->update(['mis_uid'=>$userid]);
if (!$flag){
LogModel::addlog(['更新用户mis_uid失败'=>json_encode(['mis_uid'=>$userid])]);
return error("更新用户mis_uid失败");
}
return Redirect::to("web/logout");
$request->replace(array_merge($request->all(),['mis_uid'=>$user->mis_uid]));
}
return $next($request);
......
......@@ -238,8 +238,9 @@ class MediaModel extends Eloquent
'secret_key' => $request->secret_key,
'create_time' => $create_time,
'description' => $request->description,
'username' => $request->token_username,//员工工号
'username' => $request->token_username,
'user_id' => $request->token_user_id,
'mis_uid' => $request->mis_uid,//员工工号
'start_time' => $start_time,
'end_time' => $end_time,
'duration' => $request->duration??"0",
......@@ -260,8 +261,9 @@ class MediaModel extends Eloquent
'secret_key' => $request->secret_key,
'create_time' => $create_time,
'description' => $request->description,
'username' => $request->token_username,//员工工号
'username' => $request->token_username,
'user_id' => $request->token_user_id,
'mis_uid' => $request->mis_uid,//员工工号
'start_time' => $start_time,
'end_time' => $end_time,
'duration' => $request->duration??"0",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment