更新代码
This commit is contained in:
126
app/Admin/Controllers/StationController.php
Normal file
126
app/Admin/Controllers/StationController.php
Normal file
@@ -0,0 +1,126 @@
|
||||
<?php
|
||||
|
||||
namespace App\Admin\Controllers;
|
||||
|
||||
use Admin;
|
||||
use App\Models\Seller;
|
||||
use App\Models\Station;
|
||||
use Illuminate\Http\Request;
|
||||
use Validator;
|
||||
|
||||
class StationController extends Controller
|
||||
{
|
||||
|
||||
public function index(Request $request)
|
||||
{
|
||||
$name = $request->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('请选择省份/城市');
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user