public TaskApplicantsReponse GetTaskApplicantsForApproval(int selectedTaskTypeId, int currentPageIndex, int recordsCount) { var start = DateTime.Now; var response = new TaskApplicantsReponse(); var taskApprovals = new List <TaskApproval>(); var totalRecords = 0; IEnumerable <task> dbTaskApprovals; //If Admin - TBD after usercontext module //if (!true) var user = _commonService.GetCurrentUserContext(); dbTaskApprovals = _requestorRepository.GetTaskApplicantsForApproval(selectedTaskTypeId, currentPageIndex, recordsCount, user.EmailId, out totalRecords); foreach (var dbTaskApproval in dbTaskApprovals) { var taskApproval = new TaskApproval(); taskApproval.Task = _taskModelFactory.CreateModel <Models.ResponseModels.Task.Task>(dbTaskApproval); taskApproval.Applicants = new List <Models.ResponseModels.Contributor.Contributor>(); taskApproval.TaskApplicantId = dbTaskApproval.ID; foreach (var dbApplicant in dbTaskApproval.taskapplicants) { if (dbApplicant.STATUS == ApplicantStatus.ManagerApproved.ToString()) { var applicant = _taskApplicantModelFactory.CreateModel <Models.ResponseModels.Contributor.Contributor>(dbApplicant); applicant.TopRatingsCount = _taskRepository.GetTopRatingCountOnEmailId(applicant.EmailId); applicant.Expertise = ConvertSkillsToString(_userRepository.GetSkillsByUserId(applicant.ApplicantId)); applicant.StatementOfPurpose = dbApplicant.STATEMENT_OF_PURPOSE ?? string.Empty; applicant.Comments = _taskRepository .GetAllCommentsOnEmailId(applicant.EmailId) .Select(x => new ManagerComments { ManagerId = x.Key, Comment = x.Value }) ?.ToList(); taskApproval.Applicants.Add(applicant); } } taskApprovals.Add(taskApproval); } response.TaskApprovals = taskApprovals; response.TotalRecords = totalRecords; var end = DateTime.Now - start; return(response); }
public int UpdateTaskApproval(TaskApproval objTaskApproval) { return(TaskGeneratorDAL.Instance.UpdateTaskApproval(objTaskApproval)); }
public int InsertTaskApproval(TaskApproval objTaskApproval) { return(TaskGeneratorDAL.Instance.InsertTaskApproval(objTaskApproval)); }
public object FreezeTask(string strEstimatedHours, string strTaskApprovalId, string strTaskId, string strPassword) { string strMessage; bool blSuccess = false; decimal decEstimatedHours = 0; if (string.IsNullOrEmpty(strPassword)) { strMessage = "Sub Task cannot be freezed as password is not provided."; } else if (!strPassword.Equals(Convert.ToString(Session["loginpassword"]))) { strMessage = "Sub Task cannot be freezed as password is not valid."; } else if (string.IsNullOrEmpty(strEstimatedHours)) { strMessage = "Sub Task cannot be freezed as estimated hours is not provided."; } else if (!decimal.TryParse(strEstimatedHours.Trim(), out decEstimatedHours) || decEstimatedHours <= 0) { strMessage = "Sub Task cannot be freezed as estimated hours is not valid."; } else { #region Update Estimated Hours TaskApproval objTaskApproval = new TaskApproval(); if (string.IsNullOrEmpty(strTaskApprovalId)) { objTaskApproval.Id = 0; } else { objTaskApproval.Id = Convert.ToInt64(strTaskApprovalId); } objTaskApproval.EstimatedHours = strEstimatedHours.Trim(); objTaskApproval.Description = string.Empty; objTaskApproval.TaskId = Convert.ToInt32(strTaskId); objTaskApproval.UserId = Convert.ToInt32(Session[JG_Prospect.Common.SessionKey.Key.UserId.ToString()]); objTaskApproval.IsInstallUser = JGSession.IsInstallUser.Value; if (objTaskApproval.Id > 0) { TaskGeneratorBLL.Instance.UpdateTaskApproval(objTaskApproval); } else { TaskGeneratorBLL.Instance.InsertTaskApproval(objTaskApproval); } #endregion #region Update Task (Freeze, Status) Task objTask = new Task(); objTask.TaskId = Convert.ToInt32(strTaskId); bool blIsAdmin, blIsTechLead, blIsUser; blIsAdmin = blIsTechLead = blIsUser = false; if (JGSession.DesignationId == (byte)JG_Prospect.Common.JGConstant.DesignationType.Admin) { objTask.AdminUserId = Convert.ToInt32(Session[JG_Prospect.Common.SessionKey.Key.UserId.ToString()]); objTask.IsAdminInstallUser = JGSession.IsInstallUser.Value; objTask.AdminStatus = true; blIsAdmin = true; } else if (JGSession.DesignationId == (byte)JG_Prospect.Common.JGConstant.DesignationType.IT_Lead) { objTask.TechLeadUserId = Convert.ToInt32(Session[JG_Prospect.Common.SessionKey.Key.UserId.ToString()]); objTask.IsTechLeadInstallUser = JGSession.IsInstallUser.Value; objTask.TechLeadStatus = true; blIsTechLead = true; } else { objTask.OtherUserId = Convert.ToInt32(Session[JG_Prospect.Common.SessionKey.Key.UserId.ToString()]); objTask.IsOtherUserInstallUser = JGSession.IsInstallUser.Value; objTask.OtherUserStatus = true; blIsUser = true; } TaskGeneratorBLL.Instance.UpdateSubTaskStatusById ( objTask, blIsAdmin, blIsTechLead, blIsUser ); blSuccess = true; strMessage = "Sub Task freezed successfully."; #endregion } var result = new { Success = blSuccess, Message = strMessage, TaskId = strTaskId }; return(result); }