Correcciones en controladores de postulaciones y contratos

- Corregir método distance() a withinDistanceTo() para consultas espaciales
- Corregir parsing de fecha/hora con timezone America/Tijuana
- Comentar código de WhatsApp no configurado

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-27 04:08:12 +00:00
parent 09a37c08a3
commit f571caa204
3 changed files with 84 additions and 74 deletions

View File

@@ -323,7 +323,7 @@ class ContractController extends Controller
Postulations::destroy($request->postulation_id);
//Notify the suppliers that they have been hired
/*OneSignal::sendNotificationUsingTags(
OneSignal::sendNotificationUsingTags(
"Dirígete a la sección de postulaciones contratadas en la app para ver más detalles",
array(
["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $supplier->user_id]
@@ -333,17 +333,18 @@ class ContractController extends Controller
$buttons = null,
$schedule = null,
$headings = "Proveedor: has sido contratado"
);*/
Whatsapp::send($supplier->user->phone, Messages\TemplateMessage::create()
->name('suppplier_hired')
->language('es_US')
->body(Messages\Components\Body::create([
Messages\Components\Parameters\Text::create('Proveedor has sido contratado: dirígete a la sección de postulaciones contratadas en JobHero para ver más detalles'),
])));
);
// TODO: Configurar WhatsApp cuando esté disponible
// Whatsapp::send($supplier->user->phone, Messages\TemplateMessage::create()
// ->name('suppplier_hired')
// ->language('es_US')
// ->body(Messages\Components\Body::create([
// Messages\Components\Parameters\Text::create('Proveedor has sido contratado: dirígete a la sección de postulaciones contratadas en JobHero para ver más detalles'),
// ])));
//Schedule a notification for the suppliers about their appointment
/*OneSignal::sendNotificationUsingTags(
"Tienes un servicio en " . $contract->address . " hoy en 30 minutos. Dírigeta a la sección de postulaciones contratados para más detalles",
OneSignal::sendNotificationUsingTags(
"Tienes un servicio en " . $contract->address . " hoy en 30 minutos. Dirígete a la sección de postulaciones contratados para más detalles",
array(
["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $supplier->user_id]
),
@@ -352,18 +353,19 @@ class ContractController extends Controller
$buttons = null,
$schedule = $delay_UTC,
$headings = "Proveedor, no olvides tu cita de hoy"
);*/
Whatsapp::send($supplier->user->phone, Messages\TemplateMessage::create()
->name('suppplier_appointment')
->language('es_US')
->body(Messages\Components\Body::create([
Messages\Components\Parameters\Text::create('Proveedor no olvides tu cita de hoy: Tienes un servicio en ' . $contract->address . ' hoy en 30 minutos. Dírigeta a la sección de postulaciones contratados para más detalles'),
])));
);
// TODO: Configurar WhatsApp cuando esté disponible
// Whatsapp::send($supplier->user->phone, Messages\TemplateMessage::create()
// ->name('suppplier_appointment')
// ->language('es_US')
// ->body(Messages\Components\Body::create([
// Messages\Components\Parameters\Text::create('Proveedor no olvides tu cita de hoy: Tienes un servicio en ' . $contract->address . ' hoy en 30 minutos. Dírigeta a la sección de postulaciones contratados para más detalles'),
// ])));
//Schedule a notification for the users about their appointment
/*OneSignal::sendNotificationUsingTags(
"Tienes un servicio agendado hoy en " . $contract->address . " en 30 minutos. Dírigeta a la sección de contratos confirmados para más detalles",
OneSignal::sendNotificationUsingTags(
"Tienes un servicio agendado hoy en " . $contract->address . " en 30 minutos. Dirígete a la sección de contratos confirmados para más detalles",
array(
["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $user->id]
),
@@ -372,13 +374,14 @@ class ContractController extends Controller
$buttons = null,
$schedule = $delay_UTC,
$headings = $user->name . ", no olvides tu cita de hoy"
);*/
Whatsapp::send($user->phone, Messages\TemplateMessage::create()
->name('user_appointment')
->language('es_US')
->body(Messages\Components\Body::create([
Messages\Components\Parameters\Text::create($user->name . ' no olvides tu cita de hoy: Tienes un servicio agendado hoy en ' . $contract->address . ' en 30 minutos. Dírigeta a la sección de contratos confirmados para más detalles'),
])));
);
// TODO: Configurar WhatsApp cuando esté disponible
// Whatsapp::send($user->phone, Messages\TemplateMessage::create()
// ->name('user_appointment')
// ->language('es_US')
// ->body(Messages\Components\Body::create([
// Messages\Components\Parameters\Text::create($user->name . ' no olvides tu cita de hoy: Tienes un servicio agendado hoy en ' . $contract->address . ' en 30 minutos. Dírigeta a la sección de contratos confirmados para más detalles'),
// ])));
return response()->json([
'message' => 'Servicio contratado exitosamente'
@@ -460,7 +463,7 @@ class ContractController extends Controller
Postulations::destroy($request->postulation_id);
//Notify the suppliers that they have been hired
/*OneSignal::sendNotificationUsingTags(
OneSignal::sendNotificationUsingTags(
"Dirígete a la sección de postulaciones contratadas en la app para ver más detalles",
array(
["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $supplier->user_id]
@@ -470,17 +473,18 @@ class ContractController extends Controller
$buttons = null,
$schedule = null,
$headings = "Proveedor: has sido contratado"
);*/
Whatsapp::send($supplier->user->phone, Messages\TemplateMessage::create()
->name('suppplier_hired')
->language('es_US')
->body(Messages\Components\Body::create([
Messages\Components\Parameters\Text::create('Proveedor has sido contratado: dirígete a la sección de postulaciones contratadas en JobHero para ver más detalles'),
])));
);
// TODO: Configurar WhatsApp cuando esté disponible
// Whatsapp::send($supplier->user->phone, Messages\TemplateMessage::create()
// ->name('suppplier_hired')
// ->language('es_US')
// ->body(Messages\Components\Body::create([
// Messages\Components\Parameters\Text::create('Proveedor has sido contratado: dirígete a la sección de postulaciones contratadas en JobHero para ver más detalles'),
// ])));
//Schedule a notification for the suppliers about their appointment
/*OneSignal::sendNotificationUsingTags(
"Tienes un servicio en " . $contract->address . " hoy en 30 minutos. Dírigeta a la sección de postulaciones contratados para más detalles",
OneSignal::sendNotificationUsingTags(
"Tienes un servicio en " . $contract->address . " hoy en 30 minutos. Dirígete a la sección de postulaciones contratados para más detalles",
array(
["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $supplier->user_id]
),
@@ -489,18 +493,19 @@ class ContractController extends Controller
$buttons = null,
$schedule = $delay_UTC,
$headings = "Proveedor, no olvides tu cita de hoy"
);*/
Whatsapp::send($supplier->user->phone, Messages\TemplateMessage::create()
->name('suppplier_appointment')
->language('es_US')
->body(Messages\Components\Body::create([
Messages\Components\Parameters\Text::create('Proveedor no olvides tu cita de hoy: Tienes un servicio en ' . $contract->address . ' hoy en 30 minutos. Dírigeta a la sección de postulaciones contratados para más detalles'),
])));
);
// TODO: Configurar WhatsApp cuando esté disponible
// Whatsapp::send($supplier->user->phone, Messages\TemplateMessage::create()
// ->name('suppplier_appointment')
// ->language('es_US')
// ->body(Messages\Components\Body::create([
// Messages\Components\Parameters\Text::create('Proveedor no olvides tu cita de hoy: Tienes un servicio en ' . $contract->address . ' hoy en 30 minutos. Dírigeta a la sección de postulaciones contratados para más detalles'),
// ])));
//Schedule a notification for the users about their appointment
/*OneSignal::sendNotificationUsingTags(
"Tienes un servicio agendado hoy en " . $contract->address . " en 30 minutos. Dírigeta a la sección de contratos confirmados para más detalles",
OneSignal::sendNotificationUsingTags(
"Tienes un servicio agendado hoy en " . $contract->address . " en 30 minutos. Dirígete a la sección de contratos confirmados para más detalles",
array(
["field" => "tag", "key" => "iChamba_ID", "relation" => "=", "value" => $user->id]
),
@@ -509,13 +514,14 @@ class ContractController extends Controller
$buttons = null,
$schedule = $delay_UTC,
$headings = $user->name . ", no olvides tu cita de hoy"
);*/
Whatsapp::send($user->phone, Messages\TemplateMessage::create()
->name('user_appointment')
->language('es_US')
->body(Messages\Components\Body::create([
Messages\Components\Parameters\Text::create($user->name . ' no olvides tu cita de hoy: Tienes un servicio agendado hoy en ' . $contract->address . ' en 30 minutos. Dírigeta a la sección de contratos confirmados para más detalles'),
])));
);
// TODO: Configurar WhatsApp cuando esté disponible
// Whatsapp::send($user->phone, Messages\TemplateMessage::create()
// ->name('user_appointment')
// ->language('es_US')
// ->body(Messages\Components\Body::create([
// Messages\Components\Parameters\Text::create($user->name . ' no olvides tu cita de hoy: Tienes un servicio agendado hoy en ' . $contract->address . ' en 30 minutos. Dírigeta a la sección de contratos confirmados para más detalles'),
// ])));
$coupon->limit = $coupon->limit - 1;
$coupon->save();