コード例 #1
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();
        }
コード例 #2
0
        protected override void GridView_ValidatingEditor(object sender, BaseContainerValidateEditorEventArgs e)
        {
            GridView           gridView = (GridView)sender;
            ICReceiptItemsInfo item     = (ICReceiptItemsInfo)gridView.GetRow(gridView.FocusedRowHandle);

            if (e.Value != null)
            {
                if (gridView.FocusedColumn.FieldName == "ICReceiptItemProductFactor")
                {
                    if (!string.IsNullOrEmpty(e.Value.ToString()))
                    {
                        ICProductMeasureUnitsController controller  = new ICProductMeasureUnitsController();
                        ICProductMeasureUnitsInfo       measureUnit = controller.GetProductMeasureUnitByProductIDAndMeasureUnitID(item.FK_ICProductID, item.FK_ICMeasureUnitID);
                        if (measureUnit != null && measureUnit.ICProductMeasureUnitIsEdit)
                        {
                            return;
                        }

                        e.ErrorText = "Hệ số không được phép thay đổi.";
                        e.Valid     = false;
                    }
                }
                if (gridView.FocusedColumn.FieldName == "ICReceiptItemStockLotNo")
                {
                    if (!string.IsNullOrEmpty(e.Value.ToString()))
                    {
                        ICProductsController objProductsController = new ICProductsController();
                        ICProductsInfo       objProductsInfo       = new ICProductsInfo();

                        objProductsInfo = (ICProductsInfo)objProductsController.GetObjectByID(item.FK_ICProductID);
                        if (objProductsInfo == null)
                        {
                            return;
                        }

                        if (objProductsInfo.ICPriceCalculationMethodType != PriceCalculationMethod.Specific)
                        {
                            return;
                        }

                        e.ErrorText = "Không được nhập lô cho sản phẩm tính giá trung bình!";
                        e.Valid     = false;
                    }
                }
            }
        }
コード例 #3
0
        public void ChangeItemMeasureUnit()
        {
            ReceiptEntities    entity = (ReceiptEntities)CurrentModuleEntity;
            ICReceiptItemsInfo objReceiptItemsInfo = entity.ReceiptItemsList[entity.ReceiptItemsList.CurrentIndex];

            if (objReceiptItemsInfo == null)
            {
                return;
            }

            ICProductMeasureUnitsController controller  = new ICProductMeasureUnitsController();
            ICProductMeasureUnitsInfo       measureUnit = controller.GetProductMeasureUnitByProductIDAndMeasureUnitID(objReceiptItemsInfo.FK_ICProductID, objReceiptItemsInfo.FK_ICMeasureUnitID);

            objReceiptItemsInfo.ICReceiptItemProductFactor      = measureUnit.ICProductMeasureUnitFactor;
            objReceiptItemsInfo.ICReceiptItemProductExchangeQty = objReceiptItemsInfo.ICReceiptItemProductQty * objReceiptItemsInfo.ICReceiptItemProductFactor;
            entity.ReceiptItemsList.GridControl.RefreshDataSource();
        }
コード例 #4
0
        private void rpMeasureUnitt_QueryPopUp(object sender, System.ComponentModel.CancelEventArgs e)
        {
            GridView           gridView   = (GridView)MainView;
            ICReceiptItemsInfo item       = (ICReceiptItemsInfo)gridView.GetRow(gridView.FocusedRowHandle);
            LookUpEdit         lookUpEdit = (LookUpEdit)sender;

            if (item != null)
            {
                ICMeasureUnitsController  objMeasureUnitsController = new ICMeasureUnitsController();
                List <ICMeasureUnitsInfo> measureUnits = objMeasureUnitsController.GetMeasureUnitByProductID(item.FK_ICProductID);
                if (measureUnits != null)
                {
                    lookUpEdit.Properties.DataSource    = measureUnits;
                    lookUpEdit.Properties.DisplayMember = "ICMeasureUnitName";
                    lookUpEdit.Properties.ValueMember   = "ICMeasureUnitID";
                }
            }
        }
コード例 #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 ChangeItemDiscountAmount()
        {
            ReceiptEntities    entity = (ReceiptEntities)CurrentModuleEntity;
            ICReceiptItemsInfo objReceiptItemsInfo = entity.ReceiptItemsList[entity.ReceiptItemsList.CurrentIndex];

            if (objReceiptItemsInfo == null)
            {
                return;
            }

            if (objReceiptItemsInfo.ICReceiptItemDiscountAmount != 0 && (objReceiptItemsInfo.ICReceiptItemProductExchangeQty * objReceiptItemsInfo.ICReceiptItemProductUnitPrice) != 0)
            {
                objReceiptItemsInfo.ICReceiptItemDiscountPercent = 100 * objReceiptItemsInfo.ICReceiptItemDiscountAmount / (objReceiptItemsInfo.ICReceiptItemProductExchangeQty * objReceiptItemsInfo.ICReceiptItemProductUnitPrice);
            }
            else
            {
                objReceiptItemsInfo.ICReceiptItemDiscountPercent = 0;
            }
            objReceiptItemsInfo.ICReceiptItemDiscountPercent = Math.Round(objReceiptItemsInfo.ICReceiptItemDiscountPercent, 2, MidpointRounding.AwayFromZero);
            entity.ReceiptItemsList.GridControl.RefreshDataSource();
        }
コード例 #7
0
        protected override void GridView_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
        {
            base.GridView_CellValueChanged(sender, e);
            ReceiptEntities entity = (ReceiptEntities)(this.Screen.Module as BaseModuleERP).CurrentModuleEntity;

            if (entity.ReceiptItemsList.CurrentIndex >= 0)
            {
                GridView           gridView = (GridView)sender;
                ICReceiptItemsInfo item     = (ICReceiptItemsInfo)gridView.GetRow(gridView.FocusedRowHandle);
                if (e.Column.FieldName == "FK_ICMeasureUnitID")
                {
                    ((ReceiptModule)Screen.Module).ChangeItemMeasureUnit();
                }
                else if (e.Column.FieldName == "ICReceiptItemDiscountAmount")
                {
                    ((ReceiptModule)Screen.Module).ChangeItemDiscountAmount();
                }
                else if (e.Column.FieldName == "ICReceiptItemTaxAmount")
                {
                    ((ReceiptModule)Screen.Module).ChangeItemTaxAmount();
                }
                ((ReceiptModule)Screen.Module).ChangeItemFromReceiptItemsList(item);
            }
        }