private static void SincronizarAbiertas(Query q) { s = q.ComandoSql; if (q.Parametrizar) { s += Ambiente.OracleDate(q.UltSincronizacion); } else { var mins = (DateTime.Now - q.UltSincronizacion).TotalMinutes; if (mins <= Ambiente.MinAbiertas) { return; } } abiertas = abiertaController.SelectAll(); DataTable atencionesAbiertas = Ambiente.Oracledb.Select(s); if (atencionesAbiertas.Rows.Count > 0) { i = 0; foreach (DataRow a in atencionesAbiertas.Rows) { var abiertalocal = abiertas.FirstOrDefault(x => x.NrAtendimento.Equals(a["NR_ATENDIMENTO"].ToString())); if (abiertalocal != null) { continue; } var abierta = new Abierta(); abierta.NrAtendimento = a["NR_ATENDIMENTO"].ToString(); abierta.CdPaciente = a["CD_PACIENTE"].ToString(); abierta.CdMedico = a["CD_MEDICO"].ToString(); abierta.CdEstabelecimento = a["CD_ESTABELECIMENTO"].ToString(); abierta.DtEntrada = DateTime.Parse(a["DT_ENTRADA"].ToString()); abierta.CdUnidadeBasica = a["CD_UNIDADE_BASICA"].ToString(); abierta.CdSetorAtendimento = a["CD_SETOR_ATENDIMENTO"].ToString(); abierta.DtAlta = null; abierta.DtActualizacion = null; abierta.CreatedAt = DateTime.Now; if (abiertaController.InsertOne(abierta)) { WriteStatus("ATENCIONES ABIERTAS", i, atencionesAbiertas.Rows.Count - 1); i++; } } q.UltSincronizacion = DateTime.Now; queryController.Update(q); } else { WriteStatus("TODO ESTÁ SINCRONIZADO " + DateTime.Now.ToString("HH:mm:ss")); } }
private static void SincronizarAltas(Query q) { s = q.ComandoSql; if (q.Parametrizar) { s += Ambiente.OracleDate(q.UltSincronizacion); } DataTable altasRemotas = Ambiente.Oracledb.Select(s); if (altasRemotas.Rows.Count > 0) { i = 0; foreach (DataRow a in altasRemotas.Rows) { var alta = new Alta(); alta.NrAtendimento = a["NR_ATENDIMENTO"].ToString(); alta.CdPaciente = a["CD_PACIENTE"].ToString(); alta.CdMedico = a["CD_MEDICO"].ToString(); alta.CdEstabelecimento = a["CD_ESTABELECIMENTO"].ToString(); alta.DtEntrada = DateTime.Parse(a["DT_ENTRADA"].ToString()); alta.DtAlta = DateTime.Parse(a["DT_ALTA"].ToString()); alta.DtActualizacion = DateTime.Parse(a["DT_ACTUALIZACION"].ToString()); alta.CdUnidadeBasica = a["CD_UNIDADE_BASICA"].ToString(); alta.CdSetorAtendimento = a["CD_SETOR_ATENDIMENTO"].ToString(); alta.CreatedAt = DateTime.Now; if (altaController.InsertOne(alta)) { WriteStatus("ALTAS", i, altasRemotas.Rows.Count - 1); i++; } } SincronizaMedico(altasRemotas); SincronizaPaciente(altasRemotas); SincronizarComplementoMedico(altasRemotas); SincronizarComplementoPaciente(altasRemotas); PreparaHttpRequest(altasRemotas); LanzaHttpRequests(); q.UltSincronizacion = DateTime.Now; queryController.Update(q); } else { WriteStatus("TODO ESTÁ SINCRONIZADO " + DateTime.Now.ToString("HH:mm:ss")); } }