public Hashtable GetAllOffice()
        {
            Hashtable retData = new Hashtable();
            string query = @"SELECT [ID], [BranchID], [Name], [UpdateBy], [UpdateTime] FROM [Office]";
            DataSet dataSet = DataAccess.ExecuteQuery(query);

            if ((dataSet != null) && (dataSet.Tables.Count > 0) && (dataSet.Tables[0].Rows.Count > 0))
            {
                for (int i = 0; i < dataSet.Tables[0].Rows.Count; i++)
                {
                    Office office = new Office(dataSet.Tables[0].Rows[i][0].ToString());
                    string branchID = null;
                    if (dataSet.Tables[0].Rows[i][1] != DBNull.Value)
                    {
                        branchID = dataSet.Tables[0].Rows[i][1].ToString();
                        office.Branch = new Branch(branchID);
                    }
                    else
                    {
                        office.Branch = null;
                    }
                    
                    office.Name = dataSet.Tables[0].Rows[i][2].ToString();

                    if (dataSet.Tables[0].Rows[i][3] != DBNull.Value)
                    {
                        office.UpdateBy = dataSet.Tables[0].Rows[i][3].ToString();
                    }
                    else
                    {
                        office.UpdateBy = null;
                    }

                    if (dataSet.Tables[0].Rows[i][4] != DBNull.Value)
                    {
                        office.UpdateTime = (DateTime)dataSet.Tables[0].Rows[i][4];
                    }
                    else
                    {
                        office.UpdateTime = DateTime.MaxValue;
                    }

                    retData[office.Id] = office;
                }
            }

            return retData;
        }
Example #2
0
        public Hashtable GetAllBroker()
        {
            Hashtable retData = new Hashtable();
            string query = @"SELECT a.[ID], a.[BrokerTypeID], a.[OfficeID], a.[SupervisorBrokerID], b.[Name] as SupervisorName, a.[Name], a.[EntranceDate], a.[LeaveDate], a.[IsActive], a.[UpdateBy], a.[UpdateTime], a.[Email], 
                                 a.[AECommissionCode],a.[SUPCommissionCode],a.[MANCommissionCode], c.AdjustRate , a.[SupporterID] 
                             FROM [Broker] a left outer join [Broker] b on a.SupervisorBrokerID = b.ID 
                                             left outer join [BrokerRate] c on a.ID = c.BrokerID 
                             WHERE a.IsActive = 1";
            DataSet dataSet = DataAccess.ExecuteQuery(query);

            if ((dataSet != null) && (dataSet.Tables.Count > 0) && (dataSet.Tables[0].Rows.Count > 0))
            {
                for (int i = 0; i < dataSet.Tables[0].Rows.Count; i++)
                {
                    Broker broker = new Broker(dataSet.Tables[0].Rows[i][0].ToString());

                    // Broker Type
                    broker.BrokerTypeId = dataSet.Tables[0].Rows[i][1].ToString();
                    
                    // Office
                    if (dataSet.Tables[0].Rows[i][2] != DBNull.Value)
                    {
                        // Dummy office to hold the OfficeID
                        string officeID = dataSet.Tables[0].Rows[i][2].ToString();
                        Office office = new Office(officeID);
                        broker.Office = office;
                    }
                    
                    if (dataSet.Tables[0].Rows[i][3] != DBNull.Value)
                    {
                        // Dummy broker to store only Supervisor Broker ID
                        Broker supervisor = new Broker(dataSet.Tables[0].Rows[i][3].ToString());
                        broker.Supervisor = supervisor;
                    }
                    
                    broker.Name = dataSet.Tables[0].Rows[i][5].ToString();
                    broker.IsActive = true;

                    if (dataSet.Tables[0].Rows[i][12] != DBNull.Value)
                    {
                        broker.AECommissionCode = dataSet.Tables[0].Rows[i][12].ToString().Trim();
                    }
                    if (dataSet.Tables[0].Rows[i][13] != DBNull.Value)
                    {
                        broker.SUPCommissionCode = dataSet.Tables[0].Rows[i][13].ToString().Trim();
                    }
                    if (dataSet.Tables[0].Rows[i][14] != DBNull.Value)
                    {
                        broker.MANCommissionCode = dataSet.Tables[0].Rows[i][14].ToString().Trim();
                    }

                    if (dataSet.Tables[0].Rows[i][15] != DBNull.Value)
                    {
                        broker.AdjustRate = new BrokerRate(broker);
                        broker.AdjustRate.AdjustRate = (double)dataSet.Tables[0].Rows[i][15];
                    }
                    if (dataSet.Tables[0].Rows[i][16] != DBNull.Value)
                    {
                        // Dummy broker to store only Supporter Broker ID
                        Broker supporter = new Broker(dataSet.Tables[0].Rows[i][16].ToString());
                        broker.Supporter = supporter;
                    }
                    else
                    {
                        broker.AdjustRate = null;
                    }

                    retData[broker.Id] = broker;
                }

                // Re iterate the broker list to link to the real supervisor objects (instead of dummies which only store the id) 
                for (int i = 0; i < dataSet.Tables[0].Rows.Count; i++)
                {
                    string brokerID = dataSet.Tables[0].Rows[i][0].ToString();
                    Broker broker = (Broker)retData[brokerID];
                    if ((broker != null) && (broker.Supervisor != null))
                    {
                        Broker supervisor = (Broker)retData[broker.Supervisor.Id];
                        if (supervisor != null)
                        {
                            //broker.Supervisor = supervisor;
                            broker.JoinGroup(supervisor);
                        }
                        else
                        {
                            broker.Supervisor = null;
                        }
                    }
                }
            }

            return retData;
        }
 public OfficeCalculationResult(Office office)
 {
     this.Office = office;
 }