示例#1
0
 /// <summary>
 /// Extrage informatii despre munca unui user la un proiect.
 /// </summary>
 /// <param name="projId">Id-ul proiectului la care a lucrat userul.</param>
 /// <param name="userId">Id-ul userului care a lucrat la proiect.</param>
 /// <returns>Retuneaza lista cu data de inceput, descrierea, tipul si durata proiectului.</returns>
 public static List<ExtractInfo> WorkOfUserAtProject(int projId, int userId)
 {
     List<ExtractInfo> L = new List<ExtractInfo>();
     string query = string.Format("SELECT start_time, description, type, duration FROM {0} WHERE user_id = @user_id AND project_id = @project_id", Globals.TABLE_ACTIVITY);
     DataSet dataset = new DataSet();
     MySqlDataAdapter adapter = new MySqlDataAdapter(query, connection);
     adapter.SelectCommand.Parameters.AddWithValue("@user_id", userId);
     adapter.SelectCommand.Parameters.AddWithValue("@project_id", projId);
     adapter.Fill(dataset);
     foreach (DataRow row in dataset.Tables[0].Rows)
     {
         ExtractInfo ei = new ExtractInfo();
         ei.StartTime = Convert.ToDateTime(row["start_time"].ToString());
         ei.Description = Convert.ToString(row["description"]);
         ei.Type = Convert.ToInt32(row["type"].ToString());
         ei.Duration = Convert.ToInt64(row["duration"].ToString());
         L.Add(ei);
     }
     Destroy(adapter, dataset);
     return L;
 }
示例#2
0
 /// <summary>
 /// Extrage informatii despre activitatea unui user intr-o perioada de timp specificata.
 /// </summary>
 /// <param name="uid">Id-ul userului a carui activitate va fi extrasa.</param>
 /// <param name="date1">Data de inceput pentru cautare.</param>
 /// <param name="date2">Data de sfarsit pentru cautare.</param>
 /// <returns></returns>
 public static List<ExtractInfo> ActivityExtract(int uid, DateTime date1, DateTime date2)
 {
     List<Project> P = AllProjects(true);//toate proiectele sau nu?
     List<ExtractInfo> L = new List<ExtractInfo>();
     string query = string.Format("SELECT * FROM {0} WHERE user_id = @user_id AND @date1 <= start_time AND start_time <= @date2 ORDER BY start_time ASC", Globals.TABLE_ACTIVITY);
     DataSet dataset = new DataSet();
     MySqlCommand command = null;
     MySqlDataAdapter adapter = new MySqlDataAdapter(query, connection);
     adapter.SelectCommand.Parameters.AddWithValue("@user_id", uid);
     adapter.SelectCommand.Parameters.AddWithValue("@date1", date1);
     adapter.SelectCommand.Parameters.AddWithValue("@date2", date2);
     adapter.Fill(dataset);
     if (dataset.Tables[0].Rows.Count > 0)
     {
         foreach (DataRow row in dataset.Tables[0].Rows)
         {
             ExtractInfo A = new ExtractInfo();
             A.StartTime = Convert.ToDateTime(row["start_time"].ToString());
             A.Description = Convert.ToString(row["description"]);
             A.Type = Convert.ToInt32(row["type"].ToString());
             A.Duration = Convert.ToInt64(row["duration"].ToString());
             int pid = Convert.ToInt32(row["project_id"].ToString());
             A.ProjectName = String.Empty;
             foreach (Project proj in P)
                 if (proj.Id == pid)
                     A.ProjectName = proj.Name;
             if (A.ProjectName != String.Empty)
                 L.Add(A);
         }
         Destroy(adapter, dataset, command);
         return L;
     }
     Destroy(adapter, command);
     return null;
 }