コード例 #1
0
        public IHttpActionResult Get(
            [FromUri] ListJobTimesheetRequest request)
        {
            var result = _listoRequestProcessor.Process(request);

            return(Ok(result));
        }
コード例 #2
0
        public IHttpActionResult Get([FromUri] ListJobCostItemsRequest request)
        {
            var result = _listJobCostItemequestProcessor.Process(request);

            if (result == null)
            {
                return(NotFound());
            }

            return(Ok(result));
        }
コード例 #3
0
        public IHttpActionResult Get([FromUri] int userId)
        {
            var request = new ListUserPrivilegesRequest
            {
                OrganizationUserIds = userId.ToString()
            };

            var result = _listUserPrivilegeRequestProcessor.Process(request);

            return(Ok(result));
        }
コード例 #4
0
        public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
        {
            if (string.IsNullOrWhiteSpace(context.UserName) || string.IsNullOrWhiteSpace(context.Password))
            {
                context.SetError("invalid_grant", "The user name or password is incorrect.");

                return;
            }

            var credentials = _credentialRequestProcessor.Process(new ListValidateCredentialsRequest
            {
                Username = context.UserName,
                Password = context.Password
            }).ToArray();

            if (credentials.Length == 0)
            {
                context.SetError("invalid_grant", "The user name or password is incorrect.");

                return;
            }

            var userPrivileges = _listUserPrivilegesProcessor.Process(new ListUserPrivilegesRequest
            {
                OrganizationUserIds = string.Join(",", credentials.Select(i => i.OrganizationUserId))
            });

            var oauthIdentity = new ClaimsIdentity(new[]
            {
                new Claim(ClaimTypes.Email, context.UserName),
                new Claim(ClaimTypes.Sid, JsonConvert.SerializeObject(userPrivileges)),
                new Claim(ClaimTypes.GroupSid, JsonConvert.SerializeObject(credentials))
            }, OAuthDefaults.AuthenticationType);

            //var cookiesIdentity = new ClaimsIdentity(new[]
            //{
            //    new Claim(ClaimTypes.Email, context.UserName),
            //    new Claim(ClaimTypes.Sid, JsonConvert.SerializeObject(userPrivileges)),
            //    new Claim(ClaimTypes.GroupSid, JsonConvert.SerializeObject(credentials)),
            //}, CookieAuthenticationDefaults.AuthenticationType);

            var properties = CreateProperties(context.UserName);

            var ticket = new AuthenticationTicket(oauthIdentity, properties);

            context.Validated(ticket);

            //context.Request.Context.Authentication.SignIn(cookiesIdentity);
        }
コード例 #5
0
        public IHttpActionResult Get([FromUri] SearchTermRequest request)
        {
            var searchTerm = SearchTermHelper.ConvertToSearchTerm(request.SearchTerm);

            if (string.IsNullOrWhiteSpace(searchTerm))
            {
                throw new InvalidOperationException("invalid search term");
            }

            request.SearchTerm = searchTerm;

            var result = _searchByNameProcessor.Process(request);

            return(Ok(result));
        }
コード例 #6
0
        public IHttpActionResult Get([FromUri] ListOrgEntitiesRequest request)
        {
            var result = _listProcessor.Process(request);

            return(Ok(result));
        }
コード例 #7
0
 public string Convert(IListProcessor processor)
 {
     return(processor.Process(this.parameterList));
 }
コード例 #8
0
        public IHttpActionResult Get([FromUri] ListCustomerContactsRequest request)
        {
            var result = _listProcessor.Process(request);

            return(Ok(result));
        }
コード例 #9
0
        public IHttpActionResult Get([FromUri] ListJobStaffRequest request)
        {
            var result = _listJobStaffPoProcessor.Process(request);

            return(Ok(result));
        }