Commit 44bd8ce9 by 杨昕

Merge branch 'test' into 'master'

Test

See merge request !37
parents 831471fd bb2f471b
Pipeline #14731 canceled with stages
in 41 seconds
...@@ -6,6 +6,8 @@ use Exception; ...@@ -6,6 +6,8 @@ use Exception;
use App\Tool\ToolFunc; use App\Tool\ToolFunc;
use Illuminate\Auth\AuthenticationException; use Illuminate\Auth\AuthenticationException;
use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler; use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
use Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException;
use Symfony\Component\Routing\Exception\MethodNotAllowedException;
class Handler extends ExceptionHandler class Handler extends ExceptionHandler
{ {
...@@ -61,23 +63,34 @@ class Handler extends ExceptionHandler ...@@ -61,23 +63,34 @@ class Handler extends ExceptionHandler
// var_dump($exception->getLine()); // var_dump($exception->getLine());
#检测当前请求是否是api路由 #处理api请求404异常
if (stripos($path,'api/') === 0 if (stripos($path,'api/') === 0
&& ($exception instanceof \Symfony\Component\HttpKernel\Exception\NotFoundHttpException) ) { && ($exception instanceof \Symfony\Component\HttpKernel\Exception\NotFoundHttpException) ) {
return error('resources not found',\Symfony\Component\HttpFoundation\Response::HTTP_NOT_FOUND); return error('resources not found',\Symfony\Component\HttpFoundation\Response::HTTP_NOT_FOUND);
} }
if( ( (stripos($path,'web/') === 0 && strrpos($path,'.php') !== false) || (stripos($path,'web/') === 0 && strrpos($path,'.html') !== false ) ) && ($exception instanceof \Symfony\Component\HttpKernel\Exception\NotFoundHttpException) ) { #处理web请求404异常
if( stripos($path,'web/') === 0 && ($exception instanceof \Symfony\Component\HttpKernel\Exception\NotFoundHttpException) ) {
if (view()->exists('errors.404')) { if (view()->exists('errors.404')) {
return response()->view('errors.404'); return response()->view('errors.404');
} }
} }
/**
* 处理自定义异常
*/
if (self::handlerException($exception)) { if (self::handlerException($exception)) {
# 获取常量类里面的异常常量 # 获取常量类里面的异常常量
$message = json_decode($exception->getMessage(),true); $message = json_decode($exception->getMessage(),true);
return error(...$message); return error(...$message);
} else if ($exception instanceof AuthenticationException) { }
if ($request->is('api/*') ) {
/**
* Api异常处理模块
*/
if ($exception instanceof AuthenticationException) {
return error($exception->getMessage(),\Symfony\Component\HttpFoundation\Response::HTTP_UNAUTHORIZED); return error($exception->getMessage(),\Symfony\Component\HttpFoundation\Response::HTTP_UNAUTHORIZED);
} else if ($exception instanceof \Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException) { } else if ($exception instanceof \Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException) {
return error('请求方法不被允许',\Symfony\Component\HttpFoundation\Response::HTTP_METHOD_NOT_ALLOWED); return error('请求方法不被允许',\Symfony\Component\HttpFoundation\Response::HTTP_METHOD_NOT_ALLOWED);
...@@ -85,12 +98,10 @@ class Handler extends ExceptionHandler ...@@ -85,12 +98,10 @@ class Handler extends ExceptionHandler
if ($exception->getMessage() == 'Too Many Attempts.') { if ($exception->getMessage() == 'Too Many Attempts.') {
return error('请求接口过于频繁',429); return error('请求接口过于频繁',429);
} }
}else if($exception instanceof \RedisException){ }else if($exception instanceof \RedisException){
return error('redis连接异常'); return error('redis连接异常');
} }
if ($request->is('api/*')) {
return error('服务器请求异常:'.$exception->getMessage()."异常信息详情:".$exception->getTraceAsString(),500); return error('服务器请求异常:'.$exception->getMessage()."异常信息详情:".$exception->getTraceAsString(),500);
} else { } else {
...@@ -99,9 +110,15 @@ class Handler extends ExceptionHandler ...@@ -99,9 +110,15 @@ class Handler extends ExceptionHandler
if ($exception->getMessage() == 403) { if ($exception->getMessage() == 403) {
return response()->view('errors.403'); return response()->view('errors.403');
} }
//return response()->view('errors.404');
}else if($exception instanceof \Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException){
return response()->view('errors.403');
}else{
return response()->view('errors.404'); return response()->view('errors.404');
} }
//return error($exception->getMessage());
#return response()->json(['code'=>403, 'msg'=>'您没有权限']); #return response()->json(['code'=>403, 'msg'=>'您没有权限']);
} }
return parent::render($request, $exception); return parent::render($request, $exception);
......
...@@ -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)
...@@ -367,13 +363,14 @@ function getRbac($request,$url='api/ram',$appid = '' ,$type='base'){ ...@@ -367,13 +363,14 @@ function getRbac($request,$url='api/ram',$appid = '' ,$type='base'){
$sign = md5('ak='.$rbac_ak.'&t='.$time.'&sk='.$rbac_sk); $sign = md5('ak='.$rbac_ak.'&t='.$time.'&sk='.$rbac_sk);
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;
} }
......
...@@ -120,6 +120,8 @@ class MediaController extends Controller ...@@ -120,6 +120,8 @@ class MediaController extends Controller
'end_time.after_or_equal' => '结束时间不能小于开始时间' 'end_time.after_or_equal' => '结束时间不能小于开始时间'
]); ]);
$request->replace(array_merge($request->all(),['status'=>"1"]));
$id = MediaModel::hookRestoreMedia($request); $id = MediaModel::hookRestoreMedia($request);
......
...@@ -4,6 +4,7 @@ namespace App\Http\Controllers\Api; ...@@ -4,6 +4,7 @@ namespace App\Http\Controllers\Api;
use App\Exceptions\FormException; use App\Exceptions\FormException;
use App\Model\LogModel; use App\Model\LogModel;
use App\Model\MediaCategoryModel;
use App\Model\MediaModel; use App\Model\MediaModel;
use App\Model\QiniuModel; use App\Model\QiniuModel;
use App\Tool\Constant; use App\Tool\Constant;
...@@ -186,9 +187,10 @@ class MediaController extends Controller ...@@ -186,9 +187,10 @@ class MediaController extends Controller
); );
//shop_id为100时,代表的是北大学堂的视频
if ($request->shop_id=='100'){ if ($request->shop_id=='100'){
$params['media_type'] = "5f3d073a033f5a336b2b4346"; $catg = MediaCategoryModel::getCategoryByName("北大学堂");
$params['media_type'] = $catg['_id'];
} }
$request->replace(array_merge($request->all(),$params)); $request->replace(array_merge($request->all(),$params));
...@@ -293,6 +295,11 @@ class MediaController extends Controller ...@@ -293,6 +295,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)
{ {
...@@ -47,24 +48,40 @@ class LoginController extends Controller ...@@ -47,24 +48,40 @@ class LoginController extends Controller
throw new ControllerException(400, '昵称必须填写'); throw new ControllerException(400, '昵称必须填写');
} }
$len = strlen($request->username);
if ($len < 5){
throw new \Exception('用户名称长度不能小于5个字符');
}
/** /**
* 用户名称是有四部分组成,姓名-新账号-旧账号-mis_uid * 用户名称是有三部分组成,姓名-新账号-旧账号
*/ * user用户名称有两种类型的账号,早期账号用户名称只有员工旧账户,二期项目用户名称由三部分组成
**/
$user = UserModel::where('name', 'regexp', '/^.*?'.$request->username.'/')->first(); $user = UserModel::where('name', 'regexp', '/^.*?'.$request->username.'/')->first();
if (!empty($user)){ if (!empty($user)){
//1.处理二期之后新用户名称
$temp = explode("-",$user["name"]);
if (count($temp)>1){
if (!in_array($request->username,array_slice($temp,1))){
throw new \Exception("用户名或者密码有误");
}
}else{
if ($request->username != $user->name){
throw new \Exception("用户名或者密码有误");
}
}
if (md5($request->password) != $user->password ){ if (md5($request->password) != $user->password ){
throw new \Exception('用户名或者密码有误'); throw new \Exception('用户名或者密码有误');
} }
//为了媒资新旧账号统一,需要以员工mis编号作为用户唯一标识符
if (!$user->mis_uid){ if (!$user->mis_uid){
/** $request->replace(array_merge($request->all(),["staffNo"=>$request->username]));
* 获取mis用户信息
*/
$userInfo = UserModel::getMisInfo($request);
#获取mis用户信息
$userInfo = UserModel::getMisInfo($request);
$userid = $userInfo['userId']; $userid = $userInfo['userId'];
$flag = UserModel::where("_id",$user->_id)->update(['mis_uid'=>$userid]); $flag = UserModel::where("_id",$user->_id)->update(['mis_uid'=>$userid]);
...@@ -72,12 +89,12 @@ class LoginController extends Controller ...@@ -72,12 +89,12 @@ class LoginController extends Controller
LogModel::addlog(['更新用户mis_uid失败'=>json_encode(['mis_uid'=>$userid])]); LogModel::addlog(['更新用户mis_uid失败'=>json_encode(['mis_uid'=>$userid])]);
throw new \Exception("更新用户mis_uid失败"); throw new \Exception("更新用户mis_uid失败");
} }
} }
}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"];
...@@ -89,7 +106,7 @@ class LoginController extends Controller ...@@ -89,7 +106,7 @@ class LoginController extends Controller
} }
$data_arr = [ $data_arr = [
'name' => $userInfo['nickName'], 'name' => $userInfo['nickName'],//包含了三部分数据,姓名-新账号-旧账号
'password' => md5($request->password), 'password' => md5($request->password),
'organization_id' => 0, 'organization_id' => 0,
'status' => 0, 'status' => 0,
......
...@@ -111,6 +111,7 @@ class MediaCategoryController extends Controller ...@@ -111,6 +111,7 @@ class MediaCategoryController extends Controller
SrsHookValidate::srsHookCallback($request,[ SrsHookValidate::srsHookCallback($request,[
'status' => '', 'status' => '',
'id' => ''
]); ]);
MediaCategoryModel::disable($request,$id); MediaCategoryModel::disable($request,$id);
......
...@@ -143,6 +143,7 @@ class MediaController extends Controller ...@@ -143,6 +143,7 @@ class MediaController extends Controller
'start_time'=> $data_time, 'start_time'=> $data_time,
'end_time' => $data_time, 'end_time' => $data_time,
'create_time'=> $data_time, 'create_time'=> $data_time,
'status' => "1",
); );
$request->replace(array_merge($request->all(),$params)); $request->replace(array_merge($request->all(),$params));
......
...@@ -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);
......
...@@ -113,6 +113,7 @@ class MediaCategoryModel extends Eloquent ...@@ -113,6 +113,7 @@ class MediaCategoryModel extends Eloquent
'media_category_id' => $request->media_category_id??'', 'media_category_id' => $request->media_category_id??'',
'description' => $request->description??'', 'description' => $request->description??'',
'create_time' => $create_time, 'create_time' => $create_time,
"call_back" => $request->call_back??"media/cleanCache"
]; ];
$mediaCatg = MediaCategoryModel::where('name',$request->name)->first(); $mediaCatg = MediaCategoryModel::where('name',$request->name)->first();
...@@ -200,4 +201,26 @@ class MediaCategoryModel extends Eloquent ...@@ -200,4 +201,26 @@ class MediaCategoryModel extends Eloquent
return $flag; return $flag;
} }
/**
* 根据媒资名称,获取媒资信息。
* @param $name
* @return mixed
* @throws DatabaseException
*/
public static function getCategoryByName($name){
try{
$catg = MediaCategoryModel::where("name",$name)->first();
if (empty($catg)){
throw new \Exception("店铺不存在");
}
}catch (\Exception $exception){
throw new DatabaseException($exception->getMessage());
}
return $catg;
}
} }
...@@ -63,8 +63,8 @@ class MediaModel extends Eloquent ...@@ -63,8 +63,8 @@ class MediaModel extends Eloquent
} }
$match = [ $match = [
'status' => ["\$in" => [null,"1"]], 'status' => "1",
"media_url" => ["\$ne" => 'null'] // "media_url" => ["\$ne" => 'null']
]; ];
if (isset($request->media_id) && !empty($request->media_id)){ if (isset($request->media_id) && !empty($request->media_id)){
...@@ -96,28 +96,14 @@ class MediaModel extends Eloquent ...@@ -96,28 +96,14 @@ class MediaModel extends Eloquent
if (isset($request->end_time)&& !empty($request->end_time)){ if (isset($request->end_time)&& !empty($request->end_time)){
$end_time = new UTCDateTime(strtotime($request->end_time) * 1000);; $end_time = new UTCDateTime(strtotime($request->end_time) * 1000);;
$match['$match']['end_time'] = ['$lt' => $end_time ]; $match['end_time'] = ['$lt' => $end_time ];
} }
$aggregate[]['$match'] = $match; $aggregate[]['$match'] = $match;
$aggregate1 = $aggregate;
$aggregate[]['$sort'] = ['start_time' => $sort]; $aggregate[]['$sort'] = ['start_time' => $sort];
$aggregate1[]['$group'] = [ $count = MediaModel::where($match)->count();
'_id' => array(),//更具性别进行分组
'count'=>array('$sum'=>1)
];
$count = $collection->aggregate($aggregate1)->toArray();
if (isset($count[0])){
$count = $count[0]['count'];
}else{
$count = 0;
}
$skip = ((empty($request->page) ? 1 : $request->page)-1) * $limit; $skip = ((empty($request->page) ? 1 : $request->page)-1) * $limit;
...@@ -192,19 +178,18 @@ class MediaModel extends Eloquent ...@@ -192,19 +178,18 @@ class MediaModel extends Eloquent
throw new \Exception("媒资类别不存在"); throw new \Exception("媒资类别不存在");
} }
//replace 不为空的时候代表做视频替换操作,1.需要清空CDN缓存,2.将原来的视频保存至回收站,3.更新视频信息
if ($request->replace){ if ($request->replace){
$recycleId = RecycleModel::addRecycle($media_id); $recycleId = RecycleModel::addRecycle($media_id);
$call_back = $mediaCatg['call_back']; $call_back = $mediaCatg['call_back'];
#清空CND缓存
$url = getRbac($request,$call_back,$mediaCatg['media_category_id'] ,$type='clear_cache'); $url = getRbac($request,$call_back,$mediaCatg['media_category_id'] ,$type='clear_cache');
http_request_code($url,null,'POST',['mediaId'=>$media_id]); http_request_code($url,null,'POST',['mediaId'=>$media_id]);
#更新视频信息
self::updatehookMedia($request,$media_id); self::updatehookMedia($request,$media_id);
if (!$recycleId){ if (!$recycleId){
throw new \Exception('回收站保存失败'); throw new \Exception('回收站保存失败');
} }
...@@ -236,16 +221,6 @@ class MediaModel extends Eloquent ...@@ -236,16 +221,6 @@ class MediaModel extends Eloquent
$end_time = new UTCDateTime(strtotime($request->end_time) * 1000); $end_time = new UTCDateTime(strtotime($request->end_time) * 1000);
$create_time = new UTCDateTime(time() * 1000);; $create_time = new UTCDateTime(time() * 1000);;
// $start_time = $request->start_time;
// $end_time = $request->end_time;
// $create_time = date('Y-m-d H:i:s',time());
// if ($request->shop_id=='100'){
// $mediaCatg = MediaCategoryModel::where('_id','5f3d073a033f5a336b2b4346')->first();
// }
/** /**
* 处理文件名称,确认是否包含"&"符合 * 处理文件名称,确认是否包含"&"符合
...@@ -264,11 +239,13 @@ class MediaModel extends Eloquent ...@@ -264,11 +239,13 @@ 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",
'status' => $request->status??"0",
]; ];
}else{ }else{
...@@ -285,11 +262,13 @@ class MediaModel extends Eloquent ...@@ -285,11 +262,13 @@ 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",
'status' => $request->status??"0",
]; ];
} }
......
...@@ -212,18 +212,20 @@ class UserModel extends Authenticatable ...@@ -212,18 +212,20 @@ class UserModel extends Authenticatable
try{ try{
$password = strtolower($request->password);
$username = $request->username; $username = $request->username;
$password = $request->password;
$len = strlen($username);
if ($len < 5){
throw new \Exception('用户名称长度不能小于5个字符');
}
/** /**
* 陈腾飞-ctf37800-ctf88614-89043 * 陈腾飞-ctf37800-ctf88614
* 用户名称是有四部分组成,姓名-新账号-旧账号-mis_uid * 用户名称是有三部分组成,姓名-新账号-旧账号
*/ */
$user = UserModel::where('name', 'regexp', '/^.*?'.$username.'/')->first(); $user = UserModel::where('name', 'regexp', '/^.*?'.$username.'/')->first();
if (empty($user)|| !isset($user['mis_uid']) || $user['mis_uid'] == ""){
if (empty($user)|| !isset($user['mis_uid'])){
/** /**
* 获取mis用户基本信息 * 获取mis用户基本信息
*/ */
...@@ -233,8 +235,7 @@ class UserModel extends Authenticatable ...@@ -233,8 +235,7 @@ class UserModel extends Authenticatable
// $data['type'] = 6; // $data['type'] = 6;
// $data['username'] = $staffNo; // $data['username'] = $staffNo;
$request->replace(array_merge($request->all(),['mis_uid'=>'000000'])); $request->replace(array_merge($request->all(),['staffNo'=>$username]));
$url = getRbac($request,"api/mis/userinfo",'','mis_user'); $url = getRbac($request,"api/mis/userinfo",'','mis_user');
$result = http_request_code($url, $result = http_request_code($url,
...@@ -243,21 +244,18 @@ class UserModel extends Authenticatable ...@@ -243,21 +244,18 @@ class UserModel extends Authenticatable
); );
$userInfo = json_decode($result,true); $userInfo = json_decode($result,true);
if ($userInfo['data']["userId"] == ""){
if (empty($userInfo['data'])){ LogModel::addlog(["用户不存在",$request->all()]);
LogModel::addlog(["获取用户信息失败",$request->all()]); throw new \Exception("用户不存在");
throw new \Exception("获取用户信息失败");
} }
$userInfo = $userInfo['data']; $userInfo = $userInfo['data'];
$userid = $userInfo['userId']; $userid = $userInfo['userId'];
//$result = self::getUserPrivilege($request,['mis_uid'=>$userid]); //$result = self::getUserPrivilege($request,['mis_uid'=>$userid]);
if (empty($user)){ if (empty($user)){
//杨帆-yf18512-yf60144-8086 //杨帆-yf18512-yf60144-8086
$data_arr = [ $data_arr = [
'name' => $userInfo['nickName'], 'name' => $userInfo['nickName'],
...@@ -304,6 +302,7 @@ class UserModel extends Authenticatable ...@@ -304,6 +302,7 @@ class UserModel extends Authenticatable
} }
$result = self::getUserPrivilege($request,['mis_uid'=>$userid]); $result = self::getUserPrivilege($request,['mis_uid'=>$userid]);
if (empty($result)){ if (empty($result)){
LogModel::addlog(["暂无业务权限,请联系管理员",$request->all()]); LogModel::addlog(["暂无业务权限,请联系管理员",$request->all()]);
throw new \Exception('暂无业务权限,请联系管理员',403); throw new \Exception('暂无业务权限,请联系管理员',403);
...@@ -345,14 +344,15 @@ class UserModel extends Authenticatable ...@@ -345,14 +344,15 @@ class UserModel extends Authenticatable
$request->replace(array_merge($request->all(),$params)); $request->replace(array_merge($request->all(),$params));
$catgList = MediaCategoryModel::get()->toArray(); $catgList = MediaCategoryModel::where("status",0)->get()->toArray();
$tmp = []; $tmp = [];
foreach ($catgList as $key => $catg){ foreach ($catgList as $key => $catg){
$request->replace(array_merge($request->all(),['appid'=>$catg['media_category_id']])); $request->replace(array_merge($request->all(),['appid'=>$catg['media_category_id']]));
$url = getRbac($request,'api/open/check',$catg['media_category_id']); $url = getRbac($request,'api/open/check');
$data['appid'] = $catg['media_category_id']; $data['appid'] = $catg['media_category_id'];
$data['uid'] = $request->mis_uid; $data['uid'] = $request->mis_uid;
...@@ -398,8 +398,8 @@ class UserModel extends Authenticatable ...@@ -398,8 +398,8 @@ class UserModel extends Authenticatable
$data = sign($staffNo); $data = sign($staffNo);
$data['type'] = 6; $data['type'] = 6;
$data['username'] = $staffNo;*/ $data['username'] = $staffNo;*/
//第三方接口要求mis_uid是必填字段,第一次获取的时候默认传值000000
$request->replace(array_merge($request->all(),['mis_uid'=>'000000'])); //$request->replace(array_merge($request->all(),['mis_uid'=>'000000']));
$url = getRbac($request,"api/mis/userinfo",'','mis_user'); $url = getRbac($request,"api/mis/userinfo",'','mis_user');
...@@ -410,7 +410,7 @@ class UserModel extends Authenticatable ...@@ -410,7 +410,7 @@ class UserModel extends Authenticatable
$userInfo = json_decode($result,true); $userInfo = json_decode($result,true);
if (empty($userInfo['data']['userId'])){ if (!$userInfo['data']['userId']){
LogModel::addlog(["用户不存在",$request->all()]); LogModel::addlog(["用户不存在",$request->all()]);
throw new \Exception("用户不存在"); throw new \Exception("用户不存在");
} }
......
[{ [{
"id": 2,
"pid": 0,
"name": "权限管理",
"icon": "&#xe623;",
"link": "/privilege",
"slug": "privilege.index",
"description": "",
"show": 1,
"sort": 1,
"key_name": "privilege",
"son": []
}, {
"id": 11, "id": 11,
"pid": 0, "pid": 0,
"name": "媒体资源上传", "name": "媒体资源上传",
......
...@@ -73,13 +73,9 @@ ...@@ -73,13 +73,9 @@
<a title="编辑" href="/web/media_category/{{$media_category['_id']}}/edit"> <a title="编辑" href="/web/media_category/{{$media_category['_id']}}/edit">
<i class="iconfont">&#xe609;</i> <i class="iconfont">&#xe609;</i>
</a> </a>
{{--<a onclick="x_admin_show('修改密码','/web/password/{{$user->id}}',500,300)" title="修改密码"--}} {{--<a title="删除" onclick="member_del(this,'{{$media_category["_id"]}}')" href="javascript:;">--}}
{{--href="javascript:;">--}} {{--<i class="iconfont">&#xe695;</i>--}}
{{--<i class="iconfont">&#xe61a;</i>--}}
{{--</a>--}} {{--</a>--}}
<a title="删除" onclick="member_del(this,'{{$media_category["_id"]}}')" href="javascript:;">
<i class="iconfont">&#xe695;</i>
</a>
</td> </td>
</tr> </tr>
@endforeach @endforeach
...@@ -121,54 +117,6 @@ ...@@ -121,54 +117,6 @@
window.location.href = url; window.location.href = url;
} }
function member_del(row,id){
$.confirm({
// confirmButtonClass: 'btn-info',
// cancelButtonClass: 'btn-info',
cancelButtonClass: 'btn-info',
confirmButtonClass: 'btn-danger',
content:'确认要刪除吗?',
confirmButton:'确认',
cancelButton:'取消',
confirm: function () {
fetch_response('DELETE',"/web/media_category/"+id).then(function (res) {
if (res.code==200) {
$('body').toast({
position:'fixed',
content:res.msg,
duration:1000,
top:'50%'
});
setTimeout(function () {
window.location.href='/web/media_category';
},2000)
}else{
$('body').toast({
position:'fixed',
content:res.msg,
duration:1000,
top:'50%'
});
}
})
},
cancel: function () {
$('body').toast({
position:'fixed',
content:'已取消',
duration:1000,
top:'50%'
});
}
});
}
function member_stop(obj,id){ function member_stop(obj,id){
var status = $(obj).attr('status'); var status = $(obj).attr('status');
......
...@@ -17,11 +17,6 @@ use Illuminate\Support\Facades\Redirect; ...@@ -17,11 +17,6 @@ use Illuminate\Support\Facades\Redirect;
// #Route::resource('member','MemberController'); // #Route::resource('member','MemberController');
// //
//}); //});
#跟目录跳转
Route::get('/',function(){
return Redirect::to('web/login');
});
Route::group(['prefix' => 'web','middleware'=>[],'namespace'=>'Web'],function(){ Route::group(['prefix' => 'web','middleware'=>[],'namespace'=>'Web'],function(){
#后台首页 #后台首页
...@@ -32,7 +27,13 @@ Route::group(['prefix' => 'web','middleware'=>[],'namespace'=>'Web'],function(){ ...@@ -32,7 +27,13 @@ Route::group(['prefix' => 'web','middleware'=>[],'namespace'=>'Web'],function(){
#根目录跳转 #根目录跳转
Route::get('/', function () { Route::get('/', function () {
$user = \Illuminate\Support\Facades\Auth::user();
if (empty($user)){
return Redirect::to('web/login'); return Redirect::to('web/login');
}
return Redirect::to("/web/admin");
}); });
Route::get('/web', function () { Route::get('/web', function () {
return Redirect::to('web/login'); return Redirect::to('web/login');
......
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