CheckListController.php 2.6 KB
<?php
/**
 * @remark :
 * @name   :CheckListController.php
 * @author :lyh
 * @method :post
 * @time   :2025/4/17 9:25
 */

namespace App\Http\Controllers\Aside\Optimize;

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

/**
 * @remark :保存清单
 * @name   :CheckListController
 * @author :lyh
 * @method :post
 * @time   :2025/4/17 9:25
 */
class CheckListController extends BaseController
{
    public function __construct(Request $request)
    {
        parent::__construct($request);
        $this->model = new OptimizeCheckList();
    }

    /**
     * @remark :获取分页检查清单数据
     * @name   :lists
     * @author :lyh
     * @method :post
     * @time   :2025/4/17 9:31
     */
    public function lists(){
        $field = ['id','status','sort','text','created_at'];
        $data = $this->model->list($this->map,$this->page,$this->row,'id',$field);
        $this->response('success',Code::SUCCESS,$data);
    }

    /**
     * @remark :保存检查清单
     * @name   :save
     * @author :lyh
     * @method :post
     * @time   :2025/4/17 9:32
     */
    public function save(){
        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   :status
     * @author :lyh
     * @method :post
     * @time   :2025/4/17 9:48
     */
    public function status(){
        $this->request->validate([
            'id'=>'required',
            'status'=>'required'
        ],[
            'id.required' => '主键不能为空',
            'status.required' => '状态不能为空',
        ]);
        $data = $this->model->edit(['status'=>$this->param['status']],['id'=>$this->param['id']]);
        $this->response('success',Code::SUCCESS,$data);
    }

    /**
     * @remark :删除数据
     * @name   :del
     * @author :lyh
     * @method :post
     * @time   :2025/4/17 9:48
     */
    public function del(){
        $this->request->validate([
            'id'=>'required',
        ],[
            'id.required' => '主键不能为空',
        ]);
        if(!is_array($this->param['id'])){
            $this->param['id'] = ['in',[$this->param['id']]];
        }
        $data = $this->model->del($this->map);
        $this->response('success',Code::SUCCESS,$data);
    }
}