ProjectWhiteHatAffixController.php 2.8 KB
<?php
/**
 * @remark :
 * @name   :ProjectWhiteHatAffixController.php
 * @author :lyh
 * @method :post
 * @time   :2025/6/23 10:59
 */

namespace App\Http\Controllers\Aside\Project;

use App\Enums\Common\Code;
use App\Http\Controllers\Aside\BaseController;
use App\Models\Project\ProjectWhiteHatAffix;
use Illuminate\Http\Request;

/**
 * @remark :白帽seo前后缀
 * @name   :ProjectWhiteHatAffixController
 * @author :lyh
 * @method :post
 * @time   :2025/6/23 10:59
 */
class ProjectWhiteHatAffixController extends BaseController
{
    public function __construct(Request $request)
    {
        $this->model = new ProjectWhiteHatAffix();
        parent::__construct($request);
    }

    /**
     * @remark :根据项目获取白帽前后缀
     * @name   :lists
     * @author :lyh
     * @method :post
     * @time   :2025/6/23 11:00
     * @param  :project_id->项目id
     */
    public function list(){
        $this->request->validate([
            'project_id'=>'required',
        ],[
            'project_id.required' => '项目id不能为空',
        ]);
        if(isset($this->map['project_id']) && !empty($this->map['project_id'])){
            $this->map['project_id'] = ['in',[0,$this->map['project_id']]];
        }
        $data = $this->model->list($this->map);
        $this->response('success',Code::SUCCESS,$data);
    }

    /**
     * @remark :保存数据
     * @name   :save
     * @author :lyh
     * @method :post
     * @time   :2025/6/23 11:04
     * @param  :prefix->前缀
     * @param  :suffix->后缀
     * @param  :project_id->项目id
     */
    public function save(){
        $this->request->validate([
            'project_id'=>'required',
            'name'=>'required',
            'type'=>'required',
        ],[
            'project_id.required' => '项目id不能为空',
            'name.required' => '前后缀名称不能为空',
            'type.required' => '类型不能为空',
        ]);
        if(isset($this->param['id']) && !empty($this->param['id'])){
            $id = $this->param['id'];
            $this->model->edit($this->param,['id'=>$this->param['id']]);
        }else{
            $id = $this->model->addReturnId($this->param);
        }
        $this->response('success',Code::SUCCESS,['id'=>$id]);
    }

    /**
     * @remark :删除数据
     * @name   :del
     * @author :lyh
     * @method :post
     * @time   :2025/6/23 11:08
     * @param  :ids->id集合数组
     */
    public function del(){
        $this->request->validate([
            'ids'=>'required',
        ],[
            'ids.required' => '项目id不能为空',
        ]);
        foreach ($this->param['ids'] as $id){
            $info = $this->model->read(['id'=>$id]);
            if($info['project_id'] == 0){
                continue;
            }
            $this->model->del(['id'=>$id]);
        }
        $this->response('success');
    }
}