Compare commits

...

3 commits

3 changed files with 21 additions and 4 deletions

View file

@ -43,7 +43,12 @@ class PedidosExportHelper
static public function pedidosDeOllas() static public function pedidosDeOllas()
{ {
$filePath = "csv/exports/pedidos-de-ollas-" . now()->format('Y-m-d') . ".csv"; $filePath = "csv/exports/pedidos-de-ollas-" . now()->format('Y-m-d') . ".csv";
$barrios = GrupoDeCompra::barriosMenosPrueba()->get(); $barrios = GrupoDeCompra::barriosMenosPrueba()
->whereHas('subpedidos', function ($query) {
$tipo_olla = self::getTipoId('olla');
$query->where('tipo_pedido_id', $tipo_olla);
})
->get();
$contenido = self::generarContenidoCSV($barrios, $contenido = self::generarContenidoCSV($barrios,
fn($grupoId) => "subpedidos.grupo_de_compra_id = $grupoId fn($grupoId) => "subpedidos.grupo_de_compra_id = $grupoId
@ -62,7 +67,7 @@ class PedidosExportHelper
*/ */
public static function cantidadDeOllasParaCSV(Collection $barrios, Collection $contenido) public static function cantidadDeOllasParaCSV(Collection $barrios, Collection $contenido)
{ {
$tipo_olla = TipoPedido::where('nombre', 'olla')->first()->id; $tipo_olla = self::getTipoId('olla');
$parametros = collect(CsvHelper::getRecords(resource_path("csv/parametros.csv"), "No se pudo leer el archivo.")); $parametros = collect(CsvHelper::getRecords(resource_path("csv/parametros.csv"), "No se pudo leer el archivo."));
$fila = [ $fila = [
@ -241,4 +246,13 @@ class PedidosExportHelper
} }
return $transporte; return $transporte;
} }
/**
* @return mixed
*/
public static function getTipoId(string $tipo)
{
$tipo_olla = TipoPedido::where('nombre', $tipo)->first()->id;
return $tipo_olla;
}
} }

View file

@ -20,8 +20,11 @@ class OllasController extends Controller
$pedido = $gdc->subpedidos()->firstOrCreate([ $pedido = $gdc->subpedidos()->firstOrCreate([
'nombre' => 'Pedido de Ollas de ' . $gdc->nombre, 'nombre' => 'Pedido de Ollas de ' . $gdc->nombre,
'tipo_pedido_id' => $tipoOlla->id, 'tipo_pedido_id' => $tipoOlla->id,
'cantidad_ollas' => 0,
]); ]);
if (!$pedido->cantidad_ollas) {
$pedido->cantidad_ollas = 0;
$pedido->save();
}
return response()->json(new PedidoOllasResource($pedido)); return response()->json(new PedidoOllasResource($pedido));
} }

View file

@ -1,4 +1,4 @@
id|nombre|valor id|nombre|valor
bono-transporte|'Bono de transporte'|15 bono-transporte|'Bono de transporte'|15
monto-transporte|'Monto para bono de transporte'|500 monto-transporte|'Monto para bono de transporte'|500
monto-olla|'Monto por olla'|1200 monto-olla|'Monto por olla'|800

1 id nombre valor
2 bono-transporte 'Bono de transporte' 15
3 monto-transporte 'Monto para bono de transporte' 500
4 monto-olla 'Monto por olla' 1200 800