public async Task <IHttpActionResult> Putcouriers(long id, couriers couriers)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != couriers.id)
            {
                return(BadRequest());
            }

            db.Entry(couriers).State = EntityState.Modified;

            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!couriersExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }
            Logger.CreateLog(HttpContext.Current.Request.Url.PathAndQuery, HttpMethod.Put.Method, null);
            return(StatusCode(HttpStatusCode.NoContent));
        }
        public async Task <IHttpActionResult> Getcouriers(long id)
        {
            couriers couriers = await db.couriers.FindAsync(id);

            if (couriers == null)
            {
                return(NotFound());
            }
            Logger.CreateLog(HttpContext.Current.Request.Url.PathAndQuery, HttpMethod.Get.Method, null);
            return(Ok(couriers));
        }
        public async Task <IHttpActionResult> Postcouriers(couriers couriers)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.couriers.Add(couriers);
            await db.SaveChangesAsync();

            Logger.CreateLog(HttpContext.Current.Request.Url.PathAndQuery, HttpMethod.Post.Method, null);
            return(CreatedAtRoute("DefaultApi", new { id = couriers.id }, couriers));
        }
        public async Task <IHttpActionResult> Deletecouriers(long id)
        {
            couriers couriers = await db.couriers.FindAsync(id);

            if (couriers == null)
            {
                return(NotFound());
            }

            db.couriers.Remove(couriers);
            await db.SaveChangesAsync();

            Logger.CreateLog(HttpContext.Current.Request.Url.PathAndQuery, HttpMethod.Delete.Method, null);
            return(Ok(couriers));
        }
Example #5
0
        public async Task <IHttpActionResult> Postboxes(OrderModel order)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Database.BeginTransaction();



            var destination = new destinations()
            {
                country           = order.Country,
                city              = order.City,
                post_code         = order.Post_code,
                street            = order.Street,
                house_number      = order.House_number,
                apartment_number  = order.Apartment_number,
                recipient_name    = order.Recipient_name,
                recipient_surname = order.Recipient_surname
            };

            db.destinations.Add(destination);
            var addDestinationResult = await db.SaveChangesAsync();

            if (addDestinationResult <= 0)
            {
                db.Database.CurrentTransaction.Rollback();
                return(BadRequest());
            }

            var pack = new boxes()
            {
                customer_key        = order.CustomerKey,
                pack_number         = order.PackNumber,
                dimensions          = order.Dimensions,
                weight              = order.Weight,
                to_pay              = order.ToPay,
                delivery_status     = 1,
                destination_id      = destination.id,
                current_check_point = order.CheckPointID
            };

            db.boxes.Add(pack);
            var addPackResult = await db.SaveChangesAsync();

            if (addPackResult <= 0)
            {
                db.Database.CurrentTransaction.Rollback();
                return(BadRequest());
            }

            var courier = new couriers()
            {
                courier_id   = 1,
                pack_id      = pack.id,
                is_available = true
            };

            db.couriers.Add(courier);
            var addCourierRangeResult = await db.SaveChangesAsync();

            if (addCourierRangeResult <= 0)
            {
                db.Database.CurrentTransaction.Rollback();
                return(BadRequest());
            }

            db.Database.CurrentTransaction.Commit();

            Logger.CreateLog(HttpContext.Current.Request.Url.PathAndQuery, HttpMethod.Post.Method, null);
            return(Ok());
        }