/**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store()
 {
     if (Session::get('level') == '1' || Session::get('level') == '2' && Session::get('fingerprint') == md5($_SERVER['HTTP_USER_AGENT'] . $_SERVER['REMOTE_ADDR'])) {
         $postData = Input::All();
         $messages = ['sp_code.required' => 'กรุณากรอก', 'sp_name.required' => 'กรุณากรอก', 'id_unit.required' => 'กรุณากรอก', 'type_code.required' => 'กรุณากรอก'];
         $rules = ['sp_code' => 'required', 'sp_name' => 'required', 'id_unit' => 'required', 'type_code' => 'required'];
         $validator = Validator::make($postData, $rules, $messages);
         if ($validator->fails()) {
             return Redirect::route('supplier.create')->withInput()->withErrors($validator);
         } else {
             $data = Request::all();
             $Supplier = new Supplier();
             $Supplier->sp_code = $data['sp_code'];
             $Supplier->sp_name = $data['sp_name'];
             $Supplier->id_unit = $data['id_unit'];
             $Supplier->type_code = $data['type_code'];
             DB::transaction(function () use($Supplier) {
                 $Supplier->save();
             });
             Session::flash('savedata', save_data);
             return Redirect::to('supplier');
         }
     } else {
         return Redirect::to('/');
     }
 }
Ejemplo n.º 2
0
 public function store(SupplierRequest $request)
 {
     try {
         DB::transaction(function () use($request) {
             $supplier = new Supplier();
             $supplier->suppliers_type = $request->input('suppliers_type');
             $supplier->company_name = $request->input('company_name');
             $supplier->company_address = $request->input('company_address');
             $supplier->company_office_phone = $request->input('company_office_phone');
             $supplier->company_office_fax = $request->input('company_office_fax');
             $supplier->contact_person = $request->input('contact_person');
             $supplier->contact_person_phone = $request->input('contact_person_phone');
             $supplier->supplier_description = $request->input('supplier_description');
             $supplier->status = $request->input('status');
             $supplier->created_at = time();
             $supplier->created_by = Auth::user()->id;
             $supplier->save();
             //Personal Account Creation
             $personal = new PersonalAccount();
             $personal->person_type = Config::get('common.person_type_supplier');
             if (!empty($request->input('balance'))) {
                 $personal->balance = $request->input('balance');
             }
             if (!empty($request->input('due'))) {
                 $personal->due = $request->input('due');
             }
             $personal->person_id = $supplier->id;
             $personal->created_by = Auth::user()->id;
             $personal->created_at = time();
             $personal->save();
             $year = CommonHelper::get_current_financial_year();
             $user = Auth::user();
             $time = time();
             if (!empty($request->input('balance'))) {
                 // Update Workspace Ledger
                 $workspaceLedger = WorkspaceLedger::where(['workspace_id' => $user->workspace_id, 'account_code' => 41000, 'balance_type' => Config::get('common.balance_type_intermediate'), 'year' => $year])->first();
                 $workspaceLedger->balance += $request->input('balance');
                 $workspaceLedger->updated_by = $user->id;
                 $workspaceLedger->updated_by = $time;
                 $workspaceLedger->save();
             }
             if (!empty($request->input('due'))) {
                 // Update Workspace Ledger
                 $workspaceLedger = WorkspaceLedger::where(['workspace_id' => $user->workspace_id, 'account_code' => 12000, 'balance_type' => Config::get('common.balance_type_intermediate'), 'year' => $year])->first();
                 $workspaceLedger->balance += $request->input('due');
                 $workspaceLedger->updated_by = $user->id;
                 $workspaceLedger->updated_by = $time;
                 $workspaceLedger->save();
             }
         });
     } catch (\Exception $e) {
         Session()->flash('error_message', 'Data cannot Save. Please Try Again');
         return redirect('suppliers');
     }
     Session()->flash('flash_message', 'Data has been Saved');
     return redirect('suppliers');
 }
Ejemplo n.º 3
0
 /**
  * Creates a new Supplier model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @return mixed
  */
 public function actionCreate()
 {
     $model = new Supplier();
     if ($model->load(Yii::$app->request->post()) && $model->save()) {
         return $this->redirect(['view', 'id' => $model->id_supplier]);
     } else {
         return $this->render('create', ['model' => $model]);
     }
 }
Ejemplo n.º 4
0
 /**
  * Creates a new Supplier model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @return mixed
  */
 public function actionCreate()
 {
     $model = new Supplier();
     if ($model->load(Yii::$app->request->post()) && $model->save()) {
         return $this->redirect(['view', 'supplier_id' => $model->supplier_id, 'province_id' => $model->province_id, 'country_id' => $model->country_id]);
     } else {
         return $this->render('create', ['model' => $model]);
     }
 }
Ejemplo n.º 5
0
 /**
  * Creates a new Supplier model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @return mixed
  */
 public function actionCreate()
 {
     $model = new Supplier();
     if ($model->load(Yii::$app->request->post()) && $model->save()) {
         $product = Yii::$app->session->get(Product::className());
         if ($product) {
             return $this->redirect(['product/create']);
         }
         return $this->redirect(['view', 'id' => $model->id]);
     } else {
         return $this->render('create', ['model' => $model]);
     }
 }
Ejemplo n.º 6
0
 /**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store(SupplierRequest $request)
 {
     // store
     $supplier = new Supplier();
     $supplier->name = $request->name;
     $supplier->phone = $request->phone;
     $supplier->email = $request->email;
     $supplier->address = $request->address;
     $supplier->user_id = Auth::user()->id;
     try {
         $supplier->save();
         $url = session('SOURCE_URL');
         return redirect()->to($url)->with('message', trans('messages.record-successfully-saved'));
     } catch (QueryException $e) {
         \Log::error($e);
     }
 }
Ejemplo n.º 7
0
 public function register(Request $request)
 {
     $s = new Supplier();
     $s->id = $request->input('id');
     $s->code = $request->input('code');
     $s->openbalance = $request->input('openbalance');
     $s->name = $request->input('name');
     $s->preaddress = $request->input('preaddress');
     $s->peraddress = $request->input('peraddress');
     $s->phone = $request->input('phone');
     $s->email = $request->input('email');
     $s->fax = $request->input('fax');
     $s->url = $request->input('url');
     $s->userid = $request->input('userid');
     $s->save();
     return redirect('suppliers');
 }
Ejemplo n.º 8
0
 public function store(Request $request)
 {
     $supplier = new Supplier();
     $supplier->name = e($request->input('name'));
     $supplier->user_id = Auth::user()->id;
     if ($supplier->save()) {
         return JsonResponse::create($supplier);
     }
     return JsonResponse::create(["error" => "Failed validation: " . print_r($supplier->getErrors(), true)], 500);
     return JsonResponse::create(["error" => "Couldn't save Supplier"]);
 }
Ejemplo n.º 9
0
 /**
  * Execute the console command.
  *
  * @return mixed
  */
 public function fire()
 {
     $filename = $this->argument('filename');
     if (!$this->option('testrun') == 'true') {
         $this->comment('======= Importing Licenses from ' . $filename . ' =========');
     } else {
         $this->comment('====== TEST ONLY License Import for ' . $filename . ' ====');
         $this->comment('============== NO DATA WILL BE WRITTEN ==============');
     }
     if (!ini_get("auto_detect_line_endings")) {
         ini_set("auto_detect_line_endings", '1');
     }
     $csv = Reader::createFromPath($this->argument('filename'));
     $csv->setNewline("\r\n");
     $csv->setOffset(1);
     $duplicates = '';
     // Loop through the records
     $nbInsert = $csv->each(function ($row) use($duplicates) {
         $status_id = 1;
         // Let's just map some of these entries to more user friendly words
         if (array_key_exists('0', $row)) {
             $user_name = trim($row[0]);
         } else {
             $user_name = '';
         }
         if (array_key_exists('1', $row)) {
             $user_email = trim($row[1]);
         } else {
             $user_email = '';
         }
         if (array_key_exists('2', $row)) {
             $user_username = trim($row[2]);
         } else {
             $user_username = '';
         }
         if (array_key_exists('3', $row)) {
             $user_license_name = trim($row[3]);
         } else {
             $user_license_name = '';
         }
         if (array_key_exists('4', $row)) {
             $user_license_serial = trim($row[4]);
         } else {
             $user_license_serial = '';
         }
         if (array_key_exists('5', $row)) {
             $user_licensed_to_name = trim($row[5]);
         } else {
             $user_licensed_to_name = '';
         }
         if (array_key_exists('6', $row)) {
             $user_licensed_to_email = trim($row[6]);
         } else {
             $user_licensed_to_email = '';
         }
         if (array_key_exists('7', $row)) {
             $user_license_seats = trim($row[7]);
         } else {
             $user_license_seats = '';
         }
         if (array_key_exists('8', $row)) {
             $user_license_reassignable = trim($row[8]);
             if ($user_license_reassignable != '') {
                 if (strtolower($user_license_reassignable) == 'yes' || strtolower($user_license_reassignable) == 'true' || $user_license_reassignable == '1') {
                     $user_license_reassignable = 1;
                 }
             } else {
                 $user_license_reassignable = 0;
             }
         } else {
             $user_license_reassignable = 0;
         }
         if (array_key_exists('9', $row)) {
             $user_license_supplier = trim($row[9]);
         } else {
             $user_license_supplier = '';
         }
         if (array_key_exists('10', $row)) {
             $user_license_maintained = trim($row[10]);
             if ($user_license_maintained != '') {
                 if (strtolower($user_license_maintained) == 'yes' || strtolower($user_license_maintained) == 'true' || $user_license_maintained == '1') {
                     $user_license_maintained = 1;
                 }
             } else {
                 $user_license_maintained = 0;
             }
         } else {
             $user_license_maintained = '';
         }
         if (array_key_exists('11', $row)) {
             $user_license_notes = trim($row[11]);
         } else {
             $user_license_notes = '';
         }
         if (array_key_exists('12', $row)) {
             if ($row[12] != '') {
                 $user_license_purchase_date = date("Y-m-d 00:00:01", strtotime($row[12]));
             } else {
                 $user_license_purchase_date = '';
             }
         } else {
             $user_license_purchase_date = 0;
         }
         // A number was given instead of a name
         if (is_numeric($user_name)) {
             $this->comment('User ' . $user_name . ' is not a name - assume this user already exists');
             $user_username = '';
             // No name was given
         } elseif ($user_name == '') {
             $this->comment('No user data provided - skipping user creation, just adding license');
             $first_name = '';
             $last_name = '';
             $user_username = '';
         } else {
             $name = explode(" ", $user_name);
             $first_name = $name[0];
             $email_last_name = '';
             $email_prefix = $first_name;
             if (!array_key_exists(1, $name)) {
                 $last_name = '';
                 $email_last_name = $last_name;
                 $email_prefix = $first_name;
             } else {
                 $last_name = str_replace($first_name, '', $user_name);
                 if ($this->option('email_format') == 'filastname') {
                     $email_last_name .= str_replace(' ', '', $last_name);
                     $email_prefix = $first_name[0] . $email_last_name;
                 } elseif ($this->option('email_format') == 'firstname.lastname') {
                     $email_last_name .= str_replace(' ', '', $last_name);
                     $email_prefix = $first_name . '.' . $email_last_name;
                 } elseif ($this->option('email_format') == 'firstname') {
                     $email_last_name .= str_replace(' ', '', $last_name);
                     $email_prefix = $first_name;
                 }
             }
             $user_username = $email_prefix;
             // Generate an email based on their name if no email address is given
             if ($user_email == '') {
                 if ($first_name == 'Unknown') {
                     $status_id = 7;
                 }
                 $email = strtolower($email_prefix) . '@' . $this->option('domain');
                 $user_email = str_replace("'", '', $email);
             }
         }
         $this->comment('Full Name: ' . $user_name);
         $this->comment('First Name: ' . $first_name);
         $this->comment('Last Name: ' . $last_name);
         $this->comment('Username: '******'Email: ' . $user_email);
         $this->comment('License Name: ' . $user_license_name);
         $this->comment('Serial No: ' . $user_license_serial);
         $this->comment('Licensed To Name: ' . $user_licensed_to_name);
         $this->comment('Licensed To Email: ' . $user_licensed_to_email);
         $this->comment('Seats: ' . $user_license_seats);
         $this->comment('Reassignable: ' . $user_license_reassignable);
         $this->comment('Supplier: ' . $user_license_supplier);
         $this->comment('Maintained: ' . $user_license_maintained);
         $this->comment('Notes: ' . $user_license_notes);
         $this->comment('Purchase Date: ' . $user_license_purchase_date);
         $this->comment('------------- Action Summary ----------------');
         if ($user_username != '') {
             if ($user = User::where('username', $user_username)->whereNotNull('username')->first()) {
                 $this->comment('User ' . $user_username . ' already exists');
             } else {
                 $user = new \App\Models\User();
                 $password = substr(str_shuffle("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"), 0, 20);
                 $user->first_name = $first_name;
                 $user->last_name = $last_name;
                 $user->username = $user_username;
                 $user->email = $user_email;
                 $user->permissions = '{user":1}';
                 $user->password = bcrypt($password);
                 $user->activated = 1;
                 if ($user->save()) {
                     $this->comment('User ' . $first_name . ' created');
                 } else {
                     $this->error('ERROR CREATING User ' . $first_name . ' ' . $last_name);
                     $this->error($user->getErrors());
                 }
                 $this->comment('User ' . $first_name . ' created');
             }
         } else {
             $user = new User();
             $user->user_id = null;
         }
         // Check for the supplier match and create it if it doesn't exist
         if ($supplier = Supplier::where('name', $user_license_supplier)->first()) {
             $this->comment('Supplier ' . $user_license_supplier . ' already exists');
         } else {
             $supplier = new Supplier();
             $supplier->name = e($user_license_supplier);
             $supplier->user_id = 1;
             if ($supplier->save()) {
                 $this->comment('Supplier ' . $user_license_supplier . ' was created');
             } else {
                 $this->comment('Something went wrong! Supplier ' . $user_license_supplier . ' was NOT created');
             }
         }
         // Add the license
         $license = new License();
         $license->name = e($user_license_name);
         if ($user_license_purchase_date != '') {
             $license->purchase_date = $user_license_purchase_date;
         } else {
             $license->purchase_date = null;
         }
         $license->serial = e($user_license_serial);
         $license->seats = e($user_license_seats);
         $license->supplier_id = $supplier->id;
         $license->user_id = 1;
         if ($user_license_purchase_date != '') {
             $license->purchase_date = $user_license_purchase_date;
         } else {
             $license->purchase_date = null;
         }
         $license->license_name = $user_licensed_to_name;
         $license->license_email = $user_licensed_to_email;
         $license->notes = e($user_license_notes);
         if ($license->save()) {
             $this->comment('License ' . $user_license_name . ' with serial number ' . $user_license_serial . ' was created');
             $license_seat_created = 0;
             for ($x = 0; $x < $user_license_seats; $x++) {
                 // Create the license seat entries
                 $license_seat = new LicenseSeat();
                 $license_seat->license_id = $license->id;
                 // Only assign the first seat to the user
                 if ($x == 0) {
                     $license_seat->assigned_to = $user->id;
                 } else {
                     $license_seat->assigned_to = null;
                 }
                 if ($license_seat->save()) {
                     $license_seat_created++;
                 }
             }
             if ($license_seat_created > 0) {
                 $this->comment($license_seat_created . ' seats were created');
             } else {
                 $this->comment('Something went wrong! NO seats for ' . $user_license_name . ' were created');
             }
         } else {
             $this->comment('Something went wrong! License ' . $user_license_name . ' was NOT created');
         }
         $this->comment('=====================================');
         return true;
     });
 }
Ejemplo n.º 10
0
 /**
  * Fetch an existing supplier or create new if it doesn't exist
  *
  * @author Daniel Melzter
  * @since 3.0
  * @param $row array
  * @return Supplier
  */
 public function createOrFetchSupplier(array $row)
 {
     $supplier_name = $this->array_smart_fetch($row, "supplier");
     if (empty($supplier_name)) {
         $supplier_name = 'Unknown';
     }
     foreach ($this->suppliers as $tempsupplier) {
         if (strcasecmp($tempsupplier->name, $supplier_name) == 0) {
             $this->log('A matching Company ' . $supplier_name . ' already exists');
             return $tempsupplier;
         }
     }
     $supplier = new Supplier();
     $supplier->name = $supplier_name;
     $supplier->user_id = $this->option('user_id');
     if (!$this->option('testrun')) {
         if ($supplier->save()) {
             $this->suppliers->add($supplier);
             $this->log('Supplier ' . $supplier_name . ' was created');
             return $supplier;
         } else {
             $this->log('Supplier', $supplier->getErrors());
             return $supplier;
         }
     } else {
         $this->suppliers->add($supplier);
         return $supplier;
     }
 }
Ejemplo n.º 11
0
 public function supplier_register(Request $request)
 {
     if ($request->ajax() && $request->method() == 'POST') {
         $supplier_code = $request->input('supplier_code');
         $supplier_name = $request->input('supplier_name');
         $preaddress = $request->input('preaddress');
         // save data
         $supplier = new Supplier();
         $supplier->code = $supplier_code;
         $supplier->name = $supplier_name;
         $supplier->preaddress = $preaddress;
         $supplier->save();
         Session::flash('new_supplier_id', $supplier->id);
         return response()->json(1);
     }
 }