public function editableUpdate(Request $request, ConsumablesMinimumLevel $consumables_minimum_levels)
 {
     $this->authorize('edit_consumable_minimum_levels');
     $validator = Validator::make($request->all(), ['pk' => 'required|integer|exists:consumables_minimum_levels,id']);
     $validator->sometimes('value', 'required|string', function ($input) {
         return $input->name == 'item_description' || $input->name == 'order_unit';
     });
     $validator->sometimes('value', 'required|integer|min:1', function ($input) {
         return $input->name == 'minimum_level' || $input->name == 'supplier_id';
     });
     if ($validator->fails()) {
         return response('Invalid request', 422);
     }
     $field = $request->get('name');
     $consumables_minimum_levels->{$field} = $request->get('value');
     $consumables_minimum_levels->save();
     return response('Okay', 200);
 }
 /**
  * Overwrite the parent boot method
  *
  * @return void
  */
 public static function boot()
 {
     parent::boot();
     ConsumablesMinimumLevel::creating(function ($consumablesMinimumLevel) {
         $consumablesMinimumLevel->created_by = \Auth::user()->id;
         $consumablesMinimumLevel->updated_by = \Auth::user()->id;
     });
     ConsumablesMinimumLevel::updating(function ($consumablesMinimumLevel) {
         $consumablesMinimumLevel->updated_by = \Auth::user()->id;
     });
 }