Esempio n. 1
0
        public bool Update([FromBody] DistributorBill _oDistributorBill)
        {
            try
            {
                int output;
                using (var context = new DB001Core())
                {
                    var input = context.DistributorBills
                                .Where(s => s.DistributorBillID == _oDistributorBill.DistributorBillID)
                                .FirstOrDefault();

                    input.PaymentModeID   = _oDistributorBill.PaymentModeID;
                    input.PaymentStatusID = _oDistributorBill.PaymentStatusID;
                    input.ModifiedOn      = DateTime.Now;

                    if (_oDistributorBill.PaymentStatusID == 1 && input.PaymentDate == null)
                    {
                        input.PaymentDate = DateTime.Now;
                    }

                    output = context.SaveChanges();
                }
                return(Convert.ToBoolean(output));
            }
            catch (Exception ex)
            {
                throw;
            }
            finally
            {
                context = null;
            }
        }
        public void AddDistributorBill(Invoice _oInvoice)
        {
            var order = context.Orders
                        .Include(i => i.ClientMaster.Distributor)
                        .Where(w => w.OrderID == _oInvoice.OrderID)
                        .FirstOrDefault();

            DistributorBill distributorBill = new DistributorBill();

            if (order != null && order.ClientMaster.DistributorID != null)
            {
                CommonLogic clsCommonLogic = new CommonLogic();
                distributorBill.BillNumber    = clsCommonLogic.GenerateDistributorBillNumber();
                distributorBill.DistributorID = order.ClientMaster.Distributor.DistributorID;
                distributorBill.ClientID      = order.ClientID;
                distributorBill.ProductID     = order.ProductID;
                distributorBill.OrderID       = order.OrderID;
                distributorBill.InvoiceID     = _oInvoice.InvoiceID;

                decimal productAmount = context.InvoiceHeaders
                                        .Where(w => w.ProductID == order.ProductID && w.IsSoftware == true)
                                        .FirstOrDefault().Amount;

                decimal commision = context.ProductMasters
                                    .Where(w => w.ProductID == _oInvoice.ProductID)
                                    .FirstOrDefault().Commision;

                decimal totalAmount = productAmount * (commision / 100);

                distributorBill.Commision       = commision;
                distributorBill.ProductAmount   = _oInvoice.TotalAmount;
                distributorBill.PaybleAmount    = totalAmount;
                distributorBill.PaymentStatusID = 2;

                distributorBill.CreatedOn  = DateTime.Now;
                distributorBill.ModifiedOn = DateTime.Now;
                distributorBill.IsDeleted  = false;

                using (var context = new DB001Core())
                {
                    context.DistributorBills.Add(distributorBill);
                    int output = context.SaveChanges();
                }
            }
        }