This commit is contained in:
zt
2025-10-16 20:33:34 +08:00
parent 4042b4a441
commit b5d2b3df06
5 changed files with 36 additions and 5 deletions

View File

@ -4,6 +4,7 @@ import java.io.IOException;
import java.util.List;
import java.util.stream.Collectors;
import cn.dev33.satoken.annotation.SaCheckPermission;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
@ -41,6 +42,7 @@ public class QltFileFolderController extends BaseController {
/**
* 查询会议纪要列表
*/
@SaCheckPermission("quality:fileFolder:listAll")
@GetMapping("/list-all")
public R<List<QltFileFolderVo>> listAll(QltListQueryDto dto) {
return R.ok(qltFileFolderService.listAll(dto));
@ -94,6 +96,7 @@ public class QltFileFolderController extends BaseController {
/**
* 创建文件或文件夹
*/
@SaCheckPermission("quality:fileFolder:create")
@PostMapping("/create")
public R<QltFileFolder> create(@RequestBody QltFileFolderCreateDTO dto) {
return R.ok(qltFileFolderService.createFileOrFolder(dto));
@ -102,6 +105,7 @@ public class QltFileFolderController extends BaseController {
/**
* 删除文件或文件夹(级联删除子项)
*/
@SaCheckPermission("quality:fileFolder:delete")
@DeleteMapping("/{ids}")
@Transactional
public R<Boolean> delete(@PathVariable List<Long> ids) {
@ -114,6 +118,7 @@ public class QltFileFolderController extends BaseController {
/**
* 移动文件或文件夹到指定目录
*/
@SaCheckPermission("quality:fileFolder:move")
@PostMapping("/move")
@Transactional
public R<Boolean> move(@RequestBody QltFileFolderMoveDTO dto) {
@ -123,6 +128,7 @@ public class QltFileFolderController extends BaseController {
/**
* 上传ZIP文件并自动解压到指定目录支持多层级
*/
@SaCheckPermission("quality:fileFolder:create")
@PostMapping("/uploadAndUnzip")
public R<String> uploadAndUnzip(
@RequestParam("file") MultipartFile file,
@ -140,12 +146,15 @@ public class QltFileFolderController extends BaseController {
}
}
@PostMapping("/unzip")
public R<String> unzip(@RequestParam("id") Long id,
@RequestParam("parentId") Long parentId) {
return R.ok(qltFileFolderService.unzip(id, parentId));
}
@SaCheckPermission("quality:fileFolder:reName")
@PutMapping("/reName")
public R<Boolean> reName(@RequestParam("id") Long id,
@RequestParam("name") String name) {
@ -153,6 +162,7 @@ public class QltFileFolderController extends BaseController {
}
@SaCheckPermission("quality:fileFolder:download")
@GetMapping("/download/{id}")
public void download(@PathVariable Long id, HttpServletResponse response) throws IOException {
qltFileFolderService.download(id, response);

View File

@ -4,6 +4,7 @@ import java.io.IOException;
import java.util.List;
import java.util.stream.Collectors;
import cn.dev33.satoken.annotation.SaCheckPermission;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
@ -38,6 +39,7 @@ public class HseFileFolderController extends BaseController {
/**
* 查询会议纪要列表
*/
@SaCheckPermission("safety:fileFolder:listAll")
@GetMapping("/list-all")
public R<List<HseFileFolderVo>> listAll(SafeListQueryDto dto) {
return R.ok(hseFileFolderService.listAll(dto));
@ -91,6 +93,7 @@ public class HseFileFolderController extends BaseController {
/**
* 创建文件或文件夹
*/
@SaCheckPermission("safety:fileFolder:create")
@PostMapping("/create")
public R<HseFileFolder> create(@RequestBody FileFolderCreateDTO dto) {
return R.ok(hseFileFolderService.createFileOrFolder(dto));
@ -99,6 +102,8 @@ public class HseFileFolderController extends BaseController {
/**
* 删除文件或文件夹(级联删除子项)
*/
@SaCheckPermission("safety:fileFolder:delete")
@DeleteMapping("/{ids}")
@Transactional
public R<Boolean> delete(@PathVariable List<Long> ids) {
@ -111,6 +116,7 @@ public class HseFileFolderController extends BaseController {
/**
* 移动文件或文件夹到指定目录
*/
@SaCheckPermission("safety:fileFolder:move")
@PostMapping("/move")
@Transactional
public R<Boolean> move(@RequestBody FileFolderMoveDTO dto) {
@ -120,6 +126,7 @@ public class HseFileFolderController extends BaseController {
/**
* 上传ZIP文件并自动解压到指定目录支持多层级
*/
@SaCheckPermission("safety:fileFolder:create")
@PostMapping("/uploadAndUnzip")
public R<String> uploadAndUnzip(
@RequestParam("file") MultipartFile file,
@ -143,6 +150,7 @@ public class HseFileFolderController extends BaseController {
return R.ok(hseFileFolderService.unzip(id, parentId));
}
@SaCheckPermission("safety:fileFolder:reName")
@PutMapping("/reName")
public R<Boolean> reName(@RequestParam("id") Long id,
@RequestParam("name") String name) {
@ -150,6 +158,7 @@ public class HseFileFolderController extends BaseController {
}
@SaCheckPermission("safety:fileFolder:download")
@GetMapping("/download/{id}")
public void download(@PathVariable Long id, HttpServletResponse response) throws IOException {
hseFileFolderService.download(id, response);

View File

@ -413,20 +413,26 @@ public class HseFileFolderServiceImpl extends ServiceImpl<HseFileFolderMapper, H
// 创建文件记录
HseFileFolder fileRecord = new HseFileFolder();
fileRecord.setProjectId(projectId);
fileRecord.setName(fileName);
fileRecord.setParentId(currentParentId);
fileRecord.setType(2); // 文件类型
fileRecord.setLevel(parentLevel + pathParts.length);
// 文件路径格式为 ,parentId,fileId,
fileRecord.setPath(currentPath + fileRecord.getId() + ",");
// 设置文件扩展名
// 设置文件名(不包含扩展名)和文件扩展名
int dotIndex = fileName.lastIndexOf(".");
if (dotIndex > 0 && dotIndex < fileName.length() - 1) {
fileRecord.setFileSuffix(fileName.substring(dotIndex + 1));
if (dotIndex > 0) {
// 设置文件名(不包含扩展名)
fileRecord.setName(fileName.substring(0, dotIndex));
// 设置文件扩展名
if (dotIndex < fileName.length() - 1) {
fileRecord.setFileSuffix(fileName.substring(dotIndex + 1));
}
} else {
// 没有扩展名的情况
fileRecord.setName(fileName);
}
// 上传文件内容到OSS并设置文件路径
// 上传文件内容到OSS并设置文件路径
try {
// 从ZIP流中读取文件内容
ByteArrayOutputStream baos = new ByteArrayOutputStream();

View File

@ -116,6 +116,9 @@ public class SysUserBo extends BaseEntity {
private Long contractorId;
private Long neUserId;
/**
* 排除不查询的用户(工作流用)
*/

View File

@ -58,6 +58,7 @@ public class ChatFriendshipServiceImpl extends ServiceImpl<ChatFriendshipMapper,
// if (one == null || one.isEmpty()){
// return R.fail("该账号暂无项目组,请尽快联系管理员进行分配");
// }
user.setNeUserId(LoginHelper.getUserId());
Page<SysUserVo> page = sysUserMapper.selectPageUserList(pageQuery.build(), this.buildQueryWrapper(user));
List<SysUserVo> userVoList = page.getRecords();
List<SysUserVo> temps = new ArrayList<>();
@ -96,6 +97,7 @@ public class ChatFriendshipServiceImpl extends ServiceImpl<ChatFriendshipMapper,
QueryWrapper<SysUser> wrapper = Wrappers.query();
wrapper.eq("u.del_flag", SystemConstants.NORMAL)
.eq(ObjectUtil.isNotNull(user.getUserId()), "u.user_id", user.getUserId())
.ne(ObjectUtil.isNotNull(user.getNeUserId()), "u.user_id", user.getNeUserId())
.like(StringUtils.isNotBlank(user.getNickName()), "u.nick_name", user.getNickName())
.like(StringUtils.isNotBlank(user.getUserName()), "u.user_name", user.getUserName())
.eq(StringUtils.isNotBlank(user.getStatus()), "u.status", user.getStatus())
@ -107,6 +109,7 @@ public class ChatFriendshipServiceImpl extends ServiceImpl<ChatFriendshipMapper,
if (StringUtils.isNotBlank(user.getExcludeUserIds())) {
wrapper.notIn("u.user_id", StringUtils.splitTo(user.getExcludeUserIds(), Convert::toLong));
}
return wrapper;
}