Merge branch 'develop' of http://139.196.179.195:3000/chenxudong/electromagnetic-data-new into develop
This commit is contained in:
commit
62e952010e
|
|
@ -45,8 +45,8 @@ public class ProjectController {
|
|||
}
|
||||
|
||||
@RequestMapping("modifyFolder")
|
||||
public ElectromagneticResult<?> modifyFolder(@RequestParam String newFolderName, @RequestParam String id, @RequestParam String parentId) {
|
||||
return edPrjService.modifyFolder(id, newFolderName, parentId);
|
||||
public ElectromagneticResult<?> modifyFolder(@RequestParam String newFolderName, @RequestParam String id) {
|
||||
return edPrjService.modifyFolder(id, newFolderName);
|
||||
}
|
||||
|
||||
@RequestMapping("deleteFolder")
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ public class BaseModel {
|
|||
* 最后更新时间
|
||||
*/
|
||||
@TableField(value = "updated_time")
|
||||
private Date updateTime;
|
||||
private Date updatedTime;
|
||||
|
||||
/**
|
||||
* 最后更新人
|
||||
|
|
|
|||
|
|
@ -123,7 +123,7 @@ public class EdFileInfo extends BaseModel {
|
|||
Date now = new Date();
|
||||
this.setUpdatedBy(userId);
|
||||
this.setId(newFileDbId);
|
||||
this.setUpdateTime(now);
|
||||
this.setUpdatedTime(now);
|
||||
this.setCreatedTime(now);
|
||||
this.setFileTime(fileTime);
|
||||
this.setCreatedBy(userId);
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.electromagnetic.industry.software.manage.pojo.other;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
|
@ -27,11 +28,15 @@ public class FileInfoDTO {
|
|||
|
||||
private Integer saveStatus;
|
||||
|
||||
private String fileSize;
|
||||
private long fileSize;
|
||||
|
||||
private Date updateTime;
|
||||
private String fileSizeShow;
|
||||
|
||||
private Date createTime;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date updatedTime;
|
||||
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date createdTime;
|
||||
|
||||
private String fileCode;
|
||||
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ public class FileInfoQueryDTO {
|
|||
/**
|
||||
* 文件类型 (0-文件夹 1-文件)
|
||||
*/
|
||||
private Integer fileType;
|
||||
private Integer dataType;
|
||||
|
||||
/**
|
||||
* 上传时间(0-升序,1-降序)
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@ public class ProjectVO {
|
|||
private String fileName;
|
||||
private String parentId;
|
||||
private int sort;
|
||||
private Integer dataStatus;
|
||||
|
||||
private List<ProjectVO> children = new ArrayList<>();
|
||||
|
||||
|
|
|
|||
|
|
@ -88,5 +88,5 @@ public interface EdPrjService {
|
|||
* @param newFolderName
|
||||
* @return
|
||||
*/
|
||||
ElectromagneticResult<?> modifyFolder(String id, String newFolderName, String parentId);
|
||||
ElectromagneticResult<?> modifyFolder(String id, String newFolderName);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -187,13 +187,13 @@ public class CommonService {
|
|||
.setFileTime(nowTimeStr)
|
||||
.setPrjDir(isPrjDir)
|
||||
.setDataType(EleDataTypeEnum.FOLDER.code)
|
||||
.setDataStatus(EleDataStatusEnum.NOT_PUBLISHED.code)
|
||||
.setEffectFlag(EffectFlagEnum.EFFECT.code)
|
||||
.setDataStatus(isPrjDir ? EleDataStatusEnum.NOT_PUBLISHED.code : EleDataStatusEnum.PUBLISHED.code)
|
||||
.setEffectFlag(isPrjDir ? EffectFlagEnum.NOT_EFFECTIVE.code : EffectFlagEnum.EFFECT.code)
|
||||
.setSaveStatus(EleDataSaveStatusEnum.SUCCESS.code)
|
||||
.setFilePath(path)
|
||||
.setSort(names.size() + 1)
|
||||
.setCreatedTime(now)
|
||||
.setUpdateTime(now)
|
||||
.setUpdatedTime(now)
|
||||
.setCreatedBy(currentUserId)
|
||||
.setUpdatedBy(currentUserId);
|
||||
edFileInfoMapper.insert(fileInfo);
|
||||
|
|
@ -262,15 +262,16 @@ public class CommonService {
|
|||
log.info(info);
|
||||
return ElectromagneticResultUtil.fail("-1", info);
|
||||
} else {
|
||||
// 先逻辑删除文件夹
|
||||
// 先设置dataStatus状态为删除状态
|
||||
edFileInfoMapper.update(null, Wrappers.<EdFileInfo>lambdaUpdate()
|
||||
.eq(EdFileInfo::getId, id)
|
||||
.set(EdFileInfo::getSort, -1)
|
||||
.set(EdFileInfo::getEffectFlag, EffectFlagEnum.NOT_EFFECTIVE.code));
|
||||
.set(EdFileInfo::getDataStatus, EleDataStatusEnum.DELETED.code));
|
||||
// 层级文件夹重排序
|
||||
List<EdFileInfo> edFileInfos1 = edFileInfoMapper.selectList(Wrappers.lambdaQuery(EdFileInfo.class)
|
||||
.select(EdFileInfo::getId, EdFileInfo::getSort)
|
||||
.eq(EdFileInfo::getEffectFlag, EffectFlagEnum.EFFECT.code)
|
||||
.ne(EdFileInfo::getDataStatus, EleDataStatusEnum.DELETED.code)
|
||||
.eq(EdFileInfo::getParentId, parentId)
|
||||
.orderByAsc(EdFileInfo::getSort));
|
||||
Date now = new Date();
|
||||
|
|
@ -280,7 +281,7 @@ public class CommonService {
|
|||
edFileInfoMapper.update(null, Wrappers.lambdaUpdate(EdFileInfo.class)
|
||||
.set(EdFileInfo::getSort, i + 1)
|
||||
.set(EdFileInfo::getUpdatedBy, currentUserId)
|
||||
.set(EdFileInfo::getUpdateTime, now)
|
||||
.set(EdFileInfo::getUpdatedTime, now)
|
||||
.eq(EdFileInfo::getId, tmp));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -17,10 +17,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.electromagnetic.industry.software.common.enums.EffectFlagEnum;
|
||||
import com.electromagnetic.industry.software.common.enums.EleDataSaveStatusEnum;
|
||||
import com.electromagnetic.industry.software.common.enums.EleDataTypeEnum;
|
||||
import com.electromagnetic.industry.software.common.enums.PublishEnum;
|
||||
import com.electromagnetic.industry.software.common.enums.*;
|
||||
import com.electromagnetic.industry.software.common.exception.BizException;
|
||||
import com.electromagnetic.industry.software.common.resp.ElectromagneticResult;
|
||||
import com.electromagnetic.industry.software.common.util.*;
|
||||
|
|
@ -95,15 +92,16 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
|
|||
|
||||
LambdaQueryWrapper<EdFileInfo> queryWrapper = Wrappers.lambdaQuery(EdFileInfo.class)
|
||||
.select()
|
||||
.eq(EdFileInfo::getEffectFlag, EffectFlagEnum.EFFECT.code)
|
||||
.eq(EdFileInfo::getParentId, fileInfoQueryDTO.getParentId())
|
||||
.like(StrUtil.isNotEmpty(fileInfoQueryDTO.getKeyword()), EdFileInfo::getFileName, fileInfoQueryDTO.getKeyword())
|
||||
.like(StrUtil.isNotEmpty(fileInfoQueryDTO.getKeyword()), EdFileInfo::getFileNote, fileInfoQueryDTO.getKeyword())
|
||||
.eq(Objects.equals(fileInfoQueryDTO.getFileType(), 0), EdFileInfo::getFileType, 0)
|
||||
.eq(Objects.equals(fileInfoQueryDTO.getFileType(), 1), EdFileInfo::getFileType, 1)
|
||||
.eq(Objects.equals(fileInfoQueryDTO.getDataType(), EleDataTypeEnum.FOLDER.code), EdFileInfo::getFileType, EleDataTypeEnum.FOLDER.code)
|
||||
.eq(Objects.equals(fileInfoQueryDTO.getDataType(), EleDataTypeEnum.FILE.code), EdFileInfo::getFileType, EleDataTypeEnum.FILE.code)
|
||||
|
||||
.eq(Objects.equals(fileInfoQueryDTO.getDataStatus(), 0), EdFileInfo::getDataStatus, 0)
|
||||
.eq(Objects.equals(fileInfoQueryDTO.getDataStatus(), 1), EdFileInfo::getDataStatus, 1)
|
||||
.eq(Objects.equals(fileInfoQueryDTO.getDataStatus(), 2), EdFileInfo::getDataStatus, 2)
|
||||
.eq(Objects.equals(fileInfoQueryDTO.getDataStatus(), EleDataStatusEnum.NOT_PUBLISHED.code), EdFileInfo::getDataStatus, EleDataStatusEnum.NOT_PUBLISHED.code)
|
||||
.eq(Objects.equals(fileInfoQueryDTO.getDataStatus(), EleDataStatusEnum.PUBLISHED.code), EdFileInfo::getDataStatus, EleDataStatusEnum.PUBLISHED.code)
|
||||
.eq(Objects.equals(fileInfoQueryDTO.getDataStatus(), EleDataStatusEnum.OCCUPY.code), EdFileInfo::getDataStatus, EleDataStatusEnum.OCCUPY.code)
|
||||
|
||||
.orderByAsc(Objects.equals(fileInfoQueryDTO.getCreatedTime(), 0), EdFileInfo::getCreatedTime)
|
||||
.orderByDesc(Objects.equals(fileInfoQueryDTO.getCreatedTime(), 1), EdFileInfo::getCreatedTime)
|
||||
|
|
@ -119,9 +117,24 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
|
|||
Page<EdFileInfo> edFileInfoPage = this.baseMapper.selectPage(new Page<>(fileInfoQueryDTO.getPageNum(), fileInfoQueryDTO.getPageSize()), queryWrapper);
|
||||
long total = edFileInfoPage.getTotal();
|
||||
List<FileInfoDTO> records = BeanUtil.copyToList(edFileInfoPage.getRecords(), FileInfoDTO.class);
|
||||
resetFileSize(records);
|
||||
return ElectromagneticResultUtil.success(new FileInfoQueryPageVO(total, records));
|
||||
}
|
||||
|
||||
private void resetFileSize(List<FileInfoDTO> records) {
|
||||
for (FileInfoDTO fileInfoDTO : records) {
|
||||
if (fileInfoDTO.getFileSize() < 1024) {
|
||||
fileInfoDTO.setFileSizeShow(fileInfoDTO.getFileSize() + "B");
|
||||
} else if (fileInfoDTO.getFileSize() < 1024 * 1024) {
|
||||
fileInfoDTO.setFileSizeShow(String.format("%.2f KB", fileInfoDTO.getFileSize() / 1024.0));
|
||||
} else if (fileInfoDTO.getFileSize() < 1024 * 1024 * 1024) {
|
||||
fileInfoDTO.setFileSizeShow(String.format("%.2f MB", fileInfoDTO.getFileSize() / (1024.0 * 1024)));
|
||||
} else {
|
||||
fileInfoDTO.setFileSizeShow(String.format("%.2f GB", fileInfoDTO.getFileSize() / (1024.0 * 1024 * 1024)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 新建文件夹
|
||||
*
|
||||
|
|
@ -260,7 +273,7 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
|
|||
|
||||
try {
|
||||
this.baseMapper.update(null, Wrappers.lambdaUpdate(EdFileInfo.class)
|
||||
.set(EdFileInfo::getFileId, fileId)
|
||||
.eq(EdFileInfo::getFileId, fileId)
|
||||
.set(EdFileInfo::getEffectFlag, false));
|
||||
this.baseMapper.update(null, Wrappers.lambdaUpdate(EdFileInfo.class)
|
||||
.set(EdFileInfo::getEffectFlag, true)
|
||||
|
|
@ -424,7 +437,7 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
|
|||
List<EdFileInfo> deepCopyDb = JSONUtil.toList(JSONUtil.toJsonStr(dbFileInfos), EdFileInfo.class);
|
||||
EdFileInfo importEffectFile = deepCopyV.stream().filter(e -> e.getEffectFlag().equals(EffectFlagEnum.EFFECT.code)).findFirst().get();
|
||||
EdFileInfo dbEffectFile = deepCopyDb.stream().filter(e -> e.getEffectFlag().equals(EffectFlagEnum.EFFECT.code)).findFirst().get();
|
||||
String effectId = importEffectFile.getUpdateTime().after(dbEffectFile.getUpdateTime()) ? importEffectFile.getId() : dbEffectFile.getId();
|
||||
String effectId = importEffectFile.getUpdatedTime().after(dbEffectFile.getUpdatedTime()) ? importEffectFile.getId() : dbEffectFile.getId();
|
||||
Map<String, String> importVersionRelation = getVersionRelation(deepCopyV);
|
||||
Map<String, String> dbVersionRelation = getVersionRelation(deepCopyDb);
|
||||
dbVersionRelation.putAll(importVersionRelation);
|
||||
|
|
@ -433,7 +446,7 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
|
|||
for (EdFileInfo importFileInfo : v) {
|
||||
if (dbIdMap.containsKey(importFileInfo.getId())) { // 该文件在数据库中存在,是从线上导出的。
|
||||
EdFileInfo dbFileInfo = dbIdMap.get(importFileInfo.getId());
|
||||
if (dbFileInfo.getUpdateTime().before(importFileInfo.getUpdateTime())) { // 线下版本的修改时间比线上的新,用线下的版本
|
||||
if (dbFileInfo.getUpdatedTime().before(importFileInfo.getUpdatedTime())) { // 线下版本的修改时间比线上的新,用线下的版本
|
||||
importFileInfo.setFileVersion(start);
|
||||
saveObjs.add(importFileInfo);
|
||||
} else { // 线上版本的修改时间比线下新,用线上的版本。
|
||||
|
|
@ -652,7 +665,7 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
|
|||
@Override
|
||||
public ElectromagneticResult<?> versionView(String fileId) {
|
||||
List<EdFileInfo> edFileInfos = this.baseMapper.selectList(Wrappers.lambdaQuery(EdFileInfo.class)
|
||||
.select(EdFileInfo::getId, EdFileInfo::getFileId, EdFileInfo::getFileVersion, EdFileInfo::getPreVersion, EdFileInfo::getFileCode, EdFileInfo::getEffectFlag)
|
||||
.select(EdFileInfo::getId, EdFileInfo::getFileId, EdFileInfo::getFileVersion, EdFileInfo::getPreVersion, EdFileInfo::getFileCode, EdFileInfo::getEffectFlag, EdFileInfo::getFileName)
|
||||
.eq(EdFileInfo::getFileId, fileId));
|
||||
List<FileVersionViewVO> fileVersionViewVOS = BeanUtil.copyToList(edFileInfos, FileVersionViewVO.class);
|
||||
return ElectromagneticResultUtil.success(fileVersionViewVOS);
|
||||
|
|
@ -905,7 +918,7 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
|
|||
.setSaveStatus(EleDataSaveStatusEnum.SUCCESS.code)
|
||||
.setPrjDir(false);
|
||||
this.baseMapper.insert(newEdFileInfo);
|
||||
String fileDestPath = commonService.getFileSysPath(parentFileInfo.getFilePath());
|
||||
String fileDestPath = commonService.getFileSysPath(newEdFileInfo.getFilePath());
|
||||
fileSystemService.save(file.getInputStream(), fileDestPath);
|
||||
} else if (strategy == 3) {
|
||||
// 文件名加”_1“,存为新文件
|
||||
|
|
@ -932,7 +945,7 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
|
|||
.setPrjDir(false);
|
||||
resetFileInfoName(newEdFileInfo);
|
||||
this.baseMapper.insert(newEdFileInfo);
|
||||
String fileDestPath = commonService.getFileSysPath(parentFileInfo.getFilePath());
|
||||
String fileDestPath = commonService.getFileSysPath(newEdFileInfo.getFilePath());
|
||||
fileSystemService.save(file.getInputStream(), fileDestPath);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@ public class EdPrjServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileInfo>
|
|||
.setSort(1)
|
||||
.setFileCode(commonService.createFileCode(newPrjId, EleDataTypeEnum.FOLDER.desc, FILE_START_VERSION, nowTimeStr))
|
||||
.setCreatedTime(now)
|
||||
.setUpdateTime(now)
|
||||
.setUpdatedTime(now)
|
||||
.setCreatedBy(currentUserId)
|
||||
.setUpdatedBy(currentUserId);
|
||||
this.save(fileInfo);
|
||||
|
|
@ -152,7 +152,7 @@ public class EdPrjServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileInfo>
|
|||
.eq(EdFileInfo::getId, prjId)
|
||||
.set(EdFileInfo::getFileName, newPrjName)
|
||||
.set(EdFileInfo::getUpdatedBy, UserThreadLocal.getUserId())
|
||||
.set(EdFileInfo::getUpdateTime, new Date()));
|
||||
.set(EdFileInfo::getUpdatedTime, new Date()));
|
||||
fileSystemService.renameFile(commonService.getEleDataPath(), oldPrjName, newPrjName);
|
||||
} catch (Exception e) {
|
||||
String info = StrFormatter.format("修改工程名异常--->{},{}", newPrjName, e.getMessage());
|
||||
|
|
@ -257,8 +257,16 @@ public class EdPrjServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileInfo>
|
|||
@Transactional(rollbackFor = Exception.class)
|
||||
public ElectromagneticResult<?> publish(String prjId) {
|
||||
try {
|
||||
|
||||
// 将已经处于删除状态设置成逻辑删除
|
||||
this.update(Wrappers.lambdaUpdate(EdFileInfo.class)
|
||||
.eq(EdFileInfo::getDataStatus, EleDataStatusEnum.DELETED.code)
|
||||
.set(EdFileInfo::getEffectFlag, EffectFlagEnum.NOT_EFFECTIVE.code)
|
||||
.likeRight(EdFileInfo::getFilePath, prjId));
|
||||
// 其余置为发布状态
|
||||
LambdaUpdateWrapper<EdFileInfo> updateWrapper = Wrappers.lambdaUpdate(EdFileInfo.class)
|
||||
.set(EdFileInfo::getDataStatus, EleDataStatusEnum.PUBLISHED.code)
|
||||
.set(EdFileInfo::getDataStatus, EleDataStatusEnum.NOT_PUBLISHED.code)
|
||||
.eq(EdFileInfo::getEffectFlag, EffectFlagEnum.EFFECT.code)
|
||||
.likeRight(EdFileInfo::getFilePath, prjId);
|
||||
this.update(updateWrapper);
|
||||
return ElectromagneticResultUtil.success(true);
|
||||
|
|
@ -335,7 +343,7 @@ public class EdPrjServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileInfo>
|
|||
.setFilePath(targetParentFile.getFilePath() + MYSQL_FILE_PATH_SPLIT + newFolderId)
|
||||
.setSort(targetTmpEdFiles.size() + 1)
|
||||
.setCreatedTime(now)
|
||||
.setUpdateTime(now)
|
||||
.setUpdatedTime(now)
|
||||
.setCreatedBy(currentUserId)
|
||||
.setUpdatedBy(currentUserId);
|
||||
this.save(targetFile);
|
||||
|
|
@ -362,8 +370,9 @@ public class EdPrjServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileInfo>
|
|||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public ElectromagneticResult<?> modifyFolder(String id, String newFolderName, String parentId) {
|
||||
public ElectromagneticResult<?> modifyFolder(String id, String newFolderName) {
|
||||
try {
|
||||
String parentId = this.baseMapper.selectById(id).getParentId();
|
||||
// 首先检查同层是否有同名目录
|
||||
if (commonService.checkSameFolder(parentId, newFolderName)) {
|
||||
String info = "存在同名子集,禁止修改";
|
||||
|
|
@ -376,7 +385,7 @@ public class EdPrjServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileInfo>
|
|||
.eq(EdFileInfo::getId, id));
|
||||
String sysFilePath = commonService.getFileSysPath(fileInfo.getFilePath());
|
||||
this.baseMapper.update(null, Wrappers.lambdaUpdate(EdFileInfo.class)
|
||||
.set(EdFileInfo::getUpdateTime, now)
|
||||
.set(EdFileInfo::getUpdatedTime, now)
|
||||
.set(EdFileInfo::getUpdatedBy, currentUserId)
|
||||
.eq(EdFileInfo::getId, id)
|
||||
.set(EdFileInfo::getFileName, newFolderName));
|
||||
|
|
|
|||
|
|
@ -7,7 +7,8 @@ public enum EleDataStatusEnum {
|
|||
|
||||
NOT_PUBLISHED(0, "未发布"),
|
||||
PUBLISHED(1, "已发布"),
|
||||
OCCUPY(2, "占用");
|
||||
OCCUPY(2, "占用"),
|
||||
DELETED(3, "已删除");
|
||||
|
||||
public final int code;
|
||||
public final String desc;
|
||||
|
|
|
|||
Loading…
Reference in New Issue