all(); $list = VisitTime::where(function ($query) use ($all){ })->orderBy($all['sort_name']??'id',$all['sort_type']??'desc') ->paginate($all['page_size']??20); return $this->success($list); } /** * @OA\Get( * path="/api/admin/visit_time/show", * tags={"拜访时间"}, * summary="详情", * description="", * @OA\Parameter(name="id", in="query", @OA\Schema(type="string"), required=true, description="id"), * @OA\Parameter(name="token", in="query", @OA\Schema(type="string"), required=true, description="token"), * @OA\Response( * response="200", * description="暂无" * ) * ) */ public function show() { $all = \request()->all(); $messages = [ 'id.required' => 'Id必填', ]; $validator = Validator::make($all, [ 'id' => 'required' ],$messages); if($validator->fails()){ return $this->fail([ResponseCode::ERROR_PARAMETER,implode(',',$validator->errors()->all())]); } $detail = VisitTime::find($all['id']); return $this->success($detail); } /** * @OA\Post( * path="/api/admin/visit_time/save", * tags={"拜访时间"}, * summary="更新", * description="", * @OA\Parameter(name="id", in="query", @OA\Schema(type="int"), required=true, description="Id(存在更新,不存在新增)"), * @OA\Parameter(name="start_time", in="query", @OA\Schema(type="string"), required=false, description="开始时间"), * @OA\Parameter(name="end_time", in="query", @OA\Schema(type="string"), required=false, description="结束时间"), * @OA\Parameter(name="admin_id", in="query", @OA\Schema(type="string"), required=false, description="不用填"), * @OA\Parameter(name="department_id", in="query", @OA\Schema(type="string"), required=false, description="不用填"), * @OA\Parameter(name="token", in="query", @OA\Schema(type="string"), required=true, description="token"), * @OA\Response( * response="200", * description="暂无" * ) * ) */ public function save() { $all = \request()->all(); $messages = [ 'start_time.required' => '开始时间必填' ]; $validator = Validator::make($all, [ 'start_time' => 'required' ],$messages); if($validator->fails()){ return $this->fail([ResponseCode::ERROR_PARAMETER,implode(',',$validator->errors()->all())]); } DB::beginTransaction(); try { if(isset($all['id'])){ $model = VisitTime::find($all['id']); }else{ $model = new VisitTime(); $all['admin_id'] = $this->getUserId(); $all['department_id'] = $this->getUser()->department_id; } $model->fill($all); $model->save(); DB::commit(); return $this->success('更新成功'); }catch (\Exception $exception) { DB::rollBack(); return $this->fail([$exception->getCode(), $exception->getMessage()]); } } /** * @OA\Get( * path="/api/admin/visit_time/destroy", * tags={"拜访时间"}, * summary="删除", * description="", * @OA\Parameter(name="id", in="query", @OA\Schema(type="string"), required=true, description="id"), * @OA\Parameter(name="token", in="query", @OA\Schema(type="string"), required=true, description="token"), * @OA\Response( * response="200", * description="暂无" * ) * ) */ public function destroy() { $all = \request()->all(); $messages = [ 'id.required' => 'Id必填', ]; $validator = Validator::make($all, [ 'id' => 'required' ],$messages); if($validator->fails()){ return $this->fail([ResponseCode::ERROR_PARAMETER,implode(',',$validator->errors()->all())]); } VisitTime::where('id', $all['id'])->delete(); return $this->success('删除成功'); } }