예제 #1
0
        public static async Task <IEnumerable <TaskFile> > GetListAsync(int taskId)
        {
            TaskTrackerContext db = new TaskTrackerContext();
            var list = await db.TaskFiles.Where(x => x.TaskClaimId == taskId && x.Enabled).ToListAsync();

            return(list);
        }
예제 #2
0
        public static async Task <IEnumerable <TaskComment> > GetListAsync(int taskId)
        {
            TaskTrackerContext db = new TaskTrackerContext();

            var list = db.TaskComments.Where(x => x.Enabled && x.TaskClaimId == taskId).OrderBy(x => x.DateCreate).ToListAsync();

            return(await list);
        }
예제 #3
0
        public static async Task <IEnumerable <int> > GetListIdsAsync(AdUser curUser, DateTime planDate)
        {
            TaskTrackerContext db = new TaskTrackerContext();

            var list = await db.TaskPlans.Where(x => x.Enabled && DbFunctions.TruncateTime(x.PlanDate) == DbFunctions.TruncateTime(planDate)).Select(x => x.TaskPlanId).ToListAsync();

            return(list);
        }
예제 #4
0
        public static async Task <TaskFile> GetAsync(string guid)
        {
            TaskTrackerContext db = new TaskTrackerContext();
            Guid taskFileId       = Guid.Parse(guid);
            var  list             = await db.TaskFiles.SingleAsync(x => x.TaskFileId == taskFileId);

            return(list);
        }
예제 #5
0
        public static async Task <IEnumerable <TaskCheckpoint> > GetListAsync(int taskId, bool?done = null)
        {
            TaskTrackerContext db = new TaskTrackerContext();

            var list = db.TaskCheckpoints.Where(x => x.Enabled && x.TaskId == taskId && (!done.HasValue || (done.HasValue && x.Done == done))).OrderBy(x => x.OrderNum).ToListAsync();

            return(await list);
        }
예제 #6
0
        public static async Task AddRange(string creatorSid, DateTime planDate, int[] taskIds, int[] checkpointIds)
        {
            if (taskIds == null && checkpointIds == null)
            {
                throw new ArgumentException("Не указаны задачи и контрольные точки для сохранения");
            }

            TaskTrackerContext db = new TaskTrackerContext();
            var taskPlanList      = new List <TaskPlan>();

            if (taskIds != null && taskIds.Any())
            {
                foreach (int taskId in taskIds)
                {
                    var taskPlan = new TaskPlan()
                    {
                        PlanDate   = planDate,
                        TaskId     = taskId,
                        Enabled    = true,
                        CreatorSid = creatorSid,
                        DateCreate = DateTime.Now
                    };
                    taskPlanList.Add(taskPlan);
                }

                //taskPlanList = taskIds.Select(delegate(int taskId)
                //{



                //    return new TaskPlan()
                //    {
                //        PlanDate = planDate,
                //        TaskId = taskId,
                //        Enabled = true,
                //        CreatorSid = creatorSid,
                //        DateCreate = DateTime.Now
                //    };
                //}).ToList();
            }
            if (checkpointIds != null && checkpointIds.Any())
            {
                taskPlanList.AddRange(checkpointIds.Select(checkpointId => new TaskPlan()
                {
                    PlanDate         = planDate,
                    TaskId           = TaskCheckpoint.Get(checkpointId).TaskId,
                    TaskCheckpointId = checkpointId,
                    Enabled          = true,
                    CreatorSid       = creatorSid,
                    DateCreate       = DateTime.Now
                }));
            }


            db.TaskPlans.AddRange(taskPlanList);
            await db.SaveChangesAsync();
        }
예제 #7
0
        public static async Task SetUndoneAsync(int id, string creatorSid)
        {
            TaskTrackerContext db = new TaskTrackerContext();
            var checkpoint        = await db.TaskCheckpoints.SingleAsync(x => x.TaskCheckpointId == id);

            checkpoint.Done       = false;
            checkpoint.UndonerSid = creatorSid;
            checkpoint.DateUndone = DateTime.Now;
            await db.SaveChangesAsync();
        }
예제 #8
0
        public static async Task CloseAsync(int id, string creatorSid)
        {
            TaskTrackerContext db = new TaskTrackerContext();
            var checkpoint        = await db.TaskCheckpoints.SingleAsync(x => x.TaskCheckpointId == id);

            checkpoint.Enabled    = false;
            checkpoint.DeleterSid = creatorSid;
            checkpoint.DateDelete = DateTime.Now;
            await db.SaveChangesAsync();
        }
예제 #9
0
        public static void Undone(string creatorSid, int taskPlanId)
        {
            TaskTrackerContext db = new TaskTrackerContext();
            var taskPlan          = db.TaskPlans.Single(x => x.TaskPlanId == taskPlanId);

            //taskPlan.Enabled = true;
            //taskPlan.DeleterSid = creatorSid;
            //taskPlan.DateDelete = DateTime.Now;
            db.SaveChanges();
        }
예제 #10
0
        public static void Restore(string creatorSid, int taskPlanId)
        {
            TaskTrackerContext db = new TaskTrackerContext();
            var taskPlan          = db.TaskPlans.Single(x => x.TaskPlanId == taskPlanId);

            taskPlan.Enabled    = true;
            taskPlan.DeleterSid = null;
            taskPlan.DateDelete = null;
            db.SaveChanges();
        }
예제 #11
0
        public static void SetUndone(int id, string creatorSid)
        {
            TaskTrackerContext db = new TaskTrackerContext();
            var checkpoint        = db.TaskCheckpoints.Single(x => x.TaskCheckpointId == id);

            checkpoint.Done       = false;
            checkpoint.UndonerSid = creatorSid;
            checkpoint.DateUndone = DateTime.Now;
            db.SaveChanges();
        }
예제 #12
0
        public static IEnumerable <TaskCategory> GetList()
        {
            TaskTrackerContext db = new TaskTrackerContext();
            var list = db.TaskCategories.OrderBy(c => c.OrderNum).ThenBy(c => c.Name);

            if (list.Any())
            {
                list.First().Selected = true;
            }
            return(list);
        }
예제 #13
0
        public static IEnumerable <Project> GetList()
        {
            TaskTrackerContext db = new TaskTrackerContext();
            var list = db.Projects.OrderBy(c => c.Name).ToList();

            if (list.Any())
            {
                list.First().Selected = true;
            }
            return(list);
        }
예제 #14
0
        public async static Task <TaskState> Get(string sysName)
        {
            TaskTrackerContext db = new TaskTrackerContext();

            //if (db.TaskStates.Any(x => x.SysName.ToUpper().Equals(sysName)))
            //{
            return(await db.TaskStates.SingleOrDefaultAsync(x => x.SysName.Equals(sysName)));

            //}
            //return new TaskState();
        }
예제 #15
0
        public async Task <int> AddAsync(string creatorSid)
        {
            TaskTrackerContext db = new TaskTrackerContext();

            Enabled    = true;
            CreatorSid = creatorSid;
            DateCreate = DateTime.Now;
            db.TaskCheckpoints.Add(this);
            await db.SaveChangesAsync();

            return(TaskCheckpointId);
        }
예제 #16
0
        public async Task <System.Guid> Add(string creatorSid)
        {
            TaskTrackerContext db = new TaskTrackerContext();

            TaskFileId = Guid.NewGuid();
            Enabled    = true;
            CreatorSid = creatorSid;
            DateCreate = DateTime.Now;
            db.TaskFiles.Add(this);
            await db.SaveChangesAsync();

            return(TaskFileId);
        }
예제 #17
0
        public static IEnumerable <TaskState> GetUserDefaultList()
        {
            TaskTrackerContext db = new TaskTrackerContext();

            return(db.TaskStates.Where(x => x.UserSelectDefault));
        }
예제 #18
0
        public static IEnumerable <TaskState> GetList()
        {
            TaskTrackerContext db = new TaskTrackerContext();

            return(db.TaskStates);
        }
예제 #19
0
        public static TaskCheckpoint Get(int id)
        {
            TaskTrackerContext db = new TaskTrackerContext();

            return(db.TaskCheckpoints.SingleOrDefault(x => x.TaskCheckpointId == id));
        }
예제 #20
0
        public static async Task <TaskCheckpoint> GetAsync(int id)
        {
            TaskTrackerContext db = new TaskTrackerContext();

            return(await db.TaskCheckpoints.SingleOrDefaultAsync(x => x.TaskCheckpointId == id));
        }
예제 #21
0
        public static TaskPlan Get(int id)
        {
            TaskTrackerContext db = new TaskTrackerContext();

            return(db.TaskPlans.Single(x => x.TaskPlanId == id));
        }