CustomController.php 2.4 KB
<?php

namespace App\Http\Controllers\Bside;


use App\Enums\Common\Code;
use App\Http\Logic\Bside\CustomLogic;
use App\Http\Requests\Bside\Custom\CustomRequest;
use App\Models\BCustom;

/**
 * 自定义 页面
 * @author:dc
 * @time 2023/5/9 10:08
 * Class CustomController
 * @package App\Http\Controllers\Bside
 */
class CustomController extends BaseController
{

    /**
     * 列表数据
     * @throws \Psr\Container\ContainerExceptionInterface
     * @throws \Psr\Container\NotFoundExceptionInterface
     * @author:dc
     * @time 2023/5/8 16:37
     */
    public function index(){

        // 每页数量
        $limit = intval($this->param['limit']??20);

        $name  = request()->get('name');
        $map = [];
        if($name){
            $map[] = ['name','like','%'.htmlspecialchars($name).'%'];
        }

        $lists = CustomLogic::instance()->getList(
            $map,
            [],
            ['id','name','title','status','url','keywords','description','created_at','updated_at'],
            $limit
        );

        return $this->success($lists);

    }


    /**
     * 新增修改
     * @return \Illuminate\Http\JsonResponse
     * @throws \Illuminate\Validation\ValidationException
     * @throws \Psr\Container\ContainerExceptionInterface
     * @throws \Psr\Container\NotFoundExceptionInterface
     * @author:dc
     * @time 2023/5/8 17:06
     */
    public function save(CustomRequest $request){

        return $this->success(CustomLogic::instance()->save($request->validated()));
    }


    /**
     * 删除数据
     * @return \Illuminate\Http\JsonResponse
     * @author:dc
     * @time 2023/5/9 9:20
     */
    public function delete(CustomRequest $request){

        CustomLogic::instance()->delete($request->validated()['id']);

        return $this->response('删除成功');

    }



    /**
     * @param $id
     * @return \Illuminate\Http\JsonResponse
     * @author:dc
     * @time 2023/5/10 14:10
     */
    public function html($id)
    {
        $data = BCustom::_find($this->user['project_id'],$id);
        if(!$data){
            return $this->response('数据不存在',Code::SYSTEM_ERROR);
        }
        if($this->isPost()){
            $html = $this->param['html']??'';

            $data->html = $html;

            $data->save();

        }


        return $this->response('',Code::SUCCESS,$data['html']);

    }




}