Пример #1
0
        public void AddItemFromProposalItemsList(int productID)
        {
            if (Toolbar.IsNullOrNoneAction() || productID <= 0)
            {
                return;
            }

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

            if (objProductsInfo == null)
            {
                return;
            }

            ProposalEntities entity = CurrentModuleEntity as ProposalEntities;

            entity.ProposalItemList.Add(
                new ARProposalItemsInfo()
            {
                FK_ICProductID                 = objProductsInfo.ICProductID,
                FK_ICMeasureUnitID             = objProductsInfo.FK_ICProductBasicUnitID,
                ARProposalItemProductNo        = objProductsInfo.ICProductNo,
                ARProposalItemProductName      = objProductsInfo.ICProductName,
                ARProposalItemDesc             = objProductsInfo.ICProductDesc,
                ARProposalItemProductType      = objProductsInfo.ICProductTemplateType,
                ARProposalItemProductUnitPrice = objProductsInfo.ICProductPrice,
                ARProposalItemPrice            = objProductsInfo.ICProductPrice,
                ARProposalItemQty              = 1,
                ARProposalItemTotalAmount      = objProductsInfo.ICProductPrice
            });
            UpdateTotalAmount();
            entity.ProposalItemList.GridControl.RefreshDataSource();
        }
Пример #2
0
        public void ChangeReceiptProductLotNo()
        {
            DialogResult rs = MessageBox.Show("Bạn có muốn thay đổi mã lô hàng cho toàn bộ sản phẩm không?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (rs != DialogResult.Yes)
            {
                return;
            }

            ReceiptEntities      entity                = (ReceiptEntities)CurrentModuleEntity;
            ICReceiptsInfo       mainobject            = (ICReceiptsInfo)CurrentModuleEntity.MainObject;
            ICProductsController objProductsController = new ICProductsController();
            ICProductsInfo       objProductsInfo       = new ICProductsInfo();

            entity.ReceiptItemsList.ForEach(o =>
            {
                objProductsInfo = (ICProductsInfo)objProductsController.GetObjectByID(o.FK_ICProductID);
                if (objProductsInfo == null)
                {
                    return;
                }

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

                o.ICReceiptItemStockLotNo = mainobject.ICReceiptProductLotNo;
            });
            entity.ReceiptItemsList.GridControl.RefreshDataSource();
        }
Пример #3
0
        public override void ActionApproved()
        {
            base.ActionApproved();
            SaleOrderEntities           entity                = (SaleOrderEntities)CurrentModuleEntity;
            List <ARSaleOrderItemsInfo> invetoryCheckList     = new List <ARSaleOrderItemsInfo>();
            ICProductsController        objProductsController = new ICProductsController();
            ICProductsInfo objProductsInfo = new ICProductsInfo();

            entity.SaleOrderItemsList.ForEach(o =>
            {
                objProductsInfo = (ICProductsInfo)objProductsController.GetObjectByID(o.FK_ICProductID);
                if (objProductsInfo == null)
                {
                    return;
                }

                if (o.ARSaleOrderItemGrantedFrom == ProductGrantedFrom.Inventory)
                {
                    invetoryCheckList.Add((ARSaleOrderItemsInfo)o.Clone());
                }
            });
            if (!IsValidInventoryStockQty(invetoryCheckList))
            {
                return;
            }
            ARSaleOrdersInfo       mainObject = (ARSaleOrdersInfo)entity.MainObject;
            ARSaleOrdersController objSaleOrdersController = new ARSaleOrdersController();

            mainObject.ARSaleOrderStatus = "Approved";
            entity.UpdateMainObject();
            GLHelper.PostedTransactions(CurrentModuleName, mainObject.ARSaleOrderID, ModulePostingType.SaleOrder);
            InvalidateToolbar();
        }
Пример #4
0
        public List <ICProductGroupsInfo> GetProductGroupByDepartmentForDataSource()
        {
            ProductEntities           entity                     = (ProductEntities)CurrentModuleEntity;
            ICProductsInfo            objProductsInfo            = (ICProductsInfo)entity.MainObject;
            ICProductGroupsController objProductGroupsController = new ICProductGroupsController();

            return(objProductGroupsController.GetProductGroupByDepartmentID(objProductsInfo.FK_ICDepartmentID));
        }
Пример #5
0
        public override void ActionNew()
        {
            base.ActionNew();

            ICProductsInfo objProductsInfo = (ICProductsInfo)((ProductEntities)CurrentModuleEntity).MainObject;

            WoodTypeCheckedComboBoxControl.SetEditValue(objProductsInfo.ICProductAttributeWoodType);
            ColorCheckedComboBoxControl.SetEditValue(objProductsInfo.ICProductAttributeColor);
        }
Пример #6
0
        public override void Invalidate(int iObjectID)
        {
            base.Invalidate(iObjectID);

            ICProductsInfo objProductsInfo = (ICProductsInfo)((ProductEntities)CurrentModuleEntity).MainObject;

            WoodTypeCheckedComboBoxControl.SetEditValue(objProductsInfo.ICProductAttributeWoodType);
            ColorCheckedComboBoxControl.SetEditValue(objProductsInfo.ICProductAttributeColor);
            ProductGroupLookupEditControl.Properties.DataSource = GetProductGroupByDepartmentForDataSource();
        }
Пример #7
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;
                    }
                }
            }
        }
Пример #8
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);
        }
Пример #9
0
        public void SetProductExtraWoodTypeAndColor()
        {
            ProductEntities entity          = (ProductEntities)CurrentModuleEntity;
            ICProductsInfo  objProductsInfo = (ICProductsInfo)entity.MainObject;

            if (objProductsInfo != null)
            {
                if (WoodTypeCheckedComboBoxControl.EditValue != null)
                {
                    string woodTypes = WoodTypeCheckedComboBoxControl.EditValue.ToString();
                    objProductsInfo.ICProductAttributeWoodType = woodTypes;
                }

                if (ColorCheckedComboBoxControl.EditValue != null)
                {
                    string colors = ColorCheckedComboBoxControl.EditValue.ToString();
                    objProductsInfo.ICProductAttributeColor = colors;
                }
            }
        }
Пример #10
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();
        }
Пример #11
0
        public void AddItemFromSaleOrderShipmentItemsList(int productID)
        {
            if (Toolbar.IsNullOrNoneAction() || productID == 0)
            {
                return;
            }

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

            if (objProductsInfo == null)
            {
                return;
            }

            SaleOrderShipmentEntities entity = CurrentModuleEntity as SaleOrderShipmentEntities;

            entity.ShipmentItemsList.Add(objProductsInfo.ToShipmentItem());
            entity.ShipmentItemsList.GridControl.RefreshDataSource();
            entity.UpdateTotalAmount();
        }
Пример #12
0
        public override void SaveModuleObjects()
        {
            ICStockLotsController objStockLotsController = new ICStockLotsController();
            ICStockLotsInfo       objStockLotsInfo       = new ICStockLotsInfo();

            ICProductsController objProductsController = new ICProductsController();
            ICProductsInfo       objProductsInfo       = new ICProductsInfo();

            ReceiptItemsList.ForEach(o =>
            {
                objProductsInfo = (ICProductsInfo)objProductsController.GetObjectByID(o.FK_ICProductID);
                if (objProductsInfo == null)
                {
                    return;
                }

                objStockLotsInfo = objStockLotsController.GetStockLotByProductAndLotNo(o.FK_ICProductID, o.ICReceiptItemStockLotNo);
                if (objStockLotsInfo == null)
                {
                    objStockLotsInfo = new ICStockLotsInfo()
                    {
                        ICStockLotNo            = o.ICReceiptItemStockLotNo,
                        FK_ICProductID          = o.FK_ICProductID,
                        ICStockLotProductNo     = objProductsInfo.ICProductNo,
                        ICStockLotProductName   = objProductsInfo.ICProductName,
                        ICStockLotProductDesc   = objProductsInfo.ICProductDesc,
                        ICStockLotProductLength = objProductsInfo.ICProductLength,
                        ICStockLotProductWidth  = objProductsInfo.ICProductWidth,
                        ICStockLotProductHeight = objProductsInfo.ICProductHeight
                    };
                    objStockLotsController.CreateObject(objStockLotsInfo);
                }
                o.FK_ICStockLotID = objStockLotsInfo.ICStockLotID;
            });
            ReceiptItemsList.SaveItemObjects();
        }
Пример #13
0
        //private void GridView_DoubleClick(object sender, EventArgs e)
        //{
        //    ((InventoryStatisticsModule)Screen.Module).ShowInventoryLeadgerModule();
        //}

        protected void GridView_CustomDisplayText(object sender, CustomColumnDisplayTextEventArgs e)
        {
            if (e.Column.FieldName == "FK_ICProductID")
            {
                if (e.Value != null)
                {
                    int matchCodeID = int.Parse(e.Value.ToString());
                    ICProductsController objProductsController = new ICProductsController();
                    ICProductsInfo       objProductsInfo       = (ICProductsInfo)objProductsController.GetObjectByID(matchCodeID);
                    if (objProductsInfo != null)
                    {
                        e.DisplayText = objProductsInfo.ICProductNo;
                    }
                    else
                    {
                        e.DisplayText = "";
                    }
                }
                else
                {
                    e.DisplayText = "";
                }
            }
        }
Пример #14
0
 public override void InitMainObject()
 {
     MainObject   = new ICProductsInfo();
     SearchObject = new ICProductsInfo();
 }