All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.loy.upm.sys.service.impl.AuthorityServiceImpl Maven / Gradle / Ivy

/*
 * Copyright   Loy Fu. 付厚俊
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
*/
package com.loy.upm.sys.service.impl;

import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;

import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

import com.loy.e.common.vo.DefaultRespone;
import com.loy.e.core.api.AuthorityService;
import com.loy.upm.sys.domain.entity.ResourceEntity;
import com.loy.upm.sys.domain.entity.RoleEntity;
import com.loy.upm.sys.repository.ResourceRepository;
import com.loy.upm.sys.repository.RoleRepository;

/**
 * 
 * @author Loy Fu qq群 540553957  http://www.17jee.com
 * @since 1.7
 * @version 1.0.0
 * 
 */

@RestController(value = "authorityService")
@RequestMapping(value = "**/authority", method = { RequestMethod.POST, RequestMethod.GET })
@Transactional
public class AuthorityServiceImpl implements AuthorityService {
    @Autowired
    RoleRepository roleRepository;
    @Autowired
    ResourceRepository resourceRepository;

    @RequestMapping(value = "/resource", method = { RequestMethod.POST, RequestMethod.GET })
    @Override
    public DefaultRespone> getResource() {
        List resourceEntitys = resourceRepository.findAllResource();
        DefaultRespone> defaultRespone = new DefaultRespone>(
                true);
        if (resourceEntitys != null && !resourceEntitys.isEmpty()) {
            Map resources = new HashMap();
            for (ResourceEntity r : resourceEntitys) {
                if (StringUtils.isNotEmpty(r.getAccessCode())) {
                    resources.put(r.getUrl(), r.getId());
                }

            }
            defaultRespone.setData(resources);
            return defaultRespone;
        }
        return defaultRespone;
    }

    @RequestMapping(value = "/roles")
    @Override
    public DefaultRespone> getResourceRole(String resourceId) {
        List roleEntitys = roleRepository.findRoleByResourceId(resourceId);
        DefaultRespone> defaultRespone = new DefaultRespone>(true);
        if (roleEntitys != null && !roleEntitys.isEmpty()) {
            Set roles = new HashSet();
            for (RoleEntity r : roleEntitys) {
                roles.add(r.getId());
            }

            defaultRespone.setData(roles);
            return defaultRespone;
        }
        return defaultRespone;
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy