MaterialBoxModelController.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Components\AsyncResponse;
  4. use App\MaterialBoxModel;
  5. use Illuminate\Support\Facades\Validator;
  6. class MaterialBoxModelController extends Controller
  7. {
  8. use AsyncResponse;
  9. public function index()
  10. {
  11. $models = MaterialBoxModel::query()->get();
  12. return view("maintenance.materialBoxModel.index",compact("models"));
  13. }
  14. public function save()
  15. {
  16. $id = request("id");
  17. $errors = Validator::make(request()->input(), [
  18. 'code'=>['required',$id?"unique:material_box_models,code,$id":"unique:material_box_models,code"],
  19. 'maximum_kind'=>['required',"integer","min:1"],
  20. 'description'=>['nullable'],
  21. ],[
  22. 'integer'=>':attribute 非法参数',
  23. 'required'=>':attribute 必填',
  24. 'unique'=>':attribute 已存在',
  25. ],[
  26. 'code'=>'编码',
  27. 'maximum_kind'=>'最大商品种类',
  28. 'description'=>'说明',
  29. ]);
  30. if ($errors->errors()->count())$this->success(["errors"=>$errors->errors()]);
  31. if (!$id) $this->success(MaterialBoxModel::query()->create([
  32. 'code' => request("code"),
  33. 'maximum_kind' => request("maximum_kind"),
  34. 'description' => request("description"),
  35. ]));
  36. $model = MaterialBoxModel::query()->find($id);
  37. if (!$model)$this->error("模型不存在");
  38. $model->update(request()->only(["code",'maximum_kind',"description"]));
  39. $this->success($model);
  40. }
  41. public function destroy()
  42. {
  43. $this->success(MaterialBoxModel::destroy(request("id")));
  44. }
  45. }