memberGroupRepository = $memberGroupRepository; } //列表 public function index(Request $request){ $topicGroup = $this->memberGroupRepository->index($request->all()); $fractal = new Manager(); $resource = new Collection($topicGroup, new MemberGroupTansformer()); $resource->setPaginator(new IlluminatePaginatorAdapter($topicGroup)); $data = $fractal->createData($resource)->toArray(); $data['extra'] = [ 'filters' => [ 'name', ], 'columns' => [ 'id', 'name', 'member_list', 'video_count', 'created_at', 'is_suggest', ] ]; return $data; } //创建 public function create(Request $request){ $data = $request->only('name','is_suggest','member_list'); $validator = Validator::make($data, [ 'name' => 'required|string|max:20', 'is_suggest' => ['required', Rule::in(0,1)], 'member_list' => 'string', ]); if ($validator->fails()) { return $this->response->error($validator->errors()->first(), 500); } return $this->memberGroupRepository->create($data); } //详情 public function view(Request $request){ $data = $request->all(); $validator = Validator::make($data, [ 'id' => 'required|integer|max:12', ]); if ($validator->fails()) { return $this->response->error($validator->errors()->first(), 500); } $info = $this->videoGroupRepository->view($data); $videoInfo = $this->videoGroupRepository->VideoInfoIndex($data); $fractal = new Manager(); $resource = new Collection($videoInfo, new VideoGroupInfoTransformer()); $resource->setPaginator(new IlluminatePaginatorAdapter($videoInfo)); $data = $fractal->createData($resource)->toArray(); $data['extra'] = [ 'filters' => [ 'name', ], 'columns' => [ 'post_id', 'username', 'topic', 'video', 'pv', 'praise_count', ], 'name'=>$info['name'], 'id'=>$info['id'], ]; return $data; } //设置排序 public function edit(Request $request){ $data = $request->only('id','name','is_suggest','member_list'); $validator = Validator::make($data, [ 'id' => 'required|integer|max:12', 'name' => 'required|string|max:20', 'is_suggest' => ['required', Rule::in(0,1)], 'member_list' => 'string', ]); if ($validator->fails()) { return $this->response->error($validator->errors()->first(), 500); } return $this->memberGroupRepository->edit($data); } //删除内容 public function delete(Request $request){ $data = $request->only('id'); $validator = Validator::make($data, [ 'id' => 'required|integer|max:12', ]); if ($validator->fails()) { return $this->response->error($validator->errors()->first(), 500); } return $this->memberGroupRepository->delete($data['id']); } //删除内容 public function deleteMemberInfo(Request $request){ $data = $request->only('id'); $validator = Validator::make($data, [ 'id' => 'required|integer|max:12', ]); if ($validator->fails()) { return $this->response->error($validator->errors()->first(), 500); } return $this->memberGroupRepository->deleteMemberInfo($data['id']); } //设置推荐 public function setIsSuggest(Request $request){ $data = $request->only('id','is_suggest'); $validator = Validator::make($data, [ 'id' => 'required|string|max:20', 'is_suggest' => ['required', Rule::in(0,1)], ]); if ($validator->fails()) { return $this->response->error($validator->errors()->first(), 500); } return $this->memberGroupRepository->setIsSuggest($data); } }