public async void refreshData()
        {
            activityView.StartAnimating();

            projectNameBtn.SetTitle("loading current project ...", UIControlState.Normal);
            taskNameBtn.SetTitle("loading current task ...", UIControlState.Normal);

            try
            {
                List <DTO.Task> projectsList = await PDashAPI.Controller.GetRecentTasks();

                RecentTaskItems = projectsList;
                currentProject  = RecentTaskItems[0].Project;
                currentTask     = RecentTaskItems[0];

                projectNameBtn.SetTitle(currentProject.Name, UIControlState.Normal);
                taskNameBtn.SetTitle(currentTask.FullName, UIControlState.Normal);

                refreshControlButtons();

                recentTaskTableView.Source = new TaskTableSource(RecentTaskItems.GetRange(1, RecentTaskItems.Count - 1), this);
                recentTaskTableView.ReloadData();
            }
            catch (Exception ex)
            {
                ViewControllerHelper.ShowAlert(this, null, ex.Message + " Please try again later.");
            }
            finally
            {
                activityView.StopAnimating();
            }
        }
Exemplo n.º 2
0
        public async Task<ActionResult> Index()
        {
            ViewBag.Title = "Home Page";

            Context dbContext = new Context();

            //var Belarus = new Country();
            //Belarus.Name = "Беларусь";

            var Matem = new DTO.Task();
            Matem.Id = Guid.NewGuid();
            Matem.Description = "f";
            Matem.Files = new List<DTO.File>() { new DTO.File() { Id = Guid.NewGuid(), Name = "Kyrsa4" }, new DTO.File() { Id = Guid.NewGuid(), Name = "Prakti4eska9" } };
            

            dbContext.Tasks.Add(Matem);
            //dbContext.Lol.Add(new Models.LOL() { Name = "bob" });
            await dbContext.SaveChangesAsync();
            //dbContext.Countries.Add(Belarus);

             
            var lol = await dbContext.Tasks.FirstOrDefaultAsync(t => t.Description == "f");
            var ld = lol.Files;

            var vassal = dbContext.Files.Where(f => f.Task.Id == lol.Id);
            return View();
        }
Exemplo n.º 3
0
        public static Model.UserTask TranslateDTOTaskToModelUserTask(DTO.Task t)
        {
            if (t == null)
            {
                return(null);
            }

            return(new Model.UserTask
            {
                Code = t.Code,
                Comments = Mapper.TranslateDTOCommentListToModelCommentList(t.Comments),
                Completed = t.Completed,
                Control = ControlMapper.TranslateDTOControlToModelControl(t.Control),
                ControlId = t.ControlId,
                ControlCode = t.ControlCode,
                ControlSetCode = t.ControlSetCode,
                ControlSetId = t.ControlSetId,
                ControlSetTitle = t.ControlSetTitle,
                ControlTitle = t.ControlTitle,
                Created = t.Created,
                CreatedByUserId = t.CreatedByUserId,
                Description = t.Description,
                Due = t.Due,
                DueStatus = Mapper.TranslateDTODueStatusToModelDueStatus(t.DueStatus),
                Events = Mapper.TranslateDTOEventListToModelEventList(t.Events),
                Id = t.Id,
                Link = t.Link,
                RaciTeam = Mapper.TranslateDTORaciTeamToModelRaciTeam(t.RaciTeam),
                TaskDefinitionId = t.TaskDefinitionId,
                TaskState = Mapper.TranslateDTOTaskStateToModelTaskState(t.TaskState),
                Title = t.Title,
                WorkingSet = WorkingSetMapper.TranslateDTOWorkingSetToModelWorkingSet(t.WorkingSet),
                WorkingSetId = t.WorkingSetId
            });
        }
Exemplo n.º 4
0
        public void Put(int id, DTO.Task task)
        {
            #region Preconditions

            if (userTaskRepository == null)
            {
                throw new InvalidOperationException();
            }

            if (id <= 0)
            {
                throw new ArgumentOutOfRangeException();
            }

            if (task == null)
            {
                throw new ArgumentNullException();
            }

            #endregion

            UserTask userTask = null;

            task.Id  = id;
            userTask = UserTaskMapper.TranslateDTOTaskToModelUserTask(task);

            if (!userTaskRepository.Update(userTask))
            {
                throw new HttpResponseException(HttpStatusCode.NotFound);
            }
        }
Exemplo n.º 5
0
        public HttpResponseMessage Post([FromBody] DTO.Task task)
        {
            #region Preconditions

            if (userTaskRepository == null)
            {
                throw new InvalidOperationException();
            }

            if (task == null)
            {
                throw new ArgumentNullException();
            }

            #endregion

            var userTask = UserTaskMapper.TranslateDTOTaskToModelUserTask(task);

            int?newId = userTaskRepository.Add(userTask);

            if (newId == null)
            {
                throw new HttpResponseException(HttpStatusCode.InternalServerError);
            }

            task.Id = newId.Value;

            var response = Request.CreateResponse <DTO.Task>(HttpStatusCode.Created, task);

            string uri = Url.Link("AddUserTask", new { id = task.Id });
            response.Headers.Location = new Uri(uri);
            return(response);
        }
Exemplo n.º 6
0
        public HttpResponseMessage Post([FromBody] DTO.Task task)
        {
            #region Preconditions

            if (userTaskRepository == null)
            {
                throw new InvalidOperationException();
            }

            if (task == null)
            {
                throw new ArgumentNullException();
            }

            #endregion

            try
            {
                var userTask = UserTaskMapper.TranslateDTOTaskToModelUserTask(task);

                int?newId = userTaskRepository.Add(userTask);

                if (newId == null)
                {
                    string taskDataError = JsonConvert.SerializeObject(task);
                    logger.Error($"TasksController Post userTaskRepository Add Task Failed Task Data: {taskDataError}", users.First(u => u.UserName == User.Identity.Name).Id);
                    throw new HttpResponseException(HttpStatusCode.InternalServerError);
                }

                task.Id = newId.Value;

                var response = Request.CreateResponse <DTO.Task>(HttpStatusCode.Created, task);

                string uri = Url.Link("AddUserTask", new { id = task.Id });
                response.Headers.Location = new Uri(uri);

                string taskData = JsonConvert.SerializeObject(task);
                logger.Info($"Task Create id: {task.Id}, taskData: {taskData}", users.First(u => u.UserName == User.Identity.Name).Id);

                return(response);
            }

            catch (Exception ex)
            {
                string taskData = JsonConvert.SerializeObject(task);
                logger.Error($"api/Tasks Post Error: {ex.Message}, taskData: {taskData}", users.First(u => u.UserName == User.Identity.Name).Id);
                return(Request.CreateResponse(HttpStatusCode.InternalServerError));
            }
        }
Exemplo n.º 7
0
        public async Task <ActionResult> CreateRequest(DTO.Task task, int projectId)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var result = await _taskBus.InsertRequest(task, User.Identity.GetUserName(), errors);

                    if (result)
                    {
                        var redirectTo = "window.location.href = '" + Url.Action("RequestList", "Project", new { id = projectId, chooseTaskId = task.Id }) + "';";
                        return(JavaScript(redirectTo));
                    }
                }

                return(PartialView("~/Views/Shared/_ActionFailed.cshtml"));
            }
            catch
            {
                return(PartialView("~/Views/Shared/_ActionFailed.cshtml"));
            }
        }
Exemplo n.º 8
0
        public async Task <ActionResult> EditRequest(DTO.Task task, bool isCancel = false)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var result = await _taskBus.UpdateRequest(task, errors, User.Identity.GetUserName());

                    if (result != null)
                    {
                        return(PartialView("~/Views/Task/DetailsRequest.cshtml", result));
                        //return JavaScript("location.reload(true)");
                    }
                }

                return(PartialView("~/Views/Shared/_ActionFailed.cshtml"));
            }
            catch
            {
                return(PartialView("~/Views/Shared/_ActionFailed.cshtml"));
            }
        }
Exemplo n.º 9
0
        public async Task <ActionResult> ConvertToTask(DTO.Task task, bool isCancel = false)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var result = await _taskBus.ConvertToTask(task, errors, User.Identity.GetUserName());

                    if (result != null)
                    {
                        var redirectTo = "window.location.href = '" + Url.Action("TaskList", "Project", new { id = result.Module.ProjectId, chooseTaskId = result.Id }) + "';";
                        return(JavaScript(redirectTo));
                    }
                }

                return(PartialView("~/Views/Shared/_ActionFailed.cshtml"));
            }
            catch
            {
                return(PartialView("~/Views/Shared/_ActionFailed.cshtml"));
            }
        }
Exemplo n.º 10
0
        public HttpResponseMessage Put(int id, DTO.Task task)
        {
            #region Preconditions

            if (userTaskRepository == null)
            {
                throw new InvalidOperationException();
            }

            if (id <= 0)
            {
                throw new ArgumentOutOfRangeException();
            }

            if (task == null)
            {
                throw new ArgumentNullException();
            }

            #endregion

            try
            {
                UserTask userTask = null;

                task.Id  = id;
                userTask = UserTaskMapper.TranslateDTOTaskToModelUserTask(task);

                if (!userTaskRepository.Update(userTask))
                {
                    string taskDataError = JsonConvert.SerializeObject(task);
                    logger.Error($"TasksController Put userTaskRepository Failed id: {id}, Task Data: {taskDataError}", users.First(u => u.UserName == User.Identity.Name).Id);
                    throw new HttpResponseException(HttpStatusCode.NotFound);
                }

                try
                {
                    new AppServices.NotificationsService().NotifyUsers(userTask);
                }
                catch (Exception ex)
                {
                    string taskDataError = JsonConvert.SerializeObject(task);
                    logger.Error($"TasksController Put userTaskRepository NotifyUsers Failed id: {id}, Message: {ex.Message}, taskData: {taskDataError}", users.First(u => u.UserName == User.Identity.Name).Id);
                }

                var response = Request.CreateResponse <DTO.Task>(HttpStatusCode.OK, task);

                string uri = Url.Link("UpdateUserTask", new { id = task.Id });
                response.Headers.Location = new Uri(uri);

                string taskData = JsonConvert.SerializeObject(task);
                logger.Info($"Task Update id: {task.Id}, taskData: {taskData}", users.First(u => u.UserName == User.Identity.Name).Id);

                return(response);
            }

            catch (Exception ex)
            {
                string taskDataError = JsonConvert.SerializeObject(task);
                logger.Error($"api/Tasks/id Put Id: {id}, Error: {ex.Message}, taskData: {taskDataError}", users.First(u => u.UserName == User.Identity.Name).Id);
                return(Request.CreateResponse(HttpStatusCode.InternalServerError));
            }
        }
Exemplo n.º 11
0
        public void DTO2DB(DTO.Task dtoItem, ref Task dbItem, string _tempFolder)
        {
            // map fields
            AutoMapper.Mapper.Map <DTO.Task, Task>(dtoItem, dbItem);
            if (!string.IsNullOrEmpty(dtoItem.StartDate))
            {
                if (DateTime.TryParse(dtoItem.StartDate, nl, System.Globalization.DateTimeStyles.None, out tmpDate))
                {
                    dbItem.StartDate = tmpDate;
                }
            }
            if (!string.IsNullOrEmpty(dtoItem.EstEndDate))
            {
                if (DateTime.TryParse(dtoItem.EstEndDate, nl, System.Globalization.DateTimeStyles.None, out tmpDate))
                {
                    dbItem.EstEndDate = tmpDate;
                }
            }
            if (!string.IsNullOrEmpty(dtoItem.EndDate))
            {
                if (DateTime.TryParse(dtoItem.EndDate, nl, System.Globalization.DateTimeStyles.None, out tmpDate))
                {
                    dbItem.EndDate = tmpDate;
                }
            }

            // map file
            if (dtoItem.TaskFiles != null)
            {
                // check for child rows deleted
                foreach (TaskFile dbFile in dbItem.TaskFile.ToArray())
                {
                    if (!dtoItem.TaskFiles.Select(o => o.TaskFileID).Contains(dbFile.TaskFileID))
                    {
                        if (!string.IsNullOrEmpty(dbFile.FileUD))
                        {
                            fwFactory.RemoveFile(dbFile.FileUD);
                        }

                        dbItem.TaskFile.Remove(dbFile);
                    }
                }

                // map child rows
                foreach (DTO.TaskFile dtoFile in dtoItem.TaskFiles)
                {
                    TaskFile dbFile;
                    if (dtoFile.TaskFileID <= 0)
                    {
                        dbFile = new TaskFile();
                        dbItem.TaskFile.Add(dbFile);
                    }
                    else
                    {
                        dbFile = dbItem.TaskFile.FirstOrDefault(o => o.TaskFileID == dtoFile.TaskFileID);
                    }

                    if (dbFile != null)
                    {
                        if (dtoFile.HasChanged)
                        {
                            dbFile.FileUD = fwFactory.CreateFilePointer(_tempFolder, dtoFile.NewFile, dtoFile.FileUD, dtoFile.FriendlyName);
                        }
                        AutoMapper.Mapper.Map <DTO.TaskFile, TaskFile>(dtoFile, dbFile);
                    }
                }
            }

            // map step detail
            if (dtoItem.TaskSteps != null)
            {
                // check for child rows deleted
                foreach (TaskStep dbStep in dbItem.TaskStep.ToArray())
                {
                    if (!dtoItem.TaskSteps.Select(o => o.TaskStepID).Contains(dbStep.TaskStepID))
                    {
                        dbItem.TaskStep.Remove(dbStep);
                    }
                }

                // map child rows
                foreach (DTO.TaskStep dtoStep in dtoItem.TaskSteps)
                {
                    TaskStep dbStep;
                    if (dtoStep.TaskStepID <= 0)
                    {
                        dbStep = new TaskStep();
                        dbItem.TaskStep.Add(dbStep);
                    }
                    else
                    {
                        dbStep = dbItem.TaskStep.FirstOrDefault(o => o.TaskStepID == dtoStep.TaskStepID);
                    }

                    if (dbStep != null)
                    {
                        AutoMapper.Mapper.Map <DTO.TaskStep, TaskStep>(dtoStep, dbStep);

                        // map step user
                        if (dtoStep.TaskStepUsers != null)
                        {
                            // check for child rows deleted
                            foreach (TaskStepUser dbStepUser in dbStep.TaskStepUser.ToArray())
                            {
                                if (!dtoStep.TaskStepUsers.Select(o => o.TaskStepUserID).Contains(dbStepUser.TaskStepUserID))
                                {
                                    dbStep.TaskStepUser.Remove(dbStepUser);
                                }
                            }

                            // map child rows
                            foreach (DTO.TaskStepUser dtoStepUser in dtoStep.TaskStepUsers)
                            {
                                TaskStepUser dbStepUser;
                                if (dtoStepUser.TaskStepUserID <= 0)
                                {
                                    dbStepUser = new TaskStepUser();
                                    dbStep.TaskStepUser.Add(dbStepUser);
                                }
                                else
                                {
                                    dbStepUser = dbStep.TaskStepUser.FirstOrDefault(o => o.TaskStepUserID == dtoStepUser.TaskStepUserID);
                                }

                                if (dbStepUser != null)
                                {
                                    AutoMapper.Mapper.Map <DTO.TaskStepUser, TaskStepUser>(dtoStepUser, dbStepUser);
                                }
                            }
                        }
                    }
                }
            }
        }