async Task CreateWorkload(string title, DateTime date, string description) { var uniqueName = this.GetCurrentUser(); var workload = new WorkloadViewModel2() { WBTitle = title, WBDescription = description, WBStartDate = date, WBEndDate = date, WBID = Guid.NewGuid(), WBCreatedDate = DateTime.Now, WBCreatedBy = uniqueName, WBUsers = new string[] { uniqueName }, WBIsWorkload = true, // dont forget to set to true WBStatus = 2, WBActivity = Guid.Empty, WBComplexity = 0, WBExpertise = 0 }; var response = await Util.ConnectToRemoteService(HttpMethod.Post, Util.KanbanURL + "api/workload/add", uniqueName, "", workload); // Util.KanbanClient.WorkspaceFolders.Create(uniqueName, "workload"); //var client = new ArdaSDK.Kanban.KanbanClient(); //client.WorkspaceFolders.Create("abc"); //var workspace = new ArdaSDK.Kanban.WorkspaceFolders(client); // workspace. ///.KanbanClient(); }
public async Task <WorkloadViewModel> AddSimpleV3([FromBody] WorkloadSimpleViewModel work) { if (work == null) { throw new ArgumentOutOfRangeException(nameof(work)); } if (work.Title == null || work.Title == "") { throw new ArgumentOutOfRangeException(nameof(work.Title)); } var uniqueName = this.GetCurrentUser(); var now = DateTime.Now; var today = new DateTime(now.Year, now.Month, now.Day); WorkloadViewModel workload = new WorkloadViewModel2() { WBID = (work.Id == Guid.Empty) ? Guid.NewGuid() : work.Id, WBTitle = work.Title, WBDescription = work.Description, WBStatus = (work.Status.HasValue) ? work.Status.Value : 0, WBCreatedBy = uniqueName, WBCreatedDate = DateTime.Now, WBStartDate = today, WBEndDate = today, WBUsers = new string[] { uniqueName }, WBIsWorkload = true, WBActivity = Guid.Empty, WBComplexity = 0, WBExpertise = 0, WBFilesList = null, WBMetrics = null, WBTechnologies = null }; var response = await Util.ConnectToRemoteService(HttpMethod.Post, Util.KanbanURL + "api/workload/add", uniqueName, "", workload); UsageTelemetry.Track(uniqueName, ArdaUsage.Workload_Add); if (!response.IsSuccessStatusCode) { throw new Exception($"ConnectToRemote(Kanban/api/workload/add) failed with HTTP ${response.StatusCode}"); } return(workload); }
public async Task <HttpResponseMessage> Add(ICollection <IFormFile> WBFiles, WorkloadViewModel2 workload) { //Owner: var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value; //Complete WB fields: workload.WBCreatedBy = uniqueName; workload.WBCreatedDate = DateTime.Now; //Iterate over files: if (WBFiles.Count > 0) { List <Tuple <Guid, string, string> > fileList = await UploadNewFiles(WBFiles); //Adds the file lists to the workload object: workload.WBFilesList = fileList; } // Sometimes /Workload/Guid fails or takes a long time to return if (workload.WBID == Guid.Empty) { workload.WBID = Guid.NewGuid(); } var response = await Util.ConnectToRemoteService(HttpMethod.Post, Util.KanbanURL + "api/workload/add", uniqueName, "", workload); UsageTelemetry.Track(uniqueName, ArdaUsage.Workload_Add); if (!response.IsSuccessStatusCode) { return(new HttpResponseMessage(HttpStatusCode.InternalServerError)); } await Assign(workload.WBID, workload.Tag, uniqueName); return(new HttpResponseMessage(HttpStatusCode.OK)); }
public async Task <WorkloadViewModel> AddSimple(ICollection <IFormFile> WBFiles, WorkloadViewModel2 workload) { //Owner: var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value; workload.WBActivity = Guid.Empty; workload.WBComplexity = 0; workload.WBExpertise = 0; //Complete WB fields: workload.WBCreatedBy = uniqueName; workload.WBCreatedDate = DateTime.Now; var now = DateTime.Now; var today = new DateTime(now.Year, now.Month, now.Day); workload.WBStartDate = today; workload.WBEndDate = today; // Myself workload.WBUsers = new string[] { uniqueName }; // Sometimes /Workload/Guid fails or takes a long time to return if (workload.WBID == Guid.Empty) { workload.WBID = Guid.NewGuid(); } var response = await Util.ConnectToRemoteService(HttpMethod.Post, Util.KanbanURL + "api/workload/add", uniqueName, "", workload); await Assign(workload.WBID, workload.Tag, uniqueName); UsageTelemetry.Track(uniqueName, ArdaUsage.Workload_Add); if (!response.IsSuccessStatusCode) { throw new Exception($"ConnectToRemote(Kanban/api/workload/add) failed with HTTP ${response.StatusCode}"); } return(workload); }