/// <summary>
 /// Takes the specified b u commitment request detail entity.
 /// </summary>
 /// <param name="bUCommitmentRequestDetailEntity">The b u commitment request detail entity.</param>
 /// <returns>System.Object[].</returns>
 private static object[] Take(BUCommitmentRequestDetailEntity bUCommitmentRequestDetailEntity)
 {
     return(new object[]
     {
         "@RefDetailID", bUCommitmentRequestDetailEntity.RefDetailId,
         "@RefID", bUCommitmentRequestDetailEntity.RefId,
         "@Description", bUCommitmentRequestDetailEntity.Description,
         "@CurrencyCode", bUCommitmentRequestDetailEntity.CurrencyCode,
         "@ExchangeRate", bUCommitmentRequestDetailEntity.ExchangeRate,
         "@Amount", bUCommitmentRequestDetailEntity.Amount,
         "@AmountOC", bUCommitmentRequestDetailEntity.AmountOC,
         "@BudgetSourceID", bUCommitmentRequestDetailEntity.BudgetSourceId,
         "@BudgetChapterCode", bUCommitmentRequestDetailEntity.BudgetChapterCode,
         "@BudgetKindItemCode", bUCommitmentRequestDetailEntity.BudgetKindItemCode,
         "@BudgetSubKindItemCode", bUCommitmentRequestDetailEntity.BudgetSubKindItemCode,
         "@BudgetItemCode", bUCommitmentRequestDetailEntity.BudgetItemCode,
         "@BudgetSubItemCode", bUCommitmentRequestDetailEntity.BudgetSubItemCode,
         "@BudgetDetailItemCode", bUCommitmentRequestDetailEntity.BudgetDetailItemCode,
         "@MethodDistributeID", bUCommitmentRequestDetailEntity.MethodDistributeId,
         "@CashWithDrawTypeID", bUCommitmentRequestDetailEntity.CashWithDrawTypeId,
         "@ActivityID", bUCommitmentRequestDetailEntity.ActivityId,
         "@ProjectID", bUCommitmentRequestDetailEntity.ProjectId,
         "@ProjectActivityID", bUCommitmentRequestDetailEntity.ProjectActivityId,
         "@ProjectExpenseID", bUCommitmentRequestDetailEntity.ProjectExpenseId,
         "@TaskID", bUCommitmentRequestDetailEntity.TaskId,
         "@ListItemID", bUCommitmentRequestDetailEntity.ListItemId,
         "@Approved", bUCommitmentRequestDetailEntity.Approved,
         "@FundStructureID", bUCommitmentRequestDetailEntity.FundStructureId,
         "@SortOrder", bUCommitmentRequestDetailEntity.SortOrder,
         "@BankAccount", bUCommitmentRequestDetailEntity.BankAccount,
         "@BudgetProvideCode", bUCommitmentRequestDetailEntity.BudgetProvideCode,
         "@ContractID", bUCommitmentRequestDetailEntity.ContractId,
         "@CapitalPlanID", bUCommitmentRequestDetailEntity.CapitalPlanId,
     });
 }
        public List <BUCommitmentRequestDetailEntity> BUCommitmentRequestDetails(List <BUCommitmentRequestDetail> details, string refid)
        {
            List <BUCommitmentRequestDetailEntity> lstDetailEntities = new List <BUCommitmentRequestDetailEntity>();

            foreach (var result in details)
            {
                var newresult = new BUCommitmentRequestDetailEntity();
                newresult.RefDetailId           = result.RefDetailID.ToString();
                newresult.RefId                 = refid;
                newresult.Description           = result.Description;
                newresult.CurrencyCode          = result.CCY == null ? null : result.CCY.CurrencyID;
                newresult.ExchangeRate          = result.ExchangeRate;
                newresult.Amount                = result.Amount;
                newresult.AmountOC              = result.AmountOC;
                newresult.BudgetSourceId        = result.BudgetSource == null ? null : result.BudgetSource.BudgetSourceID.ToString();
                newresult.BudgetChapterCode     = result.BudgetChapterCode;
                newresult.BudgetKindItemCode    = result.BudgetKindItemCode;
                newresult.BudgetSubKindItemCode = result.BudgetSubKindItemCode;
                newresult.BudgetItemCode        = result.BudgetItemCode;
                newresult.BudgetSubItemCode     = result.BudgetSubItemCode;
                newresult.BudgetDetailItemCode  = result.BudgetDetailItemCode;
                newresult.MethodDistributeId    = result.MethodDistributeID;
                newresult.CashWithDrawTypeId    = ConvertCash.ConvertCash(result.CashWithDrawTypeID);
                newresult.ActivityId            = result.Activity == null ? null : result.Activity.ActivityID.ToString();
                newresult.ProjectId             = result.Project == null ? null : result.Project.ProjectID.ToString();
                newresult.ProjectActivityId     = result.ProjectActivityID.ToString();
                newresult.ProjectExpenseId      = result.ProjectExpense == null ? null : result.ProjectExpense.ProjectExpenseID.ToString();
                newresult.TaskId                = result.Task == null ? null : result.Task.TaskID.ToString();
                newresult.ListItemId            = result.ListItem == null ? null : result.ListItem.ListItemID.ToString();
                newresult.Approved              = result.Approved;
                newresult.FundStructureId       = result.FundStructure == null ? null : result.FundStructure.FundStructureID.ToString();
                newresult.SortOrder             = result.SortOrder;
                newresult.BankAccount           = result.BankAccount;
                newresult.BudgetProvideCode     = result.BudgetProvidence == null ? null : result.BudgetProvidence.BudgetProvideCode;

                lstDetailEntities.Add(newresult);
            }
            return(lstDetailEntities);
        }
        /// <summary>
        /// Inserts the bu plan receipt detail.
        /// </summary>
        /// <param name="bUCommitmentRequestDetail">The b u commitment request detail.</param>
        /// <returns>System.String.</returns>
        public string InsertBUPlanReceiptDetail(BUCommitmentRequestDetailEntity bUCommitmentRequestDetail)
        {
            const string procedures = @"uspInsert_BUCommitmentRequestDetail";

            return(Db.Insert(procedures, true, Take(bUCommitmentRequestDetail)));
        }