コード例 #1
0
        private static void SendMultipleTaskEmailThroughCCM(CCMService.EmailRecipient emailRecipient, List <UserTaskEmail> lstTasks, int siteId, int userId, int templateId, int actionTypeId)
        {
            string FromEmailAddress = ConfigurationManager.AppSettings["AMPFromEmailAddress"];

            List <CCMService.TaskDetail> lstTaskDetails = new List <CCMService.TaskDetail>();
            string taskIds = string.Join(",", lstTasks.Select(a => a.TaskID));

            foreach (var task in lstTasks)
            {
                lstTaskDetails.Add(GetCCMTaskDetail(task));
            }

            if (emailRecipient.FullName == "JCRFirstName JCRLastName")
            {
                emailRecipient.FullName = "Guest User";                 //This will be replaced in Email Salutations
            }
            CCMService.ProcessEmailClient oEmail         = new CCMService.ProcessEmailClient();
            CCMService.TaskMailDetail     taskMailDetail = new CCMService.TaskMailDetail();

            taskMailDetail.FromEmail       = FromEmailAddress;
            taskMailDetail.SiteID          = siteId;
            taskMailDetail.TemplateID      = templateId;
            taskMailDetail.UserID          = userId;
            taskMailDetail.ActionTypeID    = actionTypeId;
            taskMailDetail.ApplicationCode = ApplicationCode.TracerswithAMP.ToString();

            taskMailDetail.EmailRecipients = new List <CCMService.EmailRecipient>();
            taskMailDetail.EmailRecipients.Add(emailRecipient);

            oEmail.SendTasksEmail(taskMailDetail, lstTaskDetails);
        }
コード例 #2
0
        public static void SendMultipleTaskEmailForUser(AssignedUser user, List <UserTaskEmail> lstTasks, int siteId, int userId, int templateId, int actionTypeId)
        {
            try
            {
                //Sending email to Assignee
                var emailRecipient = new CCMService.EmailRecipient {
                    EmailAddress = user.EmailAddress, FullName = user.FullName
                };

                SendMultipleTaskEmailThroughCCM(emailRecipient, lstTasks, siteId, userId, templateId, actionTypeId);
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                lstTasks = null;
            }
        }
コード例 #3
0
        private static void SendTaskEmailForCCUsersThroughCCM(UserTaskEmail task, string taskIDs, CCMService.EmailRecipient emailRecipients, List <AssignedToUserTaskEmail> lstTaskAssignees, int siteId, int userId, int templateId, int actionTypeId)
        {
            string FromEmailAddress = "";

            switch ((TaskType)task.TaskTypeID)
            {
            case TaskType.Generic:
            case TaskType.AMPEP:
            case TaskType.CMSStandard:
                FromEmailAddress = ConfigurationManager.AppSettings["AMPFromEmailAddress"];
                break;

            case TaskType.Tracer:
            case TaskType.TracerObservation:
            case TaskType.TracerObservationQuestion:
                FromEmailAddress = ConfigurationManager.AppSettings["TracerFromEmailAddress"];
                break;
            }

            CCMService.TaskDetail taskDetail = GetCCMTaskDetail(task);

            var assignees = (from l in lstTaskAssignees
                             select new
            {
                Assignee = l.AssignedToFullName == "JCRFirstName JCRLastName" ? l.AssignedToEmail : l.AssignedToFormattedName                                                  // this will be replaced in Email Task Detail
            }).Select(a => a.Assignee).ToList <string>();

            taskDetail.AssignedTo = string.Join("; ", assignees);
            taskDetail.TaskIDs    = taskIDs;

            if (emailRecipients.FullName == "JCRFirstName JCRLastName")
            {
                emailRecipients.FullName = "Guest User";                 //This will be replaced in Email Salutations
            }
            CCMService.ProcessEmailClient oEmail         = new CCMService.ProcessEmailClient();
            CCMService.TaskMailDetail     taskMailDetail = new CCMService.TaskMailDetail();

            taskMailDetail.FromEmail       = FromEmailAddress;
            taskMailDetail.SiteID          = siteId;
            taskMailDetail.TemplateID      = templateId;
            taskMailDetail.UserID          = userId;
            taskMailDetail.ActionTypeID    = actionTypeId;
            taskMailDetail.ApplicationCode = ApplicationCode.TracerswithAMP.ToString();

            taskMailDetail.EmailRecipients = new List <CCMService.EmailRecipient>();
            taskMailDetail.EmailRecipients.Add(emailRecipients);

            oEmail.SendTaskEmailAsync(taskMailDetail, taskDetail);
        }