name; $orderField = $request->orderField; $orderDirection = $request->orderDirection; $numPerPage = $request->numPerPage ?: 30; if (Admin::id() == 1) { $stations = Station::when($name, function ($query) use ($name) { $query->where('name', 'like', "%{$name}%"); }) ->when($orderField, function ($query) use ($orderField, $orderDirection) { $query->orderBy($orderField, $orderDirection); })->paginate($numPerPage); } else { $stations = Station::when($name, function ($query) use ($name) { $query->where('name', 'like', "%{$name}%"); })->where('seller_id', Admin::user()->seller_id) ->when($orderField, function ($query) use ($orderField, $orderDirection) { $query->orderBy($orderField, $orderDirection); })->paginate($numPerPage); } return view('Admin::stations.index', compact('stations')); } public function create() { $sellers = Seller::where('status', 1)->get(); return view('Admin::stations.create', compact('sellers')); } public function store(Request $request) { $validator = Validator::make($request->all(), [ 'name' => 'required|min:2|max:50', 'address' => 'required|min:4', 'mobile' => 'required', ], [ 'name.required' => '商户名称必须填写', 'name.min' => '商户名称最少为:min字符', 'name.max' => '商户名称最多为:max字符', 'address.required' => '地址必须填写', 'address.min' => '地址最少:min个字', 'mobile.required' => '手机号必须填写', ]); if ($validator->fails()) { return $this->error($validator->errors()->first()); } if (Station::create($request->all())) { return $this->success('', 'close'); } else { return $this->error(); } } public function edit(Station $station) { $sellers = Seller::where('status', 1)->get(); return view('Admin::stations.edit', compact('station', 'sellers')); } public function update(Request $request, Station $station) { $validator = Validator::make($request->all(), [ 'name' => 'required|min:2|max:50', 'address' => 'required|min:4', 'mobile' => 'required', ], [ 'name.required' => '商户名称必须填写', 'name.min' => '商户名称最少为:min字符', 'name.max' => '商户名称最多为:max字符', 'address.required' => '地址必须填写', 'address.min' => '地址最少:min个字', 'mobile.required' => '手机号必须填写', ]); if ($validator->fails()) { return $this->error($validator->errors()->first()); } if ($station->update($request->all())) { return $this->success('', 'close'); } else { return $this->error(); } } public function destroy(station $station) { if ($station->delete()) { return $this->success(); } else { return $this->error(); } } public function areas(Request $request) { if (empty($request->psn)) { return $this->error('请选择省份'); } $areas = \OpenArea::index($request->psn); if ($areas) { return $this->success(['msg' => '', 'code' => 1, 'data' => $areas]); } else { return $this->error('请选择省份/城市'); } } }