예제 #1
0
        public static List <Secretary> GetAllSecretaries()
        {
            List <Secretary> secretaries   = new List <Secretary>();
            string           sqlExpression = "SELECT * FROM Secretary WHERE Deleted = 0";

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                connection.Open();
                SqlCommand    command = new SqlCommand(sqlExpression, connection);
                SqlDataReader reader  = command.ExecuteReader();
                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        Person  person  = null;
                        Company company = null;
                        int     id      = (int)reader["Id"];
                        if (reader["PersonId"] != null)
                        {
                            int personId = (int)reader["PersonId"];
                            person = SqlPerson.GetPerson(personId);
                        }
                        if (reader["CompanyId"] != null)
                        {
                            int companyId = (int)reader["CompanyId"];
                            company = new Company()
                            {
                                Id        = companyId,
                                InitState = InitializationState.INITIALIZATION_NEEDED
                            };
                        }
                        int             markerId         = (int)reader["MarkerId"];
                        int             salary           = (int)reader["Salary"];
                        Marker          marker           = SqlMarker.GetMarker(markerId);
                        List <Document> pendingDocuments = SqlSecretaryPendingDocuments.GetPendingDocuments(id);
                        List <Document> createdDocuments = SqlSecretaryCreatedDocuments.GetCurrentDocuments(id);

                        Secretary secretary = new Secretary(person, company, salary)
                        {
                            EmployeeId       = id,
                            Marker           = marker,
                            PendingDocuments = pendingDocuments,
                            CreatedDocuments = createdDocuments
                        };

                        secretaries.Add(secretary);
                    }
                }
            }
            return(secretaries);
        }
예제 #2
0
        public static List <MainSecretary> GetAllMainSecretaries()
        {
            List <MainSecretary> mainSecretaries = new List <MainSecretary>();
            string sqlExpression = "SELECT * FROM MainSecretary WHERE Deleted = 0";

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                connection.Open();
                SqlCommand    command = new SqlCommand(sqlExpression, connection);
                SqlDataReader reader  = command.ExecuteReader();
                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        Person  person  = null;
                        Company company = null;
                        int     id      = (int)reader["Id"];
                        int     salary  = (int)reader["Salary"];
                        if (reader["PersonId"] != DBNull.Value)
                        {
                            int personId = (int)reader["PersonId"];
                            person = SqlPerson.GetPerson(personId);
                        }
                        if (reader["CompanyId"] != DBNull.Value)
                        {
                            int companyId = (int)reader["CompanyId"];
                            company = new Company()
                            {
                                Id        = companyId,
                                InitState = InitializationState.INITIALIZATION_NEEDED
                            };
                        }
                        MainSecretary mainSecretary = new MainSecretary(person, company, salary)
                        {
                            EmployeeId = id
                        };
                        mainSecretaries.Add(mainSecretary);
                    }
                }
            }
            return(mainSecretaries);
        }
예제 #3
0
        public static MainSecretary GetMainSecretary(int id)
        {
            MainSecretary mainSecretary = null;
            string        sqlExpression = "SELECT * FROM MainSecretary WHERE Id = @id AND Deleted = 0";

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                connection.Open();
                SqlCommand command = new SqlCommand(sqlExpression, connection);
                command.Parameters.Add("@id", SqlDbType.Int);
                command.Parameters["@id"].Value = id;
                SqlDataReader reader = command.ExecuteReader();
                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        Person  person  = null;
                        Company company = null;
                        int     salary  = (int)reader["Salary"];
                        if (reader["PersonId"] != DBNull.Value)
                        {
                            int personId = (int)reader["PersonId"];
                            person = SqlPerson.GetPerson(personId);
                        }
                        if (reader["CompanyId"] != DBNull.Value)
                        {
                            int companyId = (int)reader["CompanyId"];
                            company = new Company()
                            {
                                Id        = companyId,
                                InitState = InitializationState.INITIALIZATION_NEEDED
                            };
                        }
                        mainSecretary = new MainSecretary(person, company, salary)
                        {
                            EmployeeId = id
                        };
                    }
                }
            }
            return(mainSecretary);
        }
예제 #4
0
        public static Director GetDirector(int id)
        {
            Director director      = null;
            string   sqlExpression = "SELECT * FROM Director WHERE Id = @id AND Deleted = 0";

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                connection.Open();
                SqlCommand command = new SqlCommand(sqlExpression, connection);
                command.Parameters.Add("@id", SqlDbType.Int);
                command.Parameters["@id"].Value = id;
                SqlDataReader reader = command.ExecuteReader();
                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        Person person    = null;
                        byte[] signature = (byte[])reader["DirectorSignature"];
                        int    salary    = (int)reader["Salary"];
                        if (reader["PersonId"] != DBNull.Value)
                        {
                            int personId = (int)reader["PersonId"];
                            person = SqlPerson.GetPerson(personId);
                        }
                        Company company = new Company
                        {
                            Id        = SqlCompany_Director.GetCompanyByDirector(id),
                            InitState = InitializationState.INITIALIZATION_NEEDED
                        };
                        List <Document> pendingDocuments = SqlDirectorPendingDocuments.GetPendingDocuments(id);
                        director = new Director(person, company, signature, salary)
                        {
                            EmployeeId       = id,
                            PendingDocuments = pendingDocuments
                        };
                    }
                }
            }
            return(director);
        }