Update ShowServicios.php

This commit is contained in:
Lizandro Guarnizo
2024-10-11 15:40:15 -05:00
parent 6b85c9a88a
commit 7454087a9c
+35 -29
View File
@@ -163,7 +163,12 @@ class ShowServicios extends Component
->whereDate('vencimiento', '<=', $this->fecha_final_2)
->where('servicio_id', $servicio_tarifa->id)
->where('estado', 'pendiente')
->doesntHave('perfil')
->where(function ($query) {
$query->doesntHave('perfil')
->orWhereHas('perfil', function ($query) {
$query->whereNull('historial_id');
});
})
->count();
} else {
@@ -186,12 +191,12 @@ class ShowServicios extends Component
->where('estado', 'activo')
->having('historiales_count', '<=', $cantidad_restante)
->get();
//dd($cuentas_pantallas); // con count da un numero entero
//dd($cuentas_pantallas); // con count da un numero entero
$cuentas_pantallas_tomadas = Historial_cuenta::whereIn('cuenta_id', $cuentas_pantallas
->pluck('id'))->whereNotNull('historial_id')
->count();
//dd($cuentas_pantallas_tomadas);
//dd($cuentas_pantallas_tomadas);
//Validar si el numero pantallas del servicio es igual o mayor que lo solicitado
if ($servicio_tarifa->pantallas >= $cantidad_solicitada) {
//dd($servicio_tarifa->pantallas * $cuentas_pantallas->count());
@@ -208,7 +213,8 @@ class ShowServicios extends Component
$this->tarjetaPlan = true;
}
public function cerrartarjetaPlan(){
public function cerrartarjetaPlan()
{
$this->cantidad_tarjetaPlan = 1;
$this->tarjetaPlan = false;
$this->tarifa_id = '';
@@ -313,25 +319,25 @@ class ShowServicios extends Component
// ->havingRaw("COUNT(*) >= $suma");
//})
->get();
if ($cuenta->isEmpty()) {
$suma3 = $pantalla_servicio - $pantallas;
$cantidad_necesaria = $this->cantidad_tarjetaPlan;
$cuenta = Cuentas::where('servicio_id', $this->servicio_id)
->whereDate('inicio', '>=', $this->fecha)
->whereDate('vencimiento', '>=', $this->fecha_final_1)
->whereDate('vencimiento', '<=', $this->fecha_final_2)
->Orderby('inicio', 'ASC')
->withCount('historiales')
->where('estado', 'activo')
->having('historiales_count', '<=', $suma3)
//->with('perfil')
//->whereDoesntHave('perfil', function ($query) use ($suma2) {
//$query->select('cuenta_id')
// ->groupBy('cuenta_id')
// ->havingRaw("COUNT(*) >= $suma2");
//})
->get();
}
if ($cuenta->isEmpty()) {
$suma3 = $pantalla_servicio - $pantallas;
$cantidad_necesaria = $this->cantidad_tarjetaPlan;
$cuenta = Cuentas::where('servicio_id', $this->servicio_id)
->whereDate('inicio', '>=', $this->fecha)
->whereDate('vencimiento', '>=', $this->fecha_final_1)
->whereDate('vencimiento', '<=', $this->fecha_final_2)
->Orderby('inicio', 'ASC')
->withCount('historiales')
->where('estado', 'activo')
->having('historiales_count', '<=', $suma3)
//->with('perfil')
//->whereDoesntHave('perfil', function ($query) use ($suma2) {
//$query->select('cuenta_id')
// ->groupBy('cuenta_id')
// ->havingRaw("COUNT(*) >= $suma2");
//})
->get();
}
// dd($cuenta);
} elseif ((int) $pantalla_servicio_completa == (int) $this->pantallas_tarjetaPlan) {
//Cuentas completas
@@ -358,9 +364,9 @@ class ShowServicios extends Component
->having('historiales_count', '<=', $suma2)
//->with('perfil')
//->whereDoesntHave('perfil', function ($query) use ($suma2) {
//$query->select('cuenta_id')
// ->groupBy('cuenta_id')
// ->havingRaw("COUNT(*) >= $suma2");
//$query->select('cuenta_id')
// ->groupBy('cuenta_id')
// ->havingRaw("COUNT(*) >= $suma2");
//})
->get();
} else {
@@ -393,7 +399,7 @@ class ShowServicios extends Component
$eliminar = Historial_cuenta::where('historial_id', $historial->id)->delete();
$logsGeneral = new Log_general();
$logsGeneral->user_id = Auth::user()->id;
$logsGeneral->detalle = 'El usuario ' . Auth::user()->name . ' - ' . Auth::user()->email . ' Tuvo error de "No hay cuentas disponibles" Comprando el servicio ' . $servicioNombre . ' - ' . $cuentasMostar . ' cantidad de ' . $this->cantidad_tarjetaPlan . ' por un valor de $' . $total_valor.' Se desligaron todas las cuentas.';
$logsGeneral->detalle = 'El usuario ' . Auth::user()->name . ' - ' . Auth::user()->email . ' Tuvo error de "No hay cuentas disponibles" Comprando el servicio ' . $servicioNombre . ' - ' . $cuentasMostar . ' cantidad de ' . $this->cantidad_tarjetaPlan . ' por un valor de $' . $total_valor . ' Se desligaron todas las cuentas.';
$logsGeneral->save();
$this->alert('warning', 'No hay cuentas disponibles!', [
'position' => 'top'
@@ -413,7 +419,7 @@ class ShowServicios extends Component
$logsGeneral = new Log_general();
$logsGeneral->user_id = Auth::user()->id;
$logsGeneral->detalle = 'El usuario ' . Auth::user()->name . ' - ' . Auth::user()->email . ' ha comprado el servicio ' . $servicioNombre . ' - ' . $cuentasMostar . ' cantidad de ' . $this->cantidad_tarjetaPlan . ' por un valor de $' . $total_valor .', Saldo anterior: $'.$saldo_anterior.', Nuevo saldo disponible: $'.$nuevo_saldo;
$logsGeneral->detalle = 'El usuario ' . Auth::user()->name . ' - ' . Auth::user()->email . ' ha comprado el servicio ' . $servicioNombre . ' - ' . $cuentasMostar . ' cantidad de ' . $this->cantidad_tarjetaPlan . ' por un valor de $' . $total_valor . ', Saldo anterior: $' . $saldo_anterior . ', Nuevo saldo disponible: $' . $nuevo_saldo;
$logsGeneral->save();
@@ -436,7 +442,7 @@ class ShowServicios extends Component
$eliminar = Historial_cuenta::where('historial_id', $historial->id)->delete();
$logsGeneral = new Log_general();
$logsGeneral->user_id = Auth::user()->id;
$logsGeneral->detalle = 'El usuario ' . Auth::user()->name . ' - ' . Auth::user()->email . ' Tuvo error de "No hay cuentas disponibles" Comprando el servicio ' . $servicioNombre . ' - ' . $cuentasMostar . ' cantidad de ' . $this->cantidad_tarjetaPlan . ' por un valor de $' . $total_valor.' No se desconto el saldo, ni se asignaron cuentas.';
$logsGeneral->detalle = 'El usuario ' . Auth::user()->name . ' - ' . Auth::user()->email . ' Tuvo error de "No hay cuentas disponibles" Comprando el servicio ' . $servicioNombre . ' - ' . $cuentasMostar . ' cantidad de ' . $this->cantidad_tarjetaPlan . ' por un valor de $' . $total_valor . ' No se desconto el saldo, ni se asignaron cuentas.';
$logsGeneral->save();
$this->alert('warning', 'No hay cuentas disponibles!', [
'position' => 'top'