|
@@ -73,6 +73,7 @@ class EventoController extends Controller {
|
|
|
$this->stdout("Sincronizando ...");
|
|
$this->stdout("Sincronizando ...");
|
|
|
$ref = $firestore->collection("eventos")
|
|
$ref = $firestore->collection("eventos")
|
|
|
->where("sincronizado", "==", null)
|
|
->where("sincronizado", "==", null)
|
|
|
|
|
+ // ->where("sincronizado", "==", 'ERROR')
|
|
|
->orderBy("timestamp", "ASC")
|
|
->orderBy("timestamp", "ASC")
|
|
|
->limit($limite);
|
|
->limit($limite);
|
|
|
|
|
|
|
@@ -228,8 +229,12 @@ class EventoController extends Controller {
|
|
|
$usuarioModelo->twitterVerificado = $usuarioRef["twitterVerificado"];
|
|
$usuarioModelo->twitterVerificado = $usuarioRef["twitterVerificado"];
|
|
|
}
|
|
}
|
|
|
$usuarioModelo->genero = $usuarioRef["genero"];
|
|
$usuarioModelo->genero = $usuarioRef["genero"];
|
|
|
- $usuarioModelo->verificado = $usuarioRef["verificado"];
|
|
|
|
|
- $usuarioModelo->liderGlobal = $usuarioRef["liderGlobal"];
|
|
|
|
|
|
|
+ if (isset($usuarioRef["verificado"])) {
|
|
|
|
|
+ $usuarioModelo->verificado = $usuarioRef["verificado"];
|
|
|
|
|
+ }
|
|
|
|
|
+ if (isset($usuarioRef["liderGlobal"])) {
|
|
|
|
|
+ $usuarioModelo->liderGlobal = $usuarioRef["liderGlobal"];
|
|
|
|
|
+ }
|
|
|
$usuarioModelo->creado = new Expression('now()');
|
|
$usuarioModelo->creado = new Expression('now()');
|
|
|
if ($usuarioRef["estatus"] === false) {
|
|
if ($usuarioRef["estatus"] === false) {
|
|
|
$usuarioModelo->eliminado = new Expression('now()');
|
|
$usuarioModelo->eliminado = new Expression('now()');
|
|
@@ -242,6 +247,10 @@ class EventoController extends Controller {
|
|
|
|
|
|
|
|
// UsuarioGrupo
|
|
// UsuarioGrupo
|
|
|
if ($usuarioModelo !== null && isset($usuarioRef["grupos"]) && isset($usuarioRef["grupos"][0])) {
|
|
if ($usuarioModelo !== null && isset($usuarioRef["grupos"]) && isset($usuarioRef["grupos"][0])) {
|
|
|
|
|
+ if ($usuarioRef["estatus"] === false) {
|
|
|
|
|
+ $usuarioModelo->eliminado = new Expression('now()');
|
|
|
|
|
+ $usuarioModelo->save();
|
|
|
|
|
+ }
|
|
|
for ($i = 0; $i < count($usuarioRef["grupos"]); $i++) {
|
|
for ($i = 0; $i < count($usuarioRef["grupos"]); $i++) {
|
|
|
$modelGrupo = Grupo::findOne(['firebaseId' => $usuarioRef["grupos"][$i]]);
|
|
$modelGrupo = Grupo::findOne(['firebaseId' => $usuarioRef["grupos"][$i]]);
|
|
|
if (isset($modelGrupo)) {
|
|
if (isset($modelGrupo)) {
|
|
@@ -606,7 +615,9 @@ class EventoController extends Controller {
|
|
|
$usuarioModelo->twitterVerificado = $usuarioRef["twitterVerificado"];
|
|
$usuarioModelo->twitterVerificado = $usuarioRef["twitterVerificado"];
|
|
|
}
|
|
}
|
|
|
$usuarioModelo->genero = $usuarioRef["genero"];
|
|
$usuarioModelo->genero = $usuarioRef["genero"];
|
|
|
- $usuarioModelo->verificado = $usuarioRef["verificado"];
|
|
|
|
|
|
|
+ if (isset($usuarioRef["verificado"])) {
|
|
|
|
|
+ $usuarioModelo->verificado = $usuarioRef["verificado"];
|
|
|
|
|
+ }
|
|
|
$usuarioModelo->creado = new Expression('now()');
|
|
$usuarioModelo->creado = new Expression('now()');
|
|
|
if ($usuarioRef["estatus"] === false) {
|
|
if ($usuarioRef["estatus"] === false) {
|
|
|
$usuarioModelo->eliminado = new Expression('now()');
|
|
$usuarioModelo->eliminado = new Expression('now()');
|
|
@@ -619,6 +630,10 @@ class EventoController extends Controller {
|
|
|
|
|
|
|
|
// UsuarioGrupo
|
|
// UsuarioGrupo
|
|
|
if ($usuarioModelo !== null && isset($usuarioRef["grupos"]) && isset($usuarioRef["grupos"][0])) {
|
|
if ($usuarioModelo !== null && isset($usuarioRef["grupos"]) && isset($usuarioRef["grupos"][0])) {
|
|
|
|
|
+ if ($usuarioRef["estatus"] === false) {
|
|
|
|
|
+ $usuarioModelo->eliminado = new Expression('now()');
|
|
|
|
|
+ $usuarioModelo->save();
|
|
|
|
|
+ }
|
|
|
for ($i = 0; $i < count($usuarioRef["grupos"]); $i++) {
|
|
for ($i = 0; $i < count($usuarioRef["grupos"]); $i++) {
|
|
|
$modelGrupo = Grupo::findOne(['firebaseId' => $usuarioRef["grupos"][$i]]);
|
|
$modelGrupo = Grupo::findOne(['firebaseId' => $usuarioRef["grupos"][$i]]);
|
|
|
if (isset($modelGrupo)) {
|
|
if (isset($modelGrupo)) {
|
|
@@ -799,8 +814,8 @@ class EventoController extends Controller {
|
|
|
])
|
|
])
|
|
|
->from("Evento")
|
|
->from("Evento")
|
|
|
->andWhere([">=", "fechaFinal", new Expression("now() - interval '7 days'")])
|
|
->andWhere([">=", "fechaFinal", new Expression("now() - interval '7 days'")])
|
|
|
- // ->andWhere([">=", "fechaFinal", '2023-05-22 00:00:00'])
|
|
|
|
|
- // ->andWhere(["<=", "fechaFinal", '2023-05-27 00:00:00'])
|
|
|
|
|
|
|
+ // ->andWhere([">=", "fechaFinal", '2023-10-02 00:00:00'])
|
|
|
|
|
+ // ->andWhere(["<=", "fechaFinal", '2023-10-08 00:00:00'])
|
|
|
->groupBy(["tag", "nombre"])
|
|
->groupBy(["tag", "nombre"])
|
|
|
->indexBy("tag")
|
|
->indexBy("tag")
|
|
|
->column();
|
|
->column();
|
|
@@ -875,7 +890,7 @@ class EventoController extends Controller {
|
|
|
|
|
|
|
|
if (!$eventoResumen->save()) {
|
|
if (!$eventoResumen->save()) {
|
|
|
$errores = json_encode($eventoResumen->getFirstErrors());
|
|
$errores = json_encode($eventoResumen->getFirstErrors());
|
|
|
- $this->stdout('Hubo un problema al generar la notificación: '.$errores);
|
|
|
|
|
|
|
+ $this->stdout('Hubo un problema al generar la notificación: ' . $errores);
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -897,7 +912,7 @@ class EventoController extends Controller {
|
|
|
}
|
|
}
|
|
|
$nombreEvento = $eventos[$consulta['tag']];
|
|
$nombreEvento = $eventos[$consulta['tag']];
|
|
|
if ($consulta['Participo']) {
|
|
if ($consulta['Participo']) {
|
|
|
- if (!\in_array($nombreEvento, $aux[$consulta['id']]['eventosParticipo'])){
|
|
|
|
|
|
|
+ if (!\in_array($nombreEvento, $aux[$consulta['id']]['eventosParticipo'])) {
|
|
|
$aux[$consulta['id']]['eventosParticipo'][] = $nombreEvento;
|
|
$aux[$consulta['id']]['eventosParticipo'][] = $nombreEvento;
|
|
|
}
|
|
}
|
|
|
} else {
|
|
} else {
|
|
@@ -924,7 +939,7 @@ class EventoController extends Controller {
|
|
|
|
|
|
|
|
if (!$notificacion->save()) {
|
|
if (!$notificacion->save()) {
|
|
|
$errores = json_encode($notificacion->getFirstErrors());
|
|
$errores = json_encode($notificacion->getFirstErrors());
|
|
|
- $this->stdout('Hubo un problema al generar la notificación: '.$errores);
|
|
|
|
|
|
|
+ $this->stdout('Hubo un problema al generar la notificación: ' . $errores);
|
|
|
return;
|
|
return;
|
|
|
} // */
|
|
} // */
|
|
|
# TODO: Revisar si es necesario consultar la información del modelo
|
|
# TODO: Revisar si es necesario consultar la información del modelo
|
|
@@ -970,7 +985,7 @@ class EventoController extends Controller {
|
|
|
|
|
|
|
|
if (!$notificacionUsuario->save()) {
|
|
if (!$notificacionUsuario->save()) {
|
|
|
$errores = json_encode($notificacionUsuario->getFirstErrors());
|
|
$errores = json_encode($notificacionUsuario->getFirstErrors());
|
|
|
- $this->stdout('Hubo un problema al generar la notificación: '.$errores);
|
|
|
|
|
|
|
+ $this->stdout('Hubo un problema al generar la notificación: ' . $errores);
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -1006,10 +1021,10 @@ class EventoController extends Controller {
|
|
|
|
|
|
|
|
if (!$evResDependencia->save()) {
|
|
if (!$evResDependencia->save()) {
|
|
|
$errores = json_encode($evResDependencia->getFirstErrors());
|
|
$errores = json_encode($evResDependencia->getFirstErrors());
|
|
|
- $this->stdout('Hubo un problema al generar la notificación: '.$errores);
|
|
|
|
|
|
|
+ $this->stdout('Hubo un problema al generar la notificación: ' . $errores);
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
$dependenciaLider = DependenciaLider::find()
|
|
$dependenciaLider = DependenciaLider::find()
|
|
|
->andWhere(["idDependencia" => $id]);
|
|
->andWhere(["idDependencia" => $id]);
|
|
|
|
|
|
|
@@ -1041,7 +1056,7 @@ class EventoController extends Controller {
|
|
|
|
|
|
|
|
$contador = 0;
|
|
$contador = 0;
|
|
|
foreach ($usuariosDependencia->each() as $ud) {
|
|
foreach ($usuariosDependencia->each() as $ud) {
|
|
|
- if(!isset($aux[$ud["id"]])) {
|
|
|
|
|
|
|
+ if (!isset($aux[$ud["id"]])) {
|
|
|
continue;
|
|
continue;
|
|
|
}
|
|
}
|
|
|
$contador++;
|
|
$contador++;
|
|
@@ -1083,7 +1098,7 @@ class EventoController extends Controller {
|
|
|
if (!$notificacionUsuario->save()) {
|
|
if (!$notificacionUsuario->save()) {
|
|
|
$this->stdout("Error");
|
|
$this->stdout("Error");
|
|
|
$errores = json_encode($notificacionUsuario->getFirstErrors());
|
|
$errores = json_encode($notificacionUsuario->getFirstErrors());
|
|
|
- $this->stdout('Hubo un problema al generar la notificación: '.$errores);
|
|
|
|
|
|
|
+ $this->stdout('Hubo un problema al generar la notificación: ' . $errores);
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -1117,7 +1132,7 @@ class EventoController extends Controller {
|
|
|
$mensaje .= "*{$nombreDependencia}* fue {$totalParticipaciones}/{$totalEventosDependencia} eventos";
|
|
$mensaje .= "*{$nombreDependencia}* fue {$totalParticipaciones}/{$totalEventosDependencia} eventos";
|
|
|
// $contadorUsuarios = 0;
|
|
// $contadorUsuarios = 0;
|
|
|
foreach ($usuariosDependencia->each() as $ud) {
|
|
foreach ($usuariosDependencia->each() as $ud) {
|
|
|
- if(!isset($aux[$ud["id"]])) {
|
|
|
|
|
|
|
+ if (!isset($aux[$ud["id"]])) {
|
|
|
continue;
|
|
continue;
|
|
|
}
|
|
}
|
|
|
$nomrbeUsuario = trim($aux[$ud["id"]]["nombreUsuario"]);
|
|
$nomrbeUsuario = trim($aux[$ud["id"]]["nombreUsuario"]);
|
|
@@ -1129,7 +1144,7 @@ class EventoController extends Controller {
|
|
|
"idUsuario" => $ud->id
|
|
"idUsuario" => $ud->id
|
|
|
])
|
|
])
|
|
|
->exists();
|
|
->exists();
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
if ($checkEventoParticipante) {
|
|
if ($checkEventoParticipante) {
|
|
|
continue;
|
|
continue;
|
|
|
}
|
|
}
|
|
@@ -1147,7 +1162,7 @@ class EventoController extends Controller {
|
|
|
|
|
|
|
|
if (!$eventoParticipante->save()) {
|
|
if (!$eventoParticipante->save()) {
|
|
|
$errores = json_encode($eventoParticipante->getFirstErrors());
|
|
$errores = json_encode($eventoParticipante->getFirstErrors());
|
|
|
- $this->stdout('Hubo un problema al generar la notificación: '.$errores);
|
|
|
|
|
|
|
+ $this->stdout('Hubo un problema al generar la notificación: ' . $errores);
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
/* $contadorUsuarios++;
|
|
/* $contadorUsuarios++;
|
|
@@ -1157,7 +1172,7 @@ class EventoController extends Controller {
|
|
|
} */
|
|
} */
|
|
|
}
|
|
}
|
|
|
// $mensaje .= ")";
|
|
// $mensaje .= ")";
|
|
|
- if ($contadorDependencias < count($auxDependencia)){
|
|
|
|
|
|
|
+ if ($contadorDependencias < count($auxDependencia)) {
|
|
|
$mensaje .= ", ";
|
|
$mensaje .= ", ";
|
|
|
}
|
|
}
|
|
|
$participaciones += $totalParticipaciones;
|
|
$participaciones += $totalParticipaciones;
|
|
@@ -1205,7 +1220,7 @@ class EventoController extends Controller {
|
|
|
|
|
|
|
|
if (!$notificacionUsuario->save()) {
|
|
if (!$notificacionUsuario->save()) {
|
|
|
$errores = json_encode($notificacionUsuario->getFirstErrors());
|
|
$errores = json_encode($notificacionUsuario->getFirstErrors());
|
|
|
- $this->stdout('Hubo un problema al generar la notificación: '.$errores);
|
|
|
|
|
|
|
+ $this->stdout('Hubo un problema al generar la notificación: ' . $errores);
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -1229,4 +1244,86 @@ class EventoController extends Controller {
|
|
|
$this->stdout("Terminó");
|
|
$this->stdout("Terminó");
|
|
|
// file_put_contents("archivo.json", json_encode($aux));
|
|
// file_put_contents("archivo.json", json_encode($aux));
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ public function actionParticipacionError() {
|
|
|
|
|
+ $query = (new Query())
|
|
|
|
|
+ ->select([
|
|
|
|
|
+ "{{Usuario}}.id as [[id]]",
|
|
|
|
|
+ "{{Usuario}}.nombre as [[nombre]]",
|
|
|
|
|
+ "{{Usuario}}.telefono as [[telefono]]",
|
|
|
|
|
+ ])
|
|
|
|
|
+ ->distinct()
|
|
|
|
|
+ ->from("Evento")
|
|
|
|
|
+ ->innerJoin("EventoGrupo", "{{EventoGrupo}}.[[idEvento]] = {{Evento}}.id")
|
|
|
|
|
+ ->innerJoin("Grupo", "{{Grupo}}.id = {{EventoGrupo}}.[[idGrupo]]")
|
|
|
|
|
+ ->innerJoin("UsuarioGrupo", "{{UsuarioGrupo}}.[[idGrupo]] = {{Grupo}}.id")
|
|
|
|
|
+ ->innerJoin("Usuario", "{{Usuario}}.[[id]] = {{UsuarioGrupo}}.[[idUsuario]]")
|
|
|
|
|
+ ->leftJoin("Resultado", "{{Resultado}}.[[idEvento]] = {{Evento}}.id and {{Resultado}}.[[idUsuario]] = {{Usuario}}.id")
|
|
|
|
|
+ ->andWhere(["{{Usuario}}.eliminado" => null])
|
|
|
|
|
+ ->andWhere([">=", "fechaFinal", new Expression("now()-interval '7 days'")])
|
|
|
|
|
+ ->groupBy([
|
|
|
|
|
+ "{{Usuario}}.[[nombre]]",
|
|
|
|
|
+ "{{Usuario}}.[[telefono]]",
|
|
|
|
|
+ "{{Usuario}}.[[id]]",
|
|
|
|
|
+ ])
|
|
|
|
|
+ ->orderBy([
|
|
|
|
|
+ "{{Usuario}}.[[id]]" => SORT_ASC,
|
|
|
|
|
+ ]);
|
|
|
|
|
+
|
|
|
|
|
+ $transaccion = \Yii::$app->db->beginTransaction();
|
|
|
|
|
+
|
|
|
|
|
+ try {
|
|
|
|
|
+ $notificacion = new Notificacion();
|
|
|
|
|
+ $notificacion->creado = new Expression("now()");
|
|
|
|
|
+
|
|
|
|
|
+ if (!$notificacion->save()) {
|
|
|
|
|
+ $transaccion->rollBack();
|
|
|
|
|
+ $errores = json_encode($notificacion->getFirstErrors());
|
|
|
|
|
+ $this->stdoutln('Hubo un problema al generar la notificación: ' . $errores);
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ foreach ($query->each() as $usuario) {
|
|
|
|
|
+ $notificacionUsuario = new NotificacionUsuario();
|
|
|
|
|
+
|
|
|
|
|
+ $this->stdoutln("idUsuario: {$usuario['id']}");
|
|
|
|
|
+ $this->stdoutln("nombre: {$usuario['nombre']}");
|
|
|
|
|
+ $this->stdoutln("teléfono: {$usuario['telefono']}");
|
|
|
|
|
+
|
|
|
|
|
+ $notificacionUsuario->idNotificacion = $notificacion->id;
|
|
|
|
|
+ $notificacionUsuario->idUsuario = intval($usuario['id']);
|
|
|
|
|
+ $notificacionUsuario->nombre = $usuario['nombre'];
|
|
|
|
|
+ $notificacionUsuario->telefono = $usuario['telefono'];
|
|
|
|
|
+ $notificacionUsuario->plantilla = Notificacion::PLANTILLA_LIDER_GLOBAL_URL;
|
|
|
|
|
+
|
|
|
|
|
+ $parametros = [
|
|
|
|
|
+ [
|
|
|
|
|
+ "type" => "text",
|
|
|
|
|
+ "text" => "El día de ayer hubo una falla en el sistema al enviar los reportes de la semana, se esta solucionando. "
|
|
|
|
|
+ ],
|
|
|
|
|
+ [
|
|
|
|
|
+ "type" => "text",
|
|
|
|
|
+ "text" => "Gracias por su compresión."
|
|
|
|
|
+ ],
|
|
|
|
|
+ ];
|
|
|
|
|
+ $notificacionUsuario->parametros = $parametros;
|
|
|
|
|
+
|
|
|
|
|
+ if (!$notificacionUsuario->save()) {
|
|
|
|
|
+ $transaccion->rollBack();
|
|
|
|
|
+ $errores = json_encode($notificacionUsuario->getFirstErrors());
|
|
|
|
|
+ $this->stdoutln('Hubo un problema al generar la notificación: ' . $errores);
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ $notificacion->envio = new Expression('now()');
|
|
|
|
|
+ $notificacion->estatus = 'Nuevo';
|
|
|
|
|
+ $notificacion->save();
|
|
|
|
|
+
|
|
|
|
|
+ $transaccion->commit();
|
|
|
|
|
+ } catch (\Exception $e) {
|
|
|
|
|
+ $transaccion->rollBack();
|
|
|
|
|
+ $this->stdoutln("Exception: {$e->getMessage()}\n");
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|