Exemplo n.º 1
0
        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);
            //}
        }
Exemplo n.º 2
0
        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);
            //}
        }
Exemplo n.º 3
0
        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);
        }
Exemplo n.º 4
0
        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);
        }