示例#1
0
        public ActaDto GetActa(int acta)
        {
            try
            {
                var controller   = "/prod/ApiActa/";
                var action       = $"Consultar/1/{acta}";
                var completePath = ServerPath + controller + action;

                var client = new HttpClient();
                var json   = "{}";
                var actaVm = new ActaDto();

                var task = Client.GetAsync(completePath)
                           .ContinueWith((taskwithresponse) =>
                {
                    var response = taskwithresponse.Result;
                    var readtask = response.Content.ReadAsStringAsync();
                    json         = readtask.Result;

                    actaVm = JsonConvert.DeserializeObject <ActaDto>(json);

                    return(actaVm);
                });
                task.Wait();
                ActaVm = actaVm;
                return(actaVm);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
                return(ActaVm);
            }
        }
示例#2
0
            public static List <Voto> CreateVotoPresidenteEntity(ActaDto acta)
            {
                var res = acta.Votos.Adapt <List <Voto> >();

                foreach (var item in res)
                {
                    item.CodActa = acta.CodActa;
                }
                return(res);
            }
示例#3
0
        public async void InsertTseApiToLocalDataBase(int index)
        {
            try
            {
                var totalActas = new List <Acta>();
                var totalVotos = new List <Voto>();

                for (int i = index; i <= 18128; i++)
                {
                    var actaDto = GetActaFromApi(i);

                    if (actaDto == null)
                    {
                        actaDto = new ActaDto {
                            CodActa = i, Votos = new List <VotoDto>(), CodEstado = 99, NomEstado = "Null Error Api"
                        };
                    }

                    var actaEntity  = Factory.CreateActaEntity(actaDto);
                    var votosEntity = Factory.CreateVotoPresidenteEntity(actaDto);
                    totalActas.Add(actaEntity);
                    totalVotos.AddRange(votosEntity);

                    if (i % 25 == 0)
                    {
                        ActasGuardadas = i + 1;
                        _context.Actas.AddRange(totalActas);
                        _context.Votoes.AddRange(totalVotos);
                        await _context.SaveChangesAsync();

                        totalActas = new List <Acta>();
                        totalVotos = new List <Voto>();
                        return;
                    }

                    if (i == 18128)
                    {
                        ActasGuardadas = i + 1;
                        _context.Actas.AddRange(totalActas);
                        _context.Votoes.AddRange(totalVotos);
                        await _context.SaveChangesAsync();

                        totalActas = new List <Acta>();
                        totalVotos = new List <Voto>();
                        return;
                    }
                }
            }
            catch (Exception ex)
            {
                throw;
            }
        }
示例#4
0
            public static Acta CreateActaEntity(ActaDto acta)
            {
                var res = acta.Adapt <Acta>();

                return(res);
            }
示例#5
0
 public FueraJohApiEngine(string serverPath)
 {
     ServerPath = serverPath;
     Client     = new HttpClient();
     ActaVm     = new ActaDto();
 }