Exemple #1
0
        public async Task <IActionResult> UpdateTenant(
            [HttpTrigger(AuthorizationLevel.Function, "put", Route = "tenant/{id}")] HttpRequest req,
            [FromRoute(Name = "id")] string id,
            ILogger log)
        {
            var parseResult = Guid.TryParse(id, out Guid tenantId);

            if (!parseResult)
            {
                return(new BadRequestObjectResult("Invalid tenantId"));
            }

            var body = await req.GetBodyAsync <TenantRequestModel>();

            if (!body.IsValid)
            {
                return(new BadRequestObjectResult(body.ValidationMessage));
            }
            var tenantRequestModel = body.Value;

            var existingTenant = await tenantStoreService.GetTenantAsync(tenantId);

            if (existingTenant == null)
            {
                return(new NotFoundObjectResult("Tenant not found"));
            }

            TenantMapper.Map(tenantRequestModel, existingTenant);
            await tenantStoreService.UpdateTenantAsync(existingTenant);

            return(new NoContentResult());
        }
Exemple #2
0
        public async Task <IActionResult> CreateTenant(
            [HttpTrigger(AuthorizationLevel.Function, "post", Route = "tenant")] HttpRequest req,
            ILogger log)
        {
            var body = await req.GetBodyAsync <TenantRequestModel>();

            if (!body.IsValid)
            {
                return(new BadRequestObjectResult(body.ValidationMessage));
            }

            var tenant = TenantMapper.Map(body.Value);
            await tenantStoreService.CreateTenantAsync(tenant);

            return(new CreatedResult(new Uri($"api/tenant/{tenant.id}", UriKind.Relative), tenant.id));
        }