コード例 #1
0
 public async Task <int> Update(string mailTempContentId, string tenantId, string languageId,
                                MailTempContentTranslation mailTempContentTranslation)
 {
     return(await Context.SaveChangesAsync());
 }
コード例 #2
0
        public async Task <ActionResultResponse> Update(string id, string tenantId, MailTempContentMeta mailTempContentMeta)
        {
            if (!mailTempContentMeta.MailTempContentTranslations.Any())
            {
                return(new ActionResultResponse(-1, _sharedResourceService.GetString("Please enter at least one language.")));
            }

            var mailTempContentInfo = await _mailTempContentRepository.GetInfo(id);

            if (mailTempContentInfo == null)
            {
                return(new ActionResultResponse(-2, _resourceService.GetString("MailTempContent does not exists.")));
            }

            if (mailTempContentInfo.ConcurrencyStamp != mailTempContentMeta.ConcurrencyStamp)
            {
                return(new ActionResultResponse(-3, _resourceService.GetString("The MailTempContent already updated by other people. You can not update this MailTempContent.")));
            }

            var itemActive = await _mailTempContentRepository.MailTempContentActive(tenantId, mailTempContentMeta.MailTempGroupId);

            if (itemActive != null)
            {
                if (mailTempContentMeta.IsActive)
                {
                    itemActive.IsActive = false;
                    await _mailTempContentRepository.Update(itemActive.Id, itemActive);
                }
            }

            mailTempContentInfo.LastUpdate       = DateTime.Now;
            mailTempContentInfo.MailTempGroupId  = id;
            mailTempContentInfo.ConcurrencyStamp = Guid.NewGuid().ToString();
            mailTempContentInfo.IsDelete         = mailTempContentMeta.IsDelete;
            mailTempContentInfo.IsActive         = mailTempContentMeta.IsActive;
            mailTempContentInfo.IsDefault        = mailTempContentMeta.IsDefault;
            mailTempContentInfo.StartTime        = mailTempContentMeta.StartTime;
            mailTempContentInfo.EndTime          = mailTempContentMeta.EndTime;

            await _mailTempContentRepository.Update(id, mailTempContentInfo);

            foreach (var mailTempContentTranslation in mailTempContentMeta.MailTempContentTranslations)
            {
                var mailTempContentTranslationInfo = await _mailTempContentTranslationRepository.GetInfo(id, tenantId, mailTempContentTranslation.LanguageId);

                if (mailTempContentTranslationInfo != null)
                {
                    mailTempContentTranslationInfo.MailTempContentId = id;
                    mailTempContentTranslationInfo.TenantId          = tenantId;
                    mailTempContentTranslationInfo.LanguageId        = mailTempContentTranslation.LanguageId;
                    mailTempContentTranslationInfo.Title             = mailTempContentTranslation.Title;
                    mailTempContentTranslationInfo.UnsignTitle       =
                        mailTempContentTranslation.Title.Trim().StripVietnameseChars().ToUpper();
                    mailTempContentTranslationInfo.ContentMail = mailTempContentTranslation.ContentMail;
                    mailTempContentTranslationInfo.Description = mailTempContentTranslation.Description;
                    await _mailTempContentTranslationRepository.Update(id, tenantId, mailTempContentTranslation.LanguageId, mailTempContentTranslationInfo);
                }
                else
                {
                    mailTempContentTranslationInfo = new MailTempContentTranslation()
                    {
                        MailTempContentId = id,
                        TenantId          = tenantId,
                        LanguageId        = mailTempContentTranslation.LanguageId,
                        Title             = mailTempContentTranslation.Title,
                        UnsignTitle       = mailTempContentTranslation.Title.Trim().StripVietnameseChars().ToUpper(),
                        ContentMail       = mailTempContentTranslation.ContentMail,
                        Description       = mailTempContentTranslation.Description,
                    };
                    await _mailTempContentTranslationRepository.Insert(mailTempContentTranslationInfo);
                }
            }

            return(new ActionResultResponse(1, _resourceService.GetString("Update MailTempContent successful.")));
        }
コード例 #3
0
 public async Task <int> Insert(MailTempContentTranslation mailTempContentTranslation)
 {
     _mailTempContentTranslationRepository.Create(mailTempContentTranslation);
     return(await Context.SaveChangesAsync());
 }