Beispiel #1
0
        public static ObservableCollection <BaseEntity> getPaginated(int start = 0, int number = 25)
        {
            ObservableCollection <BaseEntity> companies = new ObservableCollection <BaseEntity>();

            using (var connection = DatabaseConnection.Instance.Connection)
            {
                MySqlCommand command = new MySqlCommand(
                    $"SELECT * FROM company LIMIT {start},{number};",
                    connection
                    );
                var reader = command.ExecuteReader();
                while (reader.Read())
                {
                    Company company = new Company(reader);
                    companies.Add(company);
                }
                reader.Close();
            }
            foreach (Company company in companies)
            {
                Address address = AddressDataAccessObject.getAddressById(company.AddrId);
                company.address = address;
            }


            return(companies);
        }
Beispiel #2
0
        public static Company create(Company company)
        {
            Address addr = company.address;

            using (var connection = DatabaseConnection.Instance.Connection)
            {
                MySqlCommand command = new MySqlCommand(
                    $"INSERT INTO company {company.ToInsert()};", connection
                    );
                try
                {
                    command.ExecuteNonQuery();
                }
                catch (MySqlException)
                {
                    return(null);
                }
                company.id = command.LastInsertedId;
                addr       = AddressDataAccessObject.create(addr);
                if (addr == null)
                {
                    throw new Exception("Company adding address issue");
                }
                company.address = addr;
            }
            return(company);
        }
Beispiel #3
0
        public static bool delete(Company company)
        {
            using (var connection = DatabaseConnection.Instance.Connection)
            {
                MySqlCommand command = new MySqlCommand(
                    $"DELETE FROM company WHERE id={company.id}",
                    connection
                    );
                try
                {
                    command.ExecuteNonQuery();
                }
                catch (MySqlException)
                {
                    return(false);
                }
            }

            if (!AddressDataAccessObject.delete(company.address))
            {
                return(false);
            }

            return(true);
        }
Beispiel #4
0
        public static ObservableCollection <BaseEntity> getPaginated(int start = 0, int number = 25)
        {
            ObservableCollection <BaseEntity> people = new ObservableCollection <BaseEntity>();

            using (var connection = DatabaseConnection.Instance.Connection)
            {
                MySqlCommand command = new MySqlCommand(
                    $"SELECT * FROM person LIMIT {start},{number};",
                    connection
                    );
                var reader = command.ExecuteReader();
                while (reader.Read())
                {
                    Person person = new Person(reader);
                    people.Add(person);
                }
                reader.Close();

                foreach (Person person in people)
                {
                    Address address = AddressDataAccessObject.getAddressById(person.AddrId);
                    person.address = address;
                }
            }
            return(people);
        }
Beispiel #5
0
        public static Company getById(long id)
        {
            Company company = null;

            using (var connection = DatabaseConnection.Instance.Connection)
            {
                MySqlCommand command = new MySqlCommand(
                    $"SELECT * FROM company WHERE id={id}",
                    connection
                    );
                var reader = command.ExecuteReader();
                while (reader.Read())
                {
                    company = new Company(reader);
                }
                reader.Close();
            }

            Address address = AddressDataAccessObject.getAddressById(company.AddrId);

            company.address = address;
            return(company);
        }
Beispiel #6
0
        public static Person getById(long id)
        {
            Person person = null;

            using (var connection = DatabaseConnection.Instance.Connection)
            {
                MySqlCommand command = new MySqlCommand(
                    $"SELECT * FROM person WHERE id={id}",
                    connection
                    );
                var reader = command.ExecuteReader();
                while (reader.Read())
                {
                    person = new Person(reader);
                }
                reader.Close();
            }
            Address address = AddressDataAccessObject.getAddressById(person.AddrId);

            person.address = address;

            return(person);
        }
Beispiel #7
0
        public static Company update(Company company)
        {
            Address addr = company.address;

            // check if has id
            if (company.id == 0)
            {
                return(null);
            }

            addr = AddressDataAccessObject.update(addr);
            if (addr == null)
            {
                throw new Exception("Company updating address issue");
            }
            company.address = addr;


            using (var connection = DatabaseConnection.Instance.Connection)
            {
                MySqlCommand command = new MySqlCommand(
                    $"UPDATE company SET " +
                    $"{company.ToUpdate()} WHERE id={company.id}",
                    connection
                    );
                try
                {
                    command.ExecuteNonQuery();
                }
                catch (MySqlException)
                {
                    return(null);
                }
                company.id = command.LastInsertedId;
            }
            return(company);
        }