Exemplo n.º 1
0
        public bool AddStockTransfer(TblStockTransferMaster stockTransferMaster, List <TblStockTransferDetail> stockTransferDetails)
        {
            try
            {
                using ERPContext context = new ERPContext();
                using var dbTransaction  = context.Database.BeginTransaction();
                try
                {
                    var _stockTransferMaster = AddStockTransferMaster(context, stockTransferMaster);
                    foreach (var stockdetail in stockTransferDetails)
                    {
                        AddStockTransferDetail(context, stockdetail, _stockTransferMaster);
                        AddStockInformation(context, stockdetail, _stockTransferMaster, _stockTransferMaster.FromBranchCode, true);
                        AddStockInformation(context, stockdetail, _stockTransferMaster, _stockTransferMaster.ToBranchCode, false);
                    }

                    dbTransaction.Commit();
                    return(true);
                }
                catch (Exception e)
                {
                    dbTransaction.Rollback();
                    throw e;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemplo n.º 2
0
        private TblStockTransferMaster AddStockTransferMaster(ERPContext context, TblStockTransferMaster stockTransferMaster)
        {
            try
            {
                stockTransferMaster.FromBranchName = GetBranch(stockTransferMaster.FromBranchCode)?.BranchName;
                stockTransferMaster.ToBranchName   = GetBranch(stockTransferMaster.ToBranchCode)?.BranchName;
                context.TblStockTransferMaster.Add(stockTransferMaster);
                if (context.SaveChanges() > 0)
                {
                    return(stockTransferMaster);
                }

                return(null);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemplo n.º 3
0
        private TblStockInformation AddStockInformation(ERPContext context, TblStockTransferDetail stockTransferDetail, TblStockTransferMaster stockTransfertMaster, string branchCode, bool isFromBranch, decimal?voucherTypeID = 29)
        {
            try
            {
                TblStockInformation stockInformation = new TblStockInformation();
                try { stockInformation.BranchId = Convert.ToDecimal(branchCode ?? "0"); } catch { };
                stockInformation.BranchCode      = branchCode;
                stockInformation.UserId          = stockTransfertMaster.UserId;
                stockInformation.ShiftId         = stockTransfertMaster.ShiftId;
                stockInformation.TransactionDate = stockTransfertMaster.StockTransferDate;
                stockInformation.VoucherNo       = string.Empty;
                stockInformation.VoucherTypeId   = voucherTypeID;
                stockInformation.InvoiceNo       = stockTransfertMaster.StockTransferNo;
                stockInformation.ProductId       = stockTransferDetail.ProductId;
                stockInformation.ProductCode     = stockTransferDetail.ProductCode;
                stockInformation.Rate            = stockTransferDetail.Rate;
                if (isFromBranch)
                {
                    stockInformation.OutwardQty = stockTransferDetail.FQty > 0 ? stockTransferDetail.FQty : stockTransferDetail.Qty;
                }
                else
                {
                    stockInformation.InwardQty = stockTransferDetail.FQty > 0 ? stockTransferDetail.FQty : stockTransferDetail.Qty;
                }

                stockInformation.OutwardQty = stockInformation.OutwardQty ?? 0;
                stockInformation.InwardQty  = stockInformation.InwardQty ?? 0;

                context.TblStockInformation.Add(stockInformation);
                if (context.SaveChanges() > 0)
                {
                    return(stockInformation);
                }

                return(null);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemplo n.º 4
0
        private TblStockTransferDetail AddStockTransferDetail(ERPContext context, TblStockTransferDetail stockTransferDetail, TblStockTransferMaster stockTransferMaster)
        {
            try
            {
                stockTransferDetail.StockTransferDetailId    = null;
                stockTransferDetail.StockTransferMasterId    = stockTransferMaster.StockTransferMasterId;
                stockTransferDetail.StockTransferDetailsDate = stockTransferMaster.StockTransferDate;
                context.TblStockTransferDetail.Add(stockTransferDetail);
                if (context.SaveChanges() > 0)
                {
                    return(stockTransferDetail);
                }

                return(null);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }