public void ValidateCargoUpdate_Cargo_Error() { CargoUpdateDataContract cargo_Update = new CargoUpdateDataContract() { Payment_Debt = Convert.ToDecimal(100), Cargo_Id = 0, }; Assert.AreEqual(this.CargoUpdateDataContractValidator.Validate(cargo_Update).IsValid, false); }
public void ValidateCargoUpdate_Ok() { CargoUpdateDataContract cargo_Update = new CargoUpdateDataContract() { Payment_Debt = Math.Round(105.60m, 2), Cargo_Id = 1, }; Assert.AreEqual(this.CargoUpdateDataContractValidator.Validate(cargo_Update).IsValid, true); }
public bool CheckExistCargo(CargoUpdateDataContract cargo_Update) { Cargo cargo = this.CargoRepository.GetById(cargo_Update.Cargo_Id); if (cargo == null) { return(false); } return(true); }
public bool CheckStateCargo(CargoUpdateDataContract cargo_Update) { Cargo cargo = this.CargoRepository.GetById(cargo_Update.Cargo_Id); if (cargo.State == StateCargo.Deuda) { return(true); } return(false); }
public IList <string> GetErrorsCheckCargoUpdate(CargoUpdateDataContract cargo) { IList <string> errors = new List <string>(); var validationResult = this.CargoUpdateDataContractValidator.Validate(cargo); foreach (var error in validationResult.Errors) { errors.Add(error.ToString()); } return(errors); }
private async Task <bool> UpdateCargo(Constancia constancia) { CargoUpdateDataContract cargo_Update = new CargoUpdateDataContract() { Cargo_Id = constancia.Cargo_Id, Payment_Debt = constancia.Amount, }; string uri = this.AppSettings.Value.UrlAPICargos; string action = "api/Cargos"; using (var client = new HttpClient()) { client.BaseAddress = new Uri(uri); var putTask = await client.PutAsJsonAsync(action, cargo_Update); return((putTask.IsSuccessStatusCode) ? true : false); } }
public IActionResult Put(CargoUpdateDataContract input) { if (!this.CargoService.CheckFormatCargoUpdate(input)) { var errors = this.CargoService.GetErrorsCheckCargoUpdate(input); return(BadRequest(errors)); } if (!this.CargoService.CheckExistCargo(input)) { return(NotFound($"No existe cargo con id: {input.Cargo_Id}")); } if (!this.CargoService.CheckStateCargo(input)) { return(BadRequest($"No existe deuda para el cargo con id: {input.Cargo_Id}")); } var output = this.CargoService.UpdateCargo(input); return(Ok(output)); }
public CargoOutputDataContract UpdateCargo(CargoUpdateDataContract cargo_Update) { Cargo cargo = this.CargoRepository.GetById(cargo_Update.Cargo_Id); cargo.Balance -= cargo_Update.Payment_Debt; if (cargo.Balance == 0) { cargo.State = StateCargo.Pagado; } this.CargoRepository.Update(cargo); return(new CargoOutputDataContract() { Cargo_Id = cargo.Id, Amount = cargo.Amount, Balance = cargo.Balance, State = cargo.State.ToString(), Type = cargo.Type.ToString(), User_Id = cargo.User_Id, }); }
public bool CheckFormatCargoUpdate(CargoUpdateDataContract cargo) { return(this.CargoUpdateDataContractValidator.Validate(cargo).IsValid); }