public List <SUTransferDetailEntity> SUTransferDetails(List <SUTransferDetail> details, string refid) { List <SUTransferDetailEntity> lstDetailEntities = new List <SUTransferDetailEntity>(); foreach (var result in details) { var newresult = new SUTransferDetailEntity(); newresult.RefDetailId = result.RefDetailID.ToString(); newresult.RefId = refid; newresult.InventoryItemId = result.InventoryItem == null ? null : result.InventoryItem.InventoryItemID.ToString(); newresult.Description = result.Description; newresult.FromDepartmentId = result.Department == null?null: result.Department.DepartmentID.ToString(); newresult.ToDepartmentId = result.Department1 == null ? null : result.Department1.DepartmentID.ToString(); newresult.Unit = result.Unit; newresult.Quantity = result.Quantity; newresult.UnitPrice = result.UnitPrice; newresult.Amount = result.Amount; newresult.ListItemId = result.ListItem == null ? null : result.ListItem.ListItemID.ToString(); newresult.SortOrder = result.SortOrder; newresult.CreditAccount = result.CreditAccount; newresult.DebitAccount = result.DebitAccount; newresult.BudgetChapterCode = result.BudgetChapterCode; lstDetailEntities.Add(newresult); } return(lstDetailEntities); }
/// <summary> /// Inserts the account balance. /// </summary> /// <param name="suTransfer">The su transfer.</param> /// <param name="suTransferDetail">The su transfer detail.</param> public void InsertAccountBalance(SUTransferEntity suTransfer, SUTransferDetailEntity suTransferDetail) { //insert AccountBalance for debit account var accountBalanceForDebit = AddAccountBalanceForDebit(suTransfer, suTransferDetail); var accountBalanceForDebitExit = AccountBalanceDao.GetExitsAccountBalance(accountBalanceForDebit); if (accountBalanceForDebitExit != null) { UpdateAccountBalance(accountBalanceForDebitExit, accountBalanceForDebit.MovementDebitAmountOC, accountBalanceForDebit.MovementDebitAmount, true, 1); } else { AccountBalanceDao.InsertAccountBalance(accountBalanceForDebit); } //insert AccountBalance for credit account var accountBalanceForCredit = AddAccountBalanceForCredit(suTransfer, suTransferDetail); var accountBalanceForCreditExit = AccountBalanceDao.GetExitsAccountBalance(accountBalanceForCredit); if (accountBalanceForCreditExit != null) { UpdateAccountBalance(accountBalanceForCreditExit, accountBalanceForCredit.MovementCreditAmountOC, accountBalanceForCredit.MovementCreditAmount, true, 2); } else { AccountBalanceDao.InsertAccountBalance(accountBalanceForCredit); } }
/// <summary> /// Takes the specified bADeposit. /// </summary> /// <param name="suTransferDetailEntity">The bADeposit.</param> /// <returns></returns> private object[] Take(SUTransferDetailEntity suTransferDetailEntity) { return(new object[] { "@RefDetailID", suTransferDetailEntity.RefDetailId, "@RefID", suTransferDetailEntity.RefId, "@InventoryItemID", suTransferDetailEntity.InventoryItemId, "@Description", suTransferDetailEntity.Description, "@FromDepartmentID", suTransferDetailEntity.FromDepartmentId, "@ToDepartmentID", suTransferDetailEntity.ToDepartmentId, "@DebitAccount", suTransferDetailEntity.DebitAccount, "@CreditAccount", suTransferDetailEntity.CreditAccount, "@Quantity", suTransferDetailEntity.Quantity, "@UnitPrice", suTransferDetailEntity.UnitPrice, "@Amount", suTransferDetailEntity.Amount, "@BudgetChapterCode", suTransferDetailEntity.BudgetChapterCode, "@ListItemID", suTransferDetailEntity.ListItemId, "@SortOrder", suTransferDetailEntity.SortOrder, "@Unit", suTransferDetailEntity.Unit }); }
/// <summary> /// Adds the account balance for credit. /// </summary> /// <param name="suTransfer">The su transfer.</param> /// <param name="suTransferDetail">The su transfer detail.</param> /// <returns></returns> public AccountBalanceEntity AddAccountBalanceForCredit(SUTransferEntity suTransfer, SUTransferDetailEntity suTransferDetail) { //credit account return(new AccountBalanceEntity { AccountBalanceId = Guid.NewGuid().ToString(), AccountNumber = suTransferDetail.CreditAccount, CurrencyCode = "VND", ExchangeRate = 1, BalanceDate = suTransfer.PostedDate, MovementDebitAmountOC = 0, MovementDebitAmount = 0, MovementCreditAmountOC = suTransferDetail.Amount, MovementCreditAmount = suTransferDetail.Amount, BudgetChapterCode = suTransferDetail.BudgetChapterCode }); }
/// <summary> /// Inserts the bADeposit detail. /// </summary> /// <param name="suTransferDetailEntity">The bADeposit detail.</param> /// <returns></returns> public string InsertSUTransferDetail(SUTransferDetailEntity suTransferDetailEntity) { const string sql = @"uspInsert_SUTransferDetail"; return(Db.Insert(sql, true, Take(suTransferDetailEntity))); }