Пример #1
0
        public async Task <IActionResult> Create(Sale model)
        {
            var resultExist = _context.Sales.Where(x => x.OrderRefNo == model.OrderRefNo).FirstOrDefault();

            if (resultExist == null)
            {
                Sale sale = new Sale
                {
                    OrderNumber     = "S-" + DateTime.UtcNow.Millisecond,
                    OrderRefNo      = model.OrderRefNo,
                    SalesDate       = model.SalesDate,
                    CustomerId      = model.CustomerId,
                    TaxPercent      = model.TaxPercent,
                    TaxAmount       = model.TaxAmount,
                    VatPercent      = model.VatPercent,
                    VatAmount       = model.VatAmount,
                    DiscountPercent = model.DiscountPercent,
                    DiscountAmount  = model.DiscountAmount,
                    PaymentType     = model.PaymentType,
                    PaymentAmount   = model.PaymentAmount,
                    DueAmount       = model.DueAmount,
                    TotalAmount     = model.TotalAmount
                };
                _context.Sales.Add(sale);
                _context.SaveChanges();
                foreach (var item in model.SalesDetails)
                {
                    SalesDetail salesDetail = new SalesDetail
                    {
                        SaleId          = sale.Id,
                        ProductId       = item.ProductId,
                        UnitPrice       = item.UnitPrice,
                        UOM             = item.UOM,
                        Quantity        = item.Quantity,
                        IndividualTotal = item.IndividualTotal
                    };
                    _context.SalesDetails.Add(salesDetail);
                    _context.SaveChanges();

                    _stockService.StockMaintain(DateTime.Now.Date, item);
                    _stockService.AddStockDetail("Sales", item);
                }
                return(RedirectToAction(nameof(Index)));
            }

            return(View());
        }
Пример #2
0
        public IActionResult Create(Purchase model)
        {
            var resultExist = _context.Purchases.Where(x => x.OrderRefNo == model.OrderRefNo).FirstOrDefault();

            if (resultExist == null)
            {
                Purchase purchase = new Purchase
                {
                    OrderNo         = "P-" + DateTime.UtcNow.Millisecond,
                    OrderRefNo      = model.OrderRefNo,
                    PurchaseDate    = model.PurchaseDate,
                    SupplierId      = model.SupplierId,
                    TaxPercent      = model.TaxPercent,
                    TaxAmount       = model.TaxAmount,
                    VatPercent      = model.VatPercent,
                    VatAmount       = model.VatAmount,
                    DiscountPercent = model.DiscountPercent,
                    DiscountAmount  = model.DiscountAmount,
                    PaymentType     = model.PaymentType,
                    PaymentAmount   = model.PaymentAmount,
                    DueAmount       = model.DueAmount,
                    TotalAmount     = model.TotalAmount
                };
                _context.Purchases.Add(purchase);
                _context.SaveChanges();
                foreach (var item in model.PurchaseDetails)
                {
                    PurchaseDetail purchaseDetail = new PurchaseDetail
                    {
                        PurchaseId      = purchase.Id,
                        ProductId       = item.ProductId,
                        UnitPrice       = item.UnitPrice,
                        UOM             = item.UOM,
                        Quantity        = item.Quantity,
                        IndividualTotal = item.IndividualTotal
                    };
                    _context.PurchaseDetails.Add(purchaseDetail);
                    _context.SaveChanges();

                    _stockService.StockMaintain(DateTime.Now.Date, item);
                    _stockService.AddStockDetail("Purchase", item);
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View());
        }