|  | @ -0,0 +1,134 @@
 | 
	
		
			
				|  |  | package com.yihu.jw.base.endpoint.application;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import com.alibaba.fastjson.JSON;
 | 
	
		
			
				|  |  | import com.alibaba.fastjson.JSONArray;
 | 
	
		
			
				|  |  | import com.alibaba.fastjson.JSONObject;
 | 
	
		
			
				|  |  | import com.yihu.jw.application.service.BaseApplicationMenuService;
 | 
	
		
			
				|  |  | import com.yihu.jw.application.service.BaseApplicationRoleDictService;
 | 
	
		
			
				|  |  | import com.yihu.jw.entity.base.application.BaseApplicationMenuDO;
 | 
	
		
			
				|  |  | import com.yihu.jw.entity.base.application.BaseApplicationRoleDictDO;
 | 
	
		
			
				|  |  | import com.yihu.jw.entity.base.application.BaseApplicationRoleMenuDO;
 | 
	
		
			
				|  |  | import com.yihu.jw.entity.base.application.BaseApplicationRoleUserDO;
 | 
	
		
			
				|  |  | import com.yihu.jw.restmodel.web.Envelop;
 | 
	
		
			
				|  |  | import com.yihu.jw.restmodel.web.ObjEnvelop;
 | 
	
		
			
				|  |  | import com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint;
 | 
	
		
			
				|  |  | import com.yihu.jw.rm.base.BaseRequestMapping;
 | 
	
		
			
				|  |  | import io.swagger.annotations.Api;
 | 
	
		
			
				|  |  | import io.swagger.annotations.ApiOperation;
 | 
	
		
			
				|  |  | import io.swagger.annotations.ApiParam;
 | 
	
		
			
				|  |  | import org.springframework.beans.factory.annotation.Autowired;
 | 
	
		
			
				|  |  | import org.springframework.web.bind.annotation.*;
 | 
	
		
			
				|  |  | import org.w3c.dom.ls.LSInput;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import java.util.ArrayList;
 | 
	
		
			
				|  |  | import java.util.List;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | /**
 | 
	
		
			
				|  |  | *
 | 
	
		
			
				|  |  | * @since 1.
 | 
	
		
			
				|  |  | */
 | 
	
		
			
				|  |  | @RestController
 | 
	
		
			
				|  |  | @RequestMapping(value = BaseRequestMapping.ApplicationRoleDict.PREFIX)
 | 
	
		
			
				|  |  | @Api(value = "应用角色管理", description = "应用角色管理", tags = {"应用角色管理"})
 | 
	
		
			
				|  |  | public class BaseApplicationRoleDictEndpoint extends EnvelopRestEndpoint {
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | @Autowired
 | 
	
		
			
				|  |  | private BaseApplicationRoleDictService applicationRoleDictService;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @PostMapping(value = BaseRequestMapping.ApplicationRoleDict.insertAndUpdateRole)
 | 
	
		
			
				|  |  |     @ApiOperation(value = "创建和修改应用角色")
 | 
	
		
			
				|  |  |     public ObjEnvelop insertAndUpdateMenu(
 | 
	
		
			
				|  |  |         @ApiParam(name = "jsonData", value = "Json数据", required = true)
 | 
	
		
			
				|  |  |         @RequestParam(value = "jsonData") String jsonData) throws Exception {
 | 
	
		
			
				|  |  |         BaseApplicationRoleDictDO roleDictDO = toEntity(jsonData, BaseApplicationRoleDictDO.class);
 | 
	
		
			
				|  |  |         roleDictDO = applicationRoleDictService.insertAndUpdateRole(roleDictDO);
 | 
	
		
			
				|  |  |         return success(roleDictDO);
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @PostMapping(value = BaseRequestMapping.ApplicationRoleDict.DELETE)
 | 
	
		
			
				|  |  |     @ApiOperation(value = "根据id删除应用角色")
 | 
	
		
			
				|  |  |     public Envelop delete(@ApiParam(name = "ids", value = "id串,中间用,分隔", required = true)
 | 
	
		
			
				|  |  |         @RequestParam(value = "ids") String ids) {
 | 
	
		
			
				|  |  |         applicationRoleDictService.delete(ids.split(","));
 | 
	
		
			
				|  |  |         return success("删除成功");
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @GetMapping(value = BaseRequestMapping.ApplicationRoleDict.findById)
 | 
	
		
			
				|  |  |     @ApiOperation(value = "根据id获取菜单资源详情")
 | 
	
		
			
				|  |  |     public ObjEnvelop findById (
 | 
	
		
			
				|  |  |         @ApiParam(name = "id", value = "id", required = true)
 | 
	
		
			
				|  |  |         @RequestParam(value = "id") String id) throws Exception {
 | 
	
		
			
				|  |  |         return success(applicationRoleDictService.findById(id));
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @GetMapping(value = BaseRequestMapping.ApplicationRoleDict.selectByCondition)
 | 
	
		
			
				|  |  |     @ApiOperation(value = "查询角色配置列表")
 | 
	
		
			
				|  |  |     public Envelop selectByCondition (
 | 
	
		
			
				|  |  |             @ApiParam(name = "type", value = "角色类型(字典V_APPLICATION_ROLE_DICT)", required = false)
 | 
	
		
			
				|  |  |             @RequestParam(value = "type",required = false) String type,
 | 
	
		
			
				|  |  |             @ApiParam(name = "saasId", value = "租户id", required = false)
 | 
	
		
			
				|  |  |             @RequestParam(value = "saasId",required = false) String saasId,
 | 
	
		
			
				|  |  |             @ApiParam(name = "orgCode", value = "机构id", required = false)
 | 
	
		
			
				|  |  |             @RequestParam(value = "orgCode",required = false) String orgCode,
 | 
	
		
			
				|  |  |             @ApiParam(name = "name", value = "资源菜单名称", required = false)
 | 
	
		
			
				|  |  |             @RequestParam(value = "name",required = false) String name,
 | 
	
		
			
				|  |  |             @ApiParam(name = "status", value = "是否生效(1生效0失效)", required = false)
 | 
	
		
			
				|  |  |             @RequestParam(value = "status",required = false) Integer status,
 | 
	
		
			
				|  |  |             @ApiParam(name = "page", value = "页码", required = false)
 | 
	
		
			
				|  |  |             @RequestParam(value = "page",required = false) Integer page,
 | 
	
		
			
				|  |  |             @ApiParam(name = "size", value = "大小", required = false)
 | 
	
		
			
				|  |  |             @RequestParam(value = "size",required = false) Integer size) throws Exception {
 | 
	
		
			
				|  |  |         return success(applicationRoleDictService.selectByCondition(type,saasId,orgCode,name,status,page,size));
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @PostMapping(value = BaseRequestMapping.ApplicationRoleDict.insertRoleUser)
 | 
	
		
			
				|  |  |     @ApiOperation(value = "角色成员配置")
 | 
	
		
			
				|  |  |     public Envelop insertRoleUser (
 | 
	
		
			
				|  |  |             @ApiParam(name = "jsonData", value = "jsonData实体", required = true)
 | 
	
		
			
				|  |  |             @RequestParam(value = "jsonData") String jsonData) throws Exception {
 | 
	
		
			
				|  |  |         JSONArray array = JSONArray.parseArray(jsonData);
 | 
	
		
			
				|  |  |         List<BaseApplicationRoleUserDO> roleUserDOS = new ArrayList<>();
 | 
	
		
			
				|  |  |         for (int i=0;i<array.size();i++){
 | 
	
		
			
				|  |  |             JSONObject object = array.getJSONObject(i);
 | 
	
		
			
				|  |  |             BaseApplicationRoleUserDO roleUserDO = toEntity(object.toJSONString(), BaseApplicationRoleUserDO.class);
 | 
	
		
			
				|  |  |             roleUserDOS.add(roleUserDO);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         return success(applicationRoleDictService.insertRoleUser(roleUserDOS));
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @PostMapping(value = BaseRequestMapping.ApplicationRoleDict.insertRoleMenu)
 | 
	
		
			
				|  |  |     @ApiOperation(value = "角色菜单配置")
 | 
	
		
			
				|  |  |     public Envelop insertRoleMenu (
 | 
	
		
			
				|  |  |             @ApiParam(name = "jsonData", value = "jsonData实体", required = true)
 | 
	
		
			
				|  |  |             @RequestParam(value = "jsonData") String jsonData) throws Exception {
 | 
	
		
			
				|  |  |         JSONArray array = JSONArray.parseArray(jsonData);
 | 
	
		
			
				|  |  |         List<BaseApplicationRoleMenuDO> roleMenuDOS = new ArrayList<>();
 | 
	
		
			
				|  |  |         for (int i=0;i<array.size();i++){
 | 
	
		
			
				|  |  |             JSONObject object = array.getJSONObject(i);
 | 
	
		
			
				|  |  |             BaseApplicationRoleMenuDO roleMenuDO = toEntity(object.toJSONString(), BaseApplicationRoleMenuDO.class);
 | 
	
		
			
				|  |  |             roleMenuDOS.add(roleMenuDO);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         return success(applicationRoleDictService.insertRoleMenu(roleMenuDOS));
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @GetMapping(value = BaseRequestMapping.ApplicationRoleDict.selectUserByRoleId)
 | 
	
		
			
				|  |  |     @ApiOperation(value = "根据角色id获取角色关联的成员")
 | 
	
		
			
				|  |  |     public Envelop selectUserByRoleId (
 | 
	
		
			
				|  |  |             @ApiParam(name = "roleId", value = "角色id", required = true)
 | 
	
		
			
				|  |  |             @RequestParam(value = "roleId") String roleId) throws Exception {
 | 
	
		
			
				|  |  |         return success(applicationRoleDictService.selectUserByRoleId(roleId));
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @GetMapping(value = BaseRequestMapping.ApplicationRoleDict.selectMenuByRoleId)
 | 
	
		
			
				|  |  |     @ApiOperation(value = "根据角色id获取角色关联的菜单")
 | 
	
		
			
				|  |  |     public Envelop selectMenuByRoleId (
 | 
	
		
			
				|  |  |             @ApiParam(name = "roleId", value = "角色id", required = true)
 | 
	
		
			
				|  |  |             @RequestParam(value = "roleId") String roleId) throws Exception {
 | 
	
		
			
				|  |  |         return success(applicationRoleDictService.selectMenuByRoleId(roleId));
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |  }
 |