Esempio n. 1
0
        public async Task <IActionResult> Update(string id, [FromBody] MailMeta mailMeta)
        {
            var result = await _mailService.Update(CurrentUser.TenantId, id, CurrentUser.Id, CurrentUser.FullName, mailMeta);

            if (result.Code <= 0)
            {
                return(BadRequest(result));
            }

            return(Ok(result));
        }
Esempio n. 2
0
        public async Task <ActionResultResponse> Insert(string tenantId, string creatorId, string creatorFullName, MailMeta mailMeta)
        {
            var mailId = Guid.NewGuid().ToString();
            var mail   = new Mail
            {
                Id              = mailId,
                TenantId        = tenantId,
                Email           = mailMeta.Email,
                Password        = mailMeta.Password,
                MailTypeId      = mailMeta.MailTypeId,
                CreatorId       = creatorId,
                CreatorFullName = creatorFullName,
                Owner           = mailMeta.Owner,
                IsActive        = mailMeta.IsActive
            };

            var result = await _mailRepository.Insert(mail);

            if (result <= 0)
            {
                await RollbackInsert(tenantId, mailId);

                return(new ActionResultResponse(result, _sharedResourceService.GetString("Something went wrong. Please contact with administrator.")));
            }

            return(new ActionResultResponse(result, _resourceService.GetString("Insert mail success.")));
        }
Esempio n. 3
0
        public async Task <ActionResultResponse> Update(string tenantId, string id, string lastUpdateUserId, string lastUpdateFullName, MailMeta mailMeta)
        {
            var mailInfo = await _mailRepository.GetInfo(tenantId, id);

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

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

            mailInfo.LastUpdate         = DateTime.Now;
            mailInfo.ConcurrencyStamp   = Guid.NewGuid().ToString();
            mailInfo.Email              = mailMeta.Email;
            mailInfo.Password           = mailMeta.Password;
            mailInfo.MailTypeId         = mailMeta.MailTypeId;
            mailInfo.LastUpdateUserId   = lastUpdateUserId;
            mailInfo.LastUpdateFullName = lastUpdateFullName;
            mailInfo.Owner              = mailMeta.Owner;
            mailInfo.IsActive           = mailMeta.IsActive;

            await _mailRepository.Update(tenantId, mailInfo);

            return(new ActionResultResponse(1, _resourceService.GetString("Update Mail successful.")));
        }