public function autocompleteBuscarEquipo() { $term = Input::get('term'); $results = array(); $queries = Movement::where('serial', 'LIKE', '%' . $term . '%')->take(10)->get(); foreach ($queries as $query) { $results[] = ['id' => $query->id, 'value' => $query->serial]; } return $results; }
/** * Bootstrap the application services. * * @return void */ public function boot() { // Movement::created(function ($movement) { $i = $movement->item; $i->quantity += $movement->quantity; $movement->result_quantity = $i->quantity; $movement->save(); $i->save(); }); }
public function rejectMovement(Request $request) { if (Auth::user()->securityLevel >= 20) { $m = Movement::findOrFail($request->id); $m->update(['status_id' => '4', 'approved_by' => Auth::user()->id, 'note' => $request->note]); $arrayM = ['article' => $m->article->name, 'origen' => $m->origin->name, 'destino' => $m->destination->name, 'created_at' => $m->created_at, 'ticket' => $m->ticket, 'cantidad' => $m->quantity, 'nota' => $m->note]; $result = Mail::send('emails.movementRejected', $arrayM, function ($message) use($m) { // $message->from($request->email); $message->to($m->user->email)->subject('Tu movimiento ha sido rechazado')->replyTo(Auth::user()->email); }); } return $request->id; }
public function all($entity) { parent::all($entity); $this->filter = \DataFilter::source(\App\Movement::with('person', 'category', 'group')); $this->filter->build(); $this->grid = \DataGrid::source($this->filter); $this->grid->add('fecha', 'Fecha', 'date'); $this->grid->add('tipo', 'Tipo'); $this->grid->add('monto', 'Monto'); $this->grid->add('{{ $category->nombre }}', 'Categoría', 'category_id'); $this->grid->add('{{ $person->nombre }}', 'Persona', 'person_id'); $this->grid->add('{{ $group->nombre }}', 'Grupo', 'group_id'); $this->addStylesToGrid(); return $this->returnView(); }
public function show() { $meses = ['01' => 'Enero', '02' => 'Febrero', '03' => 'Marzo', '04' => 'Abril', '05' => 'Mayo', '06' => 'Junio', '07' => 'Julio', '08' => 'Agosto', '09' => 'Septiembre', '10' => 'Octubre', '11' => 'Noviembre', '12' => 'Diciembre']; $movimientos = Movement::all()->where('tipo', 'ingreso')->groupBy(function ($item) { return date('Y', strtotime($item->fecha)); })->each(function ($year) { $year->total = $year->sum('monto'); $year->meses = $year->groupBy(function ($item) { return date('m', strtotime($item->fecha)); })->sort()->reverse(); $year->meses->each(function ($month) { $month->total = $month->sum('monto'); }); }); return view('ingresos', ['tab' => 'ingresos'])->with('movimientos', $movimientos)->with('meses', $meses); }
public function findInactiveArticles(Request $request) { $desde = date_format(date_create($request->fechaDesde), "Y/m/d H:i:s"); $hasta = date_format(date_create($request->fechaHasta), "Y/m/d 23:59:99"); $inactivos = 0; $active = Movement::select('article_id')->distinct()->where('created_at', '>', $desde)->where('created_at', '<', $hasta)->get(); $activos = $active->count(); $articles = Article::whereNotIn('id', $active)->get(); // dd($articles); foreach ($articles as $article) { $inactivos++; $article->update(['active' => 0]); // dd($article); } return view('settings.findInactiveArticles', compact('activos', 'inactivos')); }
/** * Recibe el ID de un articulo y devuelve arreglo con los seriales de ese articulo que se encuentran * en el almacén actual * @param $art * @return array */ private function buscarSeriales($art) { // status 1: Aprobado, Status 2: por aprobar if ($art->serializable == '1') { $out = Movement::select(DB::raw('DISTINCT(serial)'))->whereIn('status_id', [1, 2])->where('origin_id', '=', $this->id)->where('article_id', $art->id)->orderBy('id', 'asc')->get()->toArray(); foreach ($out as $movOut) { $seriales[] = $movOut['serial']; } if (count($out) > 0) { $s = DB::table('movements')->select(DB::raw('DISTINCT(serial)'))->whereIn('status_id', [1, 2])->whereNotIn('serial', $seriales)->where('destination_id', '=', $this->id)->where('article_id', $art->id)->orderBy('id', 'asc')->get(); } else { $s = DB::table('movements')->select(DB::raw('DISTINCT(serial)'))->whereIn('status_id', [1, 2])->where('destination_id', '=', $this->id)->where('article_id', $art->id)->orderBy('id', 'asc')->get(); } } else { $s[] = ''; } return $s; }
/** * Devuelve el ultimo movimiento APROBADO del articulo con el serial indicado * retorna un movimiento vacío si no se encuentran movimientos del artículo * @param $serial * @return Movement */ private function lastMovement($serial) { $mov = Movement::where('serial', '=', $serial)->where('status_id', '=', 1)->orderBy('id', 'desc')->first(); if (is_null($mov)) { $mov = new Movement(); } return $mov; }
public function buscarEquipo($serial) { $movements = Movement::where('serial', $serial)->orderBy('id', 'desc')->paginate(20); $title = 'Últimos movimientos de MAC ' . $serial; return view('movements.index', compact('movements', 'title')); }