Example #1
0
        public async Task <Response <UpdateResult> > Handle(UpdateSubDomain request)
        {
            var dbSubDomain = await _context.BusinessSubDomains
                              .FirstOrDefaultAsync(x => x.Name.Equals(request.Name));

            if (dbSubDomain == null)
            {
                return(new Response <UpdateResult>(UpdateResult.NotFound));
            }
            else
            {
                if (!string.IsNullOrEmpty(request.NewName))
                {
                    dbSubDomain.Name = request.NewName;
                }

                if (!string.IsNullOrEmpty(request.NewDescription))
                {
                    dbSubDomain.Description = request.NewDescription;
                }

                await _context.SaveChangesAsync();

                return(new Response <UpdateResult>(UpdateResult.Updated));
            }
        }
        public async Task <ActionResult> PutAsync([FromBody] BusinessSubDomainUpdate subDomainUpdate)
        {
            var updateSubDomain = new UpdateSubDomain()
            {
                Name           = subDomainUpdate.Name,
                NewName        = subDomainUpdate.NewName,
                NewDescription = subDomainUpdate.NewDescription
            };

            var response = await _mediator.Send(updateSubDomain);

            if (response.Result == UpdateResult.NotFound)
            {
                return(NotFound());
            }
            else if (response.Result == UpdateResult.Updated)
            {
                return(Ok());
            }
            else
            {
                return(StatusCode(500)); // result not contemplated;
            }
        }