Ejemplo n.º 1
0
        public async Task <ActionResult> CreateTimeEntry(TimeEntryViewModel model)
        {
            var url = "https://travel2pay.openproject.com/api/v3/time_entries";
            var createTimeEntryRequest = new OPCreateTimeEntryRequest()
            {
                Comment = new OPCreateTimeEntryRequestComment {
                    Raw = model.Comment
                },
                Hours = $"PT{model.Hours}H",
                Links = new OPCreateTimeEntryModelLink()
                {
                    Activity = new OPCreateTimeEntryModelActivity {
                        Href = $"/api/v3/time_entries/activities/{model.ActivityId}"
                    },
                    Project = new OPCreateTimeEntryModelProject {
                        Href = "/api/v3/projects/2"
                    },
                    WorkPackage = new OPCreateTimeEntryModelWorkPackage {
                        Href = $"/api/v3/work_packages/{model.WorkPackageId}"
                    }
                },
                SpentOn = model.SpentOn.ToString("yyyy-MM-dd")
            };
            var timeEntry = await _httpClientService
                            .Create(Request.Headers["openProjectAPIKey"].First())
                            .Post <OPCreateTimeEntryRequest, OpCreateTimeEntryResponse>(url, createTimeEntryRequest);

            return(Ok(timeEntry));
        }
Ejemplo n.º 2
0
        /// <inheritdoc />
        public async Task <bool> Registration(RegistrationModel model)
        {
            var pathParams = new HttpPathParameters();

            pathParams.Add("registration", -1);

            var settings = new HttpSettings(Url, null, pathParams, "Registration");

            var body = new HttpBody <RegistrationModel>(model);

            return(await _httpService.Create(settings, body));
        }