Пример #1
0
        public static QueryComparator GetInComparator(string columnName, DatabaseQuery subquery)
        {
            QueryComparator comparator = new QueryComparator();

            comparator.Source  = new QueryElement(columnName);
            comparator.Operand = new QueryElement(subquery);
            return(comparator);
        }
Пример #2
0
        public static QueryComparator GetLikeComparator(string columnName, object value)
        {
            QueryComparator comparator = new QueryComparator();

            comparator.Source  = new QueryElement(columnName);
            comparator.Operand = new QueryElement(null, String.Format("%{0}%", value));
            comparator.Like    = true;
            return(comparator);
        }
Пример #3
0
        public static QueryComparator GetAndComparator(QueryComparator source, QueryComparator operand)
        {
            QueryComparator comparator = new QueryComparator();

            comparator.Source  = source;
            comparator.Operand = operand;
            comparator.And     = true;
            return(comparator);
        }
Пример #4
0
        // Convenience comparators
        public static QueryComparator GetEqualComparator(string columnName, object value)
        {
            QueryComparator comparator = new QueryComparator();

            comparator.Source  = new QueryElement(columnName);
            comparator.Operand = new QueryElement(null, value);
            comparator.Equal   = true;
            return(comparator);
        }
Пример #5
0
        public static List <Appointment> GetAppointments(int staffId, int patientId)
        {
            QueryComparator comparator           = new QueryComparator();
            QueryComparator prescriberComparator = new QueryComparator();
            QueryComparator patientComparator    = new QueryComparator();

            prescriberComparator.Source  = new QueryElement(Database.Tables.Appointments.MedicalStaffId);
            prescriberComparator.Operand = new QueryElement(null, staffId);
            prescriberComparator.Equal   = true;

            patientComparator.Source  = new QueryElement(Database.Tables.Appointments.PatientId);
            patientComparator.Operand = new QueryElement(null, patientId);
            patientComparator.Equal   = true;

            comparator.Source  = prescriberComparator;
            comparator.Operand = patientComparator;
            comparator.And     = true;

            return(AppointmentManager.Merge(Database.Tables.APPOINTMENTS, comparator));
        }
Пример #6
0
        // Multi-Valued Getters
        public static List <Prescription> GetPrescriptions(int staffId, int patientId)
        {
            QueryComparator comparator           = new QueryComparator();
            QueryComparator prescriberComparator = new QueryComparator();
            QueryComparator patientComparator    = new QueryComparator();

            prescriberComparator.Source  = new QueryElement(Database.Tables.Prescriptions.PrescriberId);
            prescriberComparator.Operand = new QueryElement(null, staffId);
            prescriberComparator.Equal   = true;

            patientComparator.Source  = new QueryElement(Database.Tables.Prescriptions.PatientId);
            patientComparator.Operand = new QueryElement(null, patientId);
            patientComparator.Equal   = true;

            comparator.Source  = prescriberComparator;
            comparator.Operand = patientComparator;
            comparator.And     = true;

            return(PrescriptionManager.Merge(Database.Tables.PRESCRIPTIONS, comparator));
        }
Пример #7
0
        // Merge the list of objects from the database.
        public List <T> Merge(string tableName, QueryComparator comparator)
        {
            DatabaseQuery query = new DatabaseQuery(tableName);

            query.Comparator = comparator;
            query.Add(Database.Tables.Generic.ID);

            List <T> results = new List <T>();

            Console.WriteLine(query.Select);
            MySqlCommand    command = new MySqlCommand(query.Select, Database.Connection);
            MySqlDataReader reader  = command.ExecuteReader();

            while (reader.Read())
            {
                int id  = reader.GetInt32(0);
                T   obj = Get(id);
                results.Add(obj);
            }

            reader.Close();
            return(results);
        }