LaborCompanyController.php 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\LaborCompany;
  4. use Illuminate\Http\Request;
  5. use Illuminate\Support\Facades\Auth;
  6. use Illuminate\Support\Facades\Gate;
  7. use Illuminate\Support\Facades\Validator;
  8. class LaborCompanyController extends Controller
  9. {
  10. public function index()
  11. {
  12. if(!Gate::allows('劳务所-查询')){ return redirect(url('/')); }
  13. $laborCompanys=LaborCompany::orderBy('id','desc')->paginate(35);
  14. return view('maintenance.laborCompany.index',['laborCompanys'=>$laborCompanys]);
  15. }
  16. public function create()
  17. {
  18. if(!Gate::allows('劳务所-录入')){ return redirect(url('/')); }
  19. return view('maintenance.laborCompany.create');
  20. }
  21. public function store(Request $request)
  22. {
  23. if(!Gate::allows('劳务所-录入')){ return redirect(url('/')); }
  24. $this->validatorCreate($request->all())->validate();
  25. $laborCompany=new LaborCompany($request->all());
  26. $laborCompany->save();
  27. app('LaborCompanyService')->createAuthority($laborCompany);//创建劳务所创建对应权限
  28. app('LogService')->log(__METHOD__,__FUNCTION__,json_encode($request->toArray()),Auth::user()['id']);
  29. return redirect('maintenance/laborCompany/create')->with('successTip',"成功录入劳务所“{$request->input('name')}”");
  30. }
  31. protected function validatorCreate(array $data)
  32. {
  33. return Validator::make($data, [
  34. 'name' => ['required', 'string', 'max:50', 'unique:labor_companies'],
  35. ]);
  36. }
  37. protected function validatorUpdate(array $data)
  38. {
  39. return Validator::make($data, [
  40. 'name' => ['required', 'string', 'max:50'],
  41. ]);
  42. }
  43. /**
  44. * Display the specified resource.
  45. *
  46. * @param $laborCompany
  47. * @return
  48. */
  49. public function show(LaborCompany $laborCompany)
  50. {
  51. //
  52. }
  53. /**
  54. * Show the form for editing the specified resource.
  55. *
  56. * @param $laborCompany
  57. * @return
  58. */
  59. public function edit(LaborCompany $laborCompany)
  60. {
  61. if(!Gate::allows('劳务所-编辑')){ return redirect(url('/')); }
  62. return view('maintenance.laborCompany.edit',['laborCompany'=>$laborCompany]);
  63. }
  64. /**
  65. * Update the specified resource in storage.
  66. *
  67. * @param Request $request
  68. * @param $laborCompany
  69. * @return
  70. */
  71. public function update(Request $request, LaborCompany $laborCompany)
  72. {
  73. if(!Gate::allows('劳务所-编辑')){ return redirect(url('/')); }
  74. $this->validatorUpdate($request->all())->validate();
  75. $laborCompany->fill($request->all());
  76. $laborCompany->update();
  77. app('LaborCompanyService')->updateAuthority($laborCompany);
  78. app('LogService')->log(__METHOD__,__FUNCTION__,json_encode($request->toArray()),Auth::user()['id']);
  79. return redirect('maintenance/laborCompany/')->with('successTip',"成功修改劳务所“{$laborCompany['name']}”!");
  80. }
  81. /**
  82. * Remove the specified resource from storage.
  83. *
  84. * @param $laborCompany
  85. * @return array
  86. * @throws
  87. */
  88. public function destroy(LaborCompany $laborCompany)
  89. {
  90. if(!Gate::allows('劳务所-删除')){ return redirect(url('/')); }
  91. app('LogService')->log(__METHOD__,__FUNCTION__,$laborCompany->toJson(),Auth::user()['id']);
  92. $re=$laborCompany->delete();
  93. return ['success'=>$re];
  94. }
  95. }