1、文档中心权限调整

2、下载权限调整
3、消息中心
4、修复预览关闭窗口时视屏播放暂停不了问题
This commit is contained in:
pan
2024-09-01 10:58:06 +08:00
parent 7820d4907f
commit 10ee4fbc4d
8 changed files with 56 additions and 2 deletions

View File

@@ -96,4 +96,12 @@ public class Document extends BaseEntity {
private List<String> excludeFields;
private Boolean downloadCheck;
private Boolean downloadStatus;
private Boolean permissionCheck;
private Boolean permission;
}

View File

@@ -38,5 +38,6 @@ public class DownloadCount extends BaseEntity
private String toolName;
/** 工具下载数量 */
private String toolDownNum;
private String nickName;
}

View File

@@ -1,11 +1,15 @@
package com.rzdata.web.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.BooleanUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.rzdata.common.constant.Constants;
import com.rzdata.common.core.domain.entity.SysDictData;
import com.rzdata.common.core.domain.entity.SysUser;
import com.rzdata.common.core.domain.model.LoginUser;
import com.rzdata.common.enums.RecordStatusEnum;
import com.rzdata.common.utils.DateUtils;
import com.rzdata.common.utils.SecurityUtils;
import com.rzdata.system.service.ISysDictTypeService;
@@ -14,6 +18,7 @@ import com.rzdata.web.domain.Document;
import com.rzdata.web.domain.Tool;
import com.rzdata.web.mapper.DocumentMapper;
import com.rzdata.web.service.IDocumentService;
import com.rzdata.web.service.IUseApplyService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -37,6 +42,9 @@ public class DocumentServiceImpl implements IDocumentService
@Autowired
private ToolServiceImpl toolService;
@Autowired
private IUseApplyService iUseApplyService;
@Autowired
private ISysDictTypeService sysDictTypeService;
@@ -73,6 +81,11 @@ public class DocumentServiceImpl implements IDocumentService
@Override
public List<Document> selectDocumentList(Document document)
{
if (BooleanUtil.isTrue(document.getPermissionCheck())) {
if(!SysUser.isAdmin(SecurityUtils.getUserId())){
document.setPermission(SecurityUtils.hasPermi(Constants.DOC_VIEW_PERMISSION));
}
}
List<Document> documents = documentMapper.selectDocumentList(document);
if(CollUtil.isEmpty(documents)){
return documents;
@@ -93,6 +106,21 @@ public class DocumentServiceImpl implements IDocumentService
}
}
}
//前端传传参开启下载权限验证
if (BooleanUtil.isTrue(document.getDownloadCheck())) {
String userId = SecurityUtils.getUserId().toString();
for (Document dc: documents) {
//文档中 是创建人 或者 配置了下载权限
boolean downStatus = false;
if(SecurityUtils.hasPermi(Constants.DOC_DOWNLOAD_PERMISSION) || userId.equals(dc.getCreateById()) || SysUser.isAdmin(SecurityUtils.getUserId())){
downStatus = true;
}else if(StrUtil.isNotBlank(dc.getToolId()) && iUseApplyService.checkUseApply(dc.getToolId(),userId)){
downStatus = true;
}
dc.setDownloadStatus(downStatus);
}
}
return documents;
}

View File

@@ -1,7 +1,10 @@
package com.rzdata.web.service.impl;
import java.util.List;
import cn.hutool.core.lang.Snowflake;
import com.rzdata.common.utils.DateUtils;
import com.rzdata.common.utils.SecurityUtils;
import com.rzdata.web.domain.DownloadCount;
import com.rzdata.web.mapper.DownloadCountMapper;
import com.rzdata.web.service.IDownloadCountService;
@@ -20,6 +23,9 @@ public class DownloadCountServiceImpl implements IDownloadCountService
@Autowired
private DownloadCountMapper downloadCountMapper;
@Autowired
private Snowflake snowflake;
/**
* 查询工具下载统计
*
@@ -53,7 +59,10 @@ public class DownloadCountServiceImpl implements IDownloadCountService
@Override
public int insertDownloadCount(DownloadCount downloadCount)
{
downloadCount.setId(String.valueOf(snowflake.nextId()));
downloadCount.setCreateTime(DateUtils.getNowDate());
downloadCount.setCreateBy(SecurityUtils.getLoginUser().getUsername());
downloadCount.setCreateById(String.valueOf(SecurityUtils.getLoginUser().getUserId()));
return downloadCountMapper.insertDownloadCount(downloadCount);
}