Esempio n. 1
0
        public async Task <ActionResult <Response> > AddDataset(Guid projectId, [FromBody] AddDatasetViewModel dataSetViewModel)
        {
            if (!ModelState.IsValid)
            {
                return(Ok(new Response {
                    Successful = "true", Msg = ModelState.Values.ToString(), Data = null
                }));
            }
            try
            {
                var convertProjectId = projectId.ToString().ToUpper();
                var currentUserId    = HttpContext.User.Claims.First(c => c.Type == "uid").Value.ToString();
                var role             = await AzureService.FindUserRole(currentUserId);

                if (role != "admin" && !await AzureService.FindUserIsProjectManager(currentUserId, convertProjectId))
                {
                    return(StatusCode(403));
                }
                var datasetId = await AzureService.AddDataset(convertProjectId, dataSetViewModel);

                return(Ok(new Response().GetJObject("datasetId", datasetId)));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }