/** * Validate and save new Accessory from form post * * @author [A. Gianotto] [<*****@*****.**>] * @return Redirect */ public function postCreate(Request $request) { // create a new model instance $accessory = new Accessory(); // Update the accessory data $accessory->name = e(Input::get('name')); $accessory->category_id = e(Input::get('category_id')); $accessory->location_id = e(Input::get('location_id')); $accessory->min_amt = e(Input::get('min_amt')); $accessory->company_id = Company::getIdForCurrentUser(Input::get('company_id')); $accessory->order_number = e(Input::get('order_number')); $accessory->manufacturer_id = e(Input::get('manufacturer_id')); if (e(Input::get('purchase_date')) == '') { $accessory->purchase_date = null; } else { $accessory->purchase_date = e(Input::get('purchase_date')); } if (e(Input::get('purchase_cost')) == '0.00') { $accessory->purchase_cost = null; } else { $accessory->purchase_cost = e(Input::get('purchase_cost')); } $accessory->qty = e(Input::get('qty')); $accessory->user_id = Auth::user()->id; // Was the accessory created? if ($accessory->save()) { // Redirect to the new accessory page return redirect()->to("admin/accessories")->with('success', trans('admin/accessories/message.create.success')); } return redirect()->back()->withInput()->withErrors($accessory->getErrors()); }
/** * Create an accessory if a duplicate does not exist * * @author Daniel Melzter * @since 3.0 * @param $item array */ public function createAccessoryIfNotExists(array $item) { $this->log("Creating Accessory"); foreach ($this->accessories as $tempaccessory) { if (strcasecmp($tempaccessory->name, $item["item_name"]) == 0) { $this->log('A matching Accessory ' . $item["item_name"] . ' already exists. '); // FUTURE: Adjust quantity on import maybe? return; } } $accessory = new Accessory(); $accessory->name = $item["item_name"]; if (!empty($item["purchase_date"])) { $accessory->purchase_date = $item["purchase_date"]; } else { $accessory->purchase_date = null; } if (!empty($item["purchase_cost"])) { $accessory->purchase_cost = number_format(e($item["purchase_cost"]), 2); } else { $accessory->purchase_cost = 0.0; } if ($item["location"]) { $accessory->location_id = $item["location"]->id; } $accessory->user_id = $this->option('user_id'); if ($item["company"]) { $accessory->company_id = $item["company"]->id; } $accessory->order_number = $item["order_number"]; if ($item["category"]) { $accessory->category_id = $item["category"]->id; } //TODO: Implement // $accessory->notes = e($item_notes); $accessory->requestable = filter_var($item["requestable"], FILTER_VALIDATE_BOOLEAN); //Must have at least zero of the item if we import it. if ($item["quantity"] > -1) { $accessory->qty = $item["quantity"]; } else { $accessory->qty = 1; } if (!$this->option('testrun')) { if ($accessory->save()) { $this->log('Accessory ' . $item["item_name"] . ' was created'); // $this->comment('Accessory ' . $item["item_name"] . ' was created'); } else { $this->jsonError('Accessory', $accessory->getErrors()); } } else { $this->log('TEST RUN - Accessory ' . $item["item_name"] . ' not created'); } }
/** * Create an accessory if a duplicate does not exist * * @author Daniel Melzter * @since 3.0 * @param $item array */ public function createAccessoryIfNotExists(array $item) { $accessory = null; $editingAccessory = false; $this->log("Creating Accessory"); foreach ($this->accessories as $tempaccessory) { if (strcasecmp($tempaccessory->name, $item["item_name"]) == 0) { $this->log('A matching Accessory ' . $item["item_name"] . ' already exists. '); if (!$this->option('update')) { $this->log("Skipping accessory."); return; } $this->log('Updating matching accessory with new values'); $editingAccessory = true; $accessory = $tempaccessory; } } if (is_null($accessory)) { $this->log("No Matching Accessory, Creating a new one"); $accessory = new Accessory(); } if (!$editingAccessory) { $accessory->name = $item["item_name"]; } if (!empty($item["purchase_date"])) { $accessory->purchase_date = $item["purchase_date"]; } else { $accessory->purchase_date = null; } if (!empty($item["purchase_cost"])) { $accessory->purchase_cost = Helper::ParseFloat($item["purchase_cost"]); } if ($item["location"]) { $accessory->location_id = $item["location"]->id; } $accessory->user_id = $this->option('user_id'); if ($item["company"]) { $accessory->company_id = $item["company"]->id; } if (!empty($item["order_number"])) { $accessory->order_number = $item["order_number"]; } if ($item["category"]) { $accessory->category_id = $item["category"]->id; } //TODO: Implement // $accessory->notes = e($item_notes); if (!empty($item["requestable"])) { $accessory->requestable = filter_var($item["requestable"], FILTER_VALIDATE_BOOLEAN); } //Must have at least zero of the item if we import it. if (!empty($item["quantity"])) { if ($item["quantity"] > -1) { $accessory->qty = $item["quantity"]; } else { $accessory->qty = 1; } } if (!$this->option('testrun')) { if ($accessory->save()) { $this->log('Accessory ' . $item["item_name"] . ' was created'); // $this->comment('Accessory ' . $item["item_name"] . ' was created'); } else { $this->jsonError('Accessory', $accessory->getErrors()); } } else { $this->log('TEST RUN - Accessory ' . $item["item_name"] . ' not created'); } }