Example #1
0
 /// <summary>
 /// 快速添加订单,以及根据购买的数量构造虚拟单
 /// </summary>
 /// <param name="model"></param>
 /// <param name="tran"></param>
 public static void FastAddOrder(TravelOrderInfo model, DbTransaction tran)
 {
     dal.Add(model, tran);
     for (int i = 0; i < model.BuyNum; i++)
     {
         var detail = CreateVirtualOrderDetail(model.AddMemberName, model.OrderNum, model.GroupID, model.LineID);
         detailDal.Add(detail, tran);
     }
 }
Example #2
0
        private void UpdateLoadDowOrderDetails()
        {
            OrderDetail.DeleteByOrderID(OrderID);
            for (int i = 0; i < gvOrderDetails.Rows.Count - 1; i++)
            {
                DataGridViewRow currRow = gvOrderDetails.Rows[i];
                OrderDetail     tempo   = new OrderDetail();

                tempo.OrderID   = _OrderID;
                tempo.ProductID = Convert.ToInt32(currRow.Cells[0].Value.ToString());

                tempo.UnitPrice = Convert.ToDouble(Convert.ToDecimal(currRow.Cells[1].Value.ToString()));
                tempo.Quantity  = Convert.ToInt16(currRow.Cells[2].Value.ToString());
                tempo.Discount  = Convert.ToDouble(currRow.Cells[3].Value.ToString());

                OrderDetail.Add(tempo);
            }
        }
Example #3
0
        /// <summary>
        ///     编辑订单
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="list"></param>
        /// <returns></returns>
        public override string EditOrder(OrdersEntity entity, List <OrderDetailEntity> list)
        {
            using (var ts = new TransactionScope()) {
                var line = 0;
                entity.Include(a => new { a.OrderType, a.ContractOrder, a.Remark, a.Amount, a.Num });
                entity.Where(a => a.OrderNum == entity.OrderNum);
                var detail = new OrderDetailEntity();
                detail.Where(a => a.OrderNum == entity.OrderNum);
                MoveOrderDetail.Delete(detail);
                foreach (var item in list)
                {
                    item.OrderNum = entity.OrderNum;
                    item.IncludeAll();
                }

                entity.Num    = list.Sum(a => a.Num);
                entity.Amount = list.Sum(a => a.Amount);
                line          = Orders.Update(entity);
                OrderDetail.Add(list);
                ts.Complete();
                return(line > 0 ? EnumHelper.GetEnumDesc(EReturnStatus.Success) : string.Empty);
            }
        }
Example #4
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            try
            {
                Order temp = OrderLoad();
                if (gvOrderDetails.Rows.Count > 1)
                {
                    DialogResult dlg = MessageBox.Show("Do you want to add this order!", "Message Box", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
                    if (dlg == System.Windows.Forms.DialogResult.OK)
                    {
                        int oder = Order.Add(temp);

                        for (int i = 0; i < gvOrderDetails.Rows.Count - 1; i++)
                        {
                            DataGridViewRow currRow = gvOrderDetails.Rows[i];
                            OrderDetail     tempo   = new OrderDetail();
                            tempo.OrderID   = oder;
                            tempo.ProductID = Convert.ToInt32(currRow.Cells[0].Value.ToString());
                            tempo.UnitPrice = Convert.ToDouble(Convert.ToDecimal(currRow.Cells[1].Value.ToString()));
                            tempo.Quantity  = Convert.ToInt16(currRow.Cells[2].Value.ToString());
                            tempo.Discount  = Convert.ToDouble(currRow.Cells[3].Value.ToString());
                            OrderDetail.Add(tempo);
                        }
                        this.DialogResult = DialogResult.OK;
                    }
                }
                else
                {
                    MessageBox.Show("You can import order details!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Example #5
0
        /// <summary>
        ///     创建单据
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="list"></param>
        /// <returns></returns>
        public override string Create(OrdersEntity entity, List <OrderDetailEntity> list)
        {
            using (var ts = new TransactionScope()) {
                var line = 0;
                entity.OrderNum = entity.OrderNum.IsEmpty()
                    ? SequenceProvider.GetSequence(typeof(OrdersEntity))
                    : entity.OrderNum;
                entity.IncludeAll();

                if (!list.IsNullOrEmpty())
                {
                    list.ForEach(a => {
                        a.OrderNum = entity.OrderNum;
                        a.SendTime = entity.SendDate;
                        a.IncludeAll();
                    });
                    line  = Orders.Add(entity);
                    line += OrderDetail.Add(list);
                }

                ts.Complete();
                return(line > 0 ? EnumHelper.GetEnumDesc(EReturnStatus.Success) : string.Empty);
            }
        }
Example #6
0
        private void GetOrderDetailsList()
        {
            var odrepo = RepositoryManager.OrderDetailRepo();

            //Select only items in the cart; which are not invoiced
            var orderitems = odrepo.SearchFor(c => c.OrderId <= 0).ToList();

            var list = orderitems.Select(c => new OrderDetails()
            {
                ID       = c.ID,
                MenuID   = c.MenuID,
                MenuName = odrepo.GetMenuNameById(c.MenuID),
                Price    = c.Price,
                Quantity = c.Quantity,
            }).ToList();

            TotalAmount = list.Sum(c => c.Price * c.Quantity);
            OnPropertyChanged("TotalAmount");

            foreach (var od in list)
            {
                OrderDetail.Add(od);
            }
        }