public async Task<ResponseBool> CommodityOwnerAddAsync(CommodityOwnerItem commodityOwnerItem) { ResponseBool _response = new ResponseBool { Success = false, ErrorInfo = "" }; string url = string.Format("api/distributorservices/commodityowneradd"); var httpClient = setupHttpClient(); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); try { var response = await httpClient.PostAsJsonAsync(url, commodityOwnerItem); _response = await response.Content.ReadAsAsync<ResponseBool>(); } catch (Exception ex) { _log.Error("Failed to update commodity owner.", ex); } return _response; }
CommodityOwnerItem Map(CommodityOwner co) { var item = new CommodityOwnerItem { BusinessNumber = co.BusinessNumber, Code = co.Code, CommodityOwnerTypeMasterId = co.CommodityOwnerType.Id, CommoditySupplierMasterId = co.CommoditySupplier.Id, DateCreated = co._DateCreated, DateLastUpdated = co._DateLastUpdated, DateOfBirth = co.DateOfBirth, Description = co.Description, Email = co.Email, FaxNumber = co.FaxNumber, FirstName = co.FirstName, GenderId = (int) co.Gender, IdNo = co.IdNo, LastName = co.LastName, MaritalStatasMasterId = (int) co.MaritalStatus, MasterId = co.Id, OfficeNumber = co.OfficeNumber, PhoneNumber = co.PhoneNumber, PhysicalAddress = co.PhysicalAddress, PinNo = co.PinNo, PostalAddress = co.PostalAddress, StatusId = (int) co._Status, Surname = co.Surname }; return item; }
public HttpResponseMessage CommodityOwnerAdd(CommodityOwnerItem commodityOwnerItem) { var response = new ResponseBool { Success = false }; try { var commodityOwner = new CommodityOwner(commodityOwnerItem.MasterId) { Surname = commodityOwnerItem.Surname, _Status = (EntityStatus) commodityOwnerItem.StatusId, PostalAddress = commodityOwnerItem.PostalAddress, PinNo = commodityOwnerItem.PinNo, PhysicalAddress = commodityOwnerItem.PhysicalAddress, OfficeNumber = commodityOwnerItem.OfficeNumber, BusinessNumber = commodityOwnerItem.BusinessNumber, PhoneNumber = commodityOwnerItem.PhoneNumber, IdNo = commodityOwnerItem.IdNo, LastName = commodityOwnerItem.LastName, MaritalStatus = (MaritalStatas) commodityOwnerItem.MaritalStatasMasterId, Code = commodityOwnerItem.Code, CommodityOwnerType = _commodityOwnerTypeRepository.GetById( commodityOwnerItem.CommodityOwnerTypeMasterId), CommoditySupplier = _commoditySupplierRepository.GetById( commodityOwnerItem.CommoditySupplierMasterId) as CommoditySupplier, DateOfBirth = commodityOwnerItem.DateOfBirth, Description = commodityOwnerItem.Description, Email = commodityOwnerItem.Email, FaxNumber = commodityOwnerItem.FaxNumber, FirstName = commodityOwnerItem.FirstName, Gender = (Gender) commodityOwnerItem.GenderId, }; _commodityOwnerRepository.Save(commodityOwner); var contact = _contactRepository.GetByContactsOwnerId(commodityOwnerItem.CommoditySupplierMasterId).FirstOrDefault(); if(contact==null) { contact = new Contact(Guid.NewGuid()); } contact.BusinessPhone = commodityOwnerItem.BusinessNumber; contact.ChildrenNames = ""; contact.City = ""; contact.Company = ""; contact.ContactClassification=ContactClassification.PrimaryContact; contact.ContactOwnerMasterId = commodityOwnerItem.CommoditySupplierMasterId; contact.ContactOwnerType=ContactOwnerType.CommoditySupplier; contact.ContactType = _contactTypeRepository.GetById( commodityOwnerItem.CommodityOwnerTypeMasterId); contact.DateOfBirth = commodityOwnerItem.DateOfBirth; contact.Email = commodityOwnerItem.Email; contact.Fax = commodityOwnerItem.FaxNumber; contact.Firstname = commodityOwnerItem.FirstName; contact.HomePhone = commodityOwnerItem.BusinessNumber; contact.HomeTown = ""; contact.JobTitle = "Farmer"; contact.Lastname = commodityOwnerItem.LastName; contact.MobilePhone = commodityOwnerItem.PhoneNumber; contact.BusinessPhone = commodityOwnerItem.BusinessNumber; contact.PhysicalAddress = ""; contact.PostalAddress = commodityOwnerItem.PhysicalAddress; contact.SpouseName = ""; _contactRepository.Save(contact); response.Success = true; response.ErrorInfo = "Commodity producer successfully added."; } catch (DomainValidationException dve) { string errorMsg = dve.ValidationResults.Results.Aggregate("Error: Invalid commodity owner fields.\n", (current, msg) => current + ("\t- " + msg.ErrorMessage + "\n")); response.ErrorInfo = errorMsg; _log.Error(errorMsg, dve); } catch (Exception ex) //any other { response.ErrorInfo = "Error: An error occurred when saving the entity.\n" + ex.ToString(); _log.Error("Error: An error occurred when saving the entity.", ex); } return Request.CreateResponse(HttpStatusCode.OK, response); }