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