public async Task <IActionResult> Edit(string id, [FromBody] DeliveryDataCreateModel data) { return(await this.Execute(true, true, async() => { await this.deliveryData.Edit(id, data); return this.Ok(new { deliveryDataId = id }); })); //if (!this.IsInRole("admin")) //{ // return this.StatusCode(StatusCodes.Status401Unauthorized); //} //if (!ModelState.IsValid) return this.BadRequest(ModelState); //try //{ // await this.deliveryData.Edit(id, data); // return this.Ok(new { deliveryDataId = id }); //} //catch (Exception e) //{ // return this.StatusCode(StatusCodes.Status400BadRequest, e.Message); //} }
public async Task <IActionResult> CreateDeliveryData([FromBody] DeliveryDataCreateModel data) { return(await this.Execute(false, true, async() => { string deliveryDataId = await this.deliveryData .Create( data); return this.Ok(new { deliveryDataId = deliveryDataId }); })); //if (!ModelState.IsValid) return this.BadRequest(ModelState); //try //{ // string deliveryDataId = await this.deliveryData // .Create( // data); // return this.Ok(new { deliveryDataId = deliveryDataId }); //} //catch (Exception e) //{ // return this.StatusCode(StatusCodes.Status400BadRequest, e.Message); //} }
public async Task <string> Create(DeliveryDataCreateModel data) { string officeDeliveryDataId = null; string homeDeliveryDataId = null; if (data.DeliveredToAnOffice) { officeDeliveryDataId = await this.CreateOfficeDeliveryData(data.OfficeCode, data.OfficeName, data.OfficeAddress, data.OfficeCity, data.OfficeCountry); } else { homeDeliveryDataId = await this.CreateHomeDeliveryData(data.Country, data.City, data.PostCode, data.Street, data.StreetNumber, data.District, data.Block, data.Entrance, data.Floor, data.Apartment); } string customerDataId = await this.CreateCustomerData(data.CustomerName, data.CustomerLastName, data.PhoneNumber, data.Email); DeliveryData thisData = new DeliveryData { Comments = data.Comments, DeliveredToAnOffice = data.DeliveredToAnOffice, OfficeDeliveryDataId = officeDeliveryDataId, HomeDeliveryDataId = homeDeliveryDataId, CustomerDataId = customerDataId }; await this.db.DeliveryData.AddAsync(thisData); await this.db.SaveChangesAsync(); return(thisData.Id); }
public async Task <string> Edit(string deliveryDataId, DeliveryDataCreateModel data) { DeliveryData deliveryData = await this.db.DeliveryData.FindAsync(deliveryDataId); if (deliveryData == null) { throw new ArgumentException(ErrorMessages.InvalidDeliveryDataId); } deliveryData.Comments = data.Comments; CustomerData customerData = await this.db.CustomerData.FindAsync(deliveryData.CustomerDataId); customerData.CustomerName = data.CustomerName; customerData.CustomerLastName = data.CustomerLastName; customerData.PhoneNumber = data.PhoneNumber; customerData.Email = data.Email; await this.db.SaveChangesAsync(); if (deliveryData.DeliveredToAnOffice && data.DeliveredToAnOffice) { OfficeDeliveryData officeData = await this.db.OfficeDeliveryData.FindAsync(deliveryData.OfficeDeliveryDataId); officeData.Address = data.OfficeAddress; officeData.Name = data.OfficeName; officeData.City = data.OfficeCity; officeData.Country = data.OfficeCountry; officeData.Code = data.OfficeCode; await this.db.SaveChangesAsync(); } else if (!deliveryData.DeliveredToAnOffice && !data.DeliveredToAnOffice) { HomeDeliveryData homeData = await this.db.HomeDeliveryData.FindAsync(deliveryData.HomeDeliveryDataId); homeData.PostCode = data.PostCode; homeData.City = data.City; homeData.Country = data.Country; homeData.District = data.District; homeData.Street = data.Street; homeData.StreetNumber = data.StreetNumber; homeData.Block = data.Block; homeData.Entrance = data.Entrance; homeData.Floor = data.Floor; homeData.Apartment = data.Apartment; await this.db.SaveChangesAsync(); } else if (!deliveryData.DeliveredToAnOffice && data.DeliveredToAnOffice) { deliveryData.DeliveredToAnOffice = data.DeliveredToAnOffice; HomeDeliveryData homeData = await this.db.HomeDeliveryData.FindAsync(deliveryData.HomeDeliveryDataId); this.db.HomeDeliveryData.Remove(homeData); OfficeDeliveryData newData = new OfficeDeliveryData { Address = data.OfficeAddress, Name = data.OfficeName, City = data.OfficeCity, Country = data.OfficeCountry, Code = data.OfficeCode }; await this.db.OfficeDeliveryData.AddAsync(newData); await this.db.SaveChangesAsync(); deliveryData.OfficeDeliveryDataId = newData.Id; } else { deliveryData.DeliveredToAnOffice = data.DeliveredToAnOffice; OfficeDeliveryData officeData = await this.db.OfficeDeliveryData.FindAsync(deliveryData.OfficeDeliveryDataId); this.db.OfficeDeliveryData.Remove(officeData); HomeDeliveryData newData = new HomeDeliveryData { PostCode = data.PostCode, City = data.City, District = data.District, Street = data.Street, StreetNumber = data.StreetNumber, Block = data.Block, Floor = data.Floor, Apartment = data.Apartment }; await this.db.HomeDeliveryData.AddAsync(newData); await this.db.SaveChangesAsync(); deliveryData.HomeDeliveryDataId = newData.Id; } await this.db.SaveChangesAsync(); return(deliveryDataId); }