示例#1
0
        public WorkspaceDTO CreateWorkspace(WorkspaceDTO workspace)
        {
            var workspaceBL      = _mapper.Map <Workspace>(workspace);
            var createdWorkspace = _workspaceService.Create(workspaceBL, UserId);

            return(_mapper.Map <WorkspaceDTO>(createdWorkspace));
        }
示例#2
0
        public async Task <List <WorkspaceData> > GetAllWorkspaceByUser()
        {
            WorkspaceDTO res = new WorkspaceDTO();

            var request = new RestRequest("/member/1/workspaces", Method.GET);

            request.AddHeader("Authorization", "Bearer " + Token);

            IRestResponse response = await client.ExecuteAsync(request);

            if (response.StatusCode == System.Net.HttpStatusCode.Unauthorized)
            {
                await RefreshToken();
            }
            else
            {
                if (!response.IsSuccessful)
                {
                    Console.WriteLine(response.Content);
                    throw new Exception("Get workspace fail");
                }
                else
                {
                    res = JsonConvert.DeserializeObject <WorkspaceDTO>(response.Content);
                }
            }

            return(res.Data);
        }
示例#3
0
        public static WorkspaceDTO HasOnlyTasks(this WorkspaceDTO workspace, params TaskDTO[] tasks)
        {
            Assert.AreEqual(tasks.Length, workspace.Tasks.Count);
            var workspaceTasks = workspace.Tasks;

            foreach (var task in tasks)
            {
                Assert.IsTrue(workspaceTasks.Any(workspaceTask => workspaceTask.BoolSameAs(task)));
            }
            return(workspace);
        }
示例#4
0
        public ActionResult <WorkspaceDTO> UpdateWorkspace(int workspaceId,
                                                           WorkspaceDTO workspace)
        {
            if (workspaceId != workspace.Id)
            {
                return(BadRequest("Wrong workspace id"));
            }

            var workspaceBL         = _mapper.Map <Workspace>(workspace);
            var updatedWorkspace    = _workspaceService.Update(workspaceBL, UserId);
            var updatedWorkspaceDTO = _mapper.Map <WorkspaceDTO>(updatedWorkspace);

            return(updatedWorkspaceDTO);
        }
        async Task <CreatedWorkspaceDTO> IBackendAccess.CreateWorkspace(WorkspaceDTO dto)
        {
            var request = HttpWebRequest.CreateHttp(serviceUrl);

            request.Method      = "POST";
            request.ContentType = request.Accept = "application/xml";
            using (var requestStream = await request.GetRequestStreamAsync())
                using (var xmlWriter = XmlWriter.Create(requestStream, wsWriterSettings))
                {
                    wsSerializer.Value.Serialize(xmlWriter, dto);
                }
            using (var response = (HttpWebResponse)await request.GetResponseNoException())
            {
                await response.LogAndThrowOnFailure(trace);

                using (var responseStream = response.GetResponseStream())
                {
                    return((CreatedWorkspaceDTO)createdWsSerializer.Value.Deserialize(responseStream));
                }
            }
        }
示例#6
0
 Task <CreatedWorkspaceDTO> IBackendAccess.CreateWorkspace(WorkspaceDTO dto)
 {
     throw new NotImplementedException();
 }
示例#7
0
 public static WorkspaceDTO HasNoTasks(this WorkspaceDTO workspace)
 {
     Assert.AreEqual(0, workspace.Tasks.Count);
     return(workspace);
 }
示例#8
0
        public IEnumerable <WorkspaceDTO> GetPowerBIWorkspace()
        {
            List <WorkspaceDTO> workspaceDTOList = new List <WorkspaceDTO>();

            // Create the InitialSessionState Object
            InitialSessionState iss = InitialSessionState.CreateDefault2();

            // Initialize PowerShell Engine
            var shell = PowerShell.Create(iss);

            shell.Commands.AddCommand("Connect-PowerBIServiceAccount");

            var userName = "******";
            var pwd      = "Dac21568";

            System.Security.SecureString theSecureString = new NetworkCredential(userName, pwd).SecurePassword;
            PSCredential cred = new PSCredential(userName, theSecureString);

            shell.Commands.AddParameter("Credential", cred);

            var results = shell.Invoke();

            if (results.Count > 0)
            {
                var shell1 = PowerShell.Create(iss);
                shell1.Commands.AddCommand("Get-PowerBIWorkspace");
                //shell1.Commands.AddParameter("Scope", "Individual");

                var res = shell1.Invoke();

                if (res.Count > 0)
                {
                    foreach (var psObject in res)
                    {
                        //WorkspaceDTO workspaceDTO = new WorkspaceDTO();

                        var workSpaceId = psObject.Properties["Id"].Value;
                        //var workSpaceUser = psObject.Properties["User"].Value;
                        //workspaceDTO.WorkSpaceId = psObject.Properties["Id"].Value.ToString();
                        //workspaceDTO.WorkSpaceName = psObject.Properties["Name"].Value.ToString();

                        List <ReportsDTO> reportsDTOList = new List <ReportsDTO>();
                        var shell2 = PowerShell.Create(iss);
                        shell2.Commands.AddCommand("Get-PowerBIReport");
                        shell2.Commands.AddParameter("WorkspaceId", workSpaceId);
                        var result = shell2.Invoke();
                        if (result.Count > 0)
                        {
                            foreach (var psObjectReport in result)
                            {
                                //ReportsDTO reportsDTO = new ReportsDTO();
                                //reportsDTO.ReportId = psObjectReport.Properties["Id"].Value.ToString();
                                //reportsDTO.ReportName = psObjectReport.Properties["Name"].Value.ToString();
                                //reportsDTOList.Add(reportsDTO);
                                WorkspaceDTO workspaceDTO = new WorkspaceDTO();
                                workspaceDTO.WorkSpaceId   = psObject.Properties["Id"].Value.ToString();
                                workspaceDTO.WorkSpaceName = psObject.Properties["Name"].Value.ToString();
                                workspaceDTO.ReportId      = psObjectReport.Properties["Id"].Value.ToString();
                                workspaceDTO.ReportName    = psObjectReport.Properties["Name"].Value.ToString();
                                workspaceDTO.ReportCount   = result.Count;
                                workspaceDTOList.Add(workspaceDTO);
                            }
                            //workspaceDTO.Reports = reportsDTOList;
                        }
                        else
                        {
                            WorkspaceDTO workspaceDTO = new WorkspaceDTO();
                            workspaceDTO.WorkSpaceId   = psObject.Properties["Id"].Value.ToString();
                            workspaceDTO.WorkSpaceName = psObject.Properties["Name"].Value.ToString();
                            workspaceDTOList.Add(workspaceDTO);
                        }
                    }
                }
            }
            return(workspaceDTOList);
        }