Ejemplo n.º 1
0
        public bool AddTask(TaskModel Task)
        {
            try
            {
                if (Task.isParentTask)
                {
                    Parent_Task_Table parentTableData = new Parent_Task_Table();
                    Parent_Task_Table parentTable     = new Parent_Task_Table
                    {
                        Parent_Task = Task.ParentTaskTitle
                    };
                    parentTableData = dbContext.Parent_Task_Table.Add(parentTable);
                    dbContext.SaveChanges();
                }
                else if (Task.Task_ID == 0)
                {
                    Parent_Task_Table parentTableData = new Parent_Task_Table();

                    Task_Table taskData = new Task_Table
                    {
                        Project_ID = Task.Project_ID,
                        Task       = Task.Task,
                        Start_Date = Task.isParentTask ? null : Task.Start_Date,
                        End_Date   = Task.isParentTask ? null : Task.End_Date,
                        Priority   = Task.isParentTask ? null : (Task.Priority == null ? 0 : Task.Priority),
                        Parent_ID  = Task.isParentTask ? parentTableData.Parent_ID : Task.Parent_ID,
                        Status     = true
                    };

                    var taskAdded = dbContext.Task_Table.Add(taskData);
                    dbContext.SaveChanges();


                    var userData = dbContext.Users_Table.Where(c => c.User_ID == Task.User_ID).FirstOrDefault();
                    if (userData != null)
                    {
                        userData.Task_ID = taskAdded.Task_ID;
                        dbContext.SaveChanges();
                    }
                }
                else
                {
                    var taskData = dbContext.Task_Table.Where(c => c.Task_ID == Task.Task_ID).First();
                    if (taskData != null)
                    {
                        taskData.Project_ID = Task.Project_ID;
                        taskData.Task       = Task.Task;
                        taskData.Start_Date = Task.isParentTask ? null : Task.Start_Date;
                        taskData.End_Date   = Task.isParentTask ? null : Task.End_Date;
                        taskData.Priority   = Task.isParentTask ? null : (Task.Priority == null ? 0 : Task.Priority);
                        taskData.Parent_ID  = Task.isParentTask ? null : Task.Parent_ID;
                        taskData.Status     = true;
                        dbContext.SaveChanges();

                        var userData = dbContext.Users_Table.Where(c => c.User_ID == Task.User_ID).FirstOrDefault();
                        if (userData != null)
                        {
                            userData.Task_ID = Task.Task_ID;
                            dbContext.SaveChanges();
                        }
                    }
                }
            }
            catch (Exception e)
            {
                return(false);
            }
            return(true);
        }
Ejemplo n.º 2
0
        public IHttpActionResult PostTask_Table(ParentTaskView pt)
        {
            if (pt.IsActive == null)
            {
                if (pt.Task_ID == null)
                {
                    Parent_Task_Table p = new Parent_Task_Table();
                    Task_Table        t = new Task_Table();

                    //Parent Task Table insert
                    p.Parent_Task = pt.Parent_Task;
                    db.Parent_Task_Table.Add(p);
                    db.SaveChanges();

                    int latestParentId = Convert.ToInt32(p.Parent_ID);

                    //Task Table insert
                    t.Parent_ID  = latestParentId;
                    t.Task       = pt.Task;
                    t.Start_Date = Convert.ToDateTime(pt.Start_Date);
                    t.End_Date   = pt.End_Date;
                    t.Priority   = Convert.ToInt32(pt.Priority);
                    db.Task_Table.Add(t);
                    //  System.IO.File.WriteAllText(@"D:\taskapilog2.txt","Add method success");
                    db.SaveChanges();
                }
                else if (pt.Task_ID != null)
                {
                    int?latestParentId  = null;
                    Parent_Task_Table p = new Parent_Task_Table();
                    //System.IO.File.WriteAllText(@"D:\taskapilogUp.txt", "Update method");

                    if (pt.Parent_ID == null)
                    {
                        //Parent Task Table insert

                        p.Parent_Task = pt.Parent_Task;
                        db.Parent_Task_Table.Add(p);
                        db.SaveChanges();
                        latestParentId = Convert.ToInt32(p.Parent_ID);
                    }
                    else
                    {
                        //System.IO.File.WriteAllText(@"D:\taskapilogUp1.txt", pt.Parent_ID + "");
                        var ParentTask_TableInDb = db.Parent_Task_Table.SingleOrDefault(p1 => p1.Parent_ID == pt.Parent_ID);
                        if (ParentTask_TableInDb == null)
                        {
                            throw new HttpResponseException(HttpStatusCode.NotFound);
                        }

                        //Parent Task Table update
                        ParentTask_TableInDb.Parent_Task = pt.Parent_Task;
                        db.SaveChanges();
                    }

                    var Task_TableInDb = db.Task_Table.SingleOrDefault(c => c.Task_ID == pt.Task_ID);
                    if (Task_TableInDb == null)
                    {
                        throw new HttpResponseException(HttpStatusCode.NotFound);
                    }

                    //Task Table update
                    if (latestParentId != null)
                    {
                        Task_TableInDb.Parent_ID = latestParentId;
                    }

                    Task_TableInDb.Task       = pt.Task;
                    Task_TableInDb.Start_Date = Convert.ToDateTime(pt.Start_Date);
                    Task_TableInDb.End_Date   = pt.End_Date;
                    Task_TableInDb.Priority   = Convert.ToInt32(pt.Priority);

                    //  System.IO.File.WriteAllText(@"D:\taskapilog2.txt","Add method success");
                    db.SaveChanges();
                }
            }
            else if (pt.IsActive == "N")
            {
                //End Task Code
                var Task_TableIndb = db.Task_Table.SingleOrDefault(c1 => c1.Task_ID == pt.Task_ID);
                if (Task_TableIndb == null)
                {
                    throw new HttpResponseException(HttpStatusCode.NotFound);
                }
                Task_TableIndb.IsActive = pt.IsActive;
                db.SaveChanges();
            }
            // return CreatedAtRoute("DefaultApi", new { id = t.Task_ID }, pt);
            return(Ok());
        }