cmsSubjectRepository = $cmsSubjectRepository; } //专题列表 public function index(Request $request) { $cmsSubject = $this->cmsSubjectRepository->index($request->all()); // if (count($cmsSubject)>0) { // // foreach ($ConfigPickupNode as $k => $v) { // // $ConfigPickupNode[$k]->receive_type = $v->receive_type == 0 ? '信任交付' : '手动确认接货'; // // $ConfigPickupNode[$k]->status = $v->status == 0 ? '启用' : '禁用'; // // $ConfigPickupNode[$k]->store_ids = $v->getStoreNameAttribute();//储存方式名称 // $ConfigPickupNode[$k]->pickup_group_id = $v->getGroupNameAttribute();//自提点分组名称 // } // } $fractal = new Manager(); $resource = new Collection($cmsSubject, new PickupNodeTransformer()); $resource->setPaginator(new IlluminatePaginatorAdapter($cmsSubject)); $data = $fractal->createData($resource)->toArray(); $data['extra'] = [ 'filters' => [ 'id' ], 'columns' => [ 'id', 'city_id', 'city_name', 'title', 'show_type', 'is_open', 'product_count', ] ]; return $data; } //新建专题 public function create(Request $request) { $validator = Validator::make($request->all(), [ 'product_id' => 'required|integer', 'product_sort' => 'required|integer', 'city_id' => 'required|integer', 'city_name' => 'required|string', 'title' => 'required|string', 'show_type' => ['required', Rule::in(0,1)], 'is_open' => ['required', Rule::in(0,1)], ]); if ($validator->fails()) { return $this->response->error($validator->errors()->first(), 500); } return $this->cmsSubjectRepository->create($request->all()); } //编辑自提点 public function edit(Request $request) { $validator = Validator::make($request->all(), [ 'id' => 'required|exists:config_pickup_node', 'name' => 'required|string|max:20', 'manager_mobile' => ['required', 'regex:/^1(3[0-9]|4[57]|5[0-35-9]|6[56]|7[0135678]|8[0-9]|9[89])\\d{8}$/'], 'address' => 'required|string|max:200', 'pickup_group_id' => 'required|integer', 'city_id' => 'required|integer', 'city_name' => 'required|string', 'longitude' => 'required', 'latitude' => 'required', 'pickup_code' => 'required', 'work_time' => 'required', 'store_ids' => 'required', 'receive_type' => ['required', Rule::in(0,1)], ]); if ($validator->fails()) { return $this->response->error($validator->errors()->first(), 500); } return $this->configPickupNodeRepository->edit($request->all()); } //查看某自提点 public function view(Request $request) { $all = $request->all(); $validator = Validator::make($all, [ 'id' => 'required|integer', ]); if($validator->fails()) { return $this->response->error($validator->errors()->first(), 500); } $getPickup = $this->configPickupNodeRepository->index($request->all()); if (count($getPickup)>0) { foreach ($getPickup as $k => $v) { $getPickup[$k]->receive_type = $v->receive_type == 0 ? '信任交付' : '手动确认接货'; $getPickup[$k]->status = $v->status == 0 ? '启用' : '禁用'; $getPickup[$k]->store_ids = $v->getStoreNameAttribute();//储存方式名称 $getPickup[$k]->pickup_group_id = $v->getGroupNameAttribute();//自提点分组名称 } } if(!$getPickup){ return $this->response->error($validator->errors()->first(), 500); } $fractal = new Manager(); $resource = new Collection($getPickup, new PickupNodeTransformer()); $resource->setPaginator(new IlluminatePaginatorAdapter($getPickup)); $data = $fractal->createData($resource)->toArray(); $data['extra'] = [ 'filters' => [ 'id' ], 'columns' => [ 'id', 'city_id', 'city_name', 'name', 'address', 'work_time', 'manager_name', 'manager_mobile', 'receive_type', 'longitude', 'latitude', 'store_ids', 'pickup_group_id', 'status', ] ]; return $data; } }