Ejemplo n.º 1
0
        public async Task CreatePOCAsync(IEnumerable <BlTaskPOCDetailRequest> request)
        {
            var           requestArray    = request.ToArray();
            List <string> PocusernameList = new List <string>();
            var           getDate         = DateTime.Now;

            foreach (var i in request)
            {
                if (i.Id == 0)
                {
                    PocusernameList.Add(i.Pocusername.Trim());
                }
                PocTaskId = i.PoctaskId;
            }
            string[] OutPutArray = RemoveDuplicates(PocusernameList.ToArray());

            //Check & delete if the User is already assigned as POC
            //await _repo.DeletePocByTaskId(requestArray[0].PoctaskId);
            //await _repo.DeletePocByTaskId(requestArray[0].PoctaskId, requestArray[0].Pocusername);
            //await _repo.DeletePocByTaskId(requestArray[0].Id, requestArray[0].Pocusername);
            int id = 0;

            foreach (var i in OutPutArray)
            {
                //int id = 0;
                var taskPocs = new BlCreateTaskPocs
                {
                    PoctaskId       = PocTaskId,
                    Pocusername     = OutPutArray[id],
                    ParentUsername  = Models.GlobalLogin._userName,
                    PocpersonalDate = getDate,
                    PocdateAssigned = getDate,
                    //POClevel = 0,
                    //POCsort = "*"
                };
                id = id + 1;
                var taskPocsMapped = _mapper.Map <BlCreateTaskPocs, TaskPocs>(taskPocs);
                await _repo.InsertTaskPocs(taskPocsMapped);
            }
            foreach (var i in request)
            {
                if (i.Id != 0)
                {
                    var recordTaskPocs = await _repo.GetTaskPocsByTaskId(i.Id);

                    if (recordTaskPocs == null)
                    {
                        throw new Exception("Record does not Exists!");
                    }
                    foreach (var recordTaskPoc in recordTaskPocs)
                    {
                        //recordTaskPoc.Id = i.Id;
                        //recordTaskPoc.PoctaskId = recordTaskPoc.PoctaskId;
                        //recordTaskPoc.Pocusername = recordTaskPoc.Pocusername;

                        if (i.PocdateClosed != null && i.PocdateClosed != "")
                        {
                            if (Convert.ToDateTime(i.PocdateClosed).ToShortDateString() != null)
                            {
                                recordTaskPoc.PocdateClosed = Convert.ToDateTime(i.PocdateClosed);
                            }
                            else
                            {
                                recordTaskPoc.PocdateClosed = null;
                            }
                        }
                        else
                        {
                            recordTaskPoc.PocdateClosed = null;
                        }

                        //recordTaskPoc.ParentUsername = recordTaskPoc.ParentUsername;

                        if (i.PocdateDue != null && i.PocdateDue != "")
                        {
                            if (Convert.ToDateTime(i.PocdateDue).ToShortDateString() != null)
                            {
                                recordTaskPoc.PocdateDue = Convert.ToDateTime(i.PocdateDue);
                            }
                            else
                            {
                                recordTaskPoc.PocdateDue = null;
                            }
                        }
                        else
                        {
                            recordTaskPoc.PocdateDue = null;
                        }

                        //if (i.PocdateAssigned != null && i.PocdateAssigned != "")
                        //{
                        //    if (Convert.ToDateTime(i.PocdateAssigned).ToShortDateString() != null)
                        //        recordTaskPoc.PocdateAssigned = Convert.ToDateTime(i.PocdateAssigned);
                        //    //else
                        //    //    recordTaskPoc.PocdateAssigned = DateTime.Today();
                        //}
                        //recordTaskPoc.Pocsort = recordTaskPoc.Pocsort;
                        //recordTaskPoc.Poclevel = recordTaskPoc.Poclevel;
                        //recordTaskPoc.PocisFlagged = recordTaskPoc.PocisFlagged;
                        //recordTaskPoc.PocpersonalNote = recordTaskPoc.PocpersonalNote;
                        //recordTaskPoc.PocpersonalDate = recordTaskPoc.PocpersonalDate;

                        await _repo.UpdateTaskPocAsync(recordTaskPoc);
                    }
                }
            }
        }
Ejemplo n.º 2
0
        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);
        }