本文整理汇总了C#中OpenCBS.CoreDomain.Contracts.Loans.Loan.GenerateLoanCode方法的典型用法代码示例。如果您正苦于以下问题:C# Loan.GenerateLoanCode方法的具体用法?C# Loan.GenerateLoanCode怎么用?C# Loan.GenerateLoanCode使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OpenCBS.CoreDomain.Contracts.Loans.Loan
的用法示例。
在下文中一共展示了Loan.GenerateLoanCode方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AddLoan
private void AddLoan(ref Loan pLoan, int pProjectId, ref IClient pClient, SqlTransaction transaction)
{
if (pProjectId == 0)
throw new OpenCbsContractSaveException(OpenCbsContractSaveExceptionEnum.ProjectIsNull);
ApplicationSettings appSettings = ApplicationSettings.GetInstance(_user.Md5);
if (!appSettings.IsAllowMultipleLoans && pClient.Active)
throw new OpenCbsContractSaveException(OpenCbsContractSaveExceptionEnum.BeneficiaryIsActive);
Loan clonedLoan = pLoan.Copy();
IClient clonedClient = pClient.Copy();
try
{
var clientName = (pClient is Person) ? ((Person)pClient).LastName : pClient.Name;
string branchCode = pClient.Branch.Code;
if (String.IsNullOrEmpty(branchCode))
branchCode = _branchService.FindBranchCodeByClientId(pClient.Id, transaction);
pLoan.ContractStatus = OContractStatus.Pending;
pLoan.CreationDate = pLoan.StartDate;
pLoan.CloseDate = (pLoan.InstallmentList[pLoan.InstallmentList.Count - 1]).ExpectedDate;
pLoan.BranchCode = branchCode;
if (string.IsNullOrEmpty(clonedLoan.Code))
{
int len = 1 == pClient.District.Name.Length ? 1 : 2;
pLoan.Code = pLoan.GenerateLoanCode(appSettings.ContractCodeTemplate
, branchCode
, pClient.District.Name.Substring(0, len)
, (pClient.LoanCycle + 1).ToString(CultureInfo.InvariantCulture)
, pClient.Projects.Count.ToString(CultureInfo.InvariantCulture)
, pClient.Id.ToString(CultureInfo.InvariantCulture)
, clientName);
}
pLoan.Id = AddLoanInDatabase(pLoan, pProjectId, pClient, transaction);
pLoan.Code = pLoan.Code + '/' + pLoan.Id;
_loanManager.UpdateContractCode(pLoan.Id, pLoan.Code, transaction);
}
catch
{
pLoan = clonedLoan;
pClient = clonedClient;
throw;
}
}