新增占用功能
This commit is contained in:
parent
ce2fe3eb2d
commit
2cb8c77567
|
|
@ -72,7 +72,7 @@ public class EdFileInfo extends BaseModel {
|
|||
@TableField(value = "data_type")
|
||||
private Integer dataType;
|
||||
/**
|
||||
* 数据状态,0-发布 1-占用
|
||||
* 数据状态,0-未发布 1-已发布 2-占用 3-待删除
|
||||
*/
|
||||
@TableField(value = "data_status")
|
||||
private Integer dataStatus;
|
||||
|
|
|
|||
|
|
@ -132,6 +132,7 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
|
|||
|
||||
.eq(ObjUtil.equals(pars.getDataStatus(), EleDataStatusEnum.NOT_PUBLISHED.code), EdFileInfo::getDataStatus, EleDataStatusEnum.NOT_PUBLISHED.code)
|
||||
.eq(ObjUtil.equals(pars.getDataStatus(), EleDataStatusEnum.PUBLISHED.code), EdFileInfo::getDataStatus, EleDataStatusEnum.PUBLISHED.code)
|
||||
.eq(ObjUtil.equals(pars.getDataStatus(), EleDataStatusEnum.OCCUPY.code), EdFileInfo::getDataStatus, EleDataStatusEnum.OCCUPY.code)
|
||||
|
||||
.eq(StrUtil.isNotEmpty(pars.getFileType()), EdFileInfo::getFileType, pars.getFileType())
|
||||
.orderByAsc(ObjUtil.equals(pars.getCreatedTime(), 0), EdFileInfo::getCreatedTime)
|
||||
|
|
@ -309,6 +310,10 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
|
|||
String newFileName = Base64.encode(fileInfo.getFileName() + "." + fileInfo.getFileType());
|
||||
response.setHeader("content-disposition", "attachment;filename=" + newFileName);
|
||||
UserThreadLocal.setSuccessInfo(fileInfo.getParentId(), fileInfo.getFileId(), "下载文件 {} 成功,文件路径 {}", fileName, dbPath);
|
||||
this.baseMapper.update(Wrappers.lambdaUpdate(EdFileInfo.class)
|
||||
.set(EdFileInfo::getDataStatus, EleDataStatusEnum.OCCUPY.code)
|
||||
.set(EdFileInfo::getUpdatedTime, new Date())
|
||||
.like(EdFileInfo::getFilePath, MYSQL_FILE_PATH_SPLIT + id));
|
||||
// 构建响应实体(可以返回<byte[]或Resource,返回类型取决body入参类型)
|
||||
return ResponseEntity
|
||||
.ok()
|
||||
|
|
@ -987,6 +992,9 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
|
|||
EdFileInfo destFolderInfo = this.baseMapper.selectOne(Wrappers.lambdaQuery(EdFileInfo.class)
|
||||
.select(EdFileInfo.class, file -> !StrUtil.equals(file.getColumn(), "file_content"))
|
||||
.eq(EdFileInfo::getId, targetFolderId));
|
||||
this.baseMapper.update(Wrappers.lambdaUpdate(EdFileInfo.class)
|
||||
.set(EdFileInfo::getDataStatus, EleDataStatusEnum.OCCUPY.code)
|
||||
.like(EdFileInfo::getFilePath, MYSQL_FILE_PATH_SPLIT + id));
|
||||
if (count == 0) {
|
||||
// 没有同名文件
|
||||
// 首先将信息保存到MySQL
|
||||
|
|
@ -1086,6 +1094,9 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
|
|||
.eq(EdFileInfo::getEffectFlag, EffectFlagEnum.EFFECT.code));
|
||||
EdFileInfo destFolderInfo = this.baseMapper.selectById(targetFolderId);
|
||||
EdFileInfo destFileInfo;
|
||||
this.baseMapper.update(Wrappers.lambdaUpdate(EdFileInfo.class)
|
||||
.set(EdFileInfo::getDataStatus, EleDataStatusEnum.OCCUPY.code)
|
||||
.like(EdFileInfo::getFilePath, MYSQL_FILE_PATH_SPLIT + id));
|
||||
if (count == 0) {
|
||||
// 没有同名文件
|
||||
// 首先将信息保存到MySQL
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ import cn.hutool.core.util.RuntimeUtil;
|
|||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.electromagnetic.industry.software.common.enums.EleDataStatusEnum;
|
||||
import com.electromagnetic.industry.software.common.enums.EleDataTypeEnum;
|
||||
import com.electromagnetic.industry.software.common.enums.FileBackupSource;
|
||||
import com.electromagnetic.industry.software.common.enums.UserOperationModuleEnum;
|
||||
|
|
@ -275,5 +276,11 @@ public class BackupTask {
|
|||
}
|
||||
}
|
||||
|
||||
// 每 2 分钟执行一次
|
||||
@Scheduled(cron = "0 */2 * * * ?")
|
||||
public void updateFileStatus() {
|
||||
DateTime twoMinutesAgo = DateUtil.offsetMinute(DateUtil.date(), -2);
|
||||
edFileInfoMapper.update(Wrappers.<EdFileInfo>lambdaUpdate().set(EdFileInfo::getDataStatus, EleDataStatusEnum.PUBLISHED.code).le(EdFileInfo::getUpdatedTime, twoMinutesAgo));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue