题库权限,新增删除查询
This commit is contained in:
parent
a07f29f9b2
commit
877f6b6046
@ -37,6 +37,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
|
import org.jeecg.modules.system.entity.SysUser;
|
||||||
|
import org.jeecg.modules.system.service.ISysUserService;
|
||||||
import org.jeecgframework.poi.excel.ExcelExportUtil;
|
import org.jeecgframework.poi.excel.ExcelExportUtil;
|
||||||
import org.jeecgframework.poi.excel.ExcelImportUtil;
|
import org.jeecgframework.poi.excel.ExcelImportUtil;
|
||||||
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
||||||
@ -213,6 +215,8 @@ public class AiolRepoController extends JeecgController<AiolRepo, IAiolRepoServi
|
|||||||
private IAiolQuestionOptionService questionOptionService;
|
private IAiolQuestionOptionService questionOptionService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private IAiolQuestionAnswerService questionAnswerService;
|
private IAiolQuestionAnswerService questionAnswerService;
|
||||||
|
@Autowired
|
||||||
|
private ISysUserService sysUserService;
|
||||||
|
|
||||||
@PostMapping("course_add")
|
@PostMapping("course_add")
|
||||||
@Operation(summary = "课程下新建题库")
|
@Operation(summary = "课程下新建题库")
|
||||||
@ -287,9 +291,78 @@ public class AiolRepoController extends JeecgController<AiolRepo, IAiolRepoServi
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
aiolEntityPermissionService.save(aiolEntityPermission);
|
aiolEntityPermissionService.save(aiolEntityPermission);
|
||||||
return Result.OK(repo.getId());
|
return Result.OK(repo.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@GetMapping("userList")
|
||||||
|
@Operation(summary = "获取用户")
|
||||||
|
public Result<List<SysUser>> userList(
|
||||||
|
@RequestParam(required = false) String username,
|
||||||
|
@RequestParam(required = false) String employeeNumber) {
|
||||||
|
|
||||||
|
// 创建查询条件
|
||||||
|
LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
|
||||||
|
// 当用户名不为空时,添加用户名查询条件(模糊查询)
|
||||||
|
if (StringUtils.isNotBlank(username)) {
|
||||||
|
queryWrapper.like(SysUser::getUsername, username);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 当用户工号不为空时,添加工号查询条件(精确查询)
|
||||||
|
if (StringUtils.isNotBlank(employeeNumber)) {
|
||||||
|
queryWrapper.eq(SysUser::getWorkNo, employeeNumber);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 执行查询
|
||||||
|
List<SysUser> userList = sysUserService.list(queryWrapper);
|
||||||
|
|
||||||
|
// 返回结果
|
||||||
|
return Result.ok(userList);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@PostMapping("addPermission")
|
||||||
|
@Operation(summary = "添加权限")
|
||||||
|
@Transactional
|
||||||
|
public Result<String> addPermission(@RequestParam String userId, @RequestParam String repoId) {
|
||||||
|
AiolEntityPermission aiolEntityPermission = new AiolEntityPermission();
|
||||||
|
aiolEntityPermission.setEntityId(repoId);
|
||||||
|
aiolEntityPermission.setEntityType("repo");
|
||||||
|
aiolEntityPermission.setUserId(userId);
|
||||||
|
aiolEntityPermissionService.saveOrUpdate(aiolEntityPermission);
|
||||||
|
return Result.OK();
|
||||||
|
}
|
||||||
|
|
||||||
|
//获取有权限的用户
|
||||||
|
@GetMapping("userListByRepoId/{repoId}")
|
||||||
|
@Operation(summary = "获取题库有权限的用户列表")
|
||||||
|
public Result<List<SysUser>> userListByRepoId(@PathVariable String repoId) {
|
||||||
|
// 获取用户有权限的题库ID列表
|
||||||
|
List<AiolEntityPermission> list = aiolEntityPermissionService.list(new QueryWrapper<AiolEntityPermission>()
|
||||||
|
.eq("entity_id", repoId)
|
||||||
|
.eq("entity_type", "repo")
|
||||||
|
);
|
||||||
|
if (list.isEmpty()) {
|
||||||
|
return Result.error("该题库下没有有权限用户或该题库不存在");
|
||||||
|
}
|
||||||
|
List<String> userIds = list.stream().map(AiolEntityPermission::getUserId).collect(Collectors.toList());
|
||||||
|
// 根据ID列表查询用户
|
||||||
|
return Result.ok(sysUserService.listByIds(userIds));
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("deletePermission")
|
||||||
|
@Operation(summary = "删除权限")
|
||||||
|
@Transactional
|
||||||
|
public Result<String> deletePermission(@RequestParam String userId, @RequestParam String repoId) {
|
||||||
|
AiolEntityPermission aiolEntityPermission = new AiolEntityPermission();
|
||||||
|
aiolEntityPermission.setEntityId(repoId);
|
||||||
|
aiolEntityPermission.setEntityType("repo");
|
||||||
|
aiolEntityPermission.setUserId(userId);
|
||||||
|
aiolEntityPermissionService.remove(new QueryWrapper<>(aiolEntityPermission));
|
||||||
|
return Result.OK();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@GetMapping("/questionList/{repoId}")
|
@GetMapping("/questionList/{repoId}")
|
||||||
@Operation(summary = "查询题库下题目")
|
@Operation(summary = "查询题库下题目")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user