//public static async Task<List<Solicitud>> GetGrupoFromFireStore(string grupoID){ public static async Task <GrupoDetalle> GetGrupoFromFireStore(string grupoID) { GrupoDetalle grupoDetalle = new GrupoDetalle(); List <Solicitud> solicitudes = new List <Solicitud>(); try{ FirestoreDb db = conexionDB(); CollectionReference collection = db.Collection("Grupos"); DocumentReference docRef = collection.Document(grupoID); DocumentSnapshot documentGpo = await docRef.GetSnapshotAsync(); if (documentGpo.Exists) { grupoDetalle.grupo = documentGpo.ConvertTo <Grupo>(); } Query capitalQuery = db.Collection("Solicitudes").WhereEqualTo("grupoID", grupoID); QuerySnapshot capitalQuerySnapshot = await capitalQuery.GetSnapshotAsync(); foreach (DocumentSnapshot document in capitalQuerySnapshot.Documents) { Solicitud solicitud = document.ConvertTo <Solicitud>(); solicitud.solicitudID = document.Id; solicitudes.Add(solicitud); } } catch (Exception ex) { Log.Information("*****Error Exception GetGrupoFromFireStore: {0}", ex.Message); } grupoDetalle.solicitudes = solicitudes; return(grupoDetalle); }
public static async Task <GrupoDetalle> GetRenovacionGrupoFromFireStore(string grupoID) { GrupoDetalle grupoDetalle = new GrupoDetalle(); List <Solicitud> solicitudes = new List <Solicitud>(); try { FirestoreDb db = conexionDB(); CollectionReference collection = db.Collection("GruposRenovacion"); DocumentReference docRef = collection.Document(grupoID); DocumentSnapshot documentGpo = await docRef.GetSnapshotAsync(); if (documentGpo.Exists) { grupoDetalle.grupo = documentGpo.ConvertTo <Grupo>(); } Query capitalQuery = db.Collection("Renovaciones").WhereEqualTo("grupoID", grupoID); QuerySnapshot capitalQuerySnapshot = await capitalQuery.GetSnapshotAsync(); foreach (DocumentSnapshot document in capitalQuerySnapshot.Documents) { if (document.ContainsField("clienteID")) { Solicitud solicitud = new Solicitud { renovacion = true, fechaCaputra = document.GetValue <DateTime>("fechaCaptura"), grupoID = document.GetValue <String>("grupoID"), grupoNombre = document.GetValue <String>("grupoNombre"), importe = document.GetValue <double>("importe"), status = document.GetValue <int>("status"), tipoContrato = document.GetValue <int>("tipoContrato"), userID = document.GetValue <String>("userID"), importeHistorico = document.GetValue <int>("importeHistorico") }; solicitud.persona = new Persona { nombre = document.GetValue <string>("nombre"), nombreSegundo = "", apellido = "", apellidoSegundo = "" }; try { solicitud.dictamen = document.GetValue <bool>("dictamen"); } catch (Exception e) { } try { solicitud.mesaControlID = document.GetValue <string>("mesaControlID"); solicitud.mesaControlUsuario = document.GetValue <string>("mesaControlUsuario"); } catch (Exception e) { } solicitud.solicitudID = document.Id; solicitudes.Add(solicitud); } else { Solicitud solicitud = document.ConvertTo <Solicitud>(); solicitud.solicitudID = document.Id; solicitudes.Add(solicitud); } } } catch (Exception ex) { Log.Information("*****Error Exception GetGrupoFromFireStore: {0}", ex.Message); } grupoDetalle.solicitudes = solicitudes; return(grupoDetalle); }