public function run() { $faker = Faker::create('pt_BR'); foreach (range(1, 10) as $index) { Pedido::create(['cliente_id' => rand(1, 2), 'fornecedor_id' => rand(1, 2), 'entrega_endereco' => $faker->text(), 'entrega_data' => $faker->date('Y-m-d'), 'frete' => $faker->text(), 'pgto' => $faker->text(), 'total' => rand(3, 3), 'obs' => $faker->text()]); } }
/** * Store a newly created pedido in storage. * * @return Response */ public function store() { $validator = Validator::make($data = Input::all(), Pedido::$rules); if ($validator->fails()) { $alert[] = ['class' => 'alert-danger', 'message' => 'Erros de validação. Verifique!']; Session::flash('alerts', $alert); return Redirect::back()->withErrors($validator)->withInput(Input::except('password')); } $total = NULL; // Tratamos os valores monetários com carinho ;) foreach ($data['itens']['preco'] as $item => $preco) { $data['itens']['preco'][$item] = FazMeRir::feio($preco); } foreach ($data['itens']['subtotal'] as $item => $subtotal) { $data['itens']['subtotal'][$item] = FazMeRir::feio($subtotal); // Soma ao total $total += $data['itens']['subtotal'][$item]; } //Reformata o total $data['total'] = number_format($total, '2', '.', ''); // Codifica PRODUTOS em JSON $data['itens'] = json_encode($data['itens']); //Status // 1 = Salvo / Não enviado // 2 = Enviado $data['status'] = '1'; /** * CRIA NOVO PEDIDO */ $pedido = Pedido::create($data); if ($pedido) { $alert[] = ['class' => 'alert-success', 'message' => 'O pedido foi fechado. Não esqueça de enviá-lo!']; Session::flash('alerts', $alert); // GERA PDF $this->gerarPdf($pedido->id); $pedido = $pedido->id; return Redirect::route('pedidos.show', compact('pedido')); } else { $alert[] = ['class' => 'alert-danger', 'message' => 'Erro: Não foi possível fechar o pedido.']; Session::flash('alerts', $alert); return Redirect::back()->withErrors(); } }
public function postVentadirecta() { $pedido = Pedido::create(['estado' => 2, 'fechainicio' => date('Y-m-d H:i:s'), 'usuario_id' => Auth::user()->id]); $productos = Input::get('productos'); foreach ($productos as $producto) { $cantidad = $producto['cantidad']; $pedido->productos()->attach($producto['producto_id'], ['cantidad' => $cantidad, 'estado' => 1, 'precio' => $producto['precio'], 'preciounitario' => $producto['preciounitario']]); $producto = Producto::find($producto['producto_id']); $newstock = $producto->stockactual - $cantidad; $producto->stockactual = $newstock; $producto->save(); } $pagarpro = $pedido->productos()->where('detallepedidoproductos.estado', '=', 1)->sum('detallepedidoproductos.precio'); $subtotal = $pagarpro / 1.18; $documentoventa = Documentoventa::create(['estado' => 1, 'igv' => $pagarpro - $subtotal, 'importe' => $pagarpro, 'subtotal' => $subtotal, 'caja_id' => $this->detallecaja->caja_id, 'detallecaja_id' => $this->detallecaja->id, 'pedido_id' => $pedido->id, 'tipocomprobante_id' => 1]); $productos = $pedido->productos; foreach ($productos as $producto) { if ($producto->pivot->estado == 1) { $producto->pivot->estado = 0; $documentoventa->productos()->attach($producto->id, ['precio' => $producto->pivot->precio, 'preciounitario' => $producto->pivot->preciounitario, 'cantidad' => $producto->pivot->cantidad, 'descripcion' => $producto->nombre]); $producto->pivot->save(); } } return Response::json(['estado' => true, 'msg' => 'Operacion Completada Correctamente']); }