作者 赵彬吉

Merge branch 'develop' of http://47.244.231.31:8099/zhl/globalso-v6 into develop

... ... @@ -30,14 +30,12 @@ class BaseController extends Controller
$this->request = $request;
$this->param = $this->request->all();
$this->token = $this->request->header('token');
$this->get_param();
if(!empty($this->token) && !empty(Cache::get($this->token))){
$info = Cache::get($this->token);
$this->user = $info;
$this->uid = $info['id'];
//参数处理
$this->get_param();
}
}
... ...
<?php
namespace App\Http\Controllers\Aside\Project;
use App\Http\Controllers\Aside\BaseController;
use App\Http\Logic\Aside\Project\OptimizeLogic;
/**
* @remark :优化方案设置
* @name :OptimizeController
* @author :lyh
* @time :2023/6/20 14:33
*/
class OptimizeController extends BaseController
{
/**
* @remark :授权域名
* @name :empowerDomain
* @author :lyh
* @method :post
* @time :2023/6/20 15:10
*/
public function empowerDomain(OptimizeLogic $optimizeLogic){
$this->request->validate([
'id'=>'required',
'gsc_id'=>'required'
],[
'id.required' => '审核域名ID不能为空',
'gsc_id.required' => 'GSC账号ID不能为空'
]);
$optimizeLogic->empowerDomain();
$this->response('success');
}
/**
* @remark :优化设置
* @name :save
* @author :lyh
* @method :post
* @time :2023/6/20 14:33
*/
public function save(){
$this->response('success');
}
}
... ...
<?php
namespace App\Http\Controllers\Aside\Project;
use App\Enums\Common\Code;
use App\Http\Controllers\Aside\BaseController;
use App\Http\Logic\Aside\Project\GscLogic;
use App\Http\Requests\Aside\User\GscRequest;
/**
* @remark :优化gsc账号
* @name :ProjectGscController
* @author :lyh
* @time :2023/6/19 11:25
*/
class ProjectGscController extends BaseController
{
/**
* @remark :gsc账号列表
* @name :lists
* @author :lyh
* @method :post
* @time :2023/6/19 11:25
*/
public function lists(GscLogic $gscLogic){
$lists = $gscLogic->GscLists($this->map,$this->page,$this->row,$this->order);
$this->response('success',Code::SUCCESS,$lists);
}
/**
* @remark :根据gsc账号获取域名
* @name :lists
* @author :lyh
* @method :post
* @time :2023/6/19 10:48
*/
public function domainLists(GscLogic $gscLogic){
$this->request->validate([
'gsc_id'=>'required'
],[
'gsc_id.required' => 'GSC账号ID不能为空'
]);
$lists = $gscLogic->DomainLists($this->map,$this->page,$this->row,$this->order);
$this->response('success',Code::SUCCESS,$lists);
}
/**
* @remark :获取gsc账号详情
* @name :read
* @author :lyh
* @method :post
* @time :2023/6/19 16:55
*/
public function read(GscLogic $gscLogic){
$this->request->validate([
'id'=>'required'
],[
'id.required' => 'GSC账号ID不能为空'
]);
$info = $gscLogic->GscRead();
$this->response('success',Code::SUCCESS,$info);
}
/**
* @remark :添加/编辑gsc账号
* @name :add
* @author :lyh
* @method :post
* @time :2023/6/19 16:28
*/
public function save(GscRequest $gscRequest,GscLogic $gscLogic){
if(isset($this->param['id'])){
$gscRequest->validate([
'id'=>'required'
],[
'id.required' => 'GSC账号ID不能为空'
]);
}
$gscRequest->validated();
$gscLogic->GscSave();
$this->response('success');
}
/**
* @remark :逻辑删除gsc账号
* @name :del
* @author :lyh
* @method :post
* @time :2023/6/19 16:30
*/
public function del(GscLogic $gscLogic){
$this->request->validate([
'id'=>'required'
],[
'id.required' => 'GSC账号ID不能为空'
]);
$gscLogic->GscDel();
$this->response('success');
}
}
... ...
... ... @@ -143,6 +143,6 @@ class ComController extends BaseController
}
public function ceshi(){
return $this->request->route()->getAction();
}
}
... ...
... ... @@ -20,8 +20,9 @@ class MailController extends BaseController
public function lists(){
$mailModel = new MailModel();
//获取当前用户下的所有站内信
$lists = $mailModel->where('user_list','like','%,'.$this->uid.',%')->orWhere('user_list', '')->select(['*'])->orderBy($this->order,'desc')
->paginate($this->row, ['*'], 'page', $this->page);
$lists = $mailModel->where('status',0)
->where('user_list','like','%,'.$this->uid.',%')->orWhere('user_list', '')->select(['*'])->orderBy($this->order,'desc')
->get();
if(!empty($lists)){
$lists = $lists->toArray();
}
... ...
... ... @@ -195,8 +195,7 @@ class TemplateController extends BaseController
*/
public function chunk(){
$lists = TemplateChunkLogic::instance()->getList([['status','=',1]],['sort'=>'asc'],['*'],false)->toArray();
$lists = TemplateChunkLogic::instance()->getList([['status','=',1]],['sort'=>'asc'],['*'],false);
foreach ($lists as &$list){
unset($list['created_at']);
unset($list['updated_at']);
... ...
<?php
namespace App\Http\Logic\Aside\Project;
use App\Http\Logic\Aside\BaseLogic;
use App\Models\Project\DomainInfo;
use App\Models\Project\Gsc;
class GscLogic extends BaseLogic
{
public function __construct()
{
parent::__construct();
$this->model = new Gsc();
$this->param = $this->requestAll;
}
/**
* @remark :gsc账号列表
* @name :GscLists
* @author :lyh
* @method :post
* @time :2023/6/19 11:32
*/
public function GscLists($map,$page,$row,$order = 'created_at',$files = ['*']){
$lists = $this->model->lists($map,$page,$row,$order,$files);
if(!empty($lists['list'])){
$domainInfoModel = new DomainInfo();
foreach ($lists['list'] as $k => $v){
$lists['list'][$k]['tal'] = $domainInfoModel->formatQuery(['gsc_id'=>$v['id']])->count();
$lists['list'][$k]['pub'] = $domainInfoModel->formatQuery(['gsc_id'=>$v['id'],'status'=>$domainInfoModel::STATUS_TRUE])->count();
$lists['list'][$k]['num'] = $lists['list'][$k]['tal'] - $lists['list'][$k]['pub'];
}
}
return $this->success($lists);
}
/**
* @remark :gsc账号审核域名列表
* @name :DomainLists
* @author :lyh
* @method :post
* @time :2023/6/19 15:56
*/
public function DomainLists($map,$page,$row,$order = 'created_at',$files = ['*']){
$domainInfoModel = new DomainInfo();
$lists = $domainInfoModel->lists($map,$page,$row,$order,$files);
return $this->success($lists);
}
/**
* @remark :gsc账户详情
* @name :GscRead
* @author :lyh
* @method :post
* @time :2023/6/19 17:07
*/
public function GscRead(){
$info = $this->model->read($this->param);
return $this->success($info);
}
/**
* @remark :更新账号列表
* @name :save
* @author :lyh
* @method :post
* @time :2023/6/19 16:21
*/
public function GscSave(){
if(isset($this->param['id']) && !empty($this->param['id'])){
$rs = $this->model->edit($this->param,['id'=>$this->param['id']]);
}else{
$rs = $this->model->add($this->param);
}
if($rs === false){
$this->fail('error');
}
return $this->success();
}
/**
* @remark :删除账号列表
* @name :del
* @author :lyh
* @method :post
* @time :2023/6/19 16:31
*/
public function GscDel(){
$this->param['id'] = ['in',$this->param['id']];
$rs = $this->model->del($this->param);
if($rs === false){
$this->fail('error');
}
return $this->success();
}
}
... ...
<?php
namespace App\Http\Logic\Aside\Project;
use App\Http\Logic\Aside\BaseLogic;
use App\Models\Project\DeployOptimize;
use App\Models\Project\DomainInfo;
/**
* @remark :优化授权域名
* @name :OptimizeLogic
* @author :lyh
* @time :2023/6/20 15:14
*/
class OptimizeLogic extends BaseLogic
{
public function __construct()
{
parent::__construct();
$this->model = new DeployOptimize();
$this->param = $this->requestAll;
}
/**
* @remark :授权域名
* @name :empowerDomain
* @author :lyh
* @method :post
* @time :2023/6/20 15:12
*/
public function empowerDomain(){
$domain = new DomainInfo();
$rs = $domain->edit($this->param,['id'=>$this->param['id']]);
if($rs === false){
$this->fail('error');
}
return $this->success();
}
}
... ...
... ... @@ -26,8 +26,8 @@ class MailLogic extends BaseLogic
//生成一条阅读记录
$mailUserModel = new MailUserModel();
$data = [
'user_id'=>$info['id'],
'mail_id'=>$this->user['id'],
'user_id'=>$this->user['id'],
'mail_id'=>$info['id'],
];
//查询当前记录是否存在
$read_info = $mailUserModel->read($data);
... ...
... ... @@ -46,6 +46,7 @@ class ProofreadingLogic extends BaseLogic
$v['project_id'] = $this->user['project_id'];
$v['language_id'] = $this->param['language_id'];
$v['type'] = $this->param['type'];
$v['alias'] = $this->param['alias'];
$this->param['data'][$k] = $v;
}
//新增
... ...
<?php
namespace App\Http\Requests\Aside\User;
use Illuminate\Foundation\Http\FormRequest;
class GscRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'account'=>'required|string|regex:/^1[3-9]\d{9}$/',
'password'=>'required|string',
'mobile'=>'required|string',
'remark'=>'required|string',
];
}
public function messages()
{
return [
'account.required'=>'名称必须填写',
'account.regex'=>'请输入正确的手机号',
'password.required'=>'密码必须填写',
'mobile.required'=>'手机号码必须填写',
'remark.required'=>'备注必须填写',
];
}
}
... ...
... ... @@ -7,7 +7,7 @@ use App\Models\Base;
/**
* Class DomainInfo
*
* @package App\Models\Aside\Domain
* @package App\Models\Aside\DomainLogic
* @Author YiYuan-LIn
* @Date : 2019/5/16
* 域名信息模型
... ...
... ... @@ -5,7 +5,7 @@ namespace App\Models\Aside\Domain;
use Illuminate\Database\Eloquent\Model;
/**
* App\Models\Aside\Domain\DomainInfoLog
* App\Models\Aside\DomainLogic\DomainInfoLog
*
* @property int $id
* @property int|null $user_id 操作用户
... ...
... ... @@ -9,10 +9,10 @@ class Manage extends Base
//设置关联表名
protected $table = 'gl_manage';
protected $hidden = ['password', 'token'];
protected $hidden = ['password'];
const STATUS_ACTIVE = 1;
const STATUS_DISABLE = 0;
const STATUS_ACTIVE = 0;
const STATUS_DISABLE = 1;
/**
* 超级管理员ID, 当前ID拥有所有权限, 不能进行修改
... ... @@ -21,8 +21,8 @@ class Manage extends Base
public function statusMap(){
return [
self::STATUS_ACTIVE => '正常',
self::STATUS_DISABLE => '禁用',
self::STATUS_ACTIVE => '禁用',
self::STATUS_DISABLE => '正常',
];
}
}
... ...
... ... @@ -9,6 +9,8 @@ use Illuminate\Support\Facades\Cache;
class DomainInfo extends Base
{
const STATUS_TRUE = 1;//审核成功状态
//设置关联表名
protected $table = 'gl_project_domain_info';
... ...
<?php
namespace App\Models\Project;
use App\Models\Base;
/**
* @remark :项目优化审核gsc
* @name :Gsc
* @author :lyh
* @time :2023/6/19 11:30
*/
class Gsc extends Base
{
protected $table = 'gl_project_deploy_gsc';
}
... ...
... ... @@ -146,7 +146,7 @@ return [
/*
|--------------------------------------------------------------------------
| Session Cookie Domain
| Session Cookie DomainLogic
|--------------------------------------------------------------------------
|
| Here you may change the domain of the cookie used to identify a session
... ...
... ... @@ -95,6 +95,20 @@ Route::middleware(['aloginauth'])->group(function () {
});
});
//优化gsc账号记录表
Route::prefix('gsc')->group(function () {
Route::any('/', [Aside\Project\ProjectGscController::class, 'lists'])->name('admin.lists');
Route::any('/domainLists', [Aside\Project\ProjectGscController::class, 'domainLists'])->name('admin.domainLists');
Route::any('/read', [Aside\Project\ProjectGscController::class, 'read'])->name('admin.read');
Route::any('/save', [Aside\Project\ProjectGscController::class, 'save'])->name('admin.save');
Route::any('/del', [Aside\Project\ProjectGscController::class, 'del'])->name('admin.del');
});
//优化gsc账号记录表
Route::prefix('optimize')->group(function () {
Route::any('/empowerDomain', [Aside\Project\OptimizeController::class, 'empowerDomain'])->name('admin.empowerDomain');
});
//项目管理
Route::prefix('project')->group(function () {
Route::get('/', [Aside\Project\ProjectController::class, 'list'])->name('admin.project');
... ...
... ... @@ -318,7 +318,7 @@ Route::middleware(['bloginauth'])->group(function () {
//无需登录验证的路由组
Route::group([], function () {
Route::any('/login', [\App\Http\Controllers\Bside\ComController::class, 'login'])->name('login');
Route::any('/ceshi', [\App\Http\Controllers\Bside\ComController::class, 'ceshi'])->name('ceshi');
Route::any('/ceshi', [\App\Http\Controllers\Bside\ComController::class, 'ceshi'])->name('com_ceshi');
Route::any('/sendLoginSms', [\App\Http\Controllers\Bside\ComController::class, 'sendLoginSms'])->name('sendLoginSms');
Route::get('/file/download', [\App\Http\Controllers\Bside\FileController::class, 'download'])->name('file_download');
Route::any('/image/{hash}/{w?}/{h?}', [\App\Http\Controllers\File\ImageController::class, 'index'])->name('image_show');
... ...