public IList <string> GetUsers()
        {
            GetUsersUser            user   = new GetUsersUser();
            OMSConfigurationSection config = ConfigurationManager.GetSection("imi.supplychain.ux.modules.ordermanagement") as OMSConfigurationSection;

            if (config.SendDomainUserId)
            {
                user.LoginId = UserSessionService.DomainUser;
            }
            else
            {
                user.LoginId = UserSessionService.UserId;
            }

            Imi.SupplyChain.Services.OrderManagement.Users.DataContracts.Response[] responseItems =
                GetUsersService.GetUsers(new GetUsersUser[] { user }, config.SendDomainUserId);
            IList <string> userList = TransformUsers(responseItems);

            return(userList);
        }
Пример #2
0
        public Response[] GetUsers(GetUsersUser[] users, bool useDomainInUserID)
        {
            Authorizer authorizer = Authorizer.GetInstance();

            try
            {
                if (users == null || users.Length == 0)
                {
                    return(new Response[0]);
                }
                GetUsersServiceReal.GetUsersServiceClient client    = new GetUsersServiceReal.GetUsersServiceClient();
                GetUsersServiceReal.GetUsersUser[]        realUsers = new GetUsersServiceReal.GetUsersUser[users.Length];
                for (int i = 0; i < users.Length; i++)
                {
                    GetUsersUser user = users[i];
                    GetUsersServiceReal.GetUsersUser realUser = new GetUsersServiceReal.GetUsersUser();
                    if (user.LoginId == null)
                    {
                        return(errorResponse("loginId is null"));
                    }
                    else if (!authorizer.IsAuthorized(user.LoginId, useDomainInUserID))
                    {
                        return(errorResponse("unauthorized query for login id: " + user.LoginId));
                    }
                    realUser.LoginId = user.LoginId;
                    realUsers[i]     = realUser;
                }
                object[]   realObjects = client.GetUsers(realUsers);
                int        n           = realObjects.Length;
                Response[] responses   = new Response[n];
                for (int i = 0; i < n; i++)
                {
                    object   o        = realObjects[i];
                    Response response = new Response();
                    if (o is GetUsersServiceReal.ResponseSuccess)
                    {
                        GetUsersServiceReal.ResponseSuccess realSuccess = (GetUsersServiceReal.ResponseSuccess)o;
                        response.EmployNumber         = realSuccess.EmployNumber;
                        response.LegalEntity          = realSuccess.LegalEntity;
                        response.LegalEntitySpecified = realSuccess.LegalEntitySpecified;
                        response.LoginId         = realSuccess.LoginId;
                        response.OrgUnit         = realSuccess.OrgUnit;
                        response.UserId          = realSuccess.UserId;
                        response.UserName        = realSuccess.UserName;
                        response.WarehouseNumber = realSuccess.WarehouseNumber;
                        response.Success         = true;
                        responses[i]             = response;
                    }
                    else if (o is GetUsersServiceReal.ResponseFailure)
                    {
                        GetUsersServiceReal.ResponseFailure realFailure = (GetUsersServiceReal.ResponseFailure)o;
                        response.ErrorText = realFailure.ErrorText;
                        response.Success   = false;
                        responses[i]       = response;
                    }
                }
                return(responses);
            }
            catch (Exception e)
            {
                Console.WriteLine("got an Exception in GetUsers: {0}", e.Message);
                throw new Exception("GetUsers Exception", e);
            }
        }