public override DTO.SearchFormData GetDataWithFilter(System.Collections.Hashtable filters, int pageSize, int pageIndex, string orderBy, string orderDirection, out int totalRows, out Library.DTO.Notification notification) { notification = new Library.DTO.Notification() { Type = Library.DTO.NotificationType.Success }; DTO.SearchFormData data = new DTO.SearchFormData(); data.Data = new List <DTO.CashBookBalance>(); totalRows = 0; //try to get data try { using (CashBookBalanceMngEntities context = CreateContext()) { int?BalanceMonth = null; int?BalanceYear = null; if (filters.ContainsKey("BalanceMonth") && !string.IsNullOrEmpty(filters["BalanceMonth"].ToString())) { BalanceMonth = Convert.ToInt32(filters["BalanceMonth"].ToString()); } if (filters.ContainsKey("BalanceYear") && !string.IsNullOrEmpty(filters["BalanceYear"].ToString())) { BalanceYear = Convert.ToInt32(filters["BalanceYear"].ToString()); } totalRows = context.CashBookBalanceMng_function_SearchCashBookBalance(BalanceMonth, BalanceYear, orderBy, orderDirection).Count(); var result = context.CashBookBalanceMng_function_SearchCashBookBalance(BalanceMonth, BalanceYear, orderBy, orderDirection); data.Data = converter.DB2DTO_CashBookBalanceList(result.Skip(pageSize * (pageIndex - 1)).Take(pageSize).ToList()); } } catch (Exception ex) { notification.Type = Library.DTO.NotificationType.Error; notification.Message = ex.Message; } return(data); }
public DTO.EditFormData GetBalanceDetail(int id, out Library.DTO.Notification notification) { notification = new Library.DTO.Notification() { Type = Library.DTO.NotificationType.Success }; DTO.EditFormData data = new DTO.EditFormData(); data.CashBookBalance = new DTO.CashBookBalance(); data.CashBookBalanceDetails = new List <DTO.CashBookBalanceDetail>(); //try to get data try { if (id > 0) { using (CashBookBalanceMngEntities context = CreateContext()) { var CashBookBalance = context.CashBookBalanceMng_CashBookBalance_View.FirstOrDefault(o => o.CashBookBalanceID == id); var CashBookBalanceDetails = context.CashBookBalanceMng_CashBookBalanceDetail_View.Where(o => o.CashBookBalanceID == id).ToList(); if (CashBookBalance == null) { throw new Exception("Can not found the Cash Book Balance to view"); } data.CashBookBalance = converter.DB2DTO_CashBookBalance(CashBookBalance); data.CashBookBalanceDetails = converter.DB2DTO_CashBookBalanceDetailList(CashBookBalanceDetails); } } } catch (Exception ex) { notification.Type = Library.DTO.NotificationType.Error; notification.Message = ex.Message; } return(data); }
public bool CloseEntryBalance(int userId, int Month, int Year, out Library.DTO.Notification notification) { notification = new Library.DTO.Notification() { Type = Library.DTO.NotificationType.Success }; // Proccess new. //Month = (Month == 1) ? 12 : Month - 1; //Year = (Month == 1) ? Year - 1 : Year; try { using (CashBookBalanceMngEntities context = CreateContext()) { var cashBalance = context.CashBookBalanceMng_CashBookBalance_View.OrderByDescending(o => o.UpdatedDate).FirstOrDefault(); Month = (cashBalance.BalanceMonth.Value == 12) ? 1 : (cashBalance.BalanceMonth.Value + 1); Year = (cashBalance.BalanceMonth.Value == 12) ? (cashBalance.BalanceYear.Value + 1) : cashBalance.BalanceYear.Value; var retVal = new SqlParameter() { ParameterName = "@ReturnValue", SqlDbType = System.Data.SqlDbType.Int, Direction = System.Data.ParameterDirection.Output }; object[] parameters = { new SqlParameter() { ParameterName = "@ParameterMonth", SqlDbType = System.Data.SqlDbType.BigInt, Value = Month }, new SqlParameter() { ParameterName = "@ParameterYear", SqlDbType = System.Data.SqlDbType.BigInt, Value = Year }, new SqlParameter() { ParameterName = "@ParameterUserId", SqlDbType = System.Data.SqlDbType.BigInt, Value = userId }, retVal }; string command = string.Format("exec @ReturnValue = dbo.CashBookBalanceMng_function_CloseEntryCashBookBalance2 @ParameterMonth, @ParameterYear, @ParameterUserId"); int result = context.Database.ExecuteSqlCommand(command, parameters); if ((int)retVal.Value == 98) { notification.Type = Library.DTO.NotificationType.Error; notification.Message = "Cash balance in this time alreay exist!"; return(false); } return(true); } } catch (Exception ex) { notification.Type = Library.DTO.NotificationType.Error; notification.Message = ex.Message; return(false); } }