using Longbow; using System; using System.Collections.Generic; using System.Data; using System.Data.Common; namespace Bootstrap.DataAccess { public class Task { /// <summary> /// 获取/设置 任务ID /// </summary> public string Id { get; set; } /// <summary> /// 获取/设置 任务名称 /// </summary> public string TaskName { get; set; } /// <summary> /// 获取/设置 分配人 /// </summary> public string AssignName { get; set; } /// <summary> /// 获得/设置 分配人昵称 /// </summary> public string AssignDisplayName { get; set; } /// <summary> /// 获取/设置 完成任务人 /// </summary> public string UserName { get; set; } /// <summary> /// 获取/设置 任务所需时间(天) /// </summary> public int TaskTime { get; set; } /// <summary> /// 获取/设置 任务进度 /// </summary> public double TaskProgress { get; set; } /// <summary> /// 获取/设置 分配时间 /// </summary> public DateTime AssignTime { get; set; } /// <summary> /// 查询所有任务 /// </summary> /// <returns></returns> public virtual IEnumerable<Task> RetrieveTasks() { string sql = "select top 100 t.*, u.DisplayName from Tasks t inner join Users u on t.UserName = u.UserName order by AssignTime desc"; List<Task> tasks = new List<Task>(); DbCommand cmd = DbAccessManager.DBAccess.CreateCommand(CommandType.Text, sql); using (DbDataReader reader = DbAccessManager.DBAccess.ExecuteReader(cmd)) { while (reader.Read()) { tasks.Add(new Task() { Id = reader[0].ToString(), TaskName = (string)reader[1], AssignName = (string)reader[2], UserName = (string)reader[3], TaskTime = (int)reader[4], TaskProgress = (double)reader[5], AssignTime = LgbConvert.ReadValue(reader[6], DateTime.MinValue), AssignDisplayName = (string)reader[7] }); } } return tasks; } } }