public async Task<ResponseBool> TargetUpdateAsync(CostCentreTargetItem targetItem) { ResponseBool _response = new ResponseBool { Success = false, ErrorInfo = "" }; bool success = false; string url = string.Format("api/distributorservices/targetupdate"); var httpClient = setupHttpClient(); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); try { var response = await httpClient.PostAsJsonAsync(url, targetItem); _response = await response.Content.ReadAsAsync<ResponseBool>(); if (response.IsSuccessStatusCode) success = true; } catch (Exception ex) { _log.Error("Failed to update outlet item", ex); _response.ErrorInfo = "Failed to update outlet item\n" + ex; } return _response; }
public async void Save() { if (Target == 0) { MessageBox.Show("Select Target Period", "Distributor", MessageBoxButton.OKCancel); } if (true) { CostCentreTargetItem targetItem = null; bool isNew = false; if (TargetId == Guid.Empty) { TargetId = Guid.NewGuid(); isNew = true; } targetItem = new CostCentreTargetItem { MasterId = TargetId, CostCentreMasterId = SelectedOutlet.Id, TargetPeriodMasterId = SelectedTargetPeriod.Id, IsQuantityTarget = !SetAsAmt, TargetValue = Target }; if (isNew) { using (StructureMap.IContainer c = NestedContainer) { ResponseBool response = null; IDistributorServiceProxy proxy = Using<IDistributorServiceProxy>(c); response = await proxy.TargetAddAsync(targetItem); MessageBox.Show(response.ErrorInfo, "Distributr:", MessageBoxButton.OK); } } else { using (StructureMap.IContainer c = NestedContainer) { ResponseBool response = null; IDistributorServiceProxy proxy = Using<IDistributorServiceProxy>(c); response = await proxy.TargetUpdateAsync(targetItem); MessageBox.Show(response.ErrorInfo, "Distributr:", MessageBoxButton.OK); } } ClearViewModel(); } }
public async void Save() { SalesmanTargets.Clear(); AddNewTarget(); using (var c = NestedContainer) { ResponseBool response = null; var proxy = Using<IDistributorServiceProxy>(c); CostCentreTargetItem targetItem = null; foreach (var target in SalesmanTargets) { targetItem = new CostCentreTargetItem { MasterId = target.Id, CostCentreMasterId = SelectedSalesmanName.CostCentre, TargetPeriodMasterId = target.PeriodId, IsQuantityTarget = target.IsQtyTarget, TargetValue = target.Target }; } response = await proxy.TargetAddAsync(targetItem); MessageBox.Show(response.ErrorInfo, "Distributr:", MessageBoxButton.OK); } Load(); }
public HttpResponseMessage TargetUpdate(CostCentreTargetItem targetItem) { var response = new ResponseBool { Success = false }; Target target = null; try { target = _targetRepository.GetById(targetItem.MasterId, true); if (target._Status != EntityStatus.Inactive) { target.IsQuantityTarget = targetItem.IsQuantityTarget; target.TargetPeriod = _targetPeriodRepository.GetById(targetItem.TargetPeriodMasterId); target.TargetValue = targetItem.TargetValue; target.CostCentre = _costCentreRepository.GetById(targetItem.CostCentreMasterId); _targetRepository.Save(target); response.Success = true; response.ErrorInfo = "Successfully updated target for " + target.CostCentre.Name; ; } } catch (DomainValidationException dve) { string errorMsg = dve.ValidationResults.Results.Aggregate("Error: Invalid target fields.\n", (current, msg) => current + ("\t- " + msg.ErrorMessage + "\n")); response.ErrorInfo = errorMsg; _log.Error(errorMsg, dve); } catch (Exception e) { response.ErrorInfo = "Error: An error occured when saving the target."; _log.Error("Error: An error occured when saving the target.\n", e); } return Request.CreateResponse(HttpStatusCode.OK, response); }