示例#1
0
        private void btnAdjust_Click(object sender, EventArgs e)
        {
            if (dgvProducts1.Rows.Count == 0)
            {
                return;
            }

            ProductLocationService   locService    = new ProductLocationService();
            ProductAdjustmentService adjustServcie = new ProductAdjustmentService();
            ProductLocation          productLocation;
            ProductAdjustment        productAdjustment;

            try
            {
                for (int i = 0; i < dgvProducts1.Rows.Count; i++)
                {
                    productAdjustment = new ProductAdjustment();
                    productLocation   = new ProductLocation();

                    int prodLocID  = dgvProducts1.Rows[i].Cells["colProdLocID"].Value.ToInt();
                    int newqty     = dgvProducts1.Rows[i].Cells["colNewQty"].Value.ToInt();
                    int productID  = dgvProducts1.Rows[i].Cells["colProductID"].Value.ToInt();
                    int locationID = dgvProducts1.Rows[i].Cells["colLocationID"].Value.ToInt();
                    int currqty    = dgvProducts1.Rows[i].Cells["colCurrentQty"].Value.ToInt();
                    int diff       = dgvProducts1.Rows[i].Cells["colDifference"].Value.ToInt();

                    diff = diff < 0 ? diff * -1 : diff;

                    productLocation = locService.GetSingle(new ProductLocation {
                        Id = prodLocID
                    });
                    productLocation.Quantity = newqty;
                    productLocation.Id       = productLocation.Id;

                    locService.Update(productLocation);

                    adjustServcie.Add(new ProductAdjustment
                    {
                        ProductLocationID = prodLocID,
                        NewQty            = newqty,
                        ProductID         = productID,
                        LocationID        = locationID,
                        CurrentQty        = currqty,
                        Difference        = diff,
                        Remarks           = txtRemarks.Text,
                        AdjustmentDate    = DateTime.Now,
                        EmployeeID        = CurrentUser.User.EmployeeID
                    });
                }

                Helper.ShowMessage("Operation completed successfully", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
                dgvProducts1.Rows.Clear();
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, "An error occurred", "ucAdjustStock", "btnAdjustStock");
                Helper.ShowMessage("An error occured " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
示例#2
0
        private void InsertProductAdjustment(ProductAdjustment productAdjustment)
        {
            if (productAdjustment == null)
            {
                throw new ArgumentNullException("productAdjustment", Resources.ConstProductAdjustment);
            }

            _productDataAccess.InsertProductAdjustment(productAdjustment);
        }
示例#3
0
        public virtual void ProductAdjustmentManagement(string requestStr, ProductAdjustment productAdjustment)
        {
            if (string.IsNullOrEmpty(requestStr))
            {
                throw new ArgumentNullException("requestStr", Resources.ConstRequestOperation);
            }

            if (productAdjustment == null)
            {
                throw new ArgumentNullException("productAdjustment", Resources.ConstProductAdjustment);
            }

            if (requestStr.Equals(Resources.OperationRequestInsert))
            {
                InsertProductAdjustment(productAdjustment);
            }

            productAdjustment.FkProduct.QtyInStock = productAdjustment.QtyAdjusted;
            ManageProduct(productAdjustment.FkProduct, requestStr);
        }
示例#4
0
        private void BtnAdjustmentClick(object sender, EventArgs e)
        {
            if (_product == null)
            {
                return;
            }

            try
            {
                string briefMsg, detailMsg;
                if (!UserService.AllowToPerform(Resources.PermissionProductAdjustment))
                {
                    briefMsg  = "អំពី​សិទ្ឋិ​ប្រើ​ប្រាស់";
                    detailMsg = Resources.MsgUserPermissionDeny;
                    using (var frmMessageBox = new FrmExtendedMessageBox())
                    {
                        frmMessageBox.BriefMsgStr    = briefMsg;
                        frmMessageBox.DetailMsgStr   = detailMsg;
                        frmMessageBox.IsCanceledOnly = true;
                        frmMessageBox.ShowDialog(this);
                        return;
                    }
                }

                briefMsg  = "អំពីការសង";
                detailMsg = "សូម​មេត្តា​ចុច​លើ​ប៊ូតុង យល់​ព្រម ដើម្បី​បញ្ជាក់​ពី​ការ​ដកចេញពីឃ្លាំង​។";
                using (var frmMessageBox = new FrmExtendedMessageBox())
                {
                    frmMessageBox.BriefMsgStr  = briefMsg;
                    frmMessageBox.DetailMsgStr = detailMsg;
                    if (frmMessageBox.ShowDialog(this) != DialogResult.OK)
                    {
                        return;
                    }
                }

                using (var folderBrowserDialog = new FolderBrowserDialog())
                {
                    folderBrowserDialog.ShowNewFolderButton = false;
                    if (folderBrowserDialog.ShowDialog() == DialogResult.OK)
                    {
                        if (_productService == null)
                        {
                            _productService = ServiceFactory.GenerateServiceInstance().GenerateProductService();
                        }

                        IList listProduct2Export = new List <Product> {
                            _product
                        };

                        _productService.ExportProductToXml(
                            listProduct2Export,
                            folderBrowserDialog.SelectedPath,
                            "ProductList.xml");

                        var productAdjustment = new ProductAdjustment
                        {
                            ProductId   = _product.ProductId,
                            QtyInStock  = _product.QtyInStock,
                            QtyAdjusted = ((-1) * _product.QtyInStock),
                            FkProduct   = _product
                        };

                        if (_productService == null)
                        {
                            _productService = ServiceFactory.GenerateServiceInstance().GenerateProductService();
                        }
                        _productService.ProductAdjustmentManagement(
                            Resources.OperationRequestInsert,
                            productAdjustment);

                        _isModified  = true;
                        DialogResult = DialogResult.OK;
                    }
                }
            }
            catch (Exception exception)
            {
                FrmExtendedMessageBox.UnknownErrorMessage(
                    Resources.MsgCaptionUnknownError,
                    exception.Message);
            }
        }
示例#5
0
 public virtual void DeleteProductAdjustment(ProductAdjustment productAdjustment)
 {
     DeleteObject(productAdjustment);
 }
示例#6
0
 public virtual void UpdateProductAdjustment(ProductAdjustment productAdjustment)
 {
     UpdateObject(productAdjustment);
 }
示例#7
0
 public virtual void InsertProductAdjustment(ProductAdjustment productAdjustment)
 {
     InsertObject(productAdjustment);
 }