public HttpResponseMessage UpdateUserTask([FromBody] UserTask uTask) { try { var lstTaskPreviousData = new List <UserTaskEmail>(); if (uTask.TaskID > 0) { lstTaskPreviousData = TaskServices.GetTaskDetailsForSendingEmail(uTask.TaskID.ToString(), uTask.SiteID, uTask.ProgramID, uTask.UpdatedByUserID, true); } var lstTask = TaskServices.UpdateUserTask(uTask.TaskID, uTask.TaskName, uTask.TaskTypeID, uTask.SiteID, uTask.ProgramID, uTask.AssignedDate, uTask.AssignedToUserID, uTask.AssignedByUserID, uTask.TaskDetails, uTask.CCUserIDs, uTask.DueDate, uTask.TaskStatus, uTask.UpdatedByUserID, uTask.CreatedByUserID, uTask.TracerCustomID, uTask.TracerResponseID, uTask.TracerQuestionID, uTask.TracerQuestionAnswerID, uTask.EPTextID, uTask.CMSStandardID, uTask.ReminderEmailRequired, uTask.TaskResolution, uTask.CompleteDate, uTask.LstUsers); Task.Factory.StartNew(() => TaskServices.SendTaskEmailAfterSave(lstTask, uTask.SiteID, uTask.ProgramID, uTask.UpdatedByUserID, lstTaskPreviousData, uTask.ObservationTitle)); if (uTask.TaskID > 0) { Task.Factory.StartNew(() => TaskServices.DisableTaskNotificationScheduleType(DisableTaskNotificationScheduleType.TaskChanged, uTask.SiteID, uTask.UpdatedByUserID, lstTask)); } return(Request.CreateResponse(HttpStatusCode.OK, lstTask)); } catch (Exception ex) { ex.Data.Add("HTTPReferrer", "JCRAPI/TaskInfo/UpdateUserTask"); WebExceptionHelper.LogException(ex, null); return(Request.CreateErrorResponse(HttpStatusCode.ExpectationFailed, ex.ToString())); } }
public HttpResponseMessage ReAssignTask([FromBody] ReAssignTasks raTasks) { try { var lstPreviousTasks = TaskServices.GetTaskDetailsForSendingEmail(raTasks.LstTaskIDs.ToString(), raTasks.SiteID, raTasks.ProgramID, raTasks.UpdatedByUserID); TaskServices.ReAssignTask(raTasks); Task.Factory.StartNew(() => TaskServices.SendTaskReassignedEmail(raTasks.LstTaskIDs, raTasks.SiteID, raTasks.ProgramID, raTasks.UpdatedByUserID, lstPreviousTasks)); return(Request.CreateResponse(HttpStatusCode.OK)); } catch (Exception ex) { ex.Data.Add("HTTPReferrer", "JCRAPI/TaskInfo/ReAssignTask"); WebExceptionHelper.LogException(ex, null); return(Request.CreateResponse(HttpStatusCode.OK, string.Empty)); } }