Skip to content

Commit

Permalink
init
Browse files Browse the repository at this point in the history
  • Loading branch information
chinagxwei committed Mar 12, 2024
1 parent ab1f089 commit 5c67653
Show file tree
Hide file tree
Showing 188 changed files with 6,116 additions and 410 deletions.
59 changes: 37 additions & 22 deletions app/Http/Controllers/AuthController.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
namespace App\Http\Controllers;

use App\Models\Member\Member;
use App\Models\System\SystemAdmin;
use App\Models\System\SystemNavigation;
use App\Models\System\SystemRouter;
use App\Models\User;

use App\Services\User\LoginService;
Expand Down Expand Up @@ -165,22 +168,24 @@ public function resetPassword(Request $request)
return self::failJsonResponse("请求错误");
}

/**
* Get the authenticated User.
*
* @return \Illuminate\Http\JsonResponse
*/
public function info()
{
/** @var User $user */
$user = auth('api')->user();
if ($admin = $user->admin) {
$admin->role->navigations;
return self::successJsonResponse($admin);
}

return self::failJsonResponse('Not Found');
}
// /**
// * Get the authenticated User.
// *
// * @return \Illuminate\Http\JsonResponse
// */
// public function info()
// {
// /** @var User $user */
// $user = auth('api')->user();
//
// if ($user && ($user->isSuperManager() || $user->isManager() || $user->isEnterpriseManager())) {
// $navigation_str = Cache::get(SystemNavigation::USER_NAVIGATION_KEY . "_{$user->id}");
// $info = $user->admin->toArray();
// $info['navigations'] = json_decode($navigation_str) ?? [];
// return self::successJsonResponse($info);
// }
// return self::failJsonResponse('Not Found');
// }

/**
* Log the user out (Invalidate the token).
Expand Down Expand Up @@ -224,17 +229,27 @@ protected function respondWithToken($token)
'expires_in' => time() + auth('api')->factory()->getTTL() * 60
];

// /** @var Admin $admin */
// if ($admin = $user->admin) {
// $admin->role->navigations;
// $result_array['userinfo'] = $admin;
// $result_array['im_token'] = ImService::setAdminSession($user->id);
// }
/** @var SystemAdmin $admin */
if ($admin = $user->admin) {
if ($user->isSuperManager()) {
$navigations = SystemNavigation::getParentAll([SystemNavigation::DEFAULT_WITH_CHILDREN_FIELD]);
} else {
$navigations = $admin->role->navigations;
}
Cache::put(SystemNavigation::USER_NAVIGATION_KEY . "_{$user->id}", json_encode($navigations->toArray()));
}
//
// /** @var Member $member */
// if ($member = $user->member) {
// $result_array['im_token'] = ImService::setMemberSession($member->id, $user->id);
// }
if (!$user->isSuperManager()) {
$routers = $admin->role->routers;
$routers_array = $routers->map(function ($v) {
return $v->router;
});
Cache::put(SystemRouter::USER_ROUTER_KEY . "_{$user->id}", json_encode($routers_array));
}

return self::successJsonResponse($result_array);
}
Expand Down
28 changes: 14 additions & 14 deletions app/Http/Controllers/Backend/Enterprise/EnterpriseController.php
Original file line number Diff line number Diff line change
Expand Up @@ -46,20 +46,20 @@ public function save(Request $request)
return self::failJsonResponse();
}

/**
* @param Request $request
* @return \Illuminate\Http\JsonResponse
*/
public function view(Request $request)
{
if ($request->isMethod('POST') && $id = $request->input('id')) {
if ($model = Enterprise::findOneByID($id)) {
return self::successJsonResponse($model);
}
}

return self::failJsonResponse();
}
// /**
// * @param Request $request
// * @return \Illuminate\Http\JsonResponse
// */
// public function view(Request $request)
// {
// if ($request->isMethod('POST') && $id = $request->input('id')) {
// if ($model = Enterprise::findOneByID($id)) {
// return self::successJsonResponse($model);
// }
// }
//
// return self::failJsonResponse();
// }

/**
* @param Request $request
Expand Down
10 changes: 10 additions & 0 deletions app/Http/Controllers/Backend/Product/VipController.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<?php

namespace App\Http\Controllers\Backend\Product;

use App\Http\Controllers\PlatformController;

class VipController extends PlatformController
{

}
19 changes: 19 additions & 0 deletions app/Http/Controllers/Backend/System/SystemAdminController.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,10 @@

use App\Http\Controllers\PlatformController;
use App\Models\System\SystemAdmin;
use App\Models\System\SystemNavigation;
use App\Models\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Cache;

class SystemAdminController extends PlatformController
{
Expand Down Expand Up @@ -43,6 +45,10 @@ public function save(Request $request)

$admin = new SystemAdmin();

$admin->setMobile($param['mobile'])
->setAdminRole($param['role_id'])
->setNickname($model->username);

if (!empty($param['remark'])) {
$admin->setRemark($param['remark']);
}
Expand Down Expand Up @@ -89,4 +95,17 @@ public function delete(Request $request)

return self::failJsonResponse();
}

public function info(){
/** @var User $user */
$user = auth('api')->user();

if ($user && ($user->isSuperManager() || $user->isManager() || $user->isEnterpriseManager())) {
$navigation_str = Cache::get(SystemNavigation::USER_NAVIGATION_KEY . "_{$user->id}");
$info = $user->admin->toArray();
$info['navigations'] = json_decode($navigation_str) ?? [];
return self::successJsonResponse($info);
}
return self::failJsonResponse('Not Found');
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ public function index(Request $request){
* @return \Illuminate\Http\JsonResponse
*/
public function view(Request $request){
if ($request->isMethod('POST') && $id = $request->input('id')) {
if ($id = $request->input('id')) {
if ($model = SystemAdminMessage::findOneByID($id)) {
return self::successJsonResponse($model);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,31 +3,29 @@
namespace App\Http\Controllers\Backend\System;

use App\Http\Controllers\PlatformController;
use App\Models\System\SystemAdminRole;
use App\Models\System\SystemAgreement;
use Illuminate\Http\Request;

class SystemAdminRoleController extends PlatformController
class SystemAgreementController extends PlatformController
{
protected $controller_event_text = "管理员角色";
protected $controller_event_text = "系统协议";

/**
* @param Request $request
* @return \Illuminate\Http\JsonResponse
*/
public function index(Request $request)
{
$res = (new SystemAdminRole())->searchBuild($request->all())->paginate();
public function index(Request $request){
$res = (new SystemAgreement())->searchBuild($request->all())->paginate();
return self::successJsonResponse($res);
}

/**
* @param Request $request
* @return \Illuminate\Http\JsonResponse
*/
public function view(Request $request)
{
if ($id = $request->input('id')) {
if ($model = SystemAdminRole::findOneByID($id)) {
public function view(Request $request){
if ($request->isMethod('POST') && $id = $request->input('id')) {
if ($model = SystemAgreement::findOneByID($id)) {
return self::successJsonResponse($model);
}
}
Expand All @@ -39,24 +37,24 @@ public function view(Request $request)
* @param Request $request
* @return \Illuminate\Http\JsonResponse
*/
public function save(Request $request)
{
public function save(Request $request){
if ($request->isMethod('POST')) {
$id = $request->input('id');

try {
$this->validate($request, [
'role_name' => 'required|min:5',
'title' => 'required|min:1',
'content' => 'required|min:1',
]);

if ($id > 0) {
$model = SystemAdminRole::findOneByID($id);
$model = SystemAgreement::findOneByID($id);
} else {
$model = new SystemAdminRole();
$model = new SystemAgreement();
}

if ($model->fill($request->all())->save()) {
$this->saveEvent($model->role_name);
$this->saveEvent($model->title);
return self::successJsonResponse();
}
} catch (\Exception $e) {
Expand All @@ -70,11 +68,10 @@ public function save(Request $request)
* @param Request $request
* @return \Illuminate\Http\JsonResponse
*/
public function delete(Request $request)
{
public function delete(Request $request){
if ($id = $request->input('id')) {
if ($model = SystemAdminRole::findOneByID($id)) {
$this->deleteEvent($model->role_name);
if ($model = SystemAgreement::findOneByID($id)) {
$this->deleteEvent($model->title);
$model->delete();
return self::successJsonResponse();
}
Expand Down
83 changes: 83 additions & 0 deletions app/Http/Controllers/Backend/System/SystemComplaintController.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
<?php

namespace App\Http\Controllers\Backend\System;
use App\Models\System\SystemComplaint;
use Illuminate\Http\Request;
use App\Http\Controllers\PlatformController;

class SystemComplaintController extends PlatformController
{
protected $controller_event_text = "系统投诉";

/**
* @param Request $request
* @return \Illuminate\Http\JsonResponse
*/
public function index(Request $request){
$res = (new SystemComplaint())->searchBuild($request->all())->paginate();
return self::successJsonResponse($res);
}

/**
* @param Request $request
* @return \Illuminate\Http\JsonResponse
*/
public function view(Request $request){
if ($request->isMethod('POST') && $id = $request->input('id')) {
if ($model = SystemComplaint::findOneByID($id)) {
return self::successJsonResponse($model);
}
}

return self::failJsonResponse();
}

/**
* @param Request $request
* @return \Illuminate\Http\JsonResponse
*/
public function save(Request $request){
if ($request->isMethod('POST')) {
$id = $request->input('id');

try {
$this->validate($request, [
'title' => 'required|min:1',
'content' => 'required|min:1',
'type' => 'required|min:1',
'status' => 'required|min:1',
]);

if ($id > 0) {
$model = SystemComplaint::findOneByID($id);
} else {
$model = new SystemComplaint();
}

if ($model->fill($request->all())->save()) {
$this->saveEvent($model->title);
return self::successJsonResponse();
}
} catch (\Exception $e) {
return self::failJsonResponse($e->getMessage());
}
}
return self::failJsonResponse();
}

/**
* @param Request $request
* @return \Illuminate\Http\JsonResponse
*/
public function delete(Request $request){
if ($id = $request->input('id')) {
if ($model = SystemComplaint::findOneByID($id)) {
$this->deleteEvent($model->title);
$model->delete();
return self::successJsonResponse();
}
}

return self::failJsonResponse();
}
}
Loading

0 comments on commit 5c67653

Please sign in to comment.