ProjectController.php 2.2 KB
<?php

namespace App\Http\Controllers\Aside\Project;

use App\Helper\Arr;
use App\Http\Controllers\Aside\BaseController;
use App\Http\Logic\Aside\Project\ProjectLogic;
use App\Http\Requests\Aside\Project\ProjectRequest;
use App\Models\InquirySet;
use App\Rules\Ids;
use Illuminate\Http\Request;


/**
 * 项目管理
 * Class ProjectController
 * @package App\Http\Controllers\Aside\Project
 * @author zbj
 * @date 2023/4/25
 */
class ProjectController extends BaseController
{

    public function list(ProjectLogic $logic)
    {
        $map = [];
        if(!empty($this->param['search'])){
            $map[] = ['title', 'like', "%{$this->param['search']}%"];
        }
        $sort = ['id' => 'desc'];
        $data = $logic->getList($map, $sort);

        return view("admin.project", ["list" => $data]);
    }

    public function info(Request $request, ProjectLogic $logic){
        $request->validate([
            'id'=>'required'
        ],[
            'id.required' => 'ID不能为空'
        ]);
        $data = $logic->getInfo($this->param['id']);
        return $this->success($data);
    }

    public function save(ProjectRequest $request, ProjectLogic $logic)
    {
        $data = $logic->save($this->param);
        return $this->success($data);
    }

    /**
     * 询盘通知设置
     * @param ProjectRequest $request
     * @param ProjectLogic $logic
     * @return \Illuminate\Http\JsonResponse
     * @throws \Psr\Container\ContainerExceptionInterface
     * @throws \Psr\Container\NotFoundExceptionInterface
     * @author zbj
     * @date 2023/5/17
     */
    public function inquiry_set(Request $request, ProjectLogic $logic){
        $request->validate([
            'project_id'=>'required'
        ],[
            'project_id.required' => '项目ID不能为空'
        ]);
        if($request->isMethod('get')){
            $data = InquirySet::where('project_id', $request->project_id)->first();
            if(!$data){
                $data = ['emails' => '', 'phones' => ''];
            }else{
                $data = $data->toArray();
            }
            return $this->success($data);
        }

        $data = $logic->saveInquirySet($this->param);
        return $this->success($data);
    }
}