예제 #1
0
        /// <summary>
        /// Validating the VendorData
        /// </summary>
        /// <param name="bankAccountUnit"></param>
        /// <returns></returns>
        protected virtual async Task ValidateBankAccountUnitAsync(BankAccountUnit bankAccountUnit)
        {
            string lableName = string.Empty;

            switch (ServiceFrom)
            {
            case "CreditCardCompany":
                lableName = "Credit Card Company";
                break;

            default:
                lableName = "Bank Name";
                break;
            }

            //Validating if Duplicate Banks/Credit Card Company exists
            if (BankAccountUnitRepository != null)
            {
                var bankAccount = (await BankAccountUnitRepository.GetAllListAsync(p => p.Description == bankAccountUnit.Description));

                if (bankAccountUnit.Id == 0)
                {
                    if (bankAccount.Count > 0)
                    {
                        throw new UserFriendlyException(L("Duplicate " + lableName, bankAccountUnit.Description));
                    }
                }
                else
                {
                    if (bankAccount.FirstOrDefault(p => p.Id != bankAccountUnit.Id && p.Description == bankAccountUnit.Description) != null)
                    {
                        throw new UserFriendlyException(L("Duplicate " + lableName, bankAccountUnit.Description));
                    }
                }
            }
        }
예제 #2
0
        public virtual async Task UpdateAsync(BankAccountUnit bankAccountUnit)
        {
            await ValidateBankAccountUnitAsync(bankAccountUnit);

            await BankAccountUnitRepository.UpdateAsync(bankAccountUnit);
        }
예제 #3
0
        public virtual async Task <long> CreateAsync(BankAccountUnit bankAccountUnit)
        {
            await ValidateBankAccountUnitAsync(bankAccountUnit);

            return(await BankAccountUnitRepository.InsertAndGetIdAsync(bankAccountUnit));
        }