|
@ -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));
|
|
|
}
|
|
|
|
|
|
}
|