Ejemplo n.º 1
0
 public function categoria($id)
 {
     $categoria = categoria::find($id);
     $productos = Producto::where('categoria_id', '=', $categoria->id)->paginate(16);
     //dd($productos);
     return view('productos')->with('productos', $productos)->with('categoria', $categoria);
 }
Ejemplo n.º 2
0
 public static function Ajax($param)
 {
     switch ($param) {
         case 'byCategory':
             $id = e(Input::get('id'));
             $productos = Producto::where('categoria', "=", $id)->take(20)->get()->toJson();
             echo $productos;
             break;
         case 'excelByCategory':
             // print_r(Input::all());
             $catName = utf8_decode(utf8_encode(Input::get('catName')));
             $id = Input::get('id');
             $productos = Producto::where("categoria", "=", $id)->get()->toArray();
             $lista = self::formatExcel($productos);
             Excel::create("CAT" . $id, function ($excel) use($lista) {
                 $excel->sheet('productos', function ($sheet) use($lista) {
                     $sheet->fromArray($lista, null, 'A0', true);
                 });
             })->store('xls', public_path('/exports/categoria'));
             echo url("exports/categoria/CAT" . $id . ".xls");
             break;
         default:
             # code...
             break;
     }
 }
Ejemplo n.º 3
0
 public static function ingresandoproducto($codigo, $descripcion, $cuenta, $ubicacion, $unidad, $cantidad, $precio, $ingreso_id)
 {
     $cuenta = Cuenta::where('nombre_cuenta', '=', $cuenta)->first();
     $producto = Producto::where('codigo_interno', '=', $codigo)->first();
     if ($producto != null) {
         //actualizando la existencia del producto en la tabla central
         $producto->existencias = $producto->existencias + $cantidad;
         $producto->precio = $precio;
         $producto->ubicacion = $ubicacion;
         $producto->save();
     } else {
         $p = new Producto();
         $p->codigo_interno = $codigo;
         $p->descripcion = $descripcion;
         $p->cuenta_id = $cuenta->id;
         $p->ubicacion = $ubicacion;
         $p->precio = $precio;
         $p->existencias = $cantidad;
         $p->unidad = $unidad;
         $p->nivel = Session::get('nivel');
         $p->save();
         //Guardando codigo 	QR
         DNS2D::getBarcodePNGPath($codigo, "QRCODE", 20, 20);
         //selecionando el producto recien guardado
         $producto = Producto::where('codigo_interno', '=', $codigo)->first();
     }
     //ingresando en la tabla  mediatica de producto e ingreso para futuras referencias y saber cuantos productos fueron ingresados en un producto
     $ing_pro = new Ingresoproducto();
     $ing_pro->ingreso_id = $ingreso_id;
     $ing_pro->producto_id = $producto->id;
     $ing_pro->cantidad = $cantidad;
     $ing_pro->precio = $precio;
     $ing_pro->fecha = date('Y-m-d');
     $ing_pro->save();
 }
Ejemplo n.º 4
0
 public function postVerhistorial()
 {
     $tipo = Input::get('tipo');
     $gestion = Input::get('gestion');
     $codigoproducto = Input::get('codigo');
     if ($codigoproducto == null || $gestion == null) {
         echo "Codigo mal";
     } else {
         if ($tipo == "Ingresos del Producto") {
             $gestioninicio = $gestion . "-01-0";
             $gestionfinal = $gestion . "-12-32";
             $p = Producto::where('codigo_interno', '=', $codigoproducto)->first();
             if ($p == null) {
                 echo "no hay registros";
             } else {
                 $ingresos = Ingresoproducto::where('producto_id', '=', $p->id)->where('fecha', '>', $gestioninicio)->where('fecha', '<', $gestionfinal)->get();
                 $i = 0;
                 $ing_total;
                 foreach ($ingresos as $key) {
                     $ni = Ingreso::where('id', '=', $key->ingreso_id)->first();
                     $preciototal = $key->cantidad * $key->precio;
                     $ing_total[$i] = array("fecha" => $key->fecha, "ni" => $ni->numero, "procedencia" => $ni->proveedor, "costo" => $key->precio, "cantidad" => $key->cantidad, "importe" => $preciototal);
                     $i++;
                 }
                 if (count($ing_total) > 0) {
                     return Redirect::to('cardex')->with('ing_total', $ing_total)->with('status', 'ok_ingreso');
                 } else {
                     echo "no tiene ingresos";
                 }
             }
         } else {
             if ($tipo == "Egresos del Producto") {
                 $gestioninicio = $gestion . "-01-0";
                 $gestionfinal = $gestion . "-12-32";
                 $p = Producto::where('codigo_interno', '=', $codigoproducto)->first();
                 if ($p == null) {
                     echo "no hay registros";
                 } else {
                     $egresos = Egresoproducto::where('producto_id', '=', $p->id)->where('fecha', '>', $gestioninicio)->where('fecha', '<', $gestionfinal)->get();
                     $i = 0;
                     foreach ($egresos as $key) {
                         $ni = Egreso::where('id', '=', $key->egreso_id)->first();
                         $preciototal = $key->cantidad * $key->precio;
                         $egre_total[$i] = array('fecha' => $key->fecha, 'unidad' => $key->unidad_uso, 'destino' => $ni->para_uso_en, 'can_egreso' => $key->cantidad, 'precio' => $key->precio, 'saldo' => $p->existencias, 'nota' => $ni->numero);
                         //echo "fecha ingreso: ".$key->fecha."Referencia: ".$key->unidad_uso." destino a: ".$ni->para_uso_en." cantidad egreso: ".$key->cantidad." precio : ".$key->precio." saldo catidad".$p->existencias." nota de egreso:".$ni->numero.'<br>';
                         $i++;
                     }
                     if (count($egre_total) > 0) {
                         return Redirect::to('cardex')->with('egre_total', $egre_total)->with('status', 'ok_egreso');
                     } else {
                         echo "no tiene egresos";
                     }
                 }
             }
         }
     }
 }
 public function getIndex()
 {
     $dataModule['empresa'] = Empresa::where('activa', 1)->get();
     $dataModule['plan_pago'] = PlanPago::orderby('created_at')->get();
     $dataModule['nota_credito'] = Cupon::all();
     $dataModule['productos'] = Producto::where('activo', 1)->get();
     $dataModule['departamentos'] = Departamento::all();
     return View::make($this->department . ".main", $this->data)->nest('child', 'sistemas.main_configuracion', $dataModule);
 }
Ejemplo n.º 6
0
 public function mail($id)
 {
     $producto = Producto::where('id', $id)->first();
     $nombre = $producto->nombre;
     $description = $producto->descripcion;
     //	return $producto;
     $mail = '*****@*****.**';
     $nombreCliente = 'Cliente';
     $data = ['mail' => $mail, 'nombre' => $nombre, 'from' => '*****@*****.**', 'from_name' => 'Enlaces'];
     Venta::create(['cliente_id' => '1', 'producto_id' => $id, 'despacho' => 'En 3 días hábiles']);
     Mail::send('emails.welcome', ['key' => 'value', 'nombre' => $nombre, 'description' => $description], function ($message) use($data) {
         $message->from($data['from'], 'Enlaces');
         $message->to($data['mail'], 'Nidia')->subject('Orden de compra.');
     });
     $productos = Producto::where('stock', '>', 0)->get();
     return View::make('productos.index', compact('productos'));
 }
Ejemplo n.º 7
0
 public function getRecuperarproducto($codigo)
 {
     if (Request::ajax()) {
         $producto = Producto::where('codigo_interno', '=', $codigo)->first();
         if ($producto) {
             $cuenta = Producto::find($producto->id)->cuenta;
             $datos["estado"] = 1;
             $datos["descripcion"] = $producto->descripcion;
             $datos["ubicacion"] = $producto->ubicacion;
             $datos["cuenta"] = $cuenta->nombre_cuenta;
             $datos["unidad"] = $producto->unidad;
             echo json_encode($datos);
         } else {
             $c = Cuenta::all();
             $datos["estado"] = 2;
             $datos["cuentas"] = $c;
             echo json_encode($datos);
         }
     }
 }
Ejemplo n.º 8
0
 public function postNicho()
 {
     //validar formulario nicho
     $rules = array('recinto_nombre' => 'required', 'fila_n' => 'required', 'columna' => 'required', 'monto' => 'required|numeric', 'porcentaje_comision' => 'required|numeric', 'porcentaje_minimo_comisionable' => 'required|numeric');
     $messages = array('required' => 'El campo :attribute es obligatorio', 'numeric' => 'Capture solo números');
     $validator = Validator::make(Input::all(), $rules, $messages);
     if ($validator->fails()) {
         return Redirect::back()->withInput()->withErrors($validator)->with('registro', 'edit_tab1')->with('tab', 'tab1');
     }
     $departamento = "5";
     $product_name = Str::title(Input::get('recinto_nombre')) . " Fila " . Input::get('fila_n') . " Columna " . Input::get('columna');
     $nombre_construccion = Input::get('construccion');
     //que no haya nichos repetidos con el mismo nombre
     $repetido = Producto::where('nombre', '=', $product_name)->count();
     if ($repetido > 0) {
         return Redirect::back()->withInput()->with('status', 'nicho_repetido');
     }
     //pasa validacion nicho
     $producto = new Producto();
     $producto->departamento_id = $departamento;
     //es un producto del departamento de ventas
     $producto->nombre = $product_name;
     $producto->porcentaje_comision = Input::get('porcentaje_comision');
     $producto->porcentaje_minimo_comisionable = Input::get('porcentaje_minimo_comisionable');
     $producto->save();
     $precio = new Precio();
     $precio->producto_id = $producto->id;
     $precio->monto = Input::get('monto') / 1.16;
     $precio->save();
     $lote = new Lote();
     $lote->producto_id = $producto->id;
     $lote->save();
     $nicho = new Nicho();
     $nicho->lote_id = $lote->id;
     $nicho->recinto_id = Input::get('recinto_id');
     $nicho->fila = Input::get('fila_n');
     $nicho->columna = Input::get('columna');
     $nicho->save();
     return Redirect::back()->with('status', 'nicho_created')->with('tab', 'tab1')->with('registro', 'edit_tab1');
 }
 public function getRecuperarproducto($codigo)
 {
     if (Request::ajax()) {
         $producto = Producto::where('codigo_interno', '=', $codigo)->first();
         if ($producto) {
             $datos["estado"] = 1;
             $datos["descripcion"] = $producto->descripcion;
             $datos["ubicacion"] = $producto->ubicacion;
             $datos["unidad"] = $producto->unidad;
             $datos["precio"] = $producto->precio;
             echo json_encode($datos);
         } else {
             $datos["estado"] = 2;
             echo json_encode($datos);
         }
     }
 }
Ejemplo n.º 10
0
 public function getProducto()
 {
     $productos = Producto::where('categoria_id', '>', 1)->get();
     return Response::json($productos);
 }
Ejemplo n.º 11
0
        }
        if (count($ing_total) > 0) {
            $datos["estado"] = 1;
            $datos["ingresos"] = $ing_total;
            echo json_encode($datos);
        } else {
            $datos["estado"] = 2;
            $datos["mensaje"] = "no hay ingresos";
            echo json_encode($datos);
        }
    }
});
Route::get('egresosProducto/{codigo}/{gestion}', function ($codigo, $gestion) {
    $gestioninicio = $gestion . "-01-0";
    $gestionfinal = $gestion . "-12-32";
    $p = Producto::where('codigo_interno', '=', $codigo)->first();
    if ($p == null) {
        $datos["estado"] = 3;
        $datos["mensaje"] = "el producto no esta registrado en inventarios";
        echo json_encode($datos);
    } else {
        $egresos = Egresoproducto::where('producto_id', '=', $p->id)->where('fecha', '>', $gestioninicio)->where('fecha', '<', $gestionfinal)->get();
        $i = 0;
        foreach ($egresos as $key) {
            $ni = Egreso::where('id', '=', $key->egreso_id)->first();
            $preciototal = $key->cantidad * $key->precio;
            $egre_total[$i] = array('fecha' => $key->fecha, 'unidad' => $key->unidad_uso, 'destino' => $ni->para_uso_en, 'can_egreso' => $key->cantidad, 'precio' => $key->precio, 'saldo' => $p->existencias, 'nota' => $ni->numero);
            //echo "fecha ingreso: ".$key->fecha."Referencia: ".$key->unidad_uso." destino a: ".$ni->para_uso_en." cantidad egreso: ".$key->cantidad." precio : ".$key->precio." saldo catidad".$p->existencias." nota de egreso:".$ni->numero.'<br>';
            $i++;
        }
        if (count($egre_total) > 0) {
Ejemplo n.º 12
0
 public function index()
 {
     $productos = Producto::where('stock', '>', 0)->get();
     return View::make('productos.index', compact('productos'));
 }
Ejemplo n.º 13
0
 public function producto()
 {
     return Producto::where('item_id', $this->id)->first();
 }