Ejemplo n.º 1
0
        public IApiResult Update(UpdateUser operation)
        {
            GetUsers loadUser = new GetUsers();

            loadUser.LangID = 1;
            loadUser.ID     = operation.ID;
            var         loadUserResult = loadUser.QueryAsync().Result;
            List <User> users          = (List <User>)loadUserResult;

            if (users.Count > 0)
            {
                var result = operation.ExecuteAsync().Result;
                if (result is ValidationsOutput)
                {
                    return(new ApiResult <List <ValidationItem> >()
                    {
                        Data = ((ValidationsOutput)result).Errors
                    });
                }
                else
                {
                    return(new ApiResult <object>()
                    {
                        Status = ApiResult <object> .ApiStatus.Success
                    });
                }
            }
            else
            {
                return(new ApiResult <object>()
                {
                    ErrorMessageEn = ApiResult <object> .ApiMessage.notExist
                });
            }
        }
Ejemplo n.º 2
0
        public IActionResult Load(Int64?userID, Int64?langId)
        {
            GetUsers operation = new GetUsers();

            operation.ID = userID;
            if (langId.HasValue)
            {
                operation.LangID = langId;
            }
            else
            {
                operation.LangID = 1;
            }

            var result = operation.QueryAsync().Result;

            if (result is ValidationsOutput)
            {
                return(Ok(new ApiResult <List <ValidationItem> >()
                {
                    Data = ((ValidationsOutput)result).Errors
                }));
            }
            else
            {
                return(Ok((List <User>)result));
            }
        }
Ejemplo n.º 3
0
        public IApiResult Create(CreateUser operation)
        {
            //check if userName and email exist
            GetUsers loadUser = new GetUsers();

            loadUser.LangID = 1;

            var         loadUserResult = loadUser.QueryAsync().Result;
            List <User> users          = (List <User>)loadUserResult;
            bool        emailExist     = users.Exists(user => user.Email == operation.Email);

            if (emailExist)
            {
                return new ApiResult <object>()
                       {
                           ErrorMessageEn = ApiResult <object> .ApiMessage.exist
                       }
            }
            ;
            bool userNameExist = users.Exists(user => user.UserName == operation.UserName);

            if (userNameExist)
            {
                return new ApiResult <object>()
                       {
                           ErrorMessageEn = ApiResult <object> .ApiMessage.exist
                       }
            }
            ;


            var result = operation.ExecuteAsync().Result;

            if (result is ValidationsOutput)
            {
                return(new ApiResult <List <ValidationItem> >()
                {
                    Data = ((ValidationsOutput)result).Errors
                });
            }
            else
            {
                return(new ApiResult <object>()
                {
                    Status = ApiResult <object> .ApiStatus.Success
                });
            }
        }
        public IActionResult LoadUserGroup(Int64?ID, Int64?groupID, Int64?langId)
        {
            GetUserGroups operation = new GetUserGroups();
            GetUsers      users     = new GetUsers();

            List <User> returnedRelatedGroups   = new List <User>();
            List <User> returnedUnRelatedGroups = new List <User>();

            if (langId.HasValue)
            {
                operation.LangID = langId;
                users.LangID     = langId;
            }
            else
            {
                operation.LangID = 1;
                users.LangID     = 1;
            }
            var result         = operation.QueryAsync().Result;
            var usersList      = (List <User>)users.QueryAsync().Result;
            var userIDsInGroup = (List <UserGroup>)result;

            userIDsInGroup = userIDsInGroup.Where(g => g.RefrenceID == groupID).ToList();
            if (userIDsInGroup.Count > 0)
            {
                foreach (var item in userIDsInGroup)
                {
                    foreach (var user in usersList)
                    {
                        if (user.ID == item.UserID)
                        {
                            bool alreadyExist             = returnedRelatedGroups.Contains(user);
                            bool alreadyExistInSecondList = returnedUnRelatedGroups.Contains(user);
                            if (!alreadyExist && !alreadyExistInSecondList)
                            {
                                user.UserRelationID = item.ID;
                                returnedRelatedGroups.Add(user);
                            }
                            else
                            {
                                user.UserRelationID = item.ID;
                                returnedRelatedGroups.Add(user);
                                returnedUnRelatedGroups.Remove(user);
                            }
                        }
                        else
                        {
                            bool alreadyExist            = returnedUnRelatedGroups.Contains(user);
                            bool alreadyExistInFirstList = returnedRelatedGroups.Contains(user);
                            if (!alreadyExist && !alreadyExistInFirstList)
                            {
                                user.UserRelationID = item.ID;
                                returnedUnRelatedGroups.Add(user);
                            }
                        }
                    }
                }
            }
            else
            {
                returnedUnRelatedGroups = usersList;
            }


            if (result is ValidationsOutput)
            {
                return(Ok(new ApiResult <List <ValidationItem> >()
                {
                    Data = ((ValidationsOutput)result).Errors
                }));
            }
            else
            {
                return(Ok(new { RelatedGroups = returnedRelatedGroups, UnRelatedGroups = returnedUnRelatedGroups }));
            }
        }