Exemple #1
0
        internal static PartnerRow MapToPartnerRow(PartnerDto pPartner)
        {
            if (pPartner == null)
            {
                return(null);
            }

            var _partnerRow = new PartnerRow();

            _partnerRow.Partner_id        = pPartner.PartnerId;
            _partnerRow.Name              = pPartner.Name;
            _partnerRow.AccountStatus     = pPartner.Status;
            _partnerRow.Virtual_switch_id = pPartner.VirtualSwitchId;

            if (pPartner.ContactInfo != null)
            {
                _partnerRow.Contact_info_id = pPartner.ContactInfo.ContactInfoId;
            }
            if (pPartner.BillingSchedule != null)
            {
                _partnerRow.Billing_schedule_id = pPartner.BillingSchedule.ScheduleId;
            }

            return(_partnerRow);
        }
Exemple #2
0
        /// <summary>
        /// Adds a new record into the <c>Partner</c> table.
        /// </summary>
        /// <param name="value">The <see cref="PartnerRow"/> object to be inserted.</param>
        public virtual void Insert(PartnerRow value)
        {
            string sqlStr = "INSERT INTO [dbo].[Partner] (" +
                            "[partner_id], " +
                            "[name], " +
                            "[status], " +
                            "[contact_info_id], " +
                            "[billing_schedule_id], " +
                            "[virtual_switch_id]" +
                            ") VALUES (" +
                            _db.CreateSqlParameterName("Partner_id") + ", " +
                            _db.CreateSqlParameterName("Name") + ", " +
                            _db.CreateSqlParameterName("Status") + ", " +
                            _db.CreateSqlParameterName("Contact_info_id") + ", " +
                            _db.CreateSqlParameterName("Billing_schedule_id") + ", " +
                            _db.CreateSqlParameterName("Virtual_switch_id") + ")";
            IDbCommand cmd = _db.CreateCommand(sqlStr);

            AddParameter(cmd, "Partner_id", value.Partner_id);
            AddParameter(cmd, "Name", value.Name);
            AddParameter(cmd, "Status", value.Status);
            AddParameter(cmd, "Contact_info_id", value.Contact_info_id);
            AddParameter(cmd, "Billing_schedule_id",
                         value.IsBilling_schedule_idNull ? DBNull.Value : (object)value.Billing_schedule_id);
            AddParameter(cmd, "Virtual_switch_id", value.Virtual_switch_id);
            cmd.ExecuteNonQuery();
        }
Exemple #3
0
        internal static void Update(Rbr_Db pDb, PartnerDto pPartner)
        {
            validatePartner(pDb, pPartner);
            PartnerRow _partnerRow = MapToPartnerRow(pPartner);

            if (!pDb.PartnerCollection.Update(_partnerRow))
            {
                throw new Exception("Failed to update Partner; name:" + _partnerRow.Name);
            }
        }
Exemple #4
0
        internal static void Add(Rbr_Db pDb, PartnerDto pPartner)
        {
            //TODO: NEW DAL - VirtualSwitch
            pPartner.VirtualSwitchId = AppConstants.DefaultVirtualSwitchId;

            validatePartner(pDb, pPartner);
            PartnerRow _partnerRow = MapToPartnerRow(pPartner);

            pDb.PartnerCollection.Insert(_partnerRow);
            pPartner.PartnerId = _partnerRow.Partner_id;
        }
Exemple #5
0
        static PartnerDto getInfo(Rbr_Db pDb, PartnerRow pPartnerRow)
        {
            if (pPartnerRow == null)
            {
                return(null);
            }

            ScheduleDto    _billingSchedule = ScheduleManager.Get(pDb, pPartnerRow.Billing_schedule_id);
            ContactInfoDto _contactInfo     = ContactInfoManager.Get(pDb, pPartnerRow.Contact_info_id);

            PersonDto[] _employees = PersonManager.GetByPartnerId(pDb, pPartnerRow.Partner_id);
            return(MapToPartner(pPartnerRow, _billingSchedule, _contactInfo, _employees));
        }
        public CustomerAcct(CustomerAcctRow pCustomerAcctRow)
        {
            customerAcctRow = pCustomerAcctRow;
            status          = (Status)customerAcctRow.Status;
            email           = string.Empty;

            //--
            using (var _db = new Rbr_Db()) {
                partnerRow = _db.PartnerCollection.GetByPrimaryKey(customerAcctRow.Partner_id);
            }
            if (partnerRow == null)
            {
                throw new Exception("Couldn't FIND PartnerRow for Customer: " + customerAcctRow.Customer_acct_id);
            }

            //--
            ServiceRow _serviceRow;

            using (var _db = new Rbr_Db()) {
                _serviceRow = _db.ServiceCollection.GetByPrimaryKey(customerAcctRow.Service_id);
            }
            if (_serviceRow == null)
            {
                throw new Exception("Couldn't FIND ServiceRow for Customer: " + customerAcctRow.Customer_acct_id);
            }
            serviceType     = _serviceRow.ServiceType;
            retailType      = _serviceRow.RetailType;
            isPrepaid       = customerAcctRow.IsPrepaid;
            isRatingEnabled = _serviceRow.IsRatingEnabled;
            callingPlanId   = _serviceRow.Calling_plan_id;

            //TODO: set max number of calls from db
            MaxNumberOfCalls = 1000;

            if (isPrepaid)                      //get email, so we can send balance warnings to Partners as well
            {
                using (var _db = new Rbr_Db()) {
                    var _partnerRow = _db.PartnerCollection.GetByPrimaryKey(customerAcctRow.Partner_id);
                    if (_partnerRow == null)
                    {
                        throw new Exception("Couldn't FIND PartnerRow for Customer: " + customerAcctRow.Customer_acct_id);
                    }
                    var _contactInfoRow = _db.ContactInfoCollection.GetByPrimaryKey(_partnerRow.Contact_info_id);
                    if (_contactInfoRow != null)
                    {
                        email = _contactInfoRow.Email;
                    }
                }
            }
        }
Exemple #7
0
        /// <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="PartnerRow"/> objects.</returns>
        protected virtual PartnerRow[] 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 partner_idColumnIndex          = reader.GetOrdinal("partner_id");
            int nameColumnIndex                = reader.GetOrdinal("name");
            int statusColumnIndex              = reader.GetOrdinal("status");
            int contact_info_idColumnIndex     = reader.GetOrdinal("contact_info_id");
            int billing_schedule_idColumnIndex = reader.GetOrdinal("billing_schedule_id");
            int virtual_switch_idColumnIndex   = reader.GetOrdinal("virtual_switch_id");

            System.Collections.ArrayList recordList = new System.Collections.ArrayList();
            int ri = -startIndex;

            while (reader.Read())
            {
                ri++;
                if (ri > 0 && ri <= length)
                {
                    PartnerRow record = new PartnerRow();
                    recordList.Add(record);

                    record.Partner_id      = Convert.ToInt32(reader.GetValue(partner_idColumnIndex));
                    record.Name            = Convert.ToString(reader.GetValue(nameColumnIndex));
                    record.Status          = Convert.ToByte(reader.GetValue(statusColumnIndex));
                    record.Contact_info_id = Convert.ToInt32(reader.GetValue(contact_info_idColumnIndex));
                    if (!reader.IsDBNull(billing_schedule_idColumnIndex))
                    {
                        record.Billing_schedule_id = Convert.ToInt32(reader.GetValue(billing_schedule_idColumnIndex));
                    }
                    record.Virtual_switch_id = Convert.ToInt32(reader.GetValue(virtual_switch_idColumnIndex));

                    if (ri == length && 0 != totalRecordCount)
                    {
                        break;
                    }
                }
            }

            totalRecordCount = 0 == totalRecordCount ? ri + startIndex : -1;
            return((PartnerRow[])(recordList.ToArray(typeof(PartnerRow))));
        }
Exemple #8
0
        /// <summary>
        /// Converts <see cref="System.Data.DataRow"/> to <see cref="PartnerRow"/>.
        /// </summary>
        /// <param name="row">The <see cref="System.Data.DataRow"/> object to be mapped.</param>
        /// <returns>A reference to the <see cref="PartnerRow"/> object.</returns>
        protected virtual PartnerRow MapRow(DataRow row)
        {
            PartnerRow mappedObject = new PartnerRow();
            DataTable  dataTable    = row.Table;
            DataColumn dataColumn;

            // Column "Partner_id"
            dataColumn = dataTable.Columns["Partner_id"];
            if (!row.IsNull(dataColumn))
            {
                mappedObject.Partner_id = (int)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 "Contact_info_id"
            dataColumn = dataTable.Columns["Contact_info_id"];
            if (!row.IsNull(dataColumn))
            {
                mappedObject.Contact_info_id = (int)row[dataColumn];
            }
            // Column "Billing_schedule_id"
            dataColumn = dataTable.Columns["Billing_schedule_id"];
            if (!row.IsNull(dataColumn))
            {
                mappedObject.Billing_schedule_id = (int)row[dataColumn];
            }
            // Column "Virtual_switch_id"
            dataColumn = dataTable.Columns["Virtual_switch_id"];
            if (!row.IsNull(dataColumn))
            {
                mappedObject.Virtual_switch_id = (int)row[dataColumn];
            }
            return(mappedObject);
        }
Exemple #9
0
        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;
        }
Exemple #10
0
        internal static PartnerDto MapToPartner(PartnerRow pPartnerRow, ScheduleDto pBillingSchedule, ContactInfoDto pContactInfo, PersonDto[] pEmployees)
        {
            if (pPartnerRow == null)
            {
                return(null);
            }

            var _partner = new PartnerDto();

            _partner.PartnerId       = pPartnerRow.Partner_id;
            _partner.Name            = pPartnerRow.Name;
            _partner.Status          = pPartnerRow.AccountStatus;
            _partner.VirtualSwitchId = pPartnerRow.Virtual_switch_id;

            _partner.BillingSchedule = pBillingSchedule;
            _partner.ContactInfo     = pContactInfo;
            _partner.Employees       = pEmployees;

            return(_partner);
        }
Exemple #11
0
        /// <summary>
        /// Updates a record in the <c>Partner</c> table.
        /// </summary>
        /// <param name="value">The <see cref="PartnerRow"/>
        /// object used to update the table record.</param>
        /// <returns>true if the record was updated; otherwise, false.</returns>
        public virtual bool Update(PartnerRow value)
        {
            string sqlStr = "UPDATE [dbo].[Partner] SET " +
                            "[name]=" + _db.CreateSqlParameterName("Name") + ", " +
                            "[status]=" + _db.CreateSqlParameterName("Status") + ", " +
                            "[contact_info_id]=" + _db.CreateSqlParameterName("Contact_info_id") + ", " +
                            "[billing_schedule_id]=" + _db.CreateSqlParameterName("Billing_schedule_id") + ", " +
                            "[virtual_switch_id]=" + _db.CreateSqlParameterName("Virtual_switch_id") +
                            " WHERE " +
                            "[partner_id]=" + _db.CreateSqlParameterName("Partner_id");
            IDbCommand cmd = _db.CreateCommand(sqlStr);

            AddParameter(cmd, "Name", value.Name);
            AddParameter(cmd, "Status", value.Status);
            AddParameter(cmd, "Contact_info_id", value.Contact_info_id);
            AddParameter(cmd, "Billing_schedule_id",
                         value.IsBilling_schedule_idNull ? DBNull.Value : (object)value.Billing_schedule_id);
            AddParameter(cmd, "Virtual_switch_id", value.Virtual_switch_id);
            AddParameter(cmd, "Partner_id", value.Partner_id);
            return(0 != cmd.ExecuteNonQuery());
        }
Exemple #12
0
 public PartnerRowChangeEvent(PartnerRow row, DataRowAction action) {
     this.eventRow = row;
     this.eventAction = action;
 }
Exemple #13
0
 public void RemovePartnerRow(PartnerRow row) {
     this.Rows.Remove(row);
 }
Exemple #14
0
 public void AddPartnerRow(PartnerRow row) {
     this.Rows.Add(row);
 }
Exemple #15
0
        static PartnerDto get(Rbr_Db pDb, int pPartnerId)
        {
            PartnerRow _partnerRow = pDb.PartnerCollection.GetByPrimaryKey(pPartnerId);

            return(getInfo(pDb, _partnerRow));
        }
Exemple #16
0
 /// <summary>
 /// Deletes the specified object from the <c>Partner</c> table.
 /// </summary>
 /// <param name="value">The <see cref="PartnerRow"/> object to delete.</param>
 /// <returns>true if the record was deleted; otherwise, false.</returns>
 public bool Delete(PartnerRow value)
 {
     return(DeleteByPrimaryKey(value.Partner_id));
 }