コード例 #1
0
        public async Task <IHttpActionResult> AddTask(AddTaskViewModel model)
        {
            try
            {
                if (string.IsNullOrWhiteSpace(model.Title))
                {
                    return(BadRequest("The title field cannot be empty."));
                }

                UserTaskBO userTask = new UserTaskBO
                {
                    Title            = model.Title,
                    Description      = model.Description,
                    DateCreated      = DateTime.UtcNow,
                    UserId           = CurrentUserId,
                    DateUserAccepted = DateTime.UtcNow,
                    BeginDate        = DateTime.UtcNow,
                    EndDate          = DateTime.UtcNow,
                    Audit            = new Entity.Entities.Audit(CurrentUserId)
                };
                zeus.evaluationManager.Add(userTask);
                await AddNotificationAsync(NotificationType.NewTask, CurrentUserId, CurrentUserId, "supervisor/unacceptedtasks");

                return(Ok(UserTaskDTO.Map(userTask, zeus)));
            }
            catch (Exception ex)
            {
                LogError(ex, CurrentUserId);
                return(BadRequest("An Error occured while processing your request, please try again"));
            }
        }
コード例 #2
0
 public virtual void Add(UserTaskBO userTask)
 {
     if (userTask == null)
     {
         throw new ArgumentNullException("userTask", "User Task is null");
     }
     else
     {
         db.userTaskRepository.Add(userTask);
         unitofWork.Commit();
     }
 }
コード例 #3
0
 public virtual void Delete(UserTaskBO userTask, bool purge = false)
 {
     if (purge)
     {
         db.userTaskRepository.Delete(userTask);
         unitofWork.Commit();
     }
     else
     {
         userTask.Audit.RecordState = Entity.Enums.RecordStateType.InActive;
         Update(userTask);
     }
 }
コード例 #4
0
        //[OutputCache(Duration = 2400, VaryByParam = "*", Location = OutputCacheLocation.Client)]
        public ActionResult EditTask(Guid userTaskId)
        {
            UserTaskBO userTask = zeus.evaluationManager.GetUserTaskById(userTaskId);

            EditTaskViewModel model = new EditTaskViewModel
            {
                UserTaskId  = userTask.Id,
                Title       = userTask.Title,
                Description = userTask.Description
            };

            return(PartialView(model));
        }
コード例 #5
0
        public IHttpActionResult DeleteTask(Guid userTaskId)
        {
            try
            {
                UserTaskBO userTask = zeus.evaluationManager.GetUserTaskById(userTaskId);
                zeus.evaluationManager.Delete(userTask);

                return(Ok("Your Task has been successfully deleted."));
            }
            catch (Exception ex)
            {
                LogError(ex, CurrentUserId);
                return(BadRequest("An error ocurred while deleting this task, please try again."));
            }
        }
コード例 #6
0
        public ActionResult EditTask(EditTaskViewModel model)
        {
            try
            {
                if (string.IsNullOrWhiteSpace(model.Title))
                {
                    return(Json(JsonResponse.Error("The title field cannot be empty.")));
                }
                UserTaskBO userTask = zeus.evaluationManager.GetUserTaskById(model.UserTaskId);

                userTask.Title       = model.Title;
                userTask.Description = model.Description;

                zeus.evaluationManager.Update(userTask);
                return(Json(JsonResponse.Success("Your Task has been succesfully Updated.")));
            }
            catch (Exception ex)
            {
                LogError(ex, CurrentUserId);
                return(Json(JsonResponse.Error("An Error occured while editing this task, please try again")));
            }
        }
コード例 #7
0
        public static UserTaskDTO Map(UserTaskBO userTask, IZeus zeus)
        {
            UserTaskDTO self = new UserTaskDTO
            {
                UserTaskId         = userTask.Id,
                TaskTitle          = userTask.Title,
                Description        = userTask.Description,
                AssignedToId       = userTask.UserId,
                Percentage         = DateExtension.PercentageProgressBetweenDates(userTask.BeginDate, userTask.EndDate),
                PercentageComplete = DateExtension.PercentageProgressBetweenDates(userTask.BeginDate, userTask.EndDate).ToString() + "%",
                DateCreated        = DateExtension.ConvertDateToShort(userTask.DateCreated),
                Deadline           = DateExtension.ConvertDateToShort(userTask.EndDate),
                BeginDate          = DateExtension.ConvertDateToShort(userTask.BeginDate),
                CreateDate         = userTask.DateCreated,
                UserTaskHtmlId     = StringConversion.ConvertGuidToString(userTask.Id),
                TaskHtmlId         = StringConversion.ConvertGuidToString(userTask.Id)
            };

            self.AssignedTo = userTask.User == null ? "" : userTask.User.FirstName + " " + userTask.User.LastName;

            //get list of measure/target

            return(self);
        }