public async System.Threading.Tasks.Task CreateAsync(BL_TaskCreateRequest request) { //var taskList = await _repo.GetAllTasks(); var taskList = await _repo.GetTopTasks(); int taskId = 1; if (taskList.Count() != 0) { var lastTaskId = taskList.OrderByDescending(s => s.Id).Select(s => s.Id).FirstOrDefault(); taskId = lastTaskId + 1; } //Insert Task var tasks = _mapper.Map <BL_TaskCreateRequest, Tasks>(request); //tasks.FileNumber = taskId.ToString(); tasks.Type = "Suspense"; tasks.Status = "Open"; await _repo.InsertTask(tasks); var getDate = DateTime.Now; //Insert Pocsusername var taskPocs = new BlCreateTaskPocs { PoctaskId = taskId, Pocusername = request.UserName, PocdateAssigned = getDate, PocpersonalDate = getDate, //ParentUsername = request.UserName ParentUsername = "******", POClevel = 0, POCsort = "*" }; var taskPocsMapped = _mapper.Map <BlCreateTaskPocs, TaskPocs>(taskPocs); await _repo.InsertTaskPocs(taskPocsMapped); //Insert TaskUpdate var taskUpdate = new BlTaskUpdates { TaskId = taskId, DateUpdate = getDate, UserName = request.UserName }; var taskUpdateMapped = _mapper.Map <BlTaskUpdates, TaskUpdates>(taskUpdate); await _repo.InsertTaskUpdates(taskUpdateMapped); //Email Funtionality Email Email = new Email(); MailContentModel mailSettings = Email.EmailSettings; // Send success notification... mailSettings.MailSubject = "Test Test Test"; string details = "~~ Inbound Acknowledgement File Processed Successfully ~~"; details += Environment.NewLine; details += string.Format("Process Date/Time: {0:MM-dd-yyyy hh:mm:ss tt}, ", DateTime.Now); details += Environment.NewLine; details += string.Format("Record Count:{0}", 20); mailSettings.MailBody = details; mailSettings.MailTo = "*****@*****.**"; EmailUtility.SendMailMessage(mailSettings); }
public async Task UpdateAsync(BlUpdateTaskDetail request) { //var recordTaskPocs = await _repo.GetTaskPocsByTaskId(int.Parse(request.Id)); var recordTaskPocs = await _repo.GetTaskPocByTaskIdUserName(int.Parse(request.Id), request.Pocsusername); var recordTasks = await _repo.GetTaskById(int.Parse(request.Id)); if (recordTaskPocs == null) { throw new Exception("Record does not Exists!"); } foreach (var recordTaskPoc in recordTaskPocs) { recordTaskPoc.PoctaskId = int.Parse(request.Id); if (request.PocdateDue != null && request.PocdateDue != "") { if (Convert.ToDateTime(request.PocdateDue).ToShortDateString() != null) { recordTaskPoc.PocdateDue = Convert.ToDateTime(request.PocdateDue); } } //recordTaskPocs.PocdateDue = DateTime.ParseExact(request.PocdateDue,"MM/DD/YYYY",CultureInfo.InvariantCulture); if (request.PocpersonalDate != null && request.PocpersonalDate != "") { if (Convert.ToDateTime(request.PocpersonalDate).ToShortDateString() != null) { recordTaskPoc.PocpersonalDate = Convert.ToDateTime(request.PocpersonalDate); } } recordTaskPoc.Pocusername = request.Pocsusername; if (request.PocdateAssigned != null && request.PocdateAssigned != "") { if (Convert.ToDateTime(request.PocdateAssigned).ToShortDateString() != null) { recordTaskPoc.PocdateAssigned = Convert.ToDateTime(request.PocdateAssigned); } } //recordTaskPoc.ParentUsername = request.Pocsusername; if (request.PocdateClosed != null && request.PocdateClosed != "") { if (Convert.ToDateTime(request.PocdateClosed).ToShortDateString() != null) { recordTaskPoc.PocdateClosed = Convert.ToDateTime(request.PocdateClosed); } } recordTaskPoc.Poclevel = 1; recordTaskPoc.PocpersonalNote = request.PocpersonalNote; //need to pass the actual userid //recordTaskPoc.ParentUsername = request.Pocsusername; recordTasks.Requestor = request.Requestor; recordTasks.Status = request.Status; recordTasks.Type = request.Type; await _repo.UpdateTaskPocAsync(recordTaskPoc); await _repo.UpdateTask(recordTasks); //Email Funtionality Email Email = new Email(); //MailContentModel mailSettings = Email.EmailSettings; MailContentModel mailSettings = new MailContentModel(); // Send success notification... mailSettings.MailSubject = "Test Test Test"; string details = "~~ Inbound Acknowledgement File Processed Successfully ~~"; details += Environment.NewLine; details += string.Format("Process Date/Time: {0:MM-dd-yyyy hh:mm:ss tt}, ", DateTime.Now); details += Environment.NewLine; details += string.Format("Record Count:{0}", 20); mailSettings.MailBody = details; mailSettings.MailTo = "*****@*****.**"; mailSettings.MailCC = "*****@*****.**"; mailSettings.MailFrom = "*****@*****.**"; mailSettings.MailServer = "DCAASMTP.dcaa.mil"; // Erroring with "Access denied" //EmailUtility.SendMailMessage(mailSettings); } }