Ejemplo n.º 1
0
 private void gridviewBillItem_LoadData()
 {
     if (BillItemEditFormStrategy != null)
     {
         gridviewBillItem.DataSource = BillItemEditFormStrategy.GetBillItems(session, BillId);
         gridviewBillItem.DataBind();
     }
 }
Ejemplo n.º 2
0
        protected void gridviewBillItem_RowDeleting(object sender, DevExpress.Web.Data.ASPxDataDeletingEventArgs e)
        {
            if (BillId == null || BillId.Equals(Guid.Empty))
            {
                return;
            }

            Bill bill = session.GetObjectByKey <Bill>(BillId);

            if (bill.RowStatus.Equals(Utility.Constant.ROWSTATUS_BOOKED_ENTRY))
            {
                throw new Exception(String.Format("Không thể thực hiện vì hóa đơn '{0}' đã bị khóa",
                                                  bill.Code));
            }

            UnitOfWork uow = null;

            try
            {
                uow = XpoHelper.GetNewUnitOfWork();
                Guid billItemId = (Guid)e.Keys["BillItemId"];
                BillItemEditFormStrategy.DeleteBillItem(uow, billItemId);
                uow.CommitChanges();
                gridviewBillItem.JSProperties["cpEvent"] = "DataChanged";
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                if (uow != null)
                {
                    uow.Dispose();
                }
                e.Cancel = true;
            }
        }
Ejemplo n.º 3
0
        protected void gridviewBillItem_RowUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e)
        {
            UnitOfWork uow = null;

            try
            {
                uow = XpoHelper.GetNewUnitOfWork();
                Guid   billItemId = (Guid)e.Keys["BillItemId"];
                Guid   itemId     = (Guid)e.NewValues["ItemId!Key"];
                Guid   unitId     = (Guid)e.NewValues["UnitId!Key"];
                double quantity   = (double)e.NewValues["Quantity"];
                double price      = (double)e.NewValues["Price"];
                //double promotionInPercentage = double.MinValue;
                double promotionInPercentage = -1;
                string comment = (string)e.NewValues["Comment"];
                if (e.NewValues["PromotionInPercentage"] != null)
                {
                    promotionInPercentage = (double)e.NewValues["PromotionInPercentage"];
                }
                BillItemEditFormStrategy.UpdateBillItem(uow, billItemId, itemId, unitId, quantity, price, promotionInPercentage, comment);
                uow.CommitChanges();
                gridviewBillItem.JSProperties["cpEvent"] = "DataChanged";
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                if (uow != null)
                {
                    uow.Dispose();
                }
                e.Cancel = true;
                gridviewBillItem.CancelEdit();
            }
        }
Ejemplo n.º 4
0
 public void SetBillItemEditFormStrategy(BillItemEditFormStrategy strategy)
 {
     _BillItemEditFormStrategy = strategy;
 }