package cn.ibizlab.r7.runtime.runtimemgr.r7rt_base.feign;

import java.util.List;

import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.cloud.openfeign.FeignClient;

import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import cn.ibizlab.r7.runtime.runtimemgr.r7rt_base.domain.UserRoleData;
import cn.ibizlab.r7.runtime.runtimemgr.r7rt_base.filter.*;


public interface UserRoleDataFeignClient {



	@RequestMapping(method = RequestMethod.POST, value = "/runtimemgr/userroledata/checkkey")
    public Boolean checkKey(@RequestBody UserRoleData userroledata) ;

	@RequestMapping(method = RequestMethod.GET, value = "/runtimemgr/userroledata/{userroledata_id}/getdraft")
    public UserRoleData getDraft(@PathVariable("userroledata_id") String userroledata_id, @RequestBody UserRoleData userroledata) ;

	@RequestMapping(method = RequestMethod.GET, value = "/runtimemgr/userroledata/{userroledata_id}/getuserroledataapi")
    public UserRoleData getUserRoleDataAPI(@PathVariable("userroledata_id") String userroledata_id, @RequestBody UserRoleData userroledata) ;

	@RequestMapping(method = RequestMethod.GET, value = "/runtimemgr/userroledata/{userroledata_id}")
    public UserRoleData get(@PathVariable("userroledata_id") String userroledata_id) ;

	@RequestMapping(method = RequestMethod.DELETE, value = "/runtimemgr/userroledata/{userroledata_id}")
    public Boolean remove(@PathVariable("userroledata_id") String userroledata_id) ;

	@RequestMapping(method = RequestMethod.POST, value = "/runtimemgr/userroledata/{userroledata_id}/haspermissiongv")
    public UserRoleData hasPermissionGV(@PathVariable("userroledata_id") String userroledata_id, @RequestBody UserRoleData userroledata) ;

	@RequestMapping(method = RequestMethod.POST, value = "/runtimemgr/userroledata")
    public UserRoleData create(@RequestBody UserRoleData userroledata) ;

	@RequestMapping(method = RequestMethod.PUT, value = "/runtimemgr/userroledata/{userroledata_id}")
    public UserRoleData update(@PathVariable("userroledata_id") String userroledata_id, @RequestBody UserRoleData userroledata) ;

	@RequestMapping(method = RequestMethod.POST, value = "/runtimemgr/userroledata/{userroledata_id}/haspermissionev")
    public UserRoleData hasPermissionEV(@PathVariable("userroledata_id") String userroledata_id, @RequestBody UserRoleData userroledata) ;

	@RequestMapping(method = RequestMethod.POST, value = "/runtimemgr/userroledata/{userroledata_id}/save")
    public UserRoleData save(@PathVariable("userroledata_id") String userroledata_id, @RequestBody UserRoleData userroledata) ;

	@RequestMapping(method = RequestMethod.POST, value = "/runtimemgr/userroledata/{userroledata_id}/syncdata")
    public UserRoleData syncData(@PathVariable("userroledata_id") String userroledata_id, @RequestBody UserRoleData userroledata) ;

    @RequestMapping(method= RequestMethod.GET , value="/runtimemgr/userroledata/fetchdefault")
	public Page<UserRoleData> fetchDefault(UserRoleDataSearchContext searchContext) ;
}
