Пример #1
0
        private void Initialize()
        {
            var messageID = MessageID;

            if (!string.IsNullOrWhiteSpace(messageID))
            {
                MailPageMessage message = null;

                message = MailBiz.GetMailMessage(messageID);


                if (message.MailPageSetting == null)
                {
                    message.MailPageSetting = new MailPageSetting();
                }
                var key = string.Format(m_SessionKey_MailMessage, messageID);

                //保存原始的MailMessage到Session中。
                Session[key] = message;

                if (message != null)
                {
                    HandlePermissions(message);

                    if (message.MailMessage != null)
                    {
                        var mail = message.MailMessage;
                        txtFrom.Text    = mail.From;
                        txtTo.Text      = mail.To;
                        txtCC.Text      = mail.CC;
                        txtBCC.Text     = mail.BCC;
                        txtSubject.Text = mail.Subject;
                        txtBody.Text    = mail.Body;

                        if (!string.IsNullOrWhiteSpace(mail.TemplateID))
                        {
                            this.MailCollection = message.MailCollection;

                            ddlTemplates.DataSource    = message.MailCollection;
                            ddlTemplates.SelectedValue = mail.TemplateID;
                            ddlTemplates.DataBind();
                        }

                        var title = string.Format(this.GetLocalResourceObject("LbTitle").ToString(), mail.Subject);

                        this.Title = title;
                    }
                }
            }
            else
            {
                ScriptExecute("jAlert('" + this.GetGlobalResourceObject("InfoMessage", "Info_InvalidParameter") + "','" + this.GetLocalResourceObject("Info_Alert_Title") + "', function() { closeWindow(); });");
            }
        }
Пример #2
0
        public string LogMail(MailPageMessage message)
        {
            var result = MailBiz.LogMail(message.MailMessage, message.MailPageSetting);

            if (!string.IsNullOrWhiteSpace(result))
            {
                var key = string.Format(Sessionkey_IsCloseMailPage, result);
                HttpContext.Current.Session[key] = false;
            }

            return(result);
        }
Пример #3
0
        public void CloseMailPage(string messageID)
        {
            if (!string.IsNullOrWhiteSpace(messageID))
            {
                var mail = MailBiz.GetMailMessage(messageID);

                if (mail != null && mail.MailMessage != null && !mail.MailMessage.IsSent)
                {
                    var key = string.Format(Sessionkey_IsCloseMailPage, messageID);
                    HttpContext.Current.Session[key] = true;
                }
            }
        }
Пример #4
0
 public SendResult Send(List <MailMessage> msgs)
 {
     try
     {
         MailBiz.BatchSend(msgs);
         return(new SendResult {
             IsSuccess = true
         });
     }
     catch (Exception e)
     {
         return(new SendResult {
             Description = e.Message, IsSuccess = false
         });
     }
 }
Пример #5
0
        public List <MailPageMessage> GetMailMessage(string messageID)
        {
            if (string.IsNullOrEmpty(messageID))
            {
                return(null);
            }
            var result   = new List <MailPageMessage>();
            var messages = messageID.Split(',');

            foreach (var id in messages)
            {
                result.Add(MailBiz.GetMailMessage(id));
            }

            return(result);
        }
Пример #6
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                Initialize();
            }
            else
            {
                var key     = string.Format(m_SessionKey_MailMessage, MessageID);
                var message = Session[key] as MailPageMessage;

                if (message == null)
                {
                    message      = MailBiz.GetMailMessage(MessageID);
                    Session[key] = message;
                }

                HandlePermissions(message);
            }
        }
Пример #7
0
 public bool SendInternalMail(MailMessage message)
 {
     return(MailBiz.SendInternalMail(message));
 }
Пример #8
0
 public void SendBusinessEmail(MailMessage message)
 {
     MailBiz.SendBusinessMail(message);
 }
Пример #9
0
        public bool UpdateSdpDetailAuditStatus(string serials, int auditStatus, string auditComment)
        {
            bool result = false;

            string[]    serialArray = serials.Split(';');
            string      serialAll   = serialArray.Aggregate(string.Empty, (current, next) => current + "'" + next + "',").TrimEnd(',');
            SdpDetail   sdpDetail   = new SdpDetail();
            PmsSdpAudit pmsSdpAudit = new PmsSdpAudit();

            sdpDetail.Serials     = serialAll;
            sdpDetail.AuditStatus = auditStatus;
            if (new SdpDetailBiz().UpdateSdpDetailAuditStatus(sdpDetail))
            {
                //同意或拒绝会新增版本
                if ((auditStatus == (int)PmsCommonEnum.AuditStatus.HasApproved) || auditStatus == (int)PmsCommonEnum.AuditStatus.BeenRejected)
                {
                    PmsSdpVersion pmsSdpVersion = new PmsSdpVersion();
                    foreach (var serial in serialArray)
                    {
                        IList <PmsSdpVersion> PmsSdpVersionList = new PmsSdpVersionBiz().SelectPmsSdpVersionByTaskno(serial);
                        IList <SdpDetail>     listSdpDetail     = new SdpDetailBiz().SelectSdpDetail(new SdpDetail {
                            Serial = int.Parse(serial)
                        });
                        if (listSdpDetail == null || listSdpDetail.Count == 0)
                        {
                            return(result);
                        }
                        sdpDetail                  = listSdpDetail.FirstOrDefault();
                        pmsSdpVersion.Taskno       = int.Parse(serial);
                        pmsSdpVersion.Pmsid        = sdpDetail.Pmsid;
                        pmsSdpVersion.PlanStartDay = sdpDetail.Planstartday;
                        pmsSdpVersion.PlanEndDay   = sdpDetail.Planendday;
                        pmsSdpVersion.PlanCost     = (float)sdpDetail.Plancost;
                        pmsSdpVersion.RefCost      = (float)sdpDetail.Refcost;
                        pmsSdpVersion.Creator      = LoginName;
                        pmsSdpVersion.CreateDate   = DateTime.Now;
                        pmsSdpVersion.Version      = (PmsSdpVersionList == null || PmsSdpVersionList.Count == 0) ? 1.0f : PmsSdpVersionList.Max(t => t.Version) + 0.1f;
                        new PmsSdpVersionBiz().InsertPmsSdpVersion(pmsSdpVersion);
                    }
                    IList <PmsSdpAudit> pmsSdpAuditList = new PmsSdpAuditBiz().SelectPmsSdpAuditByPmsId(sdpDetail.Pmsid);
                    pmsSdpAudit.Pmsid      = sdpDetail.Pmsid;
                    pmsSdpAudit.SdpVersion = (pmsSdpAuditList == null || pmsSdpAuditList.Count == 0) ? 1.0f : pmsSdpAuditList.Max(t => t.SdpVersion) + 0.1f;
                    pmsSdpAudit.Auditor    = LoginName;
                    if (auditComment == "")
                    {
                        pmsSdpAudit.AuditResult = "Approve";
                    }
                    else
                    {
                        pmsSdpAudit.AuditResult = "Reject";
                    }
                    pmsSdpAudit.AuditComment = auditComment;
                    pmsSdpAudit.CreateDate   = DateTime.Now;
                    pmsSdpAudit.Creator      = LoginName;
                    new PmsSdpAuditBiz().InsertPmsSdpAudit(pmsSdpAudit);
                }

                //发mail通知相关人员(提交人或者审核人)
                result = new MailBiz().TaskMail(serialArray[0], auditStatus);
            }
            return(result);
        }
Пример #10
0
        protected void BtnSend_Click(object sender, EventArgs e)
        {
            var key     = string.Format(m_SessionKey_MailMessage, MessageID);
            var message = Session[key] as MailPageMessage;

            if (message != null)
            {
                //如果是基于模板的方式的邮件,根据原始的MailMessage和现在UI上的输入进行比较,
                //如果有改变,则不再使用模板发送, 反之则使用模板方式发送;
                if (!string.IsNullOrWhiteSpace(message.MailMessage.TemplateID))
                {
                    var b = AreSendByTemplate(message.MailPageSetting);
                    if (!b)
                    {
                        message.MailMessage.TemplateID = null;
                    }
                    else
                    {
                        message.MailMessage.TemplateID = this.ddlTemplates.SelectedValue;
                    }
                }

                message.MailMessage.From    = txtFrom.Text.Trim().TrimEnd(';');
                message.MailMessage.To      = txtTo.Text.Trim().TrimEnd(';');
                message.MailMessage.Subject = txtSubject.Text.Trim();

                if (message.MailPageSetting.IsAllowChangeMailBody)
                {
                    message.MailMessage.Body = txtBody.Text.Trim();
                }

                if (message.MailPageSetting.IsAllowCC)
                {
                    message.MailMessage.CC = txtCC.Text.Trim().TrimEnd(';');
                }
                else
                {
                    message.MailMessage.CC = null;
                }
                if (message.MailPageSetting.IsAllowBCC)
                {
                    message.MailMessage.BCC = txtBCC.Text.Trim().TrimEnd(';');
                }
                else
                {
                    message.MailMessage.BCC = null;
                }

                if (message.MailPageSetting.IsAllowAttachment)
                {
                    message.MailMessage.Attachments = AttachmentHelper.GetFileAttachment(Request.Files);
                }

                try
                {
                    MailBiz.SendBusinessMail(message.MailMessage);
                    ScriptExecute("jAlert('" + this.GetLocalResourceObject("Info_SendSuccessfully") + "', '" + this.GetLocalResourceObject("Info_Alert_Title") + "', function() { closeWindow(); });");

                    this.BtnSend.Enabled = false;
                }
                catch (Exception ex)
                {
                    ScriptExecute("jAlert('" + ex.Message + "','" + this.GetLocalResourceObject("Info_Alert_Title") + "');");
                }
            }
        }