Example #1
0
        private void AdjustCreditNotes(string AdjustedNo)
        {
            OptionsEntity             oData = new OptionsEntity();
            ISalesOrderListRepository purchaseRepository = new SalesOrderListRepository();

            oData = purchaseRepository.GetOptionSettings();

            IsNew = false;
            AdjustCreditNoteForm pqf = psRepository.AdjustCreditNoteDetails(AdjustedNo);

            pqf.AdjustCreditNote.Amount      = Math.Abs(decimal.Parse(pqf.AdjustCreditNote.Amount.ToString()));
            pqf.AdjustCreditNote.AmountStr   = Math.Abs(decimal.Parse(pqf.AdjustCreditNote.AmountStr)).ToString();
            pqf.AdjustCreditNote.MustCompare = true;
            if (pqf.AdjustCreditNote.AdjustCreditNoteDate == null)
            {
                this.AdjustCreditNoteDateStr = "";
            }
            else
            {
                DateTime Dateinstr = (DateTime)pqf.AdjustCreditNote.AdjustCreditNoteDate;
                this.AdjustCreditNoteDateStr = Dateinstr.ToString(oData.DateFormat);
            }

            GetModelData(pqf);
        }
Example #2
0
 private void GetPSData(object param)
 {
     if (SelectedCustomerID != null && SelectedCustomerID != 0)
     {
         AdjustCreditNoteForm pqf = psRepository.GetNewPS(SelectedCustomerID);
         GetModelData(pqf);
     }
 }
        public int SaveAdjustCreditNote(AdjustCreditNoteForm psForm)
        {
            int autoId = 0;

            try
            {
                using (SDNSalesDBEntities entities = new SDNSalesDBEntities())
                {
                    foreach (var item in psForm.AdjustCreditNoteDetails)
                    {
                        CashAndBankTransaction obj = new CashAndBankTransaction();
                        obj.Cus_Sup_Id = psForm.AdjustCreditNote.CustomerID;
                        obj.Acc_Id     = psForm.AdjustCreditNote.AccountId;
                        obj.Amount     = psForm.AdjustCreditNote.Amount;
                        //obj.Cash_Cheque_No = psForm.AdjustCreditNote.CashChequeNo;
                        obj.Cash_Cheque_Date = psForm.AdjustCreditNote.Date;
                        obj.Remarks          = psForm.AdjustCreditNote.Remarks;
                        obj.Type             = "S";
                        //obj.Is_Cheque = psForm.AdjustCreditNote.IsCheque;

                        //saving details entity
                        obj.SO_CN_PO_DN_No   = item.SalesNo;
                        obj.SO_CN_PO_DN_Date = item.SalesDate;
                        obj.SO_CN_PO_DN_Amt  = item.SalesAmount;
                        obj.Amt_Due          = item.AmountDue;
                        obj.Amt_Refunded     = item.AmountAdjusted;
                        obj.Discount         = item.Discount;

                        obj.UpdatedBy   = 0;
                        obj.UpdatedDate = DateTime.Now.Date;

                        entities.CashAndBankTransactions.Add(obj);
                        entities.SaveChanges();

                        if (item.AmountDue == 0 && item.AmountAdjusted == item.SalesAmount)
                        {
                            SalesInvoice invoice = entities.SalesInvoices.Where(e => e.SI_No == item.SalesNo).SingleOrDefault();
                            SalesOrder   order   = entities.SalesOrders.Where(e => e.SO_No == item.SalesNo).SingleOrDefault();
                            if (invoice != null)
                            {
                                invoice.SI_Status = Convert.ToByte(SI_Status.Paid);
                                entities.SaveChanges();
                            }
                            else if (order != null)
                            {
                            }
                        }

                        //}
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(autoId);
        }
Example #4
0
        private void GetAdjustCreditNoteDetails(string CreditNoteNo)
        {
            IsNew = false;
            AdjustCreditNoteForm pqf = psRepository.GetAdjustCreditNoteDetails(CreditNoteNo);

            pqf.AdjustCreditNote.Amount    = Math.Abs(decimal.Parse(pqf.AdjustCreditNote.Amount.ToString()));
            pqf.AdjustCreditNote.AmountStr = Math.Abs(decimal.Parse(pqf.AdjustCreditNote.AmountStr)).ToString();
            GetModelData(pqf);
        }
Example #5
0
        private void GetModelData(AdjustCreditNoteForm pqf)
        {
            if (IsNew == false)
            {
                this.ID = pqf.AdjustCreditNote.ID;
                this.SelectedCustomerID = pqf.AdjustCreditNote.CustomerID;
                this.CreditNoteNo       = pqf.AdjustCreditNote.CreditNoteNo;
                this.SelectedAccountID  = pqf.AdjustCreditNote.AccountId;
                this.Date      = pqf.AdjustCreditNote.Date;
                this.AmountStr = pqf.AdjustCreditNote.AmountStr;
                this.IsCheque  = pqf.AdjustCreditNote.IsCheque;
                if (IsCheque == true)
                {
                    IsChequeTrue = true;
                }
                else
                {
                    IsChequeFalse = true;
                }
                //this.CashChequeNo = pqf.AdjustCreditNote.CashChequeNo;
                this.Remarks = pqf.AdjustCreditNote.Remarks;
                if (this.ListCustomers != null)
                {
                    foreach (var item in this.ListCustomers)
                    {
                        if (item.CustomerID == this.SelectedCustomerID)
                        {
                            this.SelectedCustomerName = item.Name;
                        }
                    }
                }
            }

            var result = pqf.AdjustCreditNoteDetails.OrderByDescending(e => e.UpdatedDate).GroupBy(e => e.SalesNo).Select(e => e.First()).ToList();

            this.PQDetailsEntity = new ObservableCollection <CollectSalesAmountDataGridViewModel>();
            foreach (var item in result)
            {
                CollectSalesAmountDataGridViewModel pqEntity = new CollectSalesAmountDataGridViewModel();
                pqEntity.SalesNo           = item.SalesNo;
                pqEntity.SalesDate         = item.SalesDate;
                pqEntity.SalesDateStr      = changedateformat(item.SalesDate);
                pqEntity.SalesAmountStr    = Convert.ToString(item.SalesAmount);
                pqEntity.SalesAmount       = item.SalesAmount;
                pqEntity.PaymentDueDate    = item.PaymentDueDate;
                pqEntity.PaymentDueDateStr = changedateformat(item.PaymentDueDate);
                pqEntity.AmountDueStr      = Convert.ToString(item.AmountDue);
                //pqEntity.AmountDue = item.AmountDue;
                //pqEntity.AmountAdjusted = item.AmountAdjusted;
                //pqEntity.AmountAdjustedStr = Convert.ToString(item.AmountAdjusted);
                //pqEntity.Discount = item.Discount;

                PQDetailsEntity.Add(pqEntity);
                OnPropertyChanged("PQDetailsEntity");
            }
            PQDetailsEntityLst = PQDetailsEntity;
        }
Example #6
0
        public AdjustCreditNoteForm GetDataIntoModel()
        {
            AdjustCreditNoteForm PQForm = new AdjustCreditNoteForm();

            PQForm.AdjustCreditNoteDetails = new List <AdjustCreditNoteDetailsEntity>();
            AdjustCreditNoteEntity model = new AdjustCreditNoteEntity();

            //  this.ID = pqf.AdjustCreditNote.ID;
            model.CustomerID = this.SelectedCustomerID;
            model.AccountId  = this.SelectedAccountID;
            model.Date       = this.Date;
            model.AmountStr  = this.AmountStr;
            model.Amount     = Convert.ToDecimal(this.AmountStr);
            model.IsCheque   = this.IsCheque;
            //model.CashChequeNo = this.CashChequeNo;
            model.Remarks      = this.Remarks;
            model.CreditNoteNo = this.CreditNoteNo;
            if (this.IsChequeTrue == true)
            {
                model.IsCheque = true;
            }
            else
            {
                model.IsCheque = false;
            }

            PQForm.AdjustCreditNote = model;

            foreach (var item in PQDetailsEntity)
            {
                AdjustCreditNoteDetailsEntity pqEntity = new AdjustCreditNoteDetailsEntity();

                pqEntity.SalesNo     = item.SalesNo;
                pqEntity.SalesDate   = item.SalesDate;
                pqEntity.SalesAmount = Convert.ToDecimal(item.SalesAmountStr);
                //item.SalesAmount=pqEntity.SalesAmount;
                //pqEntity.PaymentDueDate = Convert.ToDateTime(item.PaymentDueDateStr);
                pqEntity.PaymentDueDate = DateTime.ParseExact(item.PaymentDueDateStr, "dd'/'MM'/'yyyy", CultureInfo.InvariantCulture);
                //pqEntity.AmountDueStr = Convert.ToString(item.AmountDue);
                pqEntity.AmountDue = Convert.ToDecimal(item.AmountDueStr);
                // pqEntity.AmountAdjustedStr = Convert.ToString(item.AmountAdjusted);
                pqEntity.AmountAdjusted = Convert.ToDecimal(item.AmountAdjustedStr);

                pqEntity.Discount            = Convert.ToDecimal(item.DiscountStr);
                pqEntity.CheckAmountAdjusted = item.CheckAmountAdjusted;

                PQForm.AdjustCreditNoteDetails.Add(pqEntity);
            }
            return(PQForm);
        }
Example #7
0
        void OnSavePS(object param)
        {
            MessageBoxResult result = System.Windows.MessageBox.Show("Do you want to save changes?", "Save Confirmation", MessageBoxButton.YesNo);

            if (result == MessageBoxResult.Yes)
            {
                Mouse.OverrideCursor = Cursors.Wait;
                string msg = ValidateAdjustCreditNote();
                AdjustCreditNoteForm PSForm = GetDataIntoModel();

                if (msg != string.Empty)
                {
                    PSErrors             = msg;
                    Mouse.OverrideCursor = null;
                    return;
                }

                PSErrors = string.Empty;

                if (PSForm != null)
                {
                    int type = Convert.ToInt32(CashBankTransactionType.AdjustCreditNote);
                    if (IsNew == true)
                    {
                        int i = psRepository.SaveAdjustCreditNote(PSForm, type);
                    }
                    else
                    {
                        int i = psRepository.UpdateAdjustCreditNote(PSForm, type);
                        if (i != null || i != 0)
                        {
                            this.EnableSaveButton = false;
                        }
                        else
                        {
                            this.EnableSaveButton = true;
                        }
                    }

                    Mouse.OverrideCursor = null;
                }
            }
        }
        public AdjustCreditNoteForm GetNewPS(int?CustomerID)
        {
            AdjustCreditNoteForm pqf = new AdjustCreditNoteForm();

            try
            {
                using (SDNSalesDBEntities entities = new SDNSalesDBEntities())
                {
                    var pqd = entities.Database.SqlQuery <AdjustCreditNoteDetailsEntity>("PRC_GetSalesDataForAdjustCreditNotes @CustomerID={0}", CustomerID).ToList();

                    if (pqd != null)
                    {
                        pqf.AdjustCreditNoteDetails = pqd;
                    }

                    return(pqf);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public int UpdateAdjustCreditNote(AdjustCreditNoteForm psForm)
        {
            try
            {
                using (SDNSalesDBEntities entities = new SDNSalesDBEntities())
                {
                    foreach (var item in psForm.AdjustCreditNoteDetails)
                    {
                        if (item.CheckAmountAdjusted == true)
                        {
                            CashAndBankTransaction obj = entities.CashAndBankTransactions.Where(e => e.SO_CN_PO_DN_No == item.SalesNo).SingleOrDefault();
                            if (obj != null)
                            {
                                obj.Acc_Id = psForm.AdjustCreditNote.AccountId;
                                obj.Amount = psForm.AdjustCreditNote.Amount;
                                //obj.Cash_Cheque_No = psForm.AdjustCreditNote.CashChequeNo;
                                obj.Cash_Cheque_Date = psForm.AdjustCreditNote.Date;
                                obj.Remarks          = psForm.AdjustCreditNote.Remarks;
                                obj.Is_Cheque        = psForm.AdjustCreditNote.IsCheque;
                                //saving details entity
                                obj.SO_CN_PO_DN_No   = item.SalesNo;
                                obj.SO_CN_PO_DN_Date = item.SalesDate;
                                obj.SO_CN_PO_DN_Amt  = item.SalesAmount;
                                obj.Amt_Due          = item.AmountDue;
                                obj.Amt_Refunded     = item.AmountAdjusted;
                                obj.Discount         = item.Discount;
                                obj.DN_CN_No         = psForm.AdjustCreditNote.CreditNoteNo;

                                obj.UpdatedBy   = 0;
                                obj.UpdatedDate = DateTime.Now.Date;
                                entities.SaveChanges();

                                if (item.AmountDue == 0 && item.AmountAdjusted == item.SalesAmount)
                                {
                                    SalesInvoice invoice = entities.SalesInvoices.Where(e => e.SI_No == item.SalesNo).SingleOrDefault();
                                    //SalesOrder order = entities.SalesOrders.Where(e => e.PO_No == item.SalesNo).SingleOrDefault();
                                    if (invoice != null)
                                    {
                                        invoice.SI_Status = Convert.ToByte(SI_Status.Paid);
                                        entities.SaveChanges();
                                    }
                                    //else if (order != null)
                                    //{
                                    //}
                                    CreditNote debit = entities.CreditNotes.Where(e => e.CN_No == psForm.AdjustCreditNote.CreditNoteNo).SingleOrDefault();
                                    if (debit != null)
                                    {
                                        debit.CN_Status = Convert.ToByte(CN_Status.Adjusted);
                                        entities.SaveChanges();
                                    }
                                }
                            }
                            else
                            {
                                CashAndBankTransaction cashbankobj = new CashAndBankTransaction()
                                {
                                    Acc_Id           = psForm.AdjustCreditNote.AccountId,
                                    Amount           = psForm.AdjustCreditNote.Amount,
                                    Cash_Cheque_Date = psForm.AdjustCreditNote.Date,
                                    Remarks          = psForm.AdjustCreditNote.Remarks,
                                    Is_Cheque        = psForm.AdjustCreditNote.IsCheque,
                                    SO_CN_PO_DN_No   = item.SalesNo,
                                    SO_CN_PO_DN_Date = item.SalesDate,
                                    SO_CN_PO_DN_Amt  = item.SalesAmount,
                                    Amt_Due          = item.AmountDue,
                                    Amt_Refunded     = item.AmountAdjusted,
                                    Discount         = item.Discount,
                                    UpdatedBy        = 0,
                                    UpdatedDate      = DateTime.Now.Date,
                                    Cus_Sup_Id       = psForm.AdjustCreditNote.CustomerID,
                                    DN_CN_No         = psForm.AdjustCreditNote.CreditNoteNo,
                                    Type             = "S"
                                };
                                entities.CashAndBankTransactions.Add(cashbankobj);
                                entities.SaveChanges();
                                if (item.AmountDue == 0 && item.AmountAdjusted == item.SalesAmount)
                                {
                                    SalesInvoice invoice = entities.SalesInvoices.Where(e => e.SI_No == item.SalesNo).SingleOrDefault();
                                    //SalesOrder order = entities.SalesOrders.Where(e => e.PO_No == item.SalesNo).SingleOrDefault();
                                    if (invoice != null)
                                    {
                                        invoice.SI_Status = Convert.ToByte(SI_Status.Paid);
                                        entities.SaveChanges();
                                    }
                                    //else if (order != null)
                                    //{
                                    //}
                                }
                                CreditNote debit = entities.CreditNotes.Where(e => e.CN_No == psForm.AdjustCreditNote.CreditNoteNo).SingleOrDefault();
                                if (debit != null)
                                {
                                    debit.CN_Status = Convert.ToByte(CN_Status.Adjusted);
                                    entities.SaveChanges();
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(psForm.AdjustCreditNote.ID);
        }
Example #10
0
        public int UpdateAdjustCreditNote(AdjustCreditNoteForm psForm, int Type)
        {
            IAdjustCreditNoteDAl psDAL = new AdjustCreditNoteDAl();

            return(psDAL.UpdateAdjustCreditNote(psForm, Type));
        }
Example #11
0
        public int UpdateAdjustCreditNote(AdjustCreditNoteForm psForm, int Type)
        {
            IAdjustCreditNoteBL psBL = new AdjustCreditNoteBL();

            return(psBL.UpdateAdjustCreditNote(psForm, Type));
        }
        public AdjustCreditNoteForm AdjustCreditNoteDetails(string cashChequeNo)
        {
            AdjustCreditNoteForm pqf = new AdjustCreditNoteForm();

            try
            {
                using (SASEntitiesEDM entities = new SASEntitiesEDM())
                {
                    var pq = (from pqs in entities.AdjustedCreditNotes
                              join pi in entities.AdjustedCreditNoteDetails on pqs.ID equals pi.ACN_ID
                              where pqs.AdjustCreditNoteNumber == cashChequeNo
                              select new AdjustCreditNoteEntity
                    {
                        ID = pqs.ID,
                        CustomerID = pqs.CustomerID,
                        //Amount =  pi.SI_Tot_aft_Tax,
                        Amount = pqs.CreditNoteAmount,
                        Date = pqs.CreditNoteDate,
                        CreditNoteNo = pqs.CreditNoteNumber,
                        AdjustCreditNoteNumber = pqs.AdjustCreditNoteNumber,
                        AdjustCreditNoteDate = pqs.AdjustCreditNoteDate
                                               //CashChequeNo = pqs.Cash_Cheque_No,
                    }).FirstOrDefault();
                    //var temp = pq.CreditNoteNo;
                    //var x = temp.Substring(2);
                    //var y = "AC" + x;
                    //pq.CreditNoteNo = y;

                    if (pq != null)
                    {
                        //pq.AdjustCreditNoteDateStr = pq.AdjustCreditNoteDate.ToString();
                        //pq.AdjustCreditNoteDate = Convert.ToDateTime(pq.AdjustCreditNoteDateStr);
                        pq.AmountStr         = Convert.ToString(pq.Amount);
                        pqf.AdjustCreditNote = pq;
                    }

                    var pqd = (from s in entities.AdjustedCreditNotes
                               join t in entities.AdjustedCreditNoteDetails on s.ID equals t.ACN_ID
                               where s.AdjustCreditNoteNumber == cashChequeNo
                               select new AdjustCreditNoteDetailsEntity
                    {
                        SalesNo = t.SalesInvoiceNo,
                        SalesDate = t.SalesInvoiceDate,
                        PaymentDueDate = t.PaymentDueDate,
                        SalesAmount = t.SalesInvoiceAmount,
                        AmountDue = t.AmountDue,
                        AmountAdjusted = t.AmountAdjusted
                    }).ToList();

                    if (pqd != null)
                    {
                        pqf.AdjustCreditNoteDetails = pqd;
                    }
                }


                return(pqf);
            }

            catch (Exception e)
            {
                throw e;
            }
        }
        public int UpdateAdjustCreditNote(AdjustCreditNoteForm psForm, int Type)
        {
            int    autoId     = 0;
            string AdjustedNo = string.Empty;

            try
            {
                using (SASEntitiesEDM entities = new SASEntitiesEDM())
                {
                    //adjusted credit note account entity
                    //Adjusted Account entity db entry
                    AdjustedCreditNote Acn = new AdjustedCreditNote();
                    Acn.CustomerID             = psForm.AdjustCreditNote.CustomerID;
                    Acn.CreditNoteNumber       = psForm.AdjustCreditNote.CreditNoteNo;
                    Acn.CreditNoteDate         = psForm.AdjustCreditNote.Date;
                    Acn.AdjustCreditNoteNumber = psForm.AdjustCreditNote.AdjustCreditNoteNumber;
                    Acn.AdjustCreditNoteDate   = psForm.AdjustCreditNote.AdjustCreditNoteDate;
                    Acn.CreditNoteAmount       = psForm.AdjustCreditNote.Amount;
                    Acn.CreatedBy = 0;
                    if (entities.AdjustedCreditNotes.AsNoTracking().FirstOrDefault(x => x.ID == psForm.AdjustCreditNote.ID) == null)
                    {
                        //obj.CreatedBy = invoiceData.SIModel.CreatedBy;
                        Acn.CreatedDate = DateTime.Now;
                        entities.AdjustedCreditNotes.Add(Acn);
                        entities.SaveChanges();
                        autoId     = Acn.ID;
                        AdjustedNo = Acn.AdjustCreditNoteNumber;
                    }
                    else
                    {
                        // obj.ModifiedBy = invoiceData.SIModel.ModifiedBy;
                        Acn.ModifiedDate          = DateTime.Now;
                        entities.Entry(Acn).State = EntityState.Modified;
                        autoId = entities.SaveChanges();
                    }
                    foreach (var item in psForm.AdjustCreditNoteDetails)
                    {
                        if (item.CheckAmountAdjusted == true)
                        {
                            AdjustedCreditNoteDetail ACN = new AdjustedCreditNoteDetail();
                            if (autoId > 0)
                            {
                                ACN.ACN_ID = autoId;
                                //ACN.CreditNoteNo = psForm.AdjustCreditNote.CreditNoteNo;
                                //ACN.AdjustCreditNoteNo = psForm.AdjustCreditNote.AdjustCreditNoteNumber;
                                ACN.SalesInvoiceNo     = item.SalesNo;
                                ACN.SalesInvoiceDate   = item.SalesDate;
                                ACN.PaymentDueDate     = item.PaymentDueDate;
                                ACN.SalesInvoiceAmount = item.SalesAmount;
                                ACN.AmountDue          = item.AmountDue;
                                ACN.AmountAdjusted     = item.AmountAdjusted;
                                ACN.CreatedBy          = 0;
                                if (entities.AdjustedCreditNoteDetails.AsNoTracking().FirstOrDefault(x => x.ID == psForm.AdjustCreditNote.ID) == null)
                                {
                                    entities.AdjustedCreditNoteDetails.Add(ACN);
                                    entities.SaveChanges();
                                }
                                else
                                {
                                    entities.Entry(ACN).State = EntityState.Modified;
                                    entities.SaveChanges();
                                }
                            }
                        }
                    }
                    //adjusted credit note entity
                    foreach (var item in psForm.AdjustCreditNoteDetails)
                    {
                        if (item.CheckAmountAdjusted == true)
                        {
                            CashAndBankTransaction obj = entities.CashAndBankTransactions.Where(e => e.SO_CN_PO_DN_No == item.SalesNo).OrderByDescending(x => x.ID).ToList().FirstOrDefault();
                            if (obj != null)
                            {
                                obj.Acc_Id = psForm.AdjustCreditNote.AccountId;
                                obj.Amount = psForm.AdjustCreditNote.Amount;
                                //obj.Cash_Cheque_No = psForm.AdjustCreditNote.CashChequeNo;
                                obj.Cash_Cheque_Date = psForm.AdjustCreditNote.Date;
                                obj.Remarks          = psForm.AdjustCreditNote.Remarks;
                                obj.Is_Cheque        = psForm.AdjustCreditNote.IsCheque;
                                //saving details entity
                                obj.SO_CN_PO_DN_No   = item.SalesNo;
                                obj.SO_CN_PO_DN_Date = item.SalesDate;
                                obj.SO_CN_PO_DN_Amt  = item.SalesAmount;
                                obj.Amt_Due          = item.AmountDue - item.AmountAdjusted;
                                obj.Amt_Refunded     = item.AmountAdjusted;
                                obj.Discount         = item.Discount;
                                obj.DN_CN_No         = psForm.AdjustCreditNote.CreditNoteNo;

                                obj.UpdatedBy   = 0;
                                obj.UpdatedDate = DateTime.Now.Date;
                                obj.AD_AC_NO    = AdjustedNo;
                                entities.SaveChanges();

                                if (item.AmountAdjusted == item.SalesAmount)
                                {
                                    SalesInvoice invoice = entities.SalesInvoices.Where(e => e.SI_No == item.SalesNo).SingleOrDefault();
                                    //SalesOrder order = entities.SalesOrders.Where(e => e.PO_No == item.SalesNo).SingleOrDefault();
                                    if (invoice != null)
                                    {
                                        invoice.SI_Status = Convert.ToByte(SI_Status.Paid);
                                        entities.SaveChanges();
                                    }
                                    //else if (order != null)
                                    //{
                                    //}
                                }
                                CreditNote debit = entities.CreditNotes.Where(e => e.CN_No == psForm.AdjustCreditNote.CreditNoteNo).SingleOrDefault();
                                if (debit != null)
                                {
                                    debit.CN_Status = Convert.ToByte(CN_Status.Adjusted);
                                    entities.SaveChanges();
                                }
                            }
                            else
                            {
                                CashAndBankTransaction cashbankobj = new CashAndBankTransaction()
                                {
                                    Acc_Id           = psForm.AdjustCreditNote.AccountId,
                                    Amount           = psForm.AdjustCreditNote.Amount,
                                    Cash_Cheque_Date = psForm.AdjustCreditNote.Date,
                                    Remarks          = psForm.AdjustCreditNote.Remarks,
                                    Is_Cheque        = psForm.AdjustCreditNote.IsCheque,
                                    SO_CN_PO_DN_No   = item.SalesNo,
                                    SO_CN_PO_DN_Date = item.SalesDate,
                                    SO_CN_PO_DN_Amt  = item.SalesAmount,
                                    Amt_Due          = item.AmountDue - item.AmountAdjusted,
                                    Amt_Refunded     = item.AmountAdjusted,
                                    Discount         = item.Discount,
                                    UpdatedBy        = 0,
                                    UpdatedDate      = DateTime.Now.Date,
                                    Cus_Sup_Id       = psForm.AdjustCreditNote.CustomerID,
                                    DN_CN_No         = psForm.AdjustCreditNote.CreditNoteNo,
                                    Type             = Type.ToString(),
                                    AD_AC_NO         = AdjustedNo
                                };
                                entities.CashAndBankTransactions.Add(cashbankobj);
                                entities.SaveChanges();
                                if (item.AmountAdjusted == item.SalesAmount)
                                {
                                    SalesInvoice invoice = entities.SalesInvoices.Where(e => e.SI_No == item.SalesNo).SingleOrDefault();
                                    //SalesOrder order = entities.SalesOrders.Where(e => e.PO_No == item.SalesNo).SingleOrDefault();
                                    if (invoice != null)
                                    {
                                        invoice.SI_Status = Convert.ToByte(SI_Status.Paid);
                                        entities.SaveChanges();
                                    }
                                }
                                CreditNote debit = entities.CreditNotes.Where(e => e.CN_No == psForm.AdjustCreditNote.CreditNoteNo).SingleOrDefault();
                                if (debit != null)
                                {
                                    debit.CN_Status = Convert.ToByte(CN_Status.Adjusted);
                                    entities.SaveChanges();
                                }


                                //end adjusted Account entity db entry
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(psForm.AdjustCreditNote.ID);
        }
        public int SaveAdjustCreditNote(AdjustCreditNoteForm psForm)
        {
            IAdjustCreditNoteDAl psDAL = new AdjustCreditNoteDAl();

            return(psDAL.SaveAdjustCreditNote(psForm));
        }
Example #15
0
        private void GetModelData(AdjustCreditNoteForm pqf)
        {
            if (IsNew == false)
            {
                this.ID = pqf.AdjustCreditNote.ID;
                this.SelectedCustomerID = pqf.AdjustCreditNote.CustomerID;
                this.CreditNoteNo       = pqf.AdjustCreditNote.CreditNoteNo;
                this.SelectedAccountID  = pqf.AdjustCreditNote.AccountId;
                this.Date      = pqf.AdjustCreditNote.Date;
                this.AmountStr = pqf.AdjustCreditNote.AmountStr;
                this.IsCheque  = pqf.AdjustCreditNote.IsCheque;
                this.AdjustCreditNoteNumber = pqf.AdjustCreditNote.AdjustCreditNoteNumber;

                if (IsCheque == true)
                {
                    IsChequeTrue = true;
                }
                else
                {
                    IsChequeFalse = true;
                }
                //this.CashChequeNo = pqf.AdjustCreditNote.CashChequeNo;
                this.Remarks = pqf.AdjustCreditNote.Remarks;
                if (this.ListCustomers != null)
                {
                    foreach (var item in this.ListCustomers)
                    {
                        if (item.CustomerID == this.SelectedCustomerID)
                        {
                            this.SelectedCustomerName = item.Name;
                        }
                    }
                }
            }

            var                       result             = pqf.AdjustCreditNoteDetails.OrderByDescending(e => e.UpdatedDate).GroupBy(e => e.SalesNo).Select(e => e.First()).ToList();
            OptionsEntity             oData              = new OptionsEntity();
            ISalesOrderListRepository purchaseRepository = new SalesOrderListRepository();

            oData = purchaseRepository.GetOptionSettings();
            this.PQDetailsEntity = new ObservableCollection <CollectSalesAmountDataGridViewModel>();
            foreach (var item in result)
            {
                CollectSalesAmountDataGridViewModel pqEntity = new CollectSalesAmountDataGridViewModel();
                pqEntity.SalesNo   = item.SalesNo;
                pqEntity.SalesDate = item.SalesDate;
                DateTime Dateinstr = (DateTime)item.SalesDate;
                pqEntity.SalesDateStr   = Dateinstr.ToString(oData.DateFormat);
                pqEntity.SalesAmountStr = Convert.ToString(item.SalesAmount);
                pqEntity.SalesAmount    = item.SalesAmount;
                DateTime Dateinstr1 = (DateTime)item.PaymentDueDate;
                pqEntity.PaymentDueDate    = item.PaymentDueDate;
                pqEntity.PaymentDueDateStr = Dateinstr.ToString(oData.DateFormat);
                pqEntity.AmountDueStr      = Convert.ToString(item.AmountDue);
                //pqEntity.AmountDue = item.AmountDue;
                pqEntity.AmountAdjusted    = item.AmountAdjusted;
                pqEntity.AmountAdjustedStr = Convert.ToString(item.AmountAdjusted);
                //pqEntity.Discount = item.Discount;
                PQDetailsEntity.Add(pqEntity);
                TotalInvoiceAmount = Convert.ToString(PQDetailsEntity.Sum(e => e.SalesAmount));
                TotalAmountPaid    = Convert.ToString(PQDetailsEntity.Sum(e => e.AmountAdjusted));
                OnPropertyChanged("PQDetailsEntity");
            }
            PQDetailsEntityLst = PQDetailsEntity;
        }
Example #16
0
        public AdjustCreditNoteForm GetDataIntoModel()
        {
            OptionsEntity             oData = new OptionsEntity();
            ISalesOrderListRepository purchaseRepository = new SalesOrderListRepository();

            oData = purchaseRepository.GetOptionSettings();
            AdjustCreditNoteForm PQForm = new AdjustCreditNoteForm();

            PQForm.AdjustCreditNoteDetails = new List <AdjustCreditNoteDetailsEntity>();
            AdjustCreditNoteEntity model = new AdjustCreditNoteEntity();

            //  this.ID = pqf.AdjustCreditNote.ID;
            model.CustomerID = this.SelectedCustomerID;
            model.AccountId  = this.SelectedAccountID;
            model.Date       = this.Date;
            model.AmountStr  = this.AmountStr;
            model.Amount     = Convert.ToDecimal(this.AmountStr);
            model.IsCheque   = this.IsCheque;
            //model.CashChequeNo = this.CashChequeNo;
            model.Remarks      = this.Remarks;
            model.CreditNoteNo = this.CreditNoteNo;
            //entity of adjust credit note
            model.AdjustCreditNoteNumber = this.AdjustCreditNoteNumber;
            model.AdjustCreditNoteDate   = DateTime.ParseExact(this.AdjustCreditNoteDateStr, oData.DateFormat, null);
            //end
            if (this.IsChequeTrue == true)
            {
                model.IsCheque = true;
            }
            else
            {
                model.IsCheque = false;
            }

            PQForm.AdjustCreditNote = model;

            foreach (var item in PQDetailsEntity.Where(e => !(string.IsNullOrEmpty(e.AmountAdjustedStr))))
            {
                AdjustCreditNoteDetailsEntity pqEntity = new AdjustCreditNoteDetailsEntity();

                pqEntity.SalesNo     = item.SalesNo;
                pqEntity.SalesDate   = item.SalesDate;
                pqEntity.SalesAmount = Convert.ToDecimal(item.SalesAmountStr);
                //item.SalesAmount=pqEntity.SalesAmount;
                //pqEntity.PaymentDueDate = Convert.ToDateTime(item.PaymentDueDateStr);

                //pqEntity.PaymentDueDate = DateTime.ParseExact(item.PaymentDueDateStr, "dd'/'MM'/'yyyy", CultureInfo.InvariantCulture);

                pqEntity.PaymentDueDate = DateTime.ParseExact(item.PaymentDueDateStr, "dd'/'MM'/'yy", CultureInfo.InvariantCulture);

                //pqEntity.AmountDueStr = Convert.ToString(item.AmountDue);
                pqEntity.AmountDue = Convert.ToDecimal(item.AmountDueStr);
                // pqEntity.AmountAdjustedStr = Convert.ToString(item.AmountAdjusted);
                pqEntity.AmountAdjusted = Convert.ToDecimal(item.AmountAdjustedStr);

                pqEntity.Discount            = Convert.ToDecimal(item.DiscountStr);
                pqEntity.CheckAmountAdjusted = item.CheckAmountAdjusted;

                PQForm.AdjustCreditNoteDetails.Add(pqEntity);
            }
            return(PQForm);
        }
        public AdjustCreditNoteForm GetAdjustCreditNoteDetails(string CreditNoteNo)
        {
            AdjustCreditNoteForm pqf = new AdjustCreditNoteForm();

            try
            {
                using (SDNSalesDBEntities entities = new SDNSalesDBEntities())
                {
                    decimal value;
                    var     pq = (from pqs in entities.CreditNotes
                                  join pi in entities.SalesInvoices on pqs.SI_Id equals pi.ID
                                  where pqs.CN_No == CreditNoteNo
                                  select new AdjustCreditNoteEntity
                    {
                        ID = pqs.ID,
                        CustomerID = pqs.Cus_Id,
                        //Amount =  pi.SI_Tot_aft_Tax,
                        Amount = pi.SI_Tot_aft_Tax,
                        Date = pqs.CN_Date,
                        CreditNoteNo = pqs.CN_No
                                       //CashChequeNo = pqs.Cash_Cheque_No,
                    }).FirstOrDefault();

                    if (pq != null)
                    {
                        pq.AmountStr         = Convert.ToString(pq.Amount);
                        pqf.AdjustCreditNote = pq;
                    }

                    if (pq.CustomerID != 0 || pq.CustomerID != null)
                    {
                        //var pqd = (from pqs in entities.SalesInvoices
                        //           where pqs.Cus_Id == pq.CustomerID && pqs.SI_Status == 2
                        //           select new AdjustCreditNoteDetailsEntity
                        //           {
                        //               SalesNo = pqs.SI_No,
                        //               SalesDate = pqs.PI_Date,
                        //               PaymentDueDate = pqs.PI_Pmt_Due_Date,
                        //               SalesAmount = pqs.SI_Tot_aft_Tax,
                        //               //AmountDue = pqs.Amt_Due,
                        //               //Discount = pqs.Discount,
                        //               //AmountAdjusted = pqs

                        //           }).ToList<AdjustCreditNoteDetailsEntity>();

                        var pqd = entities.Database.SqlQuery <AdjustCreditNoteDetailsEntity>("PRC_GetSalesDataForAdjustCreditNotes @CustomerID={0}", pq.CustomerID).ToList();

                        if (pqd != null)
                        {
                            pqf.AdjustCreditNoteDetails = pqd;
                        }
                    }


                    return(pqf);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public int SaveAdjustCreditNote(AdjustCreditNoteForm psForm)
        {
            IAdjustCreditNoteBL psBL = new AdjustCreditNoteBL();

            return(psBL.SaveAdjustCreditNote(psForm));
        }