/// <summary> /// Updates a record in the <c>CarrierAcct</c> table. /// </summary> /// <param name="value">The <see cref="CarrierAcctRow"/> /// object used to update the table record.</param> /// <returns>true if the record was updated; otherwise, false.</returns> public virtual bool Update(CarrierAcctRow value) { string sqlStr = "UPDATE [dbo].[CarrierAcct] SET " + "[name]=" + _db.CreateSqlParameterName("Name") + ", " + "[status]=" + _db.CreateSqlParameterName("Status") + ", " + "[rating_type]=" + _db.CreateSqlParameterName("Rating_type") + ", " + "[prefix_out]=" + _db.CreateSqlParameterName("Prefix_out") + ", " + "[strip_1plus]=" + _db.CreateSqlParameterName("Strip_1plus") + ", " + "[intl_dial_code]=" + _db.CreateSqlParameterName("Intl_dial_code") + ", " + "[partner_id]=" + _db.CreateSqlParameterName("Partner_id") + ", " + "[calling_plan_id]=" + _db.CreateSqlParameterName("Calling_plan_id") + ", " + "[max_call_length]=" + _db.CreateSqlParameterName("Max_call_length") + " WHERE " + "[carrier_acct_id]=" + _db.CreateSqlParameterName("Carrier_acct_id"); IDbCommand cmd = _db.CreateCommand(sqlStr); AddParameter(cmd, "Name", value.Name); AddParameter(cmd, "Status", value.Status); AddParameter(cmd, "Rating_type", value.Rating_type); AddParameter(cmd, "Prefix_out", value.Prefix_out); AddParameter(cmd, "Strip_1plus", value.Strip_1plus); AddParameter(cmd, "Intl_dial_code", value.Intl_dial_code); AddParameter(cmd, "Partner_id", value.Partner_id); AddParameter(cmd, "Calling_plan_id", value.Calling_plan_id); AddParameter(cmd, "Max_call_length", value.Max_call_length); AddParameter(cmd, "Carrier_acct_id", value.Carrier_acct_id); return(0 != cmd.ExecuteNonQuery()); }
static CarrierAcctDto mapToCarrierAcct(CarrierAcctRow pCarrierAcctRow, PartnerDto pPartner, CallingPlanDto pCallingPlan) { if (pCarrierAcctRow == null) { return(null); } if (pPartner == null) { return(null); } if (pCallingPlan == null) { return(null); } var _carrierAcct = new CarrierAcctDto { CarrierAcctId = pCarrierAcctRow.Carrier_acct_id, IntlDialCode = pCarrierAcctRow.Intl_dial_code, Name = pCarrierAcctRow.Name, Strip1Plus = pCarrierAcctRow.Strip1plus, PrefixOut = pCarrierAcctRow.Prefix_out, Status = pCarrierAcctRow.AccountStatus, RatingType = pCarrierAcctRow.RatingType, MaxCallLength = pCarrierAcctRow.MaxCallLength, Partner = pPartner, CallingPlan = pCallingPlan }; return(_carrierAcct); }
/// <summary> /// Reads data from the provided data reader and returns /// an array of mapped objects. /// </summary> /// <param name="reader">The <see cref="System.Data.IDataReader"/> object to read data from the table.</param> /// <param name="startIndex">The index of the first record to map.</param> /// <param name="length">The number of records to map.</param> /// <param name="totalRecordCount">A reference parameter that returns the total number /// of records in the reader object if 0 was passed into the method; otherwise it returns -1.</param> /// <returns>An array of <see cref="CarrierAcctRow"/> objects.</returns> protected virtual CarrierAcctRow[] MapRecords(IDataReader reader, int startIndex, int length, ref int totalRecordCount) { if (0 > startIndex) { throw new ArgumentOutOfRangeException("startIndex", startIndex, "StartIndex cannot be less than zero."); } if (0 > length) { throw new ArgumentOutOfRangeException("length", length, "Length cannot be less than zero."); } int carrier_acct_idColumnIndex = reader.GetOrdinal("carrier_acct_id"); int nameColumnIndex = reader.GetOrdinal("name"); int statusColumnIndex = reader.GetOrdinal("status"); int rating_typeColumnIndex = reader.GetOrdinal("rating_type"); int prefix_outColumnIndex = reader.GetOrdinal("prefix_out"); int strip_1plusColumnIndex = reader.GetOrdinal("strip_1plus"); int intl_dial_codeColumnIndex = reader.GetOrdinal("intl_dial_code"); int partner_idColumnIndex = reader.GetOrdinal("partner_id"); int calling_plan_idColumnIndex = reader.GetOrdinal("calling_plan_id"); int max_call_lengthColumnIndex = reader.GetOrdinal("max_call_length"); System.Collections.ArrayList recordList = new System.Collections.ArrayList(); int ri = -startIndex; while (reader.Read()) { ri++; if (ri > 0 && ri <= length) { CarrierAcctRow record = new CarrierAcctRow(); recordList.Add(record); record.Carrier_acct_id = Convert.ToInt16(reader.GetValue(carrier_acct_idColumnIndex)); record.Name = Convert.ToString(reader.GetValue(nameColumnIndex)); record.Status = Convert.ToByte(reader.GetValue(statusColumnIndex)); record.Rating_type = Convert.ToByte(reader.GetValue(rating_typeColumnIndex)); record.Prefix_out = Convert.ToString(reader.GetValue(prefix_outColumnIndex)); record.Strip_1plus = Convert.ToInt16(reader.GetValue(strip_1plusColumnIndex)); record.Intl_dial_code = Convert.ToString(reader.GetValue(intl_dial_codeColumnIndex)); record.Partner_id = Convert.ToInt32(reader.GetValue(partner_idColumnIndex)); record.Calling_plan_id = Convert.ToInt32(reader.GetValue(calling_plan_idColumnIndex)); record.Max_call_length = Convert.ToInt16(reader.GetValue(max_call_lengthColumnIndex)); if (ri == length && 0 != totalRecordCount) { break; } } } totalRecordCount = 0 == totalRecordCount ? ri + startIndex : -1; return((CarrierAcctRow[])(recordList.ToArray(typeof(CarrierAcctRow)))); }
CarrierAcct(CarrierAcctRow pCarrierAcctRow) { carrierAcctRow = pCarrierAcctRow; using (var _db = new Rbr_Db()) { partnerRow = _db.PartnerCollection.GetByPrimaryKey(carrierAcctRow.Partner_id); } if (partnerRow == null) { throw new Exception("Couldn't FIND PartnerAcct for CarrierAcctId: " + carrierAcctRow.Carrier_acct_id); } if (partnerRow.Status != (byte)Status.Active) { throw new Exception("PartnerAcct NOT Active for CarrierAcctId: " + carrierAcctRow.Carrier_acct_id); } //TODO: set max number of calls from db MaxNumberOfCalls = 1000; }
/// <summary> /// Adds a new record into the <c>CarrierAcct</c> table. /// </summary> /// <param name="value">The <see cref="CarrierAcctRow"/> object to be inserted.</param> public virtual void Insert(CarrierAcctRow value) { string sqlStr = "INSERT INTO [dbo].[CarrierAcct] (" + "[carrier_acct_id], " + "[name], " + "[status], " + "[rating_type], " + "[prefix_out], " + "[strip_1plus], " + "[intl_dial_code], " + "[partner_id], " + "[calling_plan_id], " + "[max_call_length]" + ") VALUES (" + _db.CreateSqlParameterName("Carrier_acct_id") + ", " + _db.CreateSqlParameterName("Name") + ", " + _db.CreateSqlParameterName("Status") + ", " + _db.CreateSqlParameterName("Rating_type") + ", " + _db.CreateSqlParameterName("Prefix_out") + ", " + _db.CreateSqlParameterName("Strip_1plus") + ", " + _db.CreateSqlParameterName("Intl_dial_code") + ", " + _db.CreateSqlParameterName("Partner_id") + ", " + _db.CreateSqlParameterName("Calling_plan_id") + ", " + _db.CreateSqlParameterName("Max_call_length") + ")"; IDbCommand cmd = _db.CreateCommand(sqlStr); AddParameter(cmd, "Carrier_acct_id", value.Carrier_acct_id); AddParameter(cmd, "Name", value.Name); AddParameter(cmd, "Status", value.Status); AddParameter(cmd, "Rating_type", value.Rating_type); AddParameter(cmd, "Prefix_out", value.Prefix_out); AddParameter(cmd, "Strip_1plus", value.Strip_1plus); AddParameter(cmd, "Intl_dial_code", value.Intl_dial_code); AddParameter(cmd, "Partner_id", value.Partner_id); AddParameter(cmd, "Calling_plan_id", value.Calling_plan_id); AddParameter(cmd, "Max_call_length", value.Max_call_length); cmd.ExecuteNonQuery(); }
static CarrierAcctRow mapToCarrierAcctRow(CarrierAcctDto pCarrierAcct) { if (pCarrierAcct == null) { return(null); } var _carrierAcctRow = new CarrierAcctRow(); _carrierAcctRow.Carrier_acct_id = pCarrierAcct.CarrierAcctId; _carrierAcctRow.Intl_dial_code = pCarrierAcct.IntlDialCode; _carrierAcctRow.Name = pCarrierAcct.Name; _carrierAcctRow.Strip1plus = pCarrierAcct.Strip1Plus; _carrierAcctRow.Prefix_out = pCarrierAcct.PrefixOut; _carrierAcctRow.AccountStatus = pCarrierAcct.Status; _carrierAcctRow.RatingType = pCarrierAcct.RatingType; _carrierAcctRow.MaxCallLength = pCarrierAcct.MaxCallLength; _carrierAcctRow.Partner_id = pCarrierAcct.PartnerId; _carrierAcctRow.Calling_plan_id = pCarrierAcct.CallingPlan.CallingPlanId; return(_carrierAcctRow); }
//-------------------- Private ---------------------------------------------- static CarrierAcctDto getAcct(Rbr_Db pDb, CarrierAcctRow pCarrierAcctRow) { if (pCarrierAcctRow == null) { return(null); } var _partner = PartnerManager.Get(pDb, pCarrierAcctRow.Partner_id); if (_partner == null) { return(null); } var _callingPlan = CallingPlanManager.GetCallingPlan(pDb, pCarrierAcctRow.Calling_plan_id); if (_callingPlan == null) { return(null); } var _carrierAcct = mapToCarrierAcct(pCarrierAcctRow, _partner, _callingPlan); _carrierAcct.DefaultRoute = CarrierRouteManager.GetDefaultRoute(pDb, _carrierAcct, RouteState.Valid); //-- GetDefaultCarrierRatingInfo if (_carrierAcct.IsRatingEnabled) { var _defaultCarrierRouteRow = pDb.CarrierRouteCollection.GetByPrimaryKey(-pCarrierAcctRow.Carrier_acct_id); var _carrierRateHistoryRows = pDb.CarrierRateHistoryCollection.GetByCarrier_route_id(_defaultCarrierRouteRow.Carrier_route_id); if (_carrierRateHistoryRows.Length < 1) { TimokLogger.Instance.LogRbr(LogSeverity.Critical, "CarrierAcctManager.GetDefaultCarrierRatingInfo", string.Format("Unexpected: _carrierRateHistoryRows.Length = {0}", _carrierRateHistoryRows.Length)); throw new Exception(string.Format("CarrierAcctManager.GetDefaultCarrierRatingInfo, Unexpected: _carrierRateHistoryRows.Length = {0}", _carrierRateHistoryRows.Length)); } _carrierAcct.DefaultRatingInfo = RatingManager.GetRatingInfo(pDb, _carrierRateHistoryRows[0].Rate_info_id, false); } return(_carrierAcct); }
/// <summary> /// Converts <see cref="System.Data.DataRow"/> to <see cref="CarrierAcctRow"/>. /// </summary> /// <param name="row">The <see cref="System.Data.DataRow"/> object to be mapped.</param> /// <returns>A reference to the <see cref="CarrierAcctRow"/> object.</returns> protected virtual CarrierAcctRow MapRow(DataRow row) { CarrierAcctRow mappedObject = new CarrierAcctRow(); DataTable dataTable = row.Table; DataColumn dataColumn; // Column "Carrier_acct_id" dataColumn = dataTable.Columns["Carrier_acct_id"]; if (!row.IsNull(dataColumn)) { mappedObject.Carrier_acct_id = (short)row[dataColumn]; } // Column "Name" dataColumn = dataTable.Columns["Name"]; if (!row.IsNull(dataColumn)) { mappedObject.Name = (string)row[dataColumn]; } // Column "Status" dataColumn = dataTable.Columns["Status"]; if (!row.IsNull(dataColumn)) { mappedObject.Status = (byte)row[dataColumn]; } // Column "Rating_type" dataColumn = dataTable.Columns["Rating_type"]; if (!row.IsNull(dataColumn)) { mappedObject.Rating_type = (byte)row[dataColumn]; } // Column "Prefix_out" dataColumn = dataTable.Columns["Prefix_out"]; if (!row.IsNull(dataColumn)) { mappedObject.Prefix_out = (string)row[dataColumn]; } // Column "Strip_1plus" dataColumn = dataTable.Columns["Strip_1plus"]; if (!row.IsNull(dataColumn)) { mappedObject.Strip_1plus = (short)row[dataColumn]; } // Column "Intl_dial_code" dataColumn = dataTable.Columns["Intl_dial_code"]; if (!row.IsNull(dataColumn)) { mappedObject.Intl_dial_code = (string)row[dataColumn]; } // Column "Partner_id" dataColumn = dataTable.Columns["Partner_id"]; if (!row.IsNull(dataColumn)) { mappedObject.Partner_id = (int)row[dataColumn]; } // Column "Calling_plan_id" dataColumn = dataTable.Columns["Calling_plan_id"]; if (!row.IsNull(dataColumn)) { mappedObject.Calling_plan_id = (int)row[dataColumn]; } // Column "Max_call_length" dataColumn = dataTable.Columns["Max_call_length"]; if (!row.IsNull(dataColumn)) { mappedObject.Max_call_length = (short)row[dataColumn]; } return(mappedObject); }
/// <summary> /// Deletes the specified object from the <c>CarrierAcct</c> table. /// </summary> /// <param name="value">The <see cref="CarrierAcctRow"/> object to delete.</param> /// <returns>true if the record was deleted; otherwise, false.</returns> public bool Delete(CarrierAcctRow value) { return(DeleteByPrimaryKey(value.Carrier_acct_id)); }