Пример #1
0
        /// <summary>
        /// Convert MailTemplateInfo to MailTemplate.
        /// </summary>
        /// <param name="mailTemplateInfo">Mail template info</param>
        /// <returns>Mail template</returns>
        public static MailTemplate ToMailTemplate(this MailTemplateInfo mailTemplateInfo)
        {
            if (mailTemplateInfo is null)
            {
                return(null);
            }

            return(new MailTemplate()
            {
                MailTemplateId = mailTemplateInfo.MailtemplateId,
                Keyname = mailTemplateInfo.Keyname,
                Subject = mailTemplateInfo.Subject,
                Message = mailTemplateInfo.Message
            });
        }
Пример #2
0
        public IActionResult SaveMailTemplate([FromBody] MailTemplateModel model)
        {
            if (string.IsNullOrEmpty(model.Keyname))
            {
                throw new ArgumentNullException(nameof(model.Keyname));
            }

            MailTemplateInfo mailTemplate = _emailManager.GetMailTemplate(model.Keyname);

            if (mailTemplate != null)
            {
                mailTemplate.Subject = model.Subject;
                mailTemplate.Message = model.Message;
                _emailManager.UpdateMailTemplate(mailTemplate);

                return(Ok());
            }

            return(BadRequest("The mail template was not updated"));
        }
        /// <inheritdoc cref="IEmailManager.UpdateMailTemplateAsync(MailTemplateInfo)" />
        public async Task UpdateMailTemplateAsync(MailTemplateInfo mailTemplateInfo)
        {
            if (mailTemplateInfo is null)
            {
                throw new ArgumentNullException(nameof(mailTemplateInfo));
            }

            MailTemplate mailTemplate = await _dbContext.KastraMailTemplates
                                        .SingleOrDefaultAsync(mt => mt.Keyname == mailTemplateInfo.Keyname);

            if (mailTemplate == null)
            {
                throw new ArgumentException("The mail template was not found");
            }

            mailTemplate.Subject = mailTemplateInfo.Subject;
            mailTemplate.Message = mailTemplateInfo.Message;

            _dbContext.KastraMailTemplates.Update(mailTemplate);

            await _dbContext.SaveChangesAsync();

            ClearMailTemplateCache();
        }