Пример #1
0
        public void DeleteItemFromReceiptItemList()
        {
            if (Toolbar.IsNullOrNoneAction())
            {
                return;
            }

            ReceiptEntities entity = (ReceiptEntities)CurrentModuleEntity;

            entity.ReceiptItemsList.RemoveSelectedRowObjectFromList();
            entity.UpdateTotalAmount();
        }
Пример #2
0
        public void ChangeTaxAmount()
        {
            ReceiptEntities entity     = (ReceiptEntities)CurrentModuleEntity;
            ICReceiptsInfo  mainObject = (ICReceiptsInfo)entity.MainObject;

            if (mainObject.ICReceiptSubTotalAmount - mainObject.ICReceiptDiscountAmount != 0)
            {
                mainObject.ICReceiptTaxPercent = 100 * mainObject.ICReceiptTaxAmount / (mainObject.ICReceiptSubTotalAmount - mainObject.ICReceiptDiscountAmount);
            }
            else
            {
                mainObject.ICReceiptTaxPercent = 0;
            }
            mainObject.ICReceiptTaxPercent = Math.Round(mainObject.ICReceiptTaxPercent, 2, MidpointRounding.AwayFromZero);
            entity.UpdateTotalAmount();
        }
Пример #3
0
        public void ChangeItemFromReceiptItemsList(ICReceiptItemsInfo objReceiptItemsInfo)
        {
            ReceiptEntities entity = (ReceiptEntities)CurrentModuleEntity;

            if (objReceiptItemsInfo == null)
            {
                return;
            }

            objReceiptItemsInfo.ICReceiptItemProductExchangeQty = objReceiptItemsInfo.ICReceiptItemProductQty * objReceiptItemsInfo.ICReceiptItemProductFactor;
            objReceiptItemsInfo.ICReceiptItemDiscountAmount     = (objReceiptItemsInfo.ICReceiptItemDiscountPercent / 100) * (objReceiptItemsInfo.ICReceiptItemProductExchangeQty * objReceiptItemsInfo.ICReceiptItemProductUnitPrice);
            objReceiptItemsInfo.ICReceiptItemTaxAmount          = (objReceiptItemsInfo.ICReceiptItemTaxPercent / 100) * (objReceiptItemsInfo.ICReceiptItemProductExchangeQty * objReceiptItemsInfo.ICReceiptItemProductUnitPrice - objReceiptItemsInfo.ICReceiptItemDiscountAmount);
            objReceiptItemsInfo.ICReceiptItemTotalAmount        = objReceiptItemsInfo.ICReceiptItemProductExchangeQty * objReceiptItemsInfo.ICReceiptItemProductUnitPrice - objReceiptItemsInfo.ICReceiptItemDiscountAmount + objReceiptItemsInfo.ICReceiptItemTaxAmount;
            entity.ReceiptItemsList.GridControl.RefreshDataSource();
            entity.UpdateTotalAmount();
        }
Пример #4
0
        public override int ActionSave()
        {
            ReceiptEntities entity     = (ReceiptEntities)CurrentModuleEntity;
            ICReceiptsInfo  mainobject = (ICReceiptsInfo)CurrentModuleEntity.MainObject;

            entity.ReceiptItemsList.EndCurrentEdit();
            entity.UpdateTotalAmount();
            List <string> errorMessages = new List <string>();

            if (mainobject.FK_ICStockID == 0)
            {
                errorMessages.Add("Kho không được bỏ trống!");
            }
            if (mainobject.FK_GECurrencyID == 0 || mainobject.ICReceiptExchangeRate == 0)
            {
                errorMessages.Add("Vui lòng chọn loại tiền tề và tỷ giá!");
            }
            ICProductsController objProductsController = new ICProductsController();
            ICProductsInfo       objProductsInfo       = new ICProductsInfo();

            entity.ReceiptItemsList.ForEach(o =>
            {
                objProductsInfo = (ICProductsInfo)objProductsController.GetObjectByID(o.FK_ICProductID);
                if (objProductsInfo.ICPriceCalculationMethodType == PriceCalculationMethod.Specific && string.IsNullOrWhiteSpace(o.ICReceiptItemStockLotNo))
                {
                    errorMessages.Add("Vui lòng nhập mã lô cho sản phẩm: " + o.ICReceiptItemProductNo);
                }
            });
            if (errorMessages.Count() > 0)
            {
                GuiErrorMessage guiError = new GuiErrorMessage(errorMessages);
                guiError.Module = this;
                guiError.ShowDialog();
                return(0);
            }
            int iObjectID = base.ActionSave();

            if (iObjectID > 0)
            {
                this.ActionComplete();
            }
            return(iObjectID);
        }
Пример #5
0
        public void AddItemToReceiptItemsList(int productID)
        {
            ReceiptEntities entity     = (ReceiptEntities)CurrentModuleEntity;
            ICReceiptsInfo  mainobject = (ICReceiptsInfo)CurrentModuleEntity.MainObject;

            ICProductsController objProductsController = new ICProductsController();
            ICProductsInfo       objProductsInfo       = (ICProductsInfo)objProductsController.GetObjectByID(productID);

            if (objProductsInfo == null)
            {
                return;
            }

            ICReceiptItemsInfo objReceiptItemsInfo = objProductsInfo.ToReceiptItem();

            entity.ReceiptItemsList.Add(objReceiptItemsInfo);
            entity.ReceiptItemsList.GridControl.RefreshDataSource();
            entity.UpdateTotalAmount();
            entity.UpdateMainObjectBindingSource();
        }
Пример #6
0
        public void ChangeExchangeRate()
        {
            ReceiptEntities entity     = (ReceiptEntities)CurrentModuleEntity;
            ICReceiptsInfo  mainObject = (ICReceiptsInfo)entity.MainObject;

            entity.ReceiptItemsList.ForEach(o =>
            {
                if (mainObject.ICReceiptExchangeRate != 0)
                {
                    o.ICReceiptItemProductUnitPrice = o.ICReceiptItemProductBasicPrice / mainObject.ICReceiptExchangeRate;
                }
                else
                {
                    o.ICReceiptItemProductUnitPrice = 0;
                }

                ChangeItemFromReceiptItemsList(o);
            });
            entity.ReceiptItemsList.GridControl.RefreshDataSource();
            entity.UpdateTotalAmount();
        }
Пример #7
0
        public void ChangeTaxPercent()
        {
            ReceiptEntities entity = (ReceiptEntities)CurrentModuleEntity;

            entity.UpdateTotalAmount();
        }