protected void repInvoice_ItemCommand(object source, RepeaterCommandEventArgs e)
        {
            string cmdName = e.CommandName;
            string arg     = e.CommandArgument.ToString();
            var    manager = new ReceiptManager();

            if (cmdName == "DeleteItem")
            {
                manager.DeleteReceipt(arg);
                this.LoadRepeater();
            }

            if (cmdName == "UpdateItem")
            {
                string targetUrl = "~/ReceiptDetail.aspx?RepNo=" + arg;
                Response.Redirect(targetUrl);
            }
        }
Beispiel #2
0
    public static bool DeleteReceipt(int receiptId, int companyId)
    {
        bool result = true;

        var sale = new SaleManager(null).GetSaleByReceipt(companyId, receiptId);

        if (sale != null)
        {
            new SaleManager(null).SetNullReceiptIDInSale(sale.SaleId);
        }

        using (ReceiptManager receiptManager = new ReceiptManager(null))
        {
            try
            {
                receiptManager.DeleteReceipt(receiptManager.GetReceipt(receiptId, companyId));
            }
            catch (System.Data.SqlClient.SqlException)
            {
                result = false;
            }
        }
        return(result);
    }
        /// <summary>
        /// This method cancels a sale and return the products to inventory
        /// </summary>
        /// <param name="saleId"></param>
        /// <param name="matrixId"></param>
        public void CancelSale(int saleId, int matrixId, Int32 userId)
        {
            var inventoryManager = new InventoryManager(this);
            var receiptManager = new ReceiptManager(this);
            var financialManager = new FinancialManager(this);
            var parcelManager = new ParcelsManager(this);

            Sale sale = GetSale(matrixId, saleId);
            sale.IsCanceled = true;

            if (sale.ReceiptId != null)
            {
                Receipt receipt = receiptManager.GetReceipt((int)sale.ReceiptId, sale.CompanyId);
                sale.ReceiptId = null;
                receiptManager.DeleteReceipt(receipt);
                receipt.IsCanceled = true;
            }

            sale.InvoiceId = null;

            //
            // return the products to inventory
            //
            foreach (SaleItem saleItem in sale.SaleItems)
            {
                if (saleItem.ProductId != null)
                {
                    Inventory inventory = inventoryManager.GetProductInventory(saleItem.CompanyId,
                                                                               (int)saleItem.ProductId,
                                                                               (int)sale.DepositId);
                    if (inventory != null)
                        inventoryManager.StockDeposit(inventory, null, userId);
                }
            }

            //
            // Delete the invoice of sale
            //
            if (sale.InvoiceId.HasValue)
                financialManager.DeleteInvoice((int)sale.InvoiceId, sale.CompanyId);

            DbContext.SubmitChanges();
        }
    public static bool DeleteReceipt(int receiptId, int companyId)
    {

        bool result = true;

        var sale = new SaleManager(null).GetSaleByReceipt(companyId, receiptId);

        if (sale != null)
            new SaleManager(null).SetNullReceiptIDInSale(sale.SaleId);

        using (ReceiptManager receiptManager = new ReceiptManager(null))
        {
            try
            {
                receiptManager.DeleteReceipt(receiptManager.GetReceipt(receiptId, companyId));
            }
            catch (System.Data.SqlClient.SqlException)
            {
                result = false;
            }
        }
        return result;
    }