Exemplo n.º 1
0
        public virtual DBResult ProjectsGet(out ProjectList projects)
        {
            projects = new ProjectList();
            DBResult result;

            QueryString sql = DB.Format(
                $"SELECT * FROM timekeep.projects ORDER by name");
            DatabaseDataReader reader;

            result = DB.Query(sql, out reader);
            using (reader)
            {
                if (result.ResultCode == DBResult.Result.Success)
                {
                    while (reader.Read())
                    {
                        Project_DO project = DataReaderConverter.CreateClassFromDataReader <Project_DO>(reader);
                        projects.Add(project);
                    }
                }
            }
            return(result);
        }
Exemplo n.º 2
0
        public virtual DBResult EntriesForDateGet(DateTime day, out TimeCardEntryList entries)
        {
            entries = new TimeCardEntryList();
            DBResult result;

            QueryString sql = DB.Format(
                $"SELECT \n" +
                $"E.id as entry_id, \n" +
                $"E.start_time as start_time, \n" +
                $"E.end_time as end_time, \n" +
                $"E.memo as memo, \n" +
                $"P.id as project_id, \n" +
                $"P.name as project_name \n" +
                $"FROM timekeep.entries E  \n" +
                $"JOIN timekeep.projects P ON E.project_id = P.id \n" +
                $"WHERE  \n" +
                $" (start_time >= '{day.Date.ToMySqlString()}' AND start_time <= '{(day.Date + TimeSpan.FromDays(1)).ToMySqlString()}') OR \n" +
                $" (end_time >= '{day.Date.ToMySqlString()}' AND end_time <= '{(day.Date + TimeSpan.FromDays(1)).ToMySqlString()}') \n" +
                $"ORDER BY start_time ASC");
            DatabaseDataReader reader;

            result = DB.Query(sql, out reader);
            using (reader)
            {
                if (result.ResultCode == DBResult.Result.Success)
                {
                    while (reader.Read())
                    {
                        TimeCardEntry_DO entry = DataReaderConverter.CreateClassFromDataReader <TimeCardEntry_DO>(reader);
                        entry.Project = DataReaderConverter.CreateClassFromDataReader <Project_DO>(reader);
                        entries.Add(entry);
                    }
                }
            }
            return(result);
        }