Example #1
0
        public void AddDetailOrder()
        {
            DetailOrder detail = new DetailOrder();

            detail.ListProduct = listOrder;
            detail.Add();
        }
Example #2
0
        public void AddToListbox(string Size, string Amount, int index)//Productname, Priceproduct, Size, Amount
        {
            Product     product   = new Product();
            ItemOrder   itemorder = new ItemOrder();
            DetailOrder detail    = new DetailOrder();

            product.Find((index + 1).ToString());
            //thành tiền sản phẩm
            int totalprice = int.Parse(product.Price) * int.Parse(Amount);

            itemorder.PriceTotal  = totalprice.ToString();
            itemorder.Quantity    = Amount;
            itemorder.Image       = product.Image;
            itemorder.ProductName = product.ProductName;
            itemorder.IdProduct   = (index + 1).ToString();
            itemorder.Size        = Size;
            detail.ListProduct.Add(itemorder);
            sum += totalprice;

            //binding
            OrderedList.Insert(0, detail.ListProduct);
            listOrder.Add(itemorder);

            //binding tổng tiền
            TotalPriceProductsTextblock = sum.ToString();

            //gán để binding xóa item trong listbox
            DetailListbox.ListProduct.Insert(0, itemorder);
        }
Example #3
0
        public object Save([FromBody] DetailOrder detailOrder)
        {
            string sql = "";

            if (detailOrder.Weight == 0)
            {
                detailOrder.Weight = 1;
            }
            detailOrder.ShouldPrice = detailOrder.SinglePrice * detailOrder.Weight;
            if (detailOrder.Id > 0)
            {
                sql = $@"UPDATE DetailOrder SET 
                            MenuId=@MenuId,
                            SinglePrice=@SinglePrice,
                            Weight=@Weight,
                            ShouldPrice=@ShouldPrice
                         WHERE Id = @Id";
            }
            else
            {
                sql = $@"INSERT INTO DetailOrder(MenuId, SinglePrice, Weight, ShouldPrice, OrderId) 
                         VALUES(@MenuId, @SinglePrice, @Weight, @ShouldPrice, @OrderId)";
            }

            var xresult = new XResult();

            if (!XDataHelper.ExcuteNonQuery(sql, detailOrder))
            {
                xresult.code    = 10000;
                xresult.message = "操作失败!";
            }
            ;
            return(xresult);
        }
Example #4
0
        public ActionResult SaveOrder(Customer model)
        {
            List <CartItem> sp = GetCart();

            int id = model.Id;

            //Tạo đơn hàng
            Order order = new Order();

            order.CustomerId = id;
            order.DateTime   = DateTime.Now;
            _dbContext.Orders.Add(order);
            _dbContext.SaveChanges();

            //Chi tiết đơn hàng
            foreach (var item in sp)
            {
                DetailOrder detailOrder = new DetailOrder();

                detailOrder.OrderId   = order.Id;
                detailOrder.ProductId = item.Product.Id;
                detailOrder.Amount    = item.Amount;

                _dbContext.DetailOrders.Add(detailOrder);
            }
            _dbContext.SaveChanges();
            Session["ShoppingCart"] = null;

            //return Content("<script>alert('Đơn hàng đặt thành công, chúng tôi sẽ liên hệ lại sau')</script>");

            return(RedirectToAction("Index", "Home"));
        }
 //[Authorize(Roles = "AddUser")]
 //[Permission(Action = "Create", Function = "USER")]
 public HttpResponseMessage Create(HttpRequestMessage request, OrderViewModel orderVm)
 {
     if (ModelState.IsValid)
     {
         var newOrder = new DetailOrder();
         newOrder.UpdateOrder(orderVm);
         try
         {
             var listOrderDetails = new List <OrderDetail>();
             foreach (var item in orderVm.OrderDetails)
             {
                 listOrderDetails.Add(new OrderDetail()
                 {
                     ProductID = item.ProductID,
                     Quantity  = item.Quantity,
                     Price     = item.Price,
                 });
             }
             newOrder.OrderDetails = listOrderDetails;
             var result = _orderService.Create(newOrder);
             var model  = Mapper.Map <DetailOrder, OrderViewModel>(result);
             return(request.CreateResponse(HttpStatusCode.OK, model));
         }
         catch (Exception ex)
         {
             return(request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message));
         }
     }
     else
     {
         return(request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
     }
 }
Example #6
0
        public bool InsertDetailOrder(List <DetailOrdersDTO> dto, int orderId)
        {
            var temp = db.OrderTbls.Find(orderId);

            if (temp != null)
            {
                if (dto != null)
                {
                    foreach (var i in dto)
                    {
                        DetailOrder dtop = new DetailOrder();
                        dtop.orderID          = orderId;
                        dtop.bookID           = i.BookId;
                        dtop.quantityBorrowed = i.QuantityBorrowed;
                        db.DetailOrders.Add(dtop);

                        Book b = db.Books.Find(i.BookId);
                        b.quantity       -= i.QuantityBorrowed;
                        db.Entry(b).State = EntityState.Modified;
                    }
                    db.SaveChanges();
                }
                return(true);
            }
            else
            {
                return(false);
            }
        }
Example #7
0
        public async Task <ActionResult> DeleteConfirmed(decimal id)
        {
            DetailOrder detailOrder = await db.DetailOrders.FindAsync(id);

            db.DetailOrders.Remove(detailOrder);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
        public async Task <IActionResult> DeleteConfirmed(int id)
        {
            var order = await _context.Orders
                        .Include(o => o.User)
                        .Include(o => o.Customer)
                        .Include(o => o.DetailOrders)
                        .ThenInclude(i => i.Product)
                        .FirstOrDefaultAsync(o => o.ID == id);

            try
            {
                foreach (var i in order.DetailOrders)
                {
                    i.Product.SoLuong += i.SoLuong;
                    _context.Products.Update(i.Product);
                }
                _context.Orders.Remove(order);
                var user = await _userManager.GetUserAsync(User);

                var orderChange = new OrderChange
                {
                    ThoiGian = DateTime.Now,
                    UserName = user.UserName,
                    HanhDong = "Xóa",
                    OrderID  = order.ID
                };
                _context.OrderChanges.Add(orderChange);
                await _context.SaveChangesAsync();

                TempData["messageSuccess"] = $"Đơn hàng \"{order.ID}\" đã xóa";

                return(RedirectToAction("Index"));
            }
            catch
            {
                var model = new OrderViewModel
                {
                    ID           = order.ID,
                    ThoiGianTao  = order.ThoiGianTao,
                    UserName     = order.User.Ten,
                    CustomerName = order.Customer.Ten
                };
                foreach (var item in order.DetailOrders)
                {
                    var itemVM = new DetailOrder
                    {
                        Gia     = item.Gia,
                        SoLuong = item.SoLuong,
                        Product = item.Product
                    };
                    model.DetailOrders.Add(itemVM);
                }
                ModelState.AddModelError(string.Empty, "Đã xảy ra lỗi trong quá trình xóa đơn hàng, vui lòng thử lại vào thời gian khác!");
                return(View(model));
            }
        }
Example #9
0
        public async Task <ActionResult> storeDetail(DetailOrder model)
        {
            var status = await _Order.postDetail(model);

            if (status == true)
            {
                return(Ok());
            }
            return(BadRequest());
        }
 public static void UpdateOrder(this DetailOrder order, OrderViewModel orderVm)
 {
     order.CustomerMessage = orderVm.CustomerMessage;
     order.PaymentMethod   = orderVm.PaymentMethod;
     order.CreatedDate     = DateTime.Now;
     order.CreatedBy       = orderVm.CreatedBy;
     order.PaymentStatus   = orderVm.PaymentStatus;
     order.Status          = orderVm.Status;
     order.CustomerId      = orderVm.CustomerId;
 }
Example #11
0
        public async Task CreateDetailOrderAsync(int productId, int orderId, int amount, double total)
        {
            DetailOrder detailOrder = new DetailOrder
            {
                ProductId = productId,
                Amount    = amount,
                OrderId   = orderId,
                Total     = total
            };

            await _repository.CreateDetailOrderAsync(detailOrder);
        }
Example #12
0
        public async Task <ActionResult> Edit([Bind(Include = "ID,IdOrder,Teeth,BuccalMargin,LingualMargin,BuccalTissue,Compression,AbutmentsParallel,Note,IdProduct,Contact,Oclussion,Material,Shade,DesignRequirements,ModelServices,ArticulatorType,ModelImplantConnection")] DetailOrder detailOrder)
        {
            if (ModelState.IsValid)
            {
                db.Entry(detailOrder).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            ViewBag.IdOrder = new SelectList(db.Orders, "ID", "Name", detailOrder.IdOrder);
            return(View(detailOrder));
        }
 public DetailOrderViewModel(DetailOrder d)
 {
     this.OrderID          = d.OrderID;
     this.BookName         = d.Book.Title;
     this.Quantity         = d.Quantity;
     this.Price            = (float)d.Book.Price;
     this.RecipientName    = d.Order.RecipientName;
     this.RecipientPhone   = d.Order.RecipientPhone;
     this.RecipientAddress = d.Order.RecipientAddress;
     this.Status           = d.Order.StatusObject.Name;
     this.OrderNote        = d.Order.OrderNote;
 }
 public DetailOrder Create(DetailOrder order)
 {
     try
     {
         _orderRepository.Add(order);
         _unitOfWork.Commit();
         return(order);
     }
     catch (Exception ex)
     {
         throw;
     }
 }
Example #15
0
 public bool Insert(DetailOrder detail)
 {
     try
     {
         data.DetailOrders.Add(detail);
         data.SaveChanges();
         return(true);
     }
     catch
     {
         return(false);
     }
 }
Example #16
0
        // GET: DetailOrders/Details/5
        public async Task <ActionResult> Details(decimal id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DetailOrder detailOrder = await db.DetailOrders.FindAsync(id);

            if (detailOrder == null)
            {
                return(HttpNotFound());
            }
            return(View(detailOrder));
        }
Example #17
0
        public async Task <bool> postDetail(DetailOrder model)
        {
            _context.DetailOrders.Add(model);
            _context.SaveChanges();
            var Product = _context.Products.FirstOrDefault(m => m.ProductId == model.ProductId);

            Product.Quantity = Product.Quantity - model.Quantity;
            var status = await _context.SaveChangesAsync();

            if (status > 0)
            {
                return(true);
            }
            return(false);
        }
Example #18
0
        // GET: DetailOrders/Edit/5
        public async Task <ActionResult> Edit(decimal id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DetailOrder detailOrder = await db.DetailOrders.FindAsync(id);

            if (detailOrder == null)
            {
                return(HttpNotFound());
            }
            ViewBag.IdOrder = new SelectList(db.Orders, "ID", "Name", detailOrder.IdOrder);
            return(View(detailOrder));
        }
        public DataRespond update(DetailOrder detailOrder)
        {
            DataRespond data = new DataRespond();

            try
            {
                data.success = true;
                m_detailOrder.update(detailOrder);
                data.messger = "Insert success";
            }
            catch (Exception e)
            {
                data.success = false;
                data.error   = e;
                data.messger = e.Message;
            }
            return(data);
        }
Example #20
0
    public void ThemDonHang()
    {
        Order or = new Order();

        or.DateSet      = DateTime.Now;
        or.DateDelivery = DateTime.Now.Date.AddDays(5);
        or.UserName     = Session["UserName"].ToString();

        or.Address       = txtDCNN.Text;
        or.Phone         = txtSDTNN.Text;
        or.Email         = txtEmailNN.Text;
        or.RecipientName = txtTenNN.Text;
        if (rdTTTT.Checked == true)
        {
            or.PaymentID = "PT1";
        }
        if (rdTTQuaThe.Checked == true)
        {
            or.PaymentID = "PT2";
        }
        or.State = 0;
        db.Orders.InsertOnSubmit(or);
        db.SubmitChanges();

        var c = from p in db.Orders
                select p.OrderID;

        ShoppingCart gio = (ShoppingCart)Session["GioHang"];

        for (int i = 0; i < gio.Data.Rows.Count; i++)
        {
            DetailOrder dto  = new DetailOrder();
            int         mahd = 0;
            foreach (var con in c)
            {
                mahd = con;
            }
            dto.OrderID   = mahd;
            dto.ProductID = gio.Data.Rows[i][0].ToString();
            dto.Number    = int.Parse(gio.Data.Rows[i][2].ToString());
            db.DetailOrders.InsertOnSubmit(dto);
            db.SubmitChanges();
        }
    }
        public ActionResult Checkout(string Name, string Address, string Phone, string Email)
        {
            var order = new Order();

            //User user = (User)Session["Account"];
            //order.IDUser = user.IDUser;
            order.Name         = Name;
            order.Email        = Email;
            order.Address      = Address;
            order.Phone        = Phone;
            order.DateOrder    = DateTime.Now;
            order.DateDelivery = DateTime.Now.AddDays(3);
            var     id        = new OrderDAO().Insert(order);
            var     cart      = (List <CartModel>)Session[CartSession];
            var     detailDao = new DetailOrderDAO();
            decimal total     = 0;

            foreach (var item in cart)
            {
                var orderDetail = new DetailOrder();
                orderDetail.IDProduct = item.Product.IDProduct;
                orderDetail.IDOrder   = id;
                orderDetail.UnitPrice = item.Product.Price;
                orderDetail.Quantity  = item.Quantity;
                detailDao.Insert(orderDetail);

                total        += (item.Product.Price.GetValueOrDefault(0) * item.Quantity);
                ViewBag.ToTal = total;
            }
            string content = System.IO.File.ReadAllText(Server.MapPath("~/Content/client/template/neworder.html"));

            content = content.Replace("{{CustomerName}}", Name);
            content = content.Replace("{{Phone}}", Phone);
            content = content.Replace("{{Email}}", Email);
            content = content.Replace("{{Address}}", Address);
            content = content.Replace("{{Total}}", ViewBag.ToTal.ToString("N0"));
            //var toEmail = ConfigurationManager.AppSettings["ToEmailAddress"].ToString();

            //new MailHelper().SendMail(order.Email, "new order", content);
            //new MailHelper().SendMail(toEmail, "new order", content);

            return(Redirect("InformationOrder"));
        }
Example #22
0
        /// <summary>
        /// Adds the detail order.
        /// </summary>
        /// <param name="item">detail order item</param>
        /// <returns>Add Detail Order</returns>
        public bool AddDetailOrder(DetailOrder item)
        {
            using (var data = new Entities())
            {
                bool rt;
                try
                {
                    data.DetailOrders.Add(item);
                    data.SaveChanges();
                    rt = true;
                }
                catch (Exception)
                {
                    rt = false;
                }

                return(rt);
            }
        }
 public bool insert(Order entity, DetailOrder[] items)
 {
     try
     {
         entity.CreatedAt = DateTime.Now;
         entity.Status = false;
         db.Orders.Add(entity);
         db.SaveChanges();
         foreach (DetailOrder item in items)
             item.OrderId = entity.id;
         db.DetailOrders.AddRange(items);
         db.SaveChanges();
         return true;
     }
     catch
     {
         return false;
     }
 }
        public async Task <IActionResult> Delete(int?id)
        {
            if (id == 0)
            {
                return(NotFound());
            }
            var order = await _context.Orders
                        .Include(o => o.User)
                        .Include(o => o.Customer)
                        .Include(o => o.DetailOrders)
                        .ThenInclude(i => i.Product)
                        .AsNoTracking()
                        .FirstOrDefaultAsync(o => o.ID == id);

            if (order == null)
            {
                return(NotFound());
            }
            var model = new OrderViewModel
            {
                ID           = order.ID,
                ThoiGianTao  = order.ThoiGianTao,
                UserName     = order.User.Ten,
                CustomerName = order.Customer.Ten
            };

            foreach (var item in order.DetailOrders)
            {
                var itemVM = new DetailOrder
                {
                    Gia     = item.Gia,
                    SoLuong = item.SoLuong,
                    Product = item.Product
                };
                model.DetailOrders.Add(itemVM);
            }
            return(View(model));
        }
        public int CreateOrder(Order order, string id)
        {
            decimal orderTotal = 0;
            var     cartItem   = GetCartItems(id);

            foreach (var item in cartItem)
            {
                var orderDetail = new DetailOrder
                {
                    ItemId    = item.ItemId,
                    OrderId   = order.OrderId,
                    UnitPrice = item.Item.Price,
                    Quantity  = item.Count
                };
                orderTotal += (item.Count * item.Item.Price);
                context.DetailOrders.Add(orderDetail);
            }
            order.Total = orderTotal;
            EmtyCart(id);
            context.SaveChanges();

            return(order.OrderId);
        }
Example #26
0
        public async Task <string> Handle(CreateOrderCommand request, CancellationToken cancellationToken)
        {
            var idOrder     = Guid.NewGuid();
            var entityOrder = new Order {
                EmailUser    = request.EmailUser,
                StatusOrder  = 0,
                IdOrder      = idOrder,
                TanggalOrder = DateTime.Now,
            };

            Context.Orders.Add(entityOrder);

            List <DetailOrder> records = new List <DetailOrder> ();

            foreach (var data in request.IdProducts)
            {
                var newRecord = new DetailOrder {
                    IdDetailOrder = Guid.NewGuid(),
                    IdOrder       = idOrder,
                    IdProducts    = data.IdProducts,
                    TotalProducts = data.TotalProducts
                };

                var entity = Context.Products.Where(x => x.IdProduct == data.IdProducts).FirstOrDefault();

                entity.Stock = entity.Stock - data.TotalProducts;

                records.Add(newRecord);
            }

            await Context.DetailOrders.AddRangeAsync(records, cancellationToken);

            await Context.SaveChangesAsync(true, cancellationToken);

            return("Sukses");
        }
 public void Update(DetailOrder detailOrder)
 {
     _orderRepository.Update(detailOrder);
 }
Example #28
0
 /// <summary>
 /// Removes the specified it.
 /// </summary>
 /// <param name="detailOder">detail order</param>
 public void Remove(DetailOrder detailOder)
 {
     this.listOrderDetail.Remove(detailOder);
 }
 public async Task CreateDetailOrderAsync(DetailOrder detailOrder)
 {
     _context.DetailOrders.Add(detailOrder);
     await _context.SaveChangesAsync();
 }
Example #30
0
 /// <summary>
 /// Adds the specified detail order.
 /// </summary>
 /// <param name="detailOrder">detail order.</param>
 public void Add(DetailOrder detailOrder)
 {
     this.listOrderDetail.Add(detailOrder);
 }
Example #31
0
        /// <summary>
        /// 得到一个店铺的订单
        /// </summary>
        /// <param name="accid"></param>
        /// <returns></returns>
        public static DetailOrder GetAccountOrder(int accid)
        {
            List <dynamic> orderList = T_OrderInfoBLL.GetListByAccId(accid);
            string         str       = "";

            OrderItemProp propModel  = new OrderItemProp();
            DetailOrder   orderModel = new DetailOrder();

            foreach (dynamic item in orderList)
            {
                str = item.orderPayType.ToString();
                switch (str)
                {
                case "0":
                    item.orderPayType = "平台订单";
                    break;

                case "1":
                    item.orderPayType = "线下订单";
                    break;

                case "2":
                    item.orderPayType = "支付宝";
                    break;

                case "3":
                    item.orderPayType = "财付通";
                    break;

                case "4":
                    item.orderPayType = "快钱";
                    break;

                case "5":
                    item.orderPayType = "微信支付";
                    break;

                case "6":
                    item.orderPayType = "IOS支付";
                    break;

                case "7":
                    item.orderPayType = "安卓支付";
                    break;
                }

                if (item.orderTypeId != 2)
                {
                    OrderItemProp tempModel = T_Order_businessBLL.GetListItemProps(Convert.ToInt32(item.busId), accid);

                    if (propModel.isFreeSms == 1 && tempModel.isFreeSms == 1)
                    {
                        propModel.Profit   += Convert.ToDouble(item.RealPayMoney);
                        propModel.SumMoney += Convert.ToDouble(item.RealPayMoney);
                    }
                    else
                    {
                        propModel.Cost     += tempModel.Cost;
                        propModel.Profit   += Convert.ToDouble(item.RealPayMoney);
                        propModel.SumMoney += Convert.ToDouble(item.RealPayMoney) - tempModel.Cost;
                        propModel.isFreeSms = tempModel.isFreeSms;
                    }
                }
                else
                {
                    propModel.Cost     += Convert.ToDouble(item.busSumMoney);
                    propModel.Profit   += Convert.ToDouble(item.RealPayMoney);
                    propModel.SumMoney += Convert.ToDouble(item.RealPayMoney) - Convert.ToDouble(item.busSumMoney);
                }
            }

            propModel.Cost     = Math.Round(propModel.Cost, 2);
            propModel.Profit   = Math.Round(propModel.Profit, 2);
            propModel.SumMoney = Math.Round(propModel.SumMoney, 2);

            orderModel.DataList = orderList;
            orderModel.SumInfo  = propModel;

            return(orderModel);
        }