Exemplo n.º 1
0
 public bool DeleteDonationPlanHeader(DonationPlanHeader donationPlanHeader)
 {
     if (donationPlanHeader == null) return false;
     _unitOfWork.DonationPlanHeaderRepository.Delete(donationPlanHeader);
     _unitOfWork.Save();
     return true;
 }
Exemplo n.º 2
0
        private bool SaveNewDonationPlan(DonationViewModel donationViewModel,int siId)
        {
            try
            {

            var donationHeader = new DonationPlanHeader
            {
                AllocationDate = DateTime.Now,
                CommodityID = donationViewModel.CommodityID,
                DonorID = donationViewModel.DonorID,
                ETA = donationViewModel.ETA,
                IsCommited = false,
                ProgramID = donationViewModel.ProgramID,
                ShippingInstructionId = siId,
                DonatedAmount = donationViewModel.WieghtInMT,
                CommodityTypeID = donationViewModel.CommodityTypeID

            };

            foreach (var donationDetail in donationViewModel.DonationPlanDetails.Select(donationPlanDetail => new DonationPlanDetail
                                                                                                                  {
                                                                                                                      HubID = donationPlanDetail.HubID,
                                                                                                                      AllocatedAmount = donationPlanDetail.AllocatedAmount,
                                                                                                                      ReceivedAmount = donationPlanDetail.ReceivedAmount,
                                                                                                                      Balance = donationPlanDetail.Balance,
                                                                                                                      DonationPlanHeader = donationHeader
                                                                                                                  }))
            {
                _donationPlanDetailService.AddDonationPlanDetail(donationDetail);
            }

                _transactionService.PostDonationPlan(donationHeader);
            return true;
            }
            catch (Exception)
            {

                return false;
            }
        }
        public void ShouldPostDonationPlanTransaction()
        {
            //Act
            var donationPlanHeader = new DonationPlanHeader()
            {
                DonationHeaderPlanID = 1,
                ShippingInstructionId = 1,
                CommodityID = 1,
                DonatedAmount = 500,
                DonorID = 1,
                ProgramID = 1,
                ETA = DateTime.Today.AddDays(10),
                Vessel = "Vessel-123",
                ReferenceNo = "REF-123",
                Remark = "Sample Remark",
                DonationPlanDetails = new List<DonationPlanDetail>()
                                          {
                                              new DonationPlanDetail()
                                                  {
                                                      DonationDetailPlanID = 1,
                                                      DonationHeaderPlanID = 1,
                                                      HubID = 1,
                                                      AllocatedAmount = 500,
                                                      ReceivedAmount = 450,
                                                      Balance = 50,
                                                      Hub = new Models.Hub()
                                                                {
                                                                    HubID = 1,
                                                                    Name = "Hub1"
                                                                }
                                                  }
                                          }
            };
            var result = _accountTransactionService.PostDonationPlan(donationPlanHeader);

            //Assert
            Assert.IsTrue(result);
        }
Exemplo n.º 4
0
        public bool PostDonationPlan(DonationPlanHeader donationPlanHeader)
        {
            var transactionGroup = Guid.NewGuid();
            var transactionDate = DateTime.Now;

            _unitOfWork.TransactionGroupRepository.Add(new TransactionGroup()
            {
                PartitionID = 0,
                TransactionGroupID = transactionGroup
            });

            foreach (var donationPlanDetail in donationPlanHeader.DonationPlanDetails)
            {
                var transaction = new Models.Transaction
                                      {
                                          TransactionID = Guid.NewGuid(),
                                          ProgramID = donationPlanHeader.ProgramID,
                                          DonorID = donationPlanHeader.DonorID,
                                          CommoditySourceID = 1,
                                          QuantityInMT = donationPlanDetail.AllocatedAmount,
                                          TransactionGroupID = transactionGroup,
                                          TransactionDate = transactionDate,
                                          CommodityID = donationPlanHeader.CommodityID,
                                          ShippingInstructionID = donationPlanHeader.ShippingInstructionId,
                                          HubID = donationPlanDetail.HubID,
                                          LedgerID = Ledger.Constants.GOODS_RECIEVABLE
                                      };

                _unitOfWork.TransactionRepository.Add(transaction);

                transaction= new Models.Transaction
                                 {
                                     TransactionID = Guid.NewGuid(),
                                     ProgramID = donationPlanHeader.ProgramID,
                                     DonorID = donationPlanHeader.DonorID,
                                     CommoditySourceID = 1,
                                     QuantityInMT = -donationPlanDetail.AllocatedAmount,
                                     TransactionGroupID = transactionGroup,
                                     TransactionDate = transactionDate,
                                     CommodityID = donationPlanHeader.CommodityID,
                                     ShippingInstructionID = donationPlanHeader.ShippingInstructionId,
                                     HubID = donationPlanDetail.HubID,
                                     LedgerID = Ledger.Constants.GOODS_PROMISSED_GIFT_CERTIFICATE_COMMITED //good promissed - pledged is not in ledger list // Former LedgerID = 4
                                 };

                _unitOfWork.TransactionRepository.Add(transaction);
            }

            var donationHeader =
                _unitOfWork.DonationPlanHeaderRepository.FindById(donationPlanHeader.DonationHeaderPlanID);
            if (donationHeader!=null)
                donationPlanHeader.TransactionGroupID = transactionGroup;
            _unitOfWork.Save();
            return true;
        }
Exemplo n.º 5
0
 public bool EditDonationPlanHeader(DonationPlanHeader donationPlanHeader)
 {
     _unitOfWork.DonationPlanHeaderRepository.Edit(donationPlanHeader);
     _unitOfWork.Save();
     return true;
 }
Exemplo n.º 6
0
        public bool PostDonationPlan(DonationPlanHeader donationPlanHeader)
        {
            var transactionGroup = Guid.NewGuid();
            var transactionDate = DateTime.Now;

            _unitOfWork.TransactionGroupRepository.Add(new TransactionGroup()
            {
                PartitionID = 0,
                TransactionGroupID = transactionGroup
            });

            foreach (var donationPlanDetail in donationPlanHeader.DonationPlanDetails)
            {
                var transaction = new Models.Transaction
                                      {
                                          TransactionID = Guid.NewGuid(),
                                          ProgramID = donationPlanHeader.ProgramID,
                                          DonorID = donationPlanHeader.DonorID,
                                          CommoditySourceID = 1,
                                          QuantityInMT = donationPlanDetail.AllocatedAmount,
                                          TransactionGroupID = transactionGroup,
                                          TransactionDate = transactionDate,
                                          CommodityID = donationPlanHeader.CommodityID,
                                          ShippingInstructionID = donationPlanHeader.ShippingInstructionId,
                                          HubID = donationPlanDetail.HubID,
                                          LedgerID = 10
                                      };

                _unitOfWork.TransactionRepository.Add(transaction);

                transaction= new Models.Transaction
                                 {
                                     TransactionID = Guid.NewGuid(),
                                     ProgramID = donationPlanHeader.ProgramID,
                                     DonorID = donationPlanHeader.DonorID,
                                     CommoditySourceID = 1,
                                     QuantityInMT = donationPlanDetail.AllocatedAmount,
                                     TransactionGroupID = transactionGroup,
                                     TransactionDate = transactionDate,
                                     CommodityID = donationPlanHeader.CommodityID,
                                     ShippingInstructionID = donationPlanHeader.ShippingInstructionId,
                                     HubID = donationPlanDetail.HubID,
                                     LedgerID = 4
                                 };

                _unitOfWork.TransactionRepository.Add(transaction);
            }

            var donationHeader =
                _unitOfWork.DonationPlanHeaderRepository.FindById(donationPlanHeader.DonationHeaderPlanID);
            if (donationHeader!=null)
                donationPlanHeader.TransactionGroupID = transactionGroup;
            _unitOfWork.Save();
            return true;
        }