CustomModuleController.php 2.8 KB
<?php
/**
 * @remark :
 * @name   :CustomModuleController.php
 * @author :lyh
 * @method :post
 * @time   :2023/12/4 15:42
 */

namespace App\Http\Controllers\Aside\CustomModule;

use App\Enums\Common\Code;
use App\Http\Controllers\Aside\BaseController;
use App\Http\Logic\Aside\CustomModule\CustomModuleLogic;
use App\Models\CustomModule\CustomModule;
use App\Services\ProjectServer;
use Illuminate\Support\Facades\DB;

/**
 * @remark :自定义模块
 * @name   :CustomModuleController
 * @author :lyh
 * @method :post
 * @time   :2023/12/4 15:42
 */
class CustomModuleController extends BaseController
{
    /**
     * @remark :获取自定义模块列表
     * @name   :ModuleList
     * @author :lyh
     * @method :post
     * @time   :2023/12/4 15:43
     */
    public function lists(){
        ProjectServer::useProject($this->param['project_id']);
        $customModule = new CustomModule();
        $this->map['status'] = 0;
        $lists = $customModule->lists($this->map,$this->page,$this->row,$this->order = ['topping_time','sort','id']);
        DB::disconnect('custom_mysql');
        $this->response('success',Code::SUCCESS,$lists);
    }

    /**
     * @remark :获取当前数据详情
     * @name   :info
     * @author :lyh
     * @method :post
     * @time   :2023/12/4 16:09
     */
    public function info(CustomModuleLogic $logic){
        $this->request->validate([
            'id'=>['required'],
        ],[
            'id.required' => 'ID不能为空',
        ]);
        $info = $logic->getCustomModuleInfo();
        $this->response('success',Code::SUCCESS,$info);
    }

    /**
     * @remark :保存数据
     * @name   :save
     * @author :lyh
     * @method :post
     * @time   :2023/12/4 15:45
     */
    public function save(CustomModuleLogic $logic){
        $this->request->validate([
            'name'=>['required'],
        ],[
            'name.required' => '模块名称不能为空',
        ]);
        $logic->customModuleSave();
        $this->response('success');
    }

    /**
     * @remark :删除
     * @name   :del
     * @author :lyh
     * @method :post
     * @time   :2023/12/5 9:53
     */
    public function del(CustomModuleLogic $logic){
        $this->request->validate([
            'id'=>['required'],
        ],[
            'id.required' => 'ID不能为空',
        ]);
        $logic->customModuleDel();
        $this->response('success');
    }

    /**
     * @remark :一键指定
     * @name   :topping
     * @author :lyh
     * @method :post
     * @time   :2023/12/21 10:57
     */
    public function topping(CustomModuleLogic $logic){
        $this->request->validate([
            'id'=>['required'],
        ],[
            'id.required' => 'ID不能为空',
        ]);
        $logic->setTopping();
        $this->response('success');
    }
}