private UserModel CreateUserModel(User user)
        {
            AdminUser adminUser = user as AdminUser;

            if (adminUser != null)
            {
                return(new AdminUserModel(adminUser));
            }

            ShopUser shopUser = user as ShopUser;

            if (shopUser != null)
            {
                return(new ShopUserModel(shopUser, _shopService.GetById(shopUser.ShopId)));
            }

            AccountUser accountUser = user as AccountUser;

            if (accountUser != null)
            {
                return(new AccountUserModel(accountUser, _accountService.QueryByOwnerId(accountUser)));
            }

            DistributorUser distributorUser = user as DistributorUser;

            if (distributorUser != null)
            {
                return(new DistributorUserModel(distributorUser, _distributorService.GetByUserId(distributorUser.UserId)));
            }
            throw new NotSupportedException(user.GetType().FullName);
        }