作者 Your Name

gx

  1 +<?php
  2 +
  3 +namespace App\Http\Controllers\Aside\Project;
  4 +
  5 +use App\Helper\Arr;
  6 +use App\Http\Controllers\Aside\BaseController;
  7 +use App\Http\Logic\Aside\Project\ProjectLogic;
  8 +use App\Http\Requests\Aside\Project\ProjectRequest;
  9 +use App\Rules\Ids;
  10 +use Illuminate\Http\Request;
  11 +
  12 +
  13 +/**
  14 + * 项目管理
  15 + * Class ProjectController
  16 + * @package App\Http\Controllers\Aside\Project
  17 + * @author zbj
  18 + * @date 2023/4/25
  19 + */
  20 +class ProjectController extends BaseController
  21 +{
  22 +
  23 + public function list(ProjectLogic $logic)
  24 + {
  25 + $map = [];
  26 + if(!empty($this->param['search'])){
  27 + $map[] = ['title', 'like', "%{$this->param['search']}%"];
  28 + }
  29 + $sort = ['id' => 'desc'];
  30 + $data = $logic->getList($map, $sort);
  31 +
  32 + return view("admin.project", ["list" => $data]);
  33 + }
  34 +
  35 + public function info(Request $request, ProjectLogic $logic){
  36 + $request->validate([
  37 + 'id'=>'required'
  38 + ],[
  39 + 'id.required' => 'ID不能为空'
  40 + ]);
  41 + $data = $logic->getInfo($this->param['id']);
  42 + return $this->success(Arr::twoKeepKeys($data, ['id', 'pid', 'title', 'manager_uids', 'remark']));
  43 + }
  44 +
  45 + public function save(ProjectRequest $request, ProjectLogic $logic)
  46 + {
  47 + $data = $logic->save($this->param);
  48 + return $this->success($data);
  49 + }
  50 +
  51 + public function delete(Request $request, ProjectLogic $logic)
  52 + {
  53 + $request->validate([
  54 + 'ids'=>['required', new Ids()]
  55 + ],[
  56 + 'ids.required' => 'ID不能为空'
  57 + ]);
  58 +
  59 + $data = $logic->delete($this->param['ids']);
  60 + return $this->success($data);
  61 + }
  62 +}