Compare commits
3 Commits
1bee150824
...
d5997b427e
| Author | SHA1 | Date |
|---|---|---|
|
|
d5997b427e | |
|
|
f0f96e1673 | |
|
|
a629a8ef96 |
|
|
@ -17,7 +17,10 @@ import org.springframework.security.access.prepost.PreAuthorize;
|
|||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 稳文档标签管理
|
||||
|
|
@ -31,6 +34,7 @@ public class DockerLabelController extends BaseController {
|
|||
|
||||
/**
|
||||
* 分页查询标签列表
|
||||
*
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -42,8 +46,35 @@ public class DockerLabelController extends BaseController {
|
|||
return getDataTable(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询标签列表
|
||||
*
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('tb:label:select')")
|
||||
@GetMapping("/listSelect")
|
||||
public AjaxResult listSelect(TbFileLabel vo) {
|
||||
List<TbFileLabel> list = service.selectLabelList(vo);
|
||||
Map<String, List<Map<String, String>>> map = list.stream()
|
||||
.collect(Collectors.groupingBy(
|
||||
item -> item.getTypeName(),
|
||||
Collectors.mapping(
|
||||
item -> {
|
||||
Map<String, String> m = new HashMap<>();
|
||||
m.put("typeId", item.getTypeId().toString());
|
||||
m.put("labelName", item.getLabelName());
|
||||
return m;
|
||||
},
|
||||
Collectors.toList()
|
||||
)
|
||||
));
|
||||
return AjaxResult.success(map);
|
||||
}
|
||||
|
||||
/**
|
||||
* 下拉选集合
|
||||
*
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -55,6 +86,7 @@ public class DockerLabelController extends BaseController {
|
|||
|
||||
/**
|
||||
* 新增文档标签
|
||||
*
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -63,7 +95,7 @@ public class DockerLabelController extends BaseController {
|
|||
@PostMapping("/addLabel")
|
||||
public AjaxResult addLabel(@RequestBody TbFileLabel vo) {
|
||||
try {
|
||||
return service.addLabel(vo);
|
||||
return service.addLabel(vo);
|
||||
} catch (Exception e) {
|
||||
logger.error(e.getMessage(), e);
|
||||
return error("系统异常,请联系管理员");
|
||||
|
|
@ -72,6 +104,7 @@ public class DockerLabelController extends BaseController {
|
|||
|
||||
/**
|
||||
* 修改文档标签
|
||||
*
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -80,7 +113,7 @@ public class DockerLabelController extends BaseController {
|
|||
@PostMapping("/updateLabel")
|
||||
public AjaxResult updateLabel(@RequestBody TbFileLabel vo) {
|
||||
try {
|
||||
return service.updateLabel(vo);
|
||||
return service.updateLabel(vo);
|
||||
} catch (Exception e) {
|
||||
logger.error(e.getMessage(), e);
|
||||
return error("系统异常,请联系管理员");
|
||||
|
|
@ -89,6 +122,7 @@ public class DockerLabelController extends BaseController {
|
|||
|
||||
/**
|
||||
* 删除文档标签
|
||||
*
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -97,7 +131,7 @@ public class DockerLabelController extends BaseController {
|
|||
@PostMapping("/delete")
|
||||
public AjaxResult delete(@RequestBody TbFileLabel vo) {
|
||||
try {
|
||||
return service.delete(vo);
|
||||
return service.delete(vo);
|
||||
} catch (Exception e) {
|
||||
logger.error(e.getMessage(), e);
|
||||
return error("系统异常,请联系管理员");
|
||||
|
|
|
|||
|
|
@ -84,4 +84,6 @@ public class DocumentController extends BaseController {
|
|||
return service.delDocument(vo);
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,9 +35,9 @@ public class DocumentScreenController extends BaseController {
|
|||
@PreAuthorize("@ss.hasPermi('tb:document:list')")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo list(TbFolderFileVo vo) {
|
||||
if("2".equals(vo.getType())){
|
||||
/* if("2".equals(vo.getType())){
|
||||
vo.setId(vo.getId().split("_")[2]);
|
||||
}
|
||||
}*/
|
||||
startPage();
|
||||
List<TbFolderFileVo> list = service.getFileFolderList(vo);
|
||||
return getDataTable(list);
|
||||
|
|
|
|||
|
|
@ -68,6 +68,10 @@ public class DocumentTreeVo {
|
|||
* 数据类型
|
||||
*/
|
||||
private String datType;
|
||||
/**
|
||||
* 文件类型(0 文件夹 1文件)
|
||||
*/
|
||||
private Integer fileType;
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ public class TreeBuild {
|
|||
// treeNode:查询出的每一条数据(节点)
|
||||
for (DocumentTreeVo treeNode : nodeList){
|
||||
// 判断当前节点是否为根节点,此处注意:若parentId类型是String,则要采用equals()方法判断。
|
||||
if (parentId.equals(treeNode.getParent()) ) {
|
||||
if (parentId.equals(treeNode.getParentId()) ) {
|
||||
if("1".equals(isAdmin) && "1".equals(treeNode.getDatType())){
|
||||
// 是,添加
|
||||
rootNodeList.add(treeNode);
|
||||
|
|
@ -124,7 +124,7 @@ public class TreeBuild {
|
|||
// nodeList:所有节点集合(所有数据)
|
||||
for (DocumentTreeVo treeNode : nodeList) {
|
||||
// 判断当前节点的父节点ID是否等于根节点的ID,即当前节点为其下的子节点
|
||||
if (treeNode.getParent().equals(pNode.getExeId())) {
|
||||
if (treeNode.getParentId().equals(pNode.getId())) {
|
||||
// 再递归进行判断当前节点的情况,调用自身方法
|
||||
childTree.add(buildChildTree1(treeNode));
|
||||
}
|
||||
|
|
@ -134,4 +134,4 @@ public class TreeBuild {
|
|||
return pNode;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -101,7 +101,7 @@ public class DocumentScreenImpl implements DocumentScreenService {
|
|||
}else {
|
||||
vo.setParentId(vo.getParentId().split("_")[2]);
|
||||
}
|
||||
vo.setParentIds(vo.getParentIds()+vo.getParentId()+",");
|
||||
vo.setParentIds(vo.getParentIds()+vo.getParentId()+",");
|
||||
/**
|
||||
* 查询文件夹名称是否重复
|
||||
*/
|
||||
|
|
@ -321,7 +321,7 @@ public class DocumentScreenImpl implements DocumentScreenService {
|
|||
String userId=SecurityUtils.getUserId().toString();
|
||||
vo.setUserId(userId);
|
||||
if("1".equals(vo.getType())){
|
||||
return AjaxResult.success("当前文件夹没权限共享");
|
||||
return AjaxResult.success("当前文件夹没权限共享");
|
||||
}else{
|
||||
//
|
||||
vo.setId(vo.getId().split("_")[2]);
|
||||
|
|
@ -395,25 +395,25 @@ public class DocumentScreenImpl implements DocumentScreenService {
|
|||
@Override
|
||||
public AjaxResult copy(TbFolderFileVo vo) {
|
||||
try{
|
||||
//父节点更新
|
||||
String userId=SecurityUtils.getUserId().toString();
|
||||
vo.setUserId(userId);
|
||||
if(dataIds.contains(vo.getToId())){
|
||||
return AjaxResult.success("目标文件夹不允许创建副本");
|
||||
}
|
||||
if("1".equals(vo.getType())){
|
||||
//父节点更新
|
||||
String userId=SecurityUtils.getUserId().toString();
|
||||
vo.setUserId(userId);
|
||||
if(dataIds.contains(vo.getToId())){
|
||||
return AjaxResult.success("目标文件夹不允许创建副本");
|
||||
}
|
||||
if("1".equals(vo.getType())){
|
||||
return AjaxResult.success("当前文件夹不允许添加副本");
|
||||
}else{
|
||||
}else{
|
||||
|
||||
vo.setId(vo.getId().split("_")[2]);
|
||||
//查询当前节点下全部信息
|
||||
//重新添加头部信息
|
||||
getTreeList(vo);
|
||||
vo.setId(vo.getId().split("_")[2]);
|
||||
//查询当前节点下全部信息
|
||||
//重新添加头部信息
|
||||
getTreeList(vo);
|
||||
}
|
||||
return AjaxResult.success("添加副本成功");
|
||||
}catch (Exception e){
|
||||
log.error(e.toString(),e);
|
||||
}
|
||||
return AjaxResult.success("添加副本成功");
|
||||
}catch (Exception e){
|
||||
log.error(e.toString(),e);
|
||||
}
|
||||
return AjaxResult.error("副本添加失败");
|
||||
}
|
||||
|
||||
|
|
@ -444,7 +444,7 @@ public class DocumentScreenImpl implements DocumentScreenService {
|
|||
//图片压缩包
|
||||
List<UploadFileVo> fileVoList=new ArrayList<>();
|
||||
String packageName =DateUtils.getYMDDate()+ "下载压缩包.zip";
|
||||
// String url=minioUtil.downloadFilesAsZip(null,fileVoList,packageName);
|
||||
// String url=minioUtil.downloadFilesAsZip(null,fileVoList,packageName);
|
||||
minioUtil.fileDownload("",response);
|
||||
//删除指定文件
|
||||
minioUtil.deleteObject("");
|
||||
|
|
@ -474,51 +474,51 @@ public class DocumentScreenImpl implements DocumentScreenService {
|
|||
}
|
||||
//第一节点直接存储到父节点
|
||||
if("1".equals(vo.getToType())){
|
||||
TbDocumentFolder tbDocumentFolder=new TbDocumentFolder();
|
||||
for (TbFolderFileVo vo2 : treeList) {
|
||||
tbDocumentFolder.setId(vo2.getNewId());
|
||||
tbDocumentFolder.setLevel(vo2.getLevel());
|
||||
tbDocumentFolder.setParentId("0");
|
||||
tbDocumentFolder.setParentIds("0,");
|
||||
tbDocumentFolder.setFileType(vo2.getFileType());
|
||||
tbDocumentFolder.setRemark(vo2.getRemark());
|
||||
tbDocumentFolder.setFilePath(vo2.getFilePath());
|
||||
tbDocumentFolder.setFolderName(vo2.getName()+"_副本");
|
||||
tbDocumentFolder.setFileSuffix(vo2.getFileSuffix());
|
||||
tbDocumentFolder.setLabels(vo2.getLabName());
|
||||
tbDocumentFolder.setCreateUser(vo2.getCreateUser());
|
||||
tbDocumentFolder.setUpdateUser(vo2.getUpdateUser());
|
||||
mapper.addDocumentCompany(tbDocumentFolder);
|
||||
//如果文件 需要copy标签
|
||||
if("1".equals(vo2.getFileType())){
|
||||
List<TbUserLabel> labList=mapper.getLabelsList(vo2);
|
||||
mapper.addDocumentLabels(labList);
|
||||
}
|
||||
//添加关联数据
|
||||
tbDocumentFolder.setAuthType("4");
|
||||
tbDocumentFolder.setDataType("1");
|
||||
mapper.addDocumentRealUser(tbDocumentFolder);
|
||||
}
|
||||
for (TbFolderFileVo vo2 : list) {
|
||||
tbDocumentFolder.setId(vo2.getNewId());
|
||||
tbDocumentFolder.setLevel(vo2.getLevel());
|
||||
tbDocumentFolder.setParentId(vo2.getNewParentId());
|
||||
tbDocumentFolder.setParentIds(vo2.getParentIds()+vo2.getNewParentId()+",");
|
||||
tbDocumentFolder.setFileType(vo2.getFileType());
|
||||
tbDocumentFolder.setRemark(vo2.getRemark());
|
||||
tbDocumentFolder.setFilePath(vo2.getFilePath());
|
||||
tbDocumentFolder.setFolderName(vo2.getName()+"_副本");
|
||||
tbDocumentFolder.setFileSuffix(vo2.getFileSuffix());
|
||||
tbDocumentFolder.setLabels(vo2.getLabName());
|
||||
tbDocumentFolder.setCreateUser(vo2.getCreateUser());
|
||||
tbDocumentFolder.setUpdateUser(vo2.getUpdateUser());
|
||||
mapper.addDocumentCompany(tbDocumentFolder);
|
||||
//如果文件 需要copy标签
|
||||
if("1".equals(vo2.getFileType())){
|
||||
List<TbUserLabel> labList=mapper.getLabelsList(vo2);
|
||||
mapper.addDocumentLabels(labList);
|
||||
}
|
||||
}
|
||||
TbDocumentFolder tbDocumentFolder=new TbDocumentFolder();
|
||||
for (TbFolderFileVo vo2 : treeList) {
|
||||
tbDocumentFolder.setId(vo2.getNewId());
|
||||
tbDocumentFolder.setLevel(vo2.getLevel());
|
||||
tbDocumentFolder.setParentId("0");
|
||||
tbDocumentFolder.setParentIds("0,");
|
||||
tbDocumentFolder.setFileType(vo2.getFileType());
|
||||
tbDocumentFolder.setRemark(vo2.getRemark());
|
||||
tbDocumentFolder.setFilePath(vo2.getFilePath());
|
||||
tbDocumentFolder.setFolderName(vo2.getName()+"_副本");
|
||||
tbDocumentFolder.setFileSuffix(vo2.getFileSuffix());
|
||||
tbDocumentFolder.setLabels(vo2.getLabName());
|
||||
tbDocumentFolder.setCreateUser(vo2.getCreateUser());
|
||||
tbDocumentFolder.setUpdateUser(vo2.getUpdateUser());
|
||||
mapper.addDocumentCompany(tbDocumentFolder);
|
||||
//如果文件 需要copy标签
|
||||
if("1".equals(vo2.getFileType())){
|
||||
List<TbUserLabel> labList=mapper.getLabelsList(vo2);
|
||||
mapper.addDocumentLabels(labList);
|
||||
}
|
||||
//添加关联数据
|
||||
tbDocumentFolder.setAuthType("4");
|
||||
tbDocumentFolder.setDataType("1");
|
||||
mapper.addDocumentRealUser(tbDocumentFolder);
|
||||
}
|
||||
for (TbFolderFileVo vo2 : list) {
|
||||
tbDocumentFolder.setId(vo2.getNewId());
|
||||
tbDocumentFolder.setLevel(vo2.getLevel());
|
||||
tbDocumentFolder.setParentId(vo2.getNewParentId());
|
||||
tbDocumentFolder.setParentIds(vo2.getParentIds()+vo2.getNewParentId()+",");
|
||||
tbDocumentFolder.setFileType(vo2.getFileType());
|
||||
tbDocumentFolder.setRemark(vo2.getRemark());
|
||||
tbDocumentFolder.setFilePath(vo2.getFilePath());
|
||||
tbDocumentFolder.setFolderName(vo2.getName()+"_副本");
|
||||
tbDocumentFolder.setFileSuffix(vo2.getFileSuffix());
|
||||
tbDocumentFolder.setLabels(vo2.getLabName());
|
||||
tbDocumentFolder.setCreateUser(vo2.getCreateUser());
|
||||
tbDocumentFolder.setUpdateUser(vo2.getUpdateUser());
|
||||
mapper.addDocumentCompany(tbDocumentFolder);
|
||||
//如果文件 需要copy标签
|
||||
if("1".equals(vo2.getFileType())){
|
||||
List<TbUserLabel> labList=mapper.getLabelsList(vo2);
|
||||
mapper.addDocumentLabels(labList);
|
||||
}
|
||||
}
|
||||
|
||||
}else{
|
||||
//目标路径
|
||||
|
|
@ -574,17 +574,17 @@ public class DocumentScreenImpl implements DocumentScreenService {
|
|||
* @return
|
||||
*/
|
||||
private List<TbFolderFileVo> getChilderList(TbFolderFileVo vo2, List<TbFolderFileVo> list) {
|
||||
List<TbFolderFileVo> childer= mapper.getChilderList(vo2);
|
||||
if(childer!=null && !childer.isEmpty()){
|
||||
list.addAll(childer);
|
||||
for (TbFolderFileVo vo : childer) {
|
||||
String uuid=StringUtils.randomUUID();
|
||||
vo.setNewId(uuid);
|
||||
getChilderList(vo,list);
|
||||
}
|
||||
vo2.setChild(childer);
|
||||
List<TbFolderFileVo> childer= mapper.getChilderList(vo2);
|
||||
if(childer!=null && !childer.isEmpty()){
|
||||
list.addAll(childer);
|
||||
for (TbFolderFileVo vo : childer) {
|
||||
String uuid=StringUtils.randomUUID();
|
||||
vo.setNewId(uuid);
|
||||
getChilderList(vo,list);
|
||||
}
|
||||
return childer;
|
||||
vo2.setChild(childer);
|
||||
}
|
||||
return childer;
|
||||
}
|
||||
|
||||
private TbDocumentFolder getTbDocumentFolder(TbFolderFileVo vo, TbFolderFileVo data) {
|
||||
|
|
@ -608,35 +608,35 @@ public class DocumentScreenImpl implements DocumentScreenService {
|
|||
String type=files.getType();
|
||||
String filePath = "document/file/"+files.getUploadUser() +separator +
|
||||
year + separator + month + separator + day +separator ;
|
||||
TbDocumentFolder documentFolder=new TbDocumentFolder();
|
||||
//文件类型
|
||||
String documentId=StringUtils.randomUUID();
|
||||
documentFolder.setFileType("1");
|
||||
documentFolder.setId(documentId);
|
||||
documentFolder.setPublicFolderId(documentFolder.getParentId());
|
||||
if("1".equals(type)){
|
||||
documentFolder.setParentId("0");
|
||||
}else{
|
||||
documentFolder.setParentId(files.getParentId());
|
||||
}
|
||||
documentFolder.setParentIds(documentFolder.getParentIds()+documentFolder.getParentId()+",");
|
||||
//
|
||||
String[] ids=files.getLabelIds().split(",");
|
||||
String[] name= files.getLabels().split(",");
|
||||
List<TbUserLabel> list=new ArrayList<TbUserLabel>();
|
||||
TbUserLabel vo=new TbUserLabel();
|
||||
for (int i = 0; i <ids.length ; i++) {
|
||||
vo.setFileId(documentId);
|
||||
vo.setLabelId(ids[i]);
|
||||
vo.setLabelName(name[i]);
|
||||
list.add(vo);
|
||||
}
|
||||
TbDocumentFolder documentFolder=new TbDocumentFolder();
|
||||
//文件类型
|
||||
String documentId=StringUtils.randomUUID();
|
||||
documentFolder.setFileType("1");
|
||||
documentFolder.setId(documentId);
|
||||
documentFolder.setPublicFolderId(documentFolder.getParentId());
|
||||
if("1".equals(type)){
|
||||
documentFolder.setParentId("0");
|
||||
}else{
|
||||
documentFolder.setParentId(files.getParentId());
|
||||
}
|
||||
documentFolder.setParentIds(documentFolder.getParentIds()+documentFolder.getParentId()+",");
|
||||
//
|
||||
String[] ids=files.getLabelIds().split(",");
|
||||
String[] name= files.getLabels().split(",");
|
||||
List<TbUserLabel> list=new ArrayList<TbUserLabel>();
|
||||
TbUserLabel vo=new TbUserLabel();
|
||||
for (int i = 0; i <ids.length ; i++) {
|
||||
vo.setFileId(documentId);
|
||||
vo.setLabelId(ids[i]);
|
||||
vo.setLabelName(name[i]);
|
||||
list.add(vo);
|
||||
}
|
||||
for (MultipartFile file: multipartFileList) {
|
||||
String uuid = StringUtils.randomUUID();
|
||||
String originFileName = file.getOriginalFilename();
|
||||
String suffix=StringUtils.substringAfterLast(originFileName, ".");
|
||||
//产品 封面
|
||||
filePath =filePath+uuid + "." + suffix;
|
||||
filePath =filePath+uuid + "." + suffix;
|
||||
String path=service.uploadFile(file, filePath);
|
||||
if(path==null){
|
||||
return AjaxResult.error("文件上传失败");
|
||||
|
|
@ -693,20 +693,4 @@ public class DocumentScreenImpl implements DocumentScreenService {
|
|||
else return String.format("%.2f MB", bytes / (1024 * 1024.0));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
)
|
||||
</insert>
|
||||
<insert id="addDocumentRealUser">
|
||||
replace into tb_public_real_user(
|
||||
replace into tb_public_real_user(
|
||||
public_folder_id, user_id, user_folder_id,auth, share_user_id, data_type
|
||||
)values (#{publicFolderId},#{userId},#{id},#{auth},#{shareUserId},#{dataType})
|
||||
</insert>
|
||||
|
|
@ -58,7 +58,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
where id=#{id}
|
||||
</update>
|
||||
<select id="getPublicFolderList" resultType="com.bonus.business.domain.DocumentTreeVo">
|
||||
select tpf.id,level,tpf.folder_name name,tpf.parent_id parentId,tpf.parent_ids parentIds,1 type
|
||||
select tpf.id,level,tpf.folder_name name,tpf.parent_id parentId,tpf.parent_ids parentIds,file_type fileType,1 type
|
||||
from tb_public_folder tpf
|
||||
<if test='isAdmin!="1" or isAdmin!=1 '>
|
||||
left join tb_public_folder_auth auth on auth.folder_id=tpf.id
|
||||
|
|
@ -75,9 +75,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
</select>
|
||||
<!--查询用户文件夹结合-->
|
||||
<select id="getUserFolderList" resultType="com.bonus.business.domain.DocumentTreeVo">
|
||||
SELECT folder.id exeId ,folder.level,folder.folder_name name,folder.parent_id parent,2 type,folder.parent_ids parentIds,
|
||||
folder.file_suffix,pru.user_id,pru.public_folder_id parentId,pru.auth ,pru.share_user_id,
|
||||
concat(pru.public_folder_id,"_",pru.user_id,"_",folder.id) id
|
||||
SELECT folder.id,folder.level,folder.folder_name name,folder.parent_id parentId,2 type,folder.parent_ids parentIds,
|
||||
folder.file_suffix,pru.user_id,pru.auth ,pru.share_user_id,file_type fileType,
|
||||
concat(pru.public_folder_id,"_",pru.user_id,"_",folder.id) exeId
|
||||
from tb_user_document_folder folder
|
||||
left join tb_public_real_user pru on folder.id=pru.user_folder_id
|
||||
where folder.file_type=0
|
||||
|
|
@ -189,4 +189,4 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
WHERE file_id=#{id}
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
</mapper>
|
||||
|
|
|
|||
Loading…
Reference in New Issue