Agregado método para crear barrio

This commit is contained in:
Alejandro Tasistro 2025-08-13 00:57:25 -03:00
parent 105767dab7
commit 408629a78d

View file

@ -7,6 +7,7 @@ use App\Helpers\CanastaHelper;
use App\Helpers\CsvHelper; use App\Helpers\CsvHelper;
use App\Helpers\PedidosExportHelper; use App\Helpers\PedidosExportHelper;
use App\Helpers\TransporteHelper; use App\Helpers\TransporteHelper;
use App\Http\Resources\GrupoDeCompraComisionesResource;
use App\Http\Resources\GrupoDeCompraResource; use App\Http\Resources\GrupoDeCompraResource;
use App\Producto; use App\Producto;
use App\User; use App\User;
@ -20,6 +21,7 @@ use League\Csv\Exception;
use League\Csv\InvalidArgument; use League\Csv\InvalidArgument;
use Mpdf\MpdfException; use Mpdf\MpdfException;
use Symfony\Component\HttpFoundation\BinaryFileResponse; use Symfony\Component\HttpFoundation\BinaryFileResponse;
use Symfony\Component\HttpKernel\Exception\HttpException;
class ComisionesController class ComisionesController
{ {
@ -243,4 +245,46 @@ class ComisionesController
return response()->noContent(); return response()->noContent();
} }
public static function crearGrupoDeCompra(Request $request) {
$request->validate([
'nombre' => ['required','string','regex:/^([a-z]| )+$/i'],
'region' => ['required','string','regex:/^([a-z]| |\d)+$/i'],
'passBarrio' => 'required|string|alpha_num|min:3',
'passAdmin' => 'required|string|alpha_num|min:3',
'passOllas' => 'required|string|alpha_num|min:3',
]);
if (GrupoDeCompra::where(["nombre" => $request["nombre"]])->get()->count())
throw new HttpException(400, "Ya existe un pedido con este nombre");
$gdc = GrupoDeCompra::create([
'nombre' => $request['nombre'],
'region' => $request['region'],
'saldo' => 0,
]);
User::create([
'grupo_de_compra_id' => $gdc->id,
'name' => $request['nombre'],
'password' => Hash::make($request['passBario']),
'role_id' => UserRole::where('nombre','barrio')->first()->id,
]);
User::create([
'grupo_de_compra_id' => $gdc->id,
'name' => $request['nombre'] . '_admin',
'password' => Hash::make($request['passAdmin']),
'role_id' => UserRole::where('nombre','admin_barrio')->first()->id,
]);
User::create([
'grupo_de_compra_id' => $gdc->id,
'name' => $request['nombre'] . '_ollas',
'password' => Hash::make($request['passOllas']),
'role_id' => UserRole::where('nombre','ollas')->first()->id,
]);
return new GrupoDeCompraComisionesResource($gdc);
}
} }