private async void UpdateCarro(Models.Carro novoCarro, Models.Carro carro) { CarroDataService ds = new CarroDataService(); if (!novoCarro.placa.Equals(carro.placa.Trim())) //Se a placa foi alterada { await ds.AddCarroAsync(novoCarro); //Adciona o carro com a placa alterado RelatorioDataService relds = new RelatorioDataService(); List <Models.Relatorio> relatorios = await relds.GetRelatorioAsync(); for (int i = 0; i < relatorios.Count; i++) { if (relatorios[i].carro.Trim().Equals(carro.placa.Trim())) //Para todo relatorio com a placa alterada, muda para a nova placa { Models.Relatorio relatorio = new Models.Relatorio { id = relatorios[i].id, carro = novoCarro.placa, endinicial = relatorios[i].endinicial, endfinal = relatorios[i].endfinal, datainicial = relatorios[i].datainicial, datafinal = relatorios[i].datafinal, kmpercorridos = relatorios[i].kmpercorridos, custo = relatorios[i].custo }; await relds.UpdateRelatorioAsync(relatorio); } } await ds.DeleteCarroAsync(carro); //Deleta o carro com a placa antiga } }
private async void UpdateLogin(Models.Cadastro novoCadastro, Models.Cadastro cadastro, List <Models.Cadastro> cadastros) { CadastroDataService ds = new CadastroDataService(); if (!novoCadastro.login.Equals(cadastro.login.Trim())) //Se o login foi alterado { novoCadastro.cpf = cadastro.cpf; cadastro.cpf = ""; await ds.UpdateCadastroAsync(cadastro); await ds.AddCadastroAsync(novoCadastro); //Adciona o cadastro com o login alterado CarroDataService carrods = new CarroDataService(); CombustivelDataService combds = new CombustivelDataService(); LembreteDataService lemds = new LembreteDataService(); List <Models.Carro> carros = await carrods.GetCarroAsync(); List <Models.Combustivel> combustiveis = await combds.GetCombustivelAsync(); List <Models.Lembrete> lembretes = await lemds.GetLembreteAsync(); for (int i = 0; i < carros.Count; i++) { if (carros[i].dono.Trim().Equals(cadastro.login.Trim())) //Para todo carro com o login alterado, muda para o novo login { Models.Carro carro = new Models.Carro { id = carros[i].id, placa = carros[i].placa.Trim(), dono = novoCadastro.login, modelo = carros[i].modelo.Trim(), tipocombustivel = carros[i].tipocombustivel.Trim(), kmatual = carros[i].kmatual, kmlitro = carros[i].kmlitro, status = carros[i].status.Trim() }; await carrods.UpdateCarroAsync(carro); } } for (int i = 0; i < combustiveis.Count; i++) { if (combustiveis[i].login.Trim().Equals(cadastro.login.Trim())) //Para cada combustivel com o login, muda para o login alterado { Models.Combustivel combustivel = combustiveis[i]; combustivel.login = novoCadastro.login; await combds.UpdateCombustivelAsync(combustivel); } } for (int i = 0; i < lembretes.Count; i++) { if (lembretes[i].login.Trim().Equals(cadastro.login.Trim())) //Para cada lembrete com o login, muda para o login alterado { Models.Lembrete lembrete = lembretes[i]; lembrete.login = novoCadastro.login; await lemds.UpdateLembreteAsync(lembrete); } } await ds.DeleteCadastroAsync(cadastro); } }
public void OnPost(string marca, string modelo, string cor, string posicionamento_cilindros, int cilindros, int litragem, string observacao) { var stringPosts = JsonConvert.SerializeObject(_cache.Get("carros")); var posts = JsonConvert.DeserializeObject <Models.ArrayCarros>(stringPosts); Models.Carro newCarro = new Models.Carro(); Models.Motor newMotor = new Models.Motor(); newCarro.id = posts.carros.Last().id + 1; newCarro.marca = marca; newCarro.modelo = modelo; newCarro.cor = cor; newCarro.motor_id = posts.motores.Count + 1; newMotor.id = posts.motores.Last().id + 1; newMotor.posicionamento_cilindros = posicionamento_cilindros; newMotor.cilindros = cilindros; newMotor.litragem = litragem; newMotor.observacao = observacao; posts.carros.Add(newCarro); posts.motores.Add(newMotor); _cache.Set("carros", posts); }
public string AlterarVeiculo(Models.Carro novoCarro, Models.Carro carro, List <Models.Carro> carros) { //Verifica se há campos vazios if (novoCarro.placa.Equals("") || novoCarro.modelo.Equals("") || novoCarro.tipocombustivel.Equals("") || novoCarro.kmatual.Equals("") || novoCarro.kmlitro.Equals("")) { return("Erro;Preencha todos os campos;OK"); } if (!novoCarro.placa.Equals(carro.placa.Trim())) { //Verifica se a placa já está cadastrado for (int i = 0; i < carros.Count; i++) { if (carros[i].placa.Trim().Equals(novoCarro.placa)) { return("Erro;Placa já cadastrada;OK"); } } } //Verifica se Km rodados é negativo if (Convert.ToInt32(novoCarro.kmatual) < 0) { return("Erro;\"Km atual\" não pode ser negativo;OK"); } //Verifica se Km por litro é negativo if (Convert.ToInt32(novoCarro.kmlitro) <= 0) { return("Erro;\"Km por litro\" não pode ser menor nem igual a zero;OK"); } UpdateCarro(novoCarro, carro); return("Sucesso;Carro alterado com sucesso!;OK"); //Se passar por todas as verificações, retorna uma mensagem de "sucesso" }
public async void DeleteCarro(Models.Carro carro) { RelatorioDataService rds = new RelatorioDataService(); foreach (Models.Relatorio relatorio in await rds.GetRelatorioAsync()) { if (relatorio.carro.Equals(carro.placa)) { await rds.DeleteRelatorioAsync(relatorio); } } CarroDataService ds = new CarroDataService(); await ds.DeleteCarroAsync(carro); }
public async Task UpdateCarroAsync(Models.Carro carro) { string url = "http://www.testeleo.somee.com/api/carro/{0}"; var uri = new Uri(string.Format(url, carro.id)); var data = JsonConvert.SerializeObject(carro); var content = new StringContent(data, Encoding.UTF8, "application/json"); HttpResponseMessage response = null; response = await client.PutAsync(uri, content); if (!response.IsSuccessStatusCode) { throw new Exception("Erro ao atualizar Carro"); } }
public string AdcionarVeiculo(Models.Carro carro, List <Models.Carro> carros) { //Verifica se há campos vazios if (carro.placa.Equals("") || carro.modelo.Equals("") || carro.tipocombustivel.Equals("") || carro.kmatual.Equals("") || carro.kmlitro.Equals("")) { return("Erro;Preencha todos os campos;OK"); } //Verifica se o carro já está cadastrado for (int i = 0; i < carros.Count; i++) { if (carros[i].placa.Trim().Equals(carro.placa)) { return("Erro;Carro já cadastrado;OK"); } } //Verifica se a placa contém todos os caracteres if (carro.placa.Trim().Length < 8) { return("Erro;A placa deve conter todos os caracteres;OK"); } //Verifica se Km rodados é negativo if (Convert.ToInt32(carro.kmatual) < 0) { return("Erro;\"Km(s) rodados\" não pode ser negativo;OK"); } //Verifica se Km por litro é negativo if (Convert.ToInt32(carro.kmlitro) <= 0) { return("Erro;\"Km(s) por litro\" não pode ser menor nem igual a zero;OK"); } return("Sucesso;Carro cadastrado com sucesso!;OK"); //Se passar por todas as verificações, retorna uma mensagem de "sucesso" }
public async Task DeleteCarroAsync(Models.Carro carro) { string url = "http://www.testeleo.somee.com/api/carro/{0}"; var uri = new Uri(string.Format(url, carro.id)); await client.DeleteAsync(uri); }
public async void AddRelatorio(Models.Relatorio relatorio, Models.Combustivel combustivel, Models.Carro carro, int combustivelUtilizado) { switch (combustivelUtilizado) { case 0: relatorio.custo = float.Parse((relatorio.kmpercorridos * combustivel.etanol / carro.kmlitro).ToString()); break; case 1: relatorio.custo = float.Parse((relatorio.kmpercorridos * combustivel.gasolina / carro.kmlitro).ToString()); break; case 2: relatorio.custo = float.Parse((relatorio.kmpercorridos * combustivel.diesel / carro.kmlitro).ToString()); break; case 3: relatorio.custo = float.Parse((relatorio.kmpercorridos * combustivel.outro / carro.kmlitro).ToString()); break; } RelatorioDataService ds = new RelatorioDataService(); await ds.AddRelatorioAsync(relatorio); }
public List <Models.Relatorio> GetRelatorioByData(List <Models.Relatorio> lRelatorios, Models.Carro carro, DateTime data) { List <Models.Relatorio> relatorios = new List <Models.Relatorio>(); for (int i = 0; i < lRelatorios.Count; i++) { if (lRelatorios[i].carro.Trim().Equals(carro.placa.Trim()) && lRelatorios[i].datainicial.Date == data) { relatorios.Add(lRelatorios[i]); //Adiciona os relatórios que pertencerem ao carro e a data correspondente } } return(relatorios); }
public List <Models.Relatorio> GetRelatorioByCarro(List <Models.Relatorio> lRelatorios, Models.Carro carro) { List <Models.Relatorio> relatorios = new List <Models.Relatorio>(); //Lista para retornar os relatórios do carro for (int i = 0; i < lRelatorios.Count; i++) { if (lRelatorios[i].carro.Trim().Equals(carro.placa.Trim())) { relatorios.Add(lRelatorios[i]); //Adiciona os relatórios que pertencerem ao carro } } return(relatorios); }