Exemplo n.º 1
0
        /// <summary>
        /// Get Journal Entry Details by AccountingDocumentId List.
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <PagedResultOutput <JournalEntryDetailUnitDto> > GetJournalDetailsByDocumentId(
            GetTransactionList input)
        {
            var query = from journals in _journalEntryDocumentDetailUnitRepository.GetAll()
                        join job in _jobUnitRepository.GetAll() on journals.JobId equals job.Id into job
                        from jobs in job.DefaultIfEmpty()
                        join line in _accountUnitRepository.GetAll() on journals.AccountId equals line.Id into line
                        from lines in line.DefaultIfEmpty()
                        join subAccount1 in _subAccountUnitRepository.GetAll() on journals.SubAccountId1 equals subAccount1.Id
                        into subAccount1
                        from subAccounts1 in subAccount1.DefaultIfEmpty()
                        join subAccount2 in _subAccountUnitRepository.GetAll() on journals.SubAccountId2 equals subAccount2.Id
                        into subAccount2
                        from subAccounts2 in subAccount2.DefaultIfEmpty()
                        join subAccount3 in _subAccountUnitRepository.GetAll() on journals.SubAccountId3 equals subAccount3.Id
                        into subAccount3
                        from subAccounts3 in subAccount3.DefaultIfEmpty()
                        join vendor in _vendorUnitRepository.GetAll() on journals.VendorId equals vendor.Id into vendor
                        from vendors in vendor.DefaultIfEmpty()
                        join taxCredit in _taxCreditUnitRepository.GetAll() on journals.TaxRebateId equals taxCredit.Id into
                        taxCredit
                        from taxCredits in taxCredit.DefaultIfEmpty()
                        select new
            {
                JournalDetails = journals,
                jobs.JobNumber,
                lines.AccountNumber,
                SubAccountNumber1 = subAccounts1.SubAccountNumber,
                SubAccountNumber2 = subAccounts2.SubAccountNumber,
                SubAccountNumber3 = subAccounts3.SubAccountNumber,
                vendorLastName    = vendors.LastName,
                taxCreditNumber   = taxCredits.Number
            };

            query = query.Where(p => p.JournalDetails.AccountingDocumentId.Value == input.AccountingDocumentId);

            var results = await query
                          .AsNoTracking()
                          .ToListAsync();

            var mapResult = results.Select(item =>
            {
                var dto = item.JournalDetails.MapTo <JournalEntryDetailUnitDto>();
                dto.AccountingItemId  = item.JournalDetails.Id;
                dto.JobNumber         = item.JobNumber;
                dto.AccountNumber     = item.AccountNumber;
                dto.SubAccountNumber1 = item.SubAccountNumber1;
                dto.SubAccountNumber2 = item.SubAccountNumber2;
                dto.SubAccountNumber3 = item.SubAccountNumber3;
                dto.VendorName        = item.vendorLastName;
                dto.TaxRebateNumber   = item.taxCreditNumber;
                return(dto);
            }).ToList();

            return(new PagedResultOutput <JournalEntryDetailUnitDto>(mapResult.Count, mapResult));
        }
Exemplo n.º 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <PagedResultOutput <PurchaseOrderHistoryUnitDto> > GetPurchaseOrderHistoryByAccountingDocumentId(GetTransactionList input)
        {
            var query = from pODetail in _purchaseOrderHistoryRepository.GetAll()
                        join user in _userUnitRepository.GetAll() on pODetail.CreatorUserId equals user.Id into users
                        from userunits in users.DefaultIfEmpty()
                        join job in _jobUnitRepository.GetAll() on pODetail.JobId equals job.Id
                        into jobunit
                        from jobs in jobunit.DefaultIfEmpty()
                        join line in _accountUnitRepository.GetAll() on pODetail.AccountId equals line.Id
                        into account
                        from lines in account.DefaultIfEmpty()
                        join subAccount1 in _subAccountUnitRepository.GetAll() on pODetail.SubAccountId1 equals subAccount1.Id
                        into subAccount1
                        from subAccounts1 in subAccount1.DefaultIfEmpty()
                        join subAccount2 in _subAccountUnitRepository.GetAll() on pODetail.SubAccountId2 equals subAccount2.Id
                        into subAccount2
                        from subAccounts2 in subAccount2.DefaultIfEmpty()
                        join vendor in _vendorUnitRepository.GetAll() on pODetail.VendorId equals vendor.Id into vendor
                        from vendors in vendor.DefaultIfEmpty()
                        join taxCredit in _taxCreditUnitRepository.GetAll() on pODetail.TaxRebateId equals taxCredit.Id into
                        taxCredit
                        from taxCredits in taxCredit.DefaultIfEmpty()
                        select new
            {
                POHDetails = pODetail,
                jobs.JobNumber,
                lines.AccountNumber,
                subAccount1     = subAccounts1.Description,
                taxCreditNumber = taxCredits.Number,
                VendorName      = vendors.LastName,
                CreatedUser     = userunits.Name
            };

            query = query.Where(p => p.POHDetails.AccountingDocumentId.Value == input.AccountingDocumentId);

            var results = await query
                          .AsNoTracking()
                          .OrderBy(Helper.GetSort("POHDetails.CreationTime DESC", input.Sorting))
                          .PageBy(input)
                          .ToListAsync();

            return(new PagedResultOutput <PurchaseOrderHistoryUnitDto>(results.Count, results.Select(item =>
            {
                var dto = item.POHDetails.MapTo <PurchaseOrderHistoryUnitDto>();
                dto.SubAccountNumber1 = item.subAccount1;
                dto.JobNumber = item.JobNumber;
                dto.AccountNumber = item.AccountNumber;
                dto.TaxRebateNumber = item.taxCreditNumber;
                dto.TypeOf1099T4 = item.POHDetails.TypeOf1099T4Id != null ? item.POHDetails.TypeOf1099T4Id.ToDisplayName() : "";
                dto.VendorName = item.VendorName;
                dto.AccountingItemId = item.POHDetails.Id;
                dto.ModificationType = item.POHDetails.ModificationTypeId != null ? item.POHDetails.ModificationTypeId.ToDisplayName() : "";
                dto.SourceType = item.POHDetails.SourceTypeId != null ? item.POHDetails.SourceTypeId.ToDisplayName() : "";
                dto.CreatedUser = item.CreatedUser;
                return dto;
            }).ToList()));
        }
Exemplo n.º 3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="input"></param>
 /// <returns></returns>
 public Task <PagedResultOutput <CreditCardEntryDocumentUnitDto> > GetCreditCardDetailsByDocumentId(GetTransactionList input)
 {
     return(null);
 }
Exemplo n.º 4
0
        public async Task <PagedResultOutput <InvoiceEntryDocumentDetailUnitDto> > GetAPHeaderTransactionDetailUnitsByAccountingDocumentId(GetTransactionList input)
        {
            var query = from invoices in _invoiceEntryDocumentDetailUnitRepository.GetAll()
                        join job in _jobUnitRepository.GetAll() on invoices.JobId equals job.Id
                        into jobunit
                        from jobs in jobunit.DefaultIfEmpty()
                        join line in _accountUnitRepository.GetAll() on invoices.AccountId equals line.Id
                        into account
                        from lines in account.DefaultIfEmpty()
                        join subAccount1 in _subAccountUnitRepository.GetAll() on invoices.SubAccountId1 equals subAccount1.Id
                        into subAccountunit1
                        from subAccounts1 in subAccountunit1.DefaultIfEmpty()
                        join subAccount2 in _subAccountUnitRepository.GetAll() on invoices.SubAccountId2 equals subAccount2.Id
                        into subAccountunit2
                        from subAccounts2 in subAccountunit2.DefaultIfEmpty()
                        join subAccount3 in _subAccountUnitRepository.GetAll() on invoices.SubAccountId3 equals subAccount3.Id
                        into subAccountunit3
                        from subAccounts3 in subAccountunit2.DefaultIfEmpty()
                        join taxCredit in _taxCreditUnitRepository.GetAll() on invoices.TaxRebateId equals taxCredit.Id
                        into taxCreditunit
                        from taxCredits in taxCreditunit.DefaultIfEmpty()
                        select new
            {
                InvoiceDetails = invoices,
                JobNumber      = jobs.JobNumber,
                accountDesc    = lines.AccountNumber,
                subAccount1    = subAccounts1.Description,
                subAccount2    = subAccounts2.Description,
                subAccount3    = subAccounts3.Description,
                taxCredit      = taxCredits.Number
            };

            query = query.Where(p => p.InvoiceDetails.AccountingDocumentId.Value == input.AccountingDocumentId);

            var results = await query.AsNoTracking().ToListAsync();

            return(new PagedResultOutput <InvoiceEntryDocumentDetailUnitDto>(results.Count, results.Select(item =>
            {
                var dto = item.InvoiceDetails.MapTo <InvoiceEntryDocumentDetailUnitDto>();
                dto.AccountNumber = item.accountDesc;
                dto.JobNumber = item.JobNumber;
                dto.SubAccountNumber1 = item.subAccount1;
                dto.SubAccountNumber2 = item.subAccount2;
                dto.SubAccountNumber3 = item.subAccount3;
                dto.TaxRebateNumber = item.taxCredit;
                dto.AccountingItemId = item.InvoiceDetails.Id;
                dto.TypeOf1099T4 = item.InvoiceDetails.TypeOf1099T4Id != null ? item.InvoiceDetails.TypeOf1099T4Id.ToDisplayName() : "";
                dto.ActualAmount = item.InvoiceDetails.Amount.Value;// this is to maintainning the actual Amount on calculation
                return dto;
            }).ToList()));
        }
Exemplo n.º 5
0
        public async Task <PagedResultOutput <PayrollEntryDocumentDetailUnitDto> > GetPayrollEntryDocumentDetailsByAccountingDocumentId(GetTransactionList input)
        {
            var query = from payrolls in _payrollEntryDocumentDetailUnitRepository.GetAll()
                        join job in _jobUnitRepository.GetAll() on payrolls.JobId equals job.Id
                        into jobunit
                        from jobs in jobunit.DefaultIfEmpty()
                        join line in _accountUnitRepository.GetAll() on payrolls.AccountId equals line.Id
                        into account
                        from lines in account.DefaultIfEmpty()
                        join subAccount1 in _subAccountUnitRepository.GetAll() on payrolls.SubAccountId1 equals subAccount1.Id
                        into subAccountunit1
                        from subAccounts1 in subAccountunit1.DefaultIfEmpty()
                        join subAccount2 in _subAccountUnitRepository.GetAll() on payrolls.SubAccountId2 equals subAccount2.Id
                        into subAccountunit2
                        from subAccounts2 in subAccountunit2.DefaultIfEmpty()
                        join taxCredit in _taxCreditUnitRepository.GetAll() on payrolls.TaxRebateId equals taxCredit.Id
                        into taxCreditunit
                        from taxCredits in taxCreditunit.DefaultIfEmpty()
                        select new
            {
                PayrollDetails = payrolls,
                JobDesc        = jobs.JobNumber,
                accountDesc    = lines.AccountNumber,
                subAccount1    = subAccounts1.Description,
                subAccount2    = subAccounts2.Description,
                taxCredit      = taxCredits.Number
            };

            query = query.Where(p => p.PayrollDetails.AccountingDocumentId.Value == input.AccountingDocumentId);

            var results = await query.AsNoTracking().ToListAsync();

            return(new PagedResultOutput <PayrollEntryDocumentDetailUnitDto>(results.Count, results.Select(item =>
            {
                var dto = item.PayrollDetails.MapTo <PayrollEntryDocumentDetailUnitDto>();
                dto.AccountNumber = item.accountDesc;
                dto.SubAccountNumber1 = item.subAccount1;
                dto.JobLocation = item.subAccount2;
                dto.TaxRebateNumber = item.taxCredit;
                dto.AccountingDocumentId = item.PayrollDetails.Id;
                return dto;
            }).ToList()));
        }
Exemplo n.º 6
0
        private static void RunMethod(string methodName)
        {
            // These are default transaction keys.
            // You can create your own keys in seconds by signing up for a sandbox account here: https://developer.authorize.net/sandbox/
            string apiLoginId     = "5KP3u95bQpv";
            string transactionKey = "4Ktq966gC55GAX7S";

            string transactionAmount;
            string transactionId = string.Empty;

            switch (methodName)
            {
            case "ValidateCustomerPaymentProfile":
                ValidateCustomerPaymentProfile.Run(apiLoginId, transactionKey);
                break;

            case "UpdateCustomerShippingAddress":
                UpdateCustomerShippingAddress.Run(apiLoginId, transactionKey);
                break;

            case "UpdateCustomerProfile":
                UpdateCustomerProfile.Run(apiLoginId, transactionKey);
                break;

            case "UpdateCustomerPaymentProfile":
                UpdateCustomerPaymentProfile.Run(apiLoginId, transactionKey);
                break;

            case "GetCustomerShippingAddress":
                GetCustomerShippingAddress.Run(apiLoginId, transactionKey);
                break;

            case "GetCustomerProfileIds":
                GetCustomerProfileIds.Run(apiLoginId, transactionKey);
                break;

            case "GetCustomerProfile":
                GetCustomerProfile.Run(apiLoginId, transactionKey);
                break;

            case "GetCustomerPaymentProfile":
                GetCustomerPaymentProfile.Run(apiLoginId, transactionKey);
                break;

            case "DeleteCustomerShippingAddress":
                DeleteCustomerShippingAddress.Run(apiLoginId, transactionKey);
                break;

            case "DeleteCustomerProfile":
                DeleteCustomerProfile.Run(apiLoginId, transactionKey);
                break;

            case "DeleteCustomerPaymentProfile":
                DeleteCustomerPaymentProfile.Run(apiLoginId, transactionKey);
                break;

            case "CreateCustomerShippingAddress":
                CreateCustomerShippingAddress.Run(apiLoginId, transactionKey);
                break;

            case "CreateCustomerProfileFromTransaction":
                CreateCustomerProfileFromTransaction.Run(apiLoginId, transactionKey);
                break;

            case "GetTransactionDetails":
                GetTransactionDetails.Run(apiLoginId, transactionKey);
                break;

            case "GetTransactionList":
                GetTransactionList.Run(apiLoginId, transactionKey);
                break;

            //case "CreateAnApplePayTransaction":
            //    CreateAnApplePayTransaction.Run(apiLoginId, transactionKey);
            //    break;
            case "DecryptVisaCheckoutData":
                DecryptVisaCheckoutData.Run(apiLoginId, transactionKey);
                break;

            case "CreateVisaCheckoutTransaction":
                CreateVisaCheckoutTransaction.Run(apiLoginId, transactionKey);
                break;

            case "ChargeCreditCard":
                ChargeCreditCard.Run(apiLoginId, transactionKey);
                break;

            case "CaptureOnly":
                CaptureOnly.Run(apiLoginId, transactionKey);
                break;

            case "CapturePreviouslyAuthorizedAmount":
                Console.WriteLine("Enter An Transaction Amount");
                transactionAmount = Console.ReadLine();

                Console.WriteLine("Enter An Transaction ID");
                transactionId = Console.ReadLine();

                CapturePreviouslyAuthorizedAmount.Run(apiLoginId, transactionKey, Convert.ToDecimal(transactionAmount), transactionId);
                break;

            case "CaptureFundsAuthorizedThroughAnotherChannel":
                CaptureFundsAuthorizedThroughAnotherChannel.Run(apiLoginId, transactionKey);
                break;

            case "AuthorizeCreditCard":
                AuthorizeCreditCard.Run(apiLoginId, transactionKey);
                break;

            case "Refund":
                Console.WriteLine("Enter An Transaction Amount");
                transactionAmount = Console.ReadLine();

                Console.WriteLine("Enter An Transaction ID");
                transactionId = Console.ReadLine();

                RefundTransaction.Run(apiLoginId, transactionKey, Convert.ToDecimal(transactionAmount), transactionId);
                break;

            case "Void":
                Console.WriteLine("Enter An Transaction ID");
                transactionId = Console.ReadLine();

                VoidTransaction.Run(apiLoginId, transactionKey, transactionId);
                break;

            case "DebitBankAccount":
                DebitBankAccount.Run(apiLoginId, transactionKey);
                break;

            case "CreditBankAccount":
                Console.WriteLine("Enter An Transaction ID");
                transactionId = Console.ReadLine();

                CreditBankAccount.Run(apiLoginId, transactionKey, transactionId);
                break;

            case "ChargeCustomerProfile":
                ChargeCustomerProfile.Run(apiLoginId, transactionKey);
                break;

            case "ChargeTokenizedCard":
                ChargeTokenizedCreditCard.Run(apiLoginId, transactionKey);
                break;

            case "PayPalVoid":
                PayPalVoid.Run(apiLoginId, transactionKey, transactionId);
                break;

            case "PayPalAuthorizeCapture":
                PayPalAuthorizeCapture.Run(apiLoginId, transactionKey);
                break;

            case "PayPalAuthorizeCaptureContinue":
                PayPalAuthorizeCaptureContinue.Run(apiLoginId, transactionKey, transactionId);
                break;

            case "PayPalAuthorizeOnly":
                PayPalAuthorizeOnly.Run(apiLoginId, transactionKey);
                break;

            case "PayPalAuthorizeOnlyContinue":
                PayPalAuthorizeCaptureContinue.Run(apiLoginId, transactionKey, transactionId);
                break;

            case "PayPalCredit":
                PayPalCredit.Run(apiLoginId, transactionKey, transactionId);
                break;

            case "PayPalGetDetails":
                PayPalGetDetails.Run(apiLoginId, transactionKey, transactionId);
                break;

            case "PayPalPriorAuthorizationCapture":
                PayPalPriorAuthorizationCapture.Run(apiLoginId, transactionKey, transactionId);
                break;

            case "CancelSubscription":
                CancelSubscription.Run(apiLoginId, transactionKey);
                break;

            case "CreateSubscription":
                CreateSubscription.Run(apiLoginId, transactionKey);
                break;

            case "GetSubscriptionList":
                GetListSubscriptions.Run(apiLoginId, transactionKey);
                break;

            case "GetSubscriptionStatus":
                GetSubscriptionStatus.Run(apiLoginId, transactionKey);
                break;

            case "UpdateSubscription":
                UpdateSubscription.Run(apiLoginId, transactionKey);
                break;

            case "CreateCustomerProfile":
                CreateCustomerProfile.Run(apiLoginId, transactionKey);
                break;

            case "CreateCustomerPaymentProfile":
                CreateCustomerPaymentProfile.Run(apiLoginId, transactionKey);
                break;

            case "GetUnsettledTransactionList":
                GetUnsettledTransactionList.Run(apiLoginId, transactionKey);
                break;

            case "GetBatchStatistics":
                GetBatchStatistics.Run(apiLoginId, transactionKey);
                break;

            case "GetSettledBatchList":
                GetSettledBatchList.Run(apiLoginId, transactionKey);
                break;

            default:
                ShowUsage();
                break;
            }
        }
Exemplo n.º 7
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <PagedResultOutput <ArInvoiceEntryDetailUnitDto> > GetArInvoiceByAccountingDocumentId(GetTransactionList input)
        {
            var query = from invoices in _arInvoiceEntryDocumentDetailUnitRepository.GetAll()
                        join job in _jobUnitRepository.GetAll() on invoices.JobId equals job.Id
                        into jobunit
                        from jobs in jobunit.DefaultIfEmpty()
                        join line in _accountUnitRepository.GetAll() on invoices.AccountId equals line.Id
                        into account
                        from lines in account.DefaultIfEmpty()
                        join subAccount1 in _subAccountUnitRepository.GetAll() on invoices.SubAccountId1 equals subAccount1.Id
                        into subAccount1
                        from subAccounts1 in subAccount1.DefaultIfEmpty()
                        join subAccount4 in _subAccountUnitRepository.GetAll() on invoices.SubAccountId4 equals subAccount4.Id
                        into subAccountunit4
                        from subAccounts4 in subAccountunit4.DefaultIfEmpty()

                        select new
            {
                InvoiceDetails = invoices,
                JobNumber      = jobs.JobNumber,
                accountNumber  = lines.AccountNumber,
                subAccount1    = subAccounts1.Description,
                subAccount4    = subAccounts4.Description
            };

            query = query.Where(p => p.InvoiceDetails.AccountingDocumentId.Value == input.AccountingDocumentId);

            var results = await query.AsNoTracking().ToListAsync();

            return(new PagedResultOutput <ArInvoiceEntryDetailUnitDto>(results.Count, results.Select(item =>
            {
                var dto = item.InvoiceDetails.MapTo <ArInvoiceEntryDetailUnitDto>();
                dto.SubAccountNumber1 = item.subAccount1;
                dto.SubAccountNumber4 = item.subAccount4;
                dto.JobNumber = item.JobNumber;
                dto.AccountNumber = item.accountNumber;
                dto.AccountingDocumentId = item.InvoiceDetails.Id;
                return dto;
            }).ToList()));
        }