Example #1
0
        private void SavePayment(TPayment payment, FormCollection formCollection, bool isEdit)
        {
            //if (isEdit)
            //{
            //    if (ListDeleteDetailTrans != null)
            //        if (ListDeleteDetailTrans.Count > 0)
            //            DeleteTransactionDetail(Trans, addStock, calculateStock, ListDeleteDetailTrans.ToArray());
            //}

            payment.PaymentDets.Clear();

            //save detail
            string splitter = ",";

            string[] selectedTransId = formCollection["SelectedTransId"].Split(splitter.ToCharArray());

            TPaymentDet detToInsert;
            TTrans      trans;
            decimal     total = 0;

            for (int i = 0; i < selectedTransId.Length; i++)
            {
                trans = _tTransRepository.Get(selectedTransId[i]);
                if (trans != null)
                {
                    detToInsert = new TPaymentDet(payment);
                    detToInsert.SetAssignedIdTo(Guid.NewGuid().ToString());
                    detToInsert.TransId         = trans;
                    detToInsert.PaymentDetValue = trans.TransGrandTotal;
                    detToInsert.CreatedDate     = DateTime.Now;
                    detToInsert.CreatedBy       = User.Identity.Name;
                    detToInsert.DataStatus      = Enums.EnumDataStatus.New.ToString();

                    payment.PaymentDets.Add(detToInsert);
                    total += detToInsert.PaymentDetValue.HasValue ? detToInsert.PaymentDetValue.Value : 0;
                }
            }
            payment.PaymentTotal = total;
            if (isEdit)
            {
                _tPaymentRepository.Update(payment);
            }
            else
            {
                _tPaymentRepository.Save(payment);
            }

            ////save journal
            //SaveJournal(payment);
        }