public override NumberingPlanForNgn GetById(long id, string dataSourceName = null, Globals.DataSource.Type dataSource = Globals.DataSource.Type.Default) { NumberingPlanForNgn dialingRecord = null; try { dialingRecord = base.GetById(id, dataSourceName, dataSource); if (null != dialingRecord) { var temporaryList = new List <NumberingPlanForNgn> { dialingRecord } as IEnumerable <NumberingPlanForNgn>; FillCountriesAndCurrenciesData(ref temporaryList); dialingRecord = temporaryList.First(); } return(dialingRecord); } catch (Exception ex) { throw ex.InnerException; } }
public virtual IEnumerable <T> Get(Dictionary <string, object> whereConditions, int limit = 25, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var dt = new DataTable(); //Get our table columns from the schema var thisModelTableColumns = _schema.DataFields .Where(field => field.TableField != null) .Select(field => field.TableField.ColumnName) .ToList(); //Decide on the Data Source Name var finalDataSourceName = (string.IsNullOrEmpty(dataSourceName) ? _schema.DataSourceName : dataSourceName); //Validate the presence of the where conditions if (whereConditions == null || whereConditions.Count == 0) { var errorMessage = String.Format( "The \"whereConditions\" parameter is either null or empty. Kindly pass a valid \"whereConditions\" parameter. Class name: \"{0}\".", typeof(T).Name); throw new Exception(errorMessage); } //Proceed with getting the data if (_schema.DataSourceType == Globals.DataSource.Type.DbTable) { dt = DbRoutines.Select(finalDataSourceName, thisModelTableColumns, whereConditions, limit); } return(dt.ConvertToList <T>()); }
public override DepartmentHeadRole GetById(long id, string dataSourceName = null, Globals.DataSource.Type dataSource = Globals.DataSource.Type.Default) { DepartmentHeadRole role = null; try { role = base.GetById(id, dataSourceName, dataSource); if (role != null) { var temporaryList = new List <DepartmentHeadRole> { role } as IEnumerable <DepartmentHeadRole>; temporaryList = temporaryList.IncludeSiteDepartments(); role = temporaryList.First(); } return(role); } catch (Exception ex) { throw ex.InnerException; } }
public override bool Update(GatewayInfo dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var gatewayInfo = _gatewaysInfo.Find(item => item.GatewayId == dataObject.GatewayId && item.SiteId == dataObject.SiteId); if (gatewayInfo != null) { var status = base.Update(dataObject, dataSourceName, dataSourceType); if (status) { _gatewaysInfo.Remove(gatewayInfo); dataObject = dataObject.GetWithRelations( item => item.Gateway, item => item.GatewayRatesInfo, item => item.Site, item => item.Pool); _gatewaysInfo.Add(dataObject); } return(status); } return(false); }
public override int Insert(Country dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var isContained = _countries.Contains(dataObject); var itExists = _countries.Exists( item => item.Iso3Code == dataObject.Iso3Code || item.Iso2Code == dataObject.Iso2Code || item.Name == dataObject.Name); if (isContained || itExists) { return(-1); } var rowId = base.Insert(dataObject, dataSourceName, dataSourceType); if (rowId > 0) { dataObject.Id = rowId; dataObject = dataObject.GetWithRelations(item => item.Currency); _countries.Add(dataObject); } return(rowId); }
public override bool Update(PhoneCallExclusion existingExclusionObject, string dataSourceName = null, Globals.DataSource.Type dataSource = Globals.DataSource.Type.Default) { // NULL value check if (null == existingExclusionObject) { throw new Exception("PhoneCallExclusions#Update: Cannot update NULL phone call exclusion objects."); } try { existingExclusionObject.ExclusionSubject = CleanExclusionSubject(existingExclusionObject.ExclusionSubject); existingExclusionObject.ExclusionType = LookUpExclusionType(existingExclusionObject.ExclusionType, true); existingExclusionObject.AutoMark = LookUpAutoMark(existingExclusionObject.AutoMark, true); existingExclusionObject.ZeroCost = LookUpZeroCost(existingExclusionObject.ZeroCost, true); return(base.Update(existingExclusionObject, dataSourceName, dataSource)); } catch (Exception ex) { throw ex.InnerException; } }
public override PhoneCallExclusion GetById(long id, string dataSourceName = null, Globals.DataSource.Type dataSource = Globals.DataSource.Type.Default) { PhoneCallExclusion exclusion = null; try { exclusion = base.GetById(id, dataSourceName, dataSource); if (exclusion != null) { var temporaryList = new List <PhoneCallExclusion> { exclusion }; MapDataToReadable(ref temporaryList); exclusion = temporaryList.First(); } return(exclusion); } catch (Exception ex) { throw ex.InnerException; } }
public override IEnumerable <PhoneCall> GetAll(string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { //string sqlStatement = sqlAccessor.GetAllPhoneCalls(dbTables); //return base.GetAll(SQL_QUERY: sqlStatement); throw new NotImplementedException(); }
public override int Insert(GatewayInfo dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var isContained = _gatewaysInfo.Contains(dataObject); var itExists = _gatewaysInfo.Exists(item => item.GatewayId == dataObject.GatewayId && item.SiteId == dataObject.SiteId); if (isContained || itExists) { return(-1); } var rowId = base.Insert(dataObject, dataSourceName, dataSourceType); if (rowId > 0) { dataObject = dataObject.GetWithRelations( item => item.Gateway, item => item.GatewayRatesInfo, item => item.Site, item => item.Pool); } _gatewaysInfo.Add(dataObject); return(rowId); }
public virtual bool Delete(T dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { string finalDataSourceName; var whereConditions = new Dictionary <string, object>(); DataField idField; //var objectFieldNameWithIdAttribute = string.Empty; // // Decide the DataSource Name if (false == string.IsNullOrEmpty(dataSourceName)) { finalDataSourceName = dataSourceName; } else if (false == string.IsNullOrEmpty(_schema.DataSourceName)) { finalDataSourceName = _schema.DataSourceName; } else { throw new Exception("Insert Error: No Data Source was provided in the " + dataObject.GetType().Name + ". Kindly review the class definition or the data mapper definition."); } // // Decide the IDField value idField = _schema.DataFields.Find(field => field.TableField != null && field.TableField.IsIdField); if (null == idField) { throw new Exception( "Delete Error: The Data Model does not have IDField property. Kindly mark the properties of " + typeof(T).Name + " with [IsIDField]."); } // // Get the object field that is marked with the IsIDField attribute var dataObjectAttr = dataObject.GetType().GetProperty(idField.Name); var dataObjectAttrValue = dataObjectAttr.GetValue(dataObject, null); if (dataObjectAttrValue == null) { throw new Exception( "The ID Field's value is to NULL. Kindly set the value of the ID Field for the object of type: " + typeof(T).Name); } //long.TryParse(dataObjectAttrValue.ToString(), out ID); //return DBRoutines.DELETE(tableName: finalDataSourceName, idFieldName: IDField.TableField.ColumnName, ID: ID); whereConditions.Add(idField.TableField.ColumnName, Convert.ChangeType(dataObjectAttrValue, idField.TableField.FieldType)); return(DbRoutines.Delete(finalDataSourceName, whereConditions)); }
public override bool Delete(MailTemplate dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var template = _mailTemplates.Find(item => item.Id == dataObject.Id); if (template != null) { _mailTemplates.Remove(template); return(base.Delete(dataObject, dataSourceName, dataSourceType)); } return(false); }
public override bool Delete(Pool dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var pool = _pools.Find(item => item.Id == dataObject.Id); if (pool != null) { _pools.Remove(pool); return(base.Delete(dataObject, dataSourceName, dataSourceType)); } return(false); }
public override bool Update(CallMarkerStatus dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var markerstatus = _callMarkerStatus.FirstOrDefault(item => item.Id == dataObject.Id); if (markerstatus != null) { _callMarkerStatus.Remove(markerstatus); _callMarkerStatus.Add(dataObject); return(base.Update(dataObject, dataSourceName, dataSourceType)); } return(false); }
public override bool Delete(CallType dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var callType = _callTypes.Find(item => item.Id == dataObject.Id); if (callType != null) { _callTypes.Remove(callType); return(base.Delete(dataObject, dataSourceName, dataSourceType)); } return(false); }
public override bool Delete(MonitoringServerInfo dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var server = _monitoringServers.Find(item => item.Id == dataObject.Id); if (server != null) { _monitoringServers.Remove(server); return(base.Delete(dataObject, dataSourceName, dataSourceType)); } return(false); }
public override bool Delete(Did dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var did = _diDs.Find(item => item.Id == dataObject.Id); if (did != null) { _diDs.Remove(did); return(base.Delete(dataObject, dataSourceName, dataSourceType)); } return(false); }
public override bool Delete(Gateway dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var gateway = _gateways.Find(item => item.Id == dataObject.Id); if (gateway != null) { _gateways.Remove(gateway); return(base.Delete(dataObject, dataSourceName, dataSourceType)); } return(false); }
public override bool Update(Department dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var department = _departments.Find(item => item.Id == dataObject.Id); if (department != null) { _departments.Remove(department); _departments.Add(dataObject); return(base.Update(dataObject, dataSourceName, dataSourceType)); } return(false); }
public override bool Update(Currency dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var currency = _currencies.Find(item => item.Id == dataObject.Id); if (currency != null) { _currencies.Remove(currency); _currencies.Add(dataObject); return(base.Update(dataObject, dataSourceName, dataSourceType)); } return(false); }
public override int Insert(CallType dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var isContained = _callTypes.Contains(dataObject); var itExists = _callTypes.Exists(item => item.TypeId == dataObject.TypeId && item.Name == dataObject.Name); if (isContained || itExists) { return(-1); } dataObject.Id = base.Insert(dataObject, dataSourceName, dataSourceType); _callTypes.Add(dataObject); return(dataObject.Id); }
public override int Insert(MailTemplate dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var isContained = _mailTemplates.Contains(dataObject); var itExists = _mailTemplates.Exists( item => item.Subject == dataObject.Subject && item.TemplateBody == dataObject.TemplateBody); if (isContained || itExists) { return(-1); } dataObject.Id = base.Insert(dataObject, dataSourceName, dataSourceType); _mailTemplates.Add(dataObject); return(dataObject.Id); }
public override bool Delete(GatewayInfo dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var gatewayInfo = _gatewaysInfo.Find( item => item.GatewayId == dataObject.GatewayId && item.SiteId == dataObject.SiteId && item.PoolId == dataObject.PoolId); if (gatewayInfo != null) { _gatewaysInfo.Remove(gatewayInfo); return(base.Delete(dataObject, dataSourceName, dataSourceType)); } return(false); }
public override int Insert(Did dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var isContained = _diDs.Contains(dataObject); var itExists = _diDs.Exists( item => item.Regex == dataObject.Regex || (item.Regex == dataObject.Regex && item.SiteId == dataObject.SiteId)); if (isContained || itExists) { return(-1); } dataObject.Id = base.Insert(dataObject, dataSourceName, dataSourceType); _diDs.Add(dataObject); return(dataObject.Id); }
public virtual T GetById(long id, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var dt = new DataTable(); const int maximumLimit = 1; //Get our table columns from the schema var thisModelTableColumns = _schema.DataFields .Where(field => field.TableField != null) .Select(field => field.TableField.ColumnName) .ToList(); //Decide on the Data Source Name var finalDataSourceName = (string.IsNullOrEmpty(dataSourceName) ? _schema.DataSourceName : dataSourceName); //Validate the presence of the ID if (id <= 0) { var errorMessage = String.Format("The ID Field is either null or zero. Kindly pass a valid ID. Class name: \"{0}\".", typeof(T).Name); throw new Exception(errorMessage); } //Construct the record ID condition var condition = new Dictionary <string, object>(); condition.Add(_schema.IdFieldName, id); //Proceed with getting the data if (_schema.DataSourceType == Globals.DataSource.Type.DbTable) { dt = DbRoutines.Select(finalDataSourceName, thisModelTableColumns, condition, maximumLimit); } //It will either return a data table with one row or zero rows if (dt.Rows.Count == 0) { return((T)Activator.CreateInstance(typeof(T))); } return(dt.ConvertToList <T>().FirstOrDefault <T>()); }
public override IEnumerable <PhoneCallExclusion> GetAll(string dataSourceName = null, Globals.DataSource.Type dataSource = Globals.DataSource.Type.Default) { List <PhoneCallExclusion> exclusions = null; try { exclusions = base.GetAll(dataSourceName, dataSource).ToList(); if (exclusions != null && exclusions.Count > 0) { MapDataToReadable(ref exclusions); } return(exclusions); } catch (Exception ex) { throw ex.InnerException; } }
public override int Insert(CallMarkerStatus dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var markerstatus = _callMarkerStatus.FirstOrDefault( item => item.PhoneCallsTable == dataObject.PhoneCallsTable || item.Type == dataObject.Type || item.Timestamp == dataObject.Timestamp ); if (markerstatus == null) { var rowId = base.Insert(dataObject, dataSourceName, dataSourceType); dataObject.Id = rowId; _callMarkerStatus.Add(dataObject); return(rowId); } return(-1); }
public override bool Update(Country dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var country = _countries.Find(item => item.Id == dataObject.Id); if (country != null) { var status = base.Update(dataObject, dataSourceName, dataSourceType); if (status) { _countries.Remove(country); dataObject = dataObject.GetWithRelations(item => item.Currency); _countries.Add(dataObject); } return(status); } return(false); }
public override IEnumerable <DepartmentHeadRole> GetAll(string dataSourceName = null, Globals.DataSource.Type dataSource = Globals.DataSource.Type.Default) { IEnumerable <DepartmentHeadRole> roles = null; try { roles = base.GetAll(dataSourceName, dataSource); if (roles != null && roles.Count() > 0) { roles = roles.IncludeSiteDepartments(); } return(roles); } catch (Exception ex) { throw ex.InnerException; } }
public virtual IEnumerable <T> Get(Expression <Func <T, bool> > predicate, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { DataTable dt; if (predicate == null) { var errorMessage = string.Format("There is no defined Predicate. {0} ", typeof(T).Name); throw new Exception(errorMessage); } var ev = new CustomExpressionVisitor(); var whereClause = ev.Translate(predicate); if (string.IsNullOrEmpty(dataSourceName)) { if (string.IsNullOrEmpty(whereClause)) { dt = DbRoutines.Select(_schema.DataSourceName); } else { dt = DbRoutines.Select(_schema.DataSourceName, whereClause); } } else { if (string.IsNullOrEmpty(whereClause)) { dt = DbRoutines.Select(dataSourceName); } else { dt = DbRoutines.Select(dataSourceName, whereClause); } } return(dt.ConvertToList <T>()); }
public override int Insert(MonitoringServerInfo dataObject, string dataSourceName = null, Globals.DataSource.Type dataSourceType = Globals.DataSource.Type.Default) { var isContained = _monitoringServers.Contains(dataObject); var itExists = _monitoringServers.Exists( item => item.InstanceHostName == dataObject.InstanceHostName && item.InstanceName == dataObject.InstanceName && item.DatabaseName == dataObject.DatabaseName && item.PhoneCallsTable == dataObject.PhoneCallsTable ); if (isContained || itExists) { return(-1); } dataObject.Id = base.Insert(dataObject, dataSourceName, dataSourceType); _monitoringServers.Add(dataObject); return(dataObject.Id); }