Edit to obey then comment.

This commit is contained in:
catsworld
2016-06-13 17:04:35 +08:00
parent 0829cd9198
commit 5570adcd03
6 changed files with 119 additions and 97 deletions
+107 -78
View File
@@ -3,6 +3,7 @@
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\View;
use Illuminate\Support\Facades\Redirect;
use Illuminate\Support\Facades\Validator;
use App\GoodCat;
@@ -13,97 +14,125 @@ class GoodController extends Controller
{
public function getList(Request $request)
{
$cats = GoodCat::orderby('cat_name', 'asc')->get();
$goods = GoodInfo::orderby('id', 'asc')->get();
if($request->session()->has('userid')) $userid = $request->session()->get('userid'); else $userid = NULL;
return view('good.goodList', [
'cats' => $cats,
'goods' => $goods,
'userid' => $userid,
]);
/**
* @function GoodController@getList
* @input Request $request
* @return Response
* @description Get the list of all goods.
*/
$data = [];
$data['cats'] = GoodCat::orderby('cat_name', 'asc')->get();
$data['goods'] = GoodInfo::orderby('id', 'asc')->get();
if($request->session()->has('userid')) $data['userid'] = $request->session()->get('userid');
else $data['userid'] = NULL;
return View::make('good.goodList')->with($data);
}
public function getInfo(Request $request, $good_id)
{
$goods = GoodInfo::where('id', $good_id)->get();
if($request->session()->has('userid')) $userid = $request->session()->get('userid'); else $userid = NULL;
return view('good.goodInfo', [
'goods' => $goods,
'userid' => $userid,
]);
}
public function addPage(Request $request)
{
if(!$request->session()->has('userid')) return redirect()->back();
$cats = GoodCat::orderby('cat_name', 'asc')->get();
return view('good.addPage', [
'cats' => $cats,
]);
/**
* @function GoodController@getInfo
* @input Request $request, $good_id
* @return Response
* @description Get the information of a specify goods.
*/
$data = [];
$data['goods'] = GoodInfo::where('id', $good_id)->get();
if($request->session()->has('userid')) $data['userid'] = $request->session()->get('userid');
else $data['userid'] = NULL;
return View::make('good.goodInfo')->with($data);
}
public function addGood(Request $request)
{
if(!$request->session()->has('userid')) return redirect()->back();
$validator = Validator::make($request->all(), [
'good_name' => 'required',
'description' => 'required',
'pricemin' => 'required',
'pricemax' => 'required',
'counts' => 'required',
]);
if($validator->fails()) return redirect('/good/addPage')->withInput()->withErrors($validator);
$good = new GoodInfo;
$good->good_name=$request->good_name;
$good->cat_id=$request->cat_id;
$good->description=$request->description;
$good->pricemin=$request->pricemin;
$good->pricemax=$request->pricemax;
$good->type=$request->type;
$good->counts=$request->counts;
$good->good_tag=$request->good_tag;
$good->user_id=$request->session()->get('userid');
$good->save();
return redirect('/good/addPage');
}
public function editPage(Request $request, $good_id)
{
$cats = GoodCat::orderby('cat_name', 'asc')->get();
$goods = GoodInfo::where('id', $good_id)->get();
return view('good.editPage', [
'goods' => $goods,
'cats' => $cats,
]);
/**
* @function GoodController@addGood
* @input Request $request
* @return Response
* @description Add a new good.
*/
if($request->method()=="GET"){
$data = [];
if(!$request->session()->has('userid')) return Redirect::back();
$data['cats'] = GoodCat::orderby('cat_name', 'asc')->get();
return View::make('good.addPage')->with($data);
}else{
if(!$request->session()->has('userid')) return Redirect::back();
$this->validate($request, [
'good_name' => 'required',
'description' => 'required',
'pricemin' => 'required',
'pricemax' => 'required',
'counts' => 'required',
]);
$input = $request->all();
$good = new GoodInfo;
$good->good_name=$input['good_name'];
$good->cat_id=$input['cat_id'];
$good->description=$input['description'];
$good->pricemin=$input['pricemin'];
$good->pricemax=$input['pricemax'];
$good->type=$input['type'];
$good->counts=$input['counts'];
$good->good_tag=$input['good_tag'];
$good->user_id=$request->session()->get('userid');
$good->save();
return redirect('/good/add');
}
}
public function editGood(Request $request, $good_id)
{
if(!$request->session()->has('userid')) return redirect()->back();
$validator = Validator::make($request->all(), [
'good_name' => 'required',
'cat_id' => 'required',
'description' => 'required',
'pricemin' => 'required',
'pricemax' => 'required',
'type' => 'required',
'counts' => 'required',
]);
if($validator->fails()) return redirect('/good/'.$good_id.'/editPage')->withInput()->withErrors($validator);
$good = GoodInfo::find($good_id);
if($request->session()->get('user_id')!=$good->user_id) return redirect()->back();
$good->good_name=$request->good_name;
$good->cat_id=$request->cat_id;
$good->description=$request->description;
$good->pricemin=$request->pricemin;
$good->pricemax=$request->pricemax;
$good->type=$request->type;
$good->counts=$request->counts;
$good->good_tag=$request->good_tag;
$good->update();
return redirect('/good/'.$good_id.'/editPage');
/**
* @function GoodController@editGood
* @input Request $request, $good_id
* @return Response
* @description Edit a specify good.
*/
if($request->method()=="GET"){
$data = [];
$data['cats'] = GoodCat::orderby('cat_name', 'asc')->get();
$data['goods'] = GoodInfo::where('id', $good_id)->get();
return View::make('good.editPage')->with($data);
}else{
if(!$request->session()->has('userid')) return Redirect::back();
$this->validate($request, [
'good_name' => 'required',
'cat_id' => 'required',
'description' => 'required',
'pricemin' => 'required',
'pricemax' => 'required',
'type' => 'required',
'counts' => 'required',
]);
$input = $request->all();
$good = GoodInfo::find($good_id);
if($request->session()->get('userid')!=$good->user_id) return Redirect::back();
$good->good_name=$input['good_name'];
$good->cat_id=$input['cat_id'];
$good->description=$input['description'];
$good->pricemin=$input['pricemin'];
$good->pricemax=$input['pricemax'];
$good->type=$input['type'];
$good->counts=$input['counts'];
$good->good_tag=$input['good_tag'];
$good->update();
return redirect('/good/'.$good_id.'/edit');
}
}
public function deleteGood(Request $request, $good_id)
{
if(!$request->session()->has('userid')) return redirect()->back();
/**
* @function GoodController@deleteGood
* @input Request $request, $good_id
* @return Response
* @description Delete a specify good.
*/
if(!$request->session()->has('userid')) return Redirect::back();
$good = GoodInfo::find($good_id);
if($request->session()->get('user_id')!=$good->user_id) return redirect()->back();
if($request->session()->get('userid')!=$good->user_id) return Redirect::back();
$good->delete();
return redirect('/good');
}
}
}
+6 -13
View File
@@ -35,14 +35,17 @@ Route::post('/adduser', [
"uses" => "UserController@adduser",
"middleware" => "web"
]);
Route::get('/show', [
"uses" => "UserController@show",
"middleware" => "web"
]);
Route::get('/register', [
"uses" => "UserController@register",
"middleware" => "web"
]);
Route::post('/login', [
"uses" => "UserController@login",
"middleware" => "web"
@@ -53,22 +56,12 @@ Route::get('/good', [
"middleware" => "web"
]);
Route::get('/good/addPage', [
"uses" => "GoodController@addPage",
"middleware" => "web"
]);
Route::post('/good/add', [
Route::match(['post', 'get'], '/good/add', [
"uses" => "GoodController@addGood",
"middleware" => "web"
]);
Route::get('/good/{good_id}/editPage', [
"uses" => "GoodController@editPage",
"middleware" => "web"
]);
Route::post('/good/{good_id}/edit', [
Route::match(['post', 'get'], '/good/{good_id}/edit', [
"uses" => "GoodController@editGood",
"middleware" => "web"
]);
@@ -81,4 +74,4 @@ Route::get('/good/{good_id}/delete', [
Route::get('/good/{good_id}', [
"uses" => "GoodController@getInfo",
"middleware" => "web"
]);
]);
+1 -1
View File
@@ -22,4 +22,4 @@
{{$error}}
@endforeach
@endif
<a href='/good'>GoodList</a>
<a href='/good'>GoodList</a>
+1 -1
View File
@@ -24,4 +24,4 @@
{{$error}}
@endforeach
@endif
<a href='/good/{{$good->id}}'>GoodInfo</a>
<a href='/good/{{$good->id}}'>GoodInfo</a>
+2 -2
View File
@@ -1,8 +1,8 @@
@foreach($goods as $good)
{{$good->description}}<br/>
@if($userid==$good->user_id)
<a href='/good/{{$good->id}}/editPage'>Edit</a><br/>
<a href='/good/{{$good->id}}/edit'>Edit</a><br/>
<a href='/good/{{$good->id}}/delete'>Delete</a><br/>
@endif
@endforeach
<a href='/good'>GoodList</a>
<a href='/good'>GoodList</a>
+2 -2
View File
@@ -13,5 +13,5 @@
<br/>
<br/>
@if($userid!=NULL)
<a href='/good/addPage'>Add</a>
@endif
<a href='/good/add'>Add</a>
@endif