新增了删除工程的接口
This commit is contained in:
parent
c5a44bf01c
commit
0d70669b19
|
|
@ -15,6 +15,7 @@ import org.springframework.web.bind.annotation.RestController;
|
|||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/data/ed/local/prj")
|
||||
public class ImportPrjController {
|
||||
|
||||
@Resource
|
||||
|
|
@ -41,9 +42,15 @@ public class ImportPrjController {
|
|||
}
|
||||
|
||||
@RequestMapping("/download")
|
||||
@UserOperation(value = "下载文件", modelName = UserOperationModuleEnum.IMPORT_PFJ)
|
||||
@UserOperation(value = "下载工程文件", modelName = UserOperationModuleEnum.IMPORT_PFJ)
|
||||
public ResponseEntity<InputStreamResource> download(@RequestParam("id") String id, HttpServletResponse response) {
|
||||
return importPrjService.download(id, response);
|
||||
}
|
||||
|
||||
@RequestMapping("/removePrj")
|
||||
@UserOperation(value = "删除工程", modelName = UserOperationModuleEnum.IMPORT_PFJ)
|
||||
public ElectromagneticResult<?> removePrj(@RequestParam("prjId") String prjId) {
|
||||
return ElectromagneticResultUtil.success(importPrjService.removePrj(prjId));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,4 +18,5 @@ public interface ImportPrjService {
|
|||
|
||||
RespPageVO<ImportFileInfoVO> queryImportFileInfo(String id, Integer pageNo, Integer pageSize);
|
||||
|
||||
boolean removePrj(String prjId);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import cn.hutool.core.lang.Assert;
|
|||
import cn.hutool.core.text.StrFormatter;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.crypto.SecureUtil;
|
||||
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;
|
||||
|
|
@ -40,6 +41,7 @@ import org.springframework.web.multipart.MultipartFile;
|
|||
import java.io.File;
|
||||
import java.io.InputStream;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.zip.ZipEntry;
|
||||
import java.util.zip.ZipFile;
|
||||
|
||||
|
|
@ -54,6 +56,7 @@ public class ImportPrjServiceImpl extends ServiceImpl<ImportPrjInfoMapper, Impor
|
|||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean importPrj(MultipartFile file) {
|
||||
Assert.isTrue(Objects.equals(FileUtil.getSuffix(file.getOriginalFilename()), "zip"), "当前仅支持zip格式");
|
||||
String zipTmpPath = elePropertyConfig.getEleTmpPath() + File.pathSeparator + UUID.randomUUID() + ".zip";
|
||||
ZipFile zipFile = null;
|
||||
try {
|
||||
|
|
@ -169,7 +172,8 @@ public class ImportPrjServiceImpl extends ServiceImpl<ImportPrjInfoMapper, Impor
|
|||
Page<ImportFileInfo> importFileInfoPage = this.baseMapper.selectPage(new Page<>(pageNum, pageSize), Wrappers.lambdaQuery(ImportFileInfo.class)
|
||||
.select(ImportFileInfo::getId, ImportFileInfo::getFileName)
|
||||
.eq(ImportFileInfo::getEffectFlag, EffectFlagEnum.EFFECT.code)
|
||||
.eq(ImportFileInfo::getParentId, PRJ_PARENT_ID));
|
||||
.eq(ImportFileInfo::getParentId, PRJ_PARENT_ID)
|
||||
.orderByDesc(ImportFileInfo::getCreatedTime));
|
||||
List<ImportFileDirQueryVO> page = BeanUtil.copyToList(importFileInfoPage.getRecords(), ImportFileDirQueryVO.class);
|
||||
return new RespPageVO<>(importFileInfoPage.getTotal(), page);
|
||||
}
|
||||
|
|
@ -194,6 +198,20 @@ public class ImportPrjServiceImpl extends ServiceImpl<ImportPrjInfoMapper, Impor
|
|||
return respPageVO;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public boolean removePrj(String prjId) {
|
||||
LambdaQueryWrapper<ImportFileInfo> idSelectWrapper = Wrappers.lambdaQuery(ImportFileInfo.class)
|
||||
.likeRight(ImportFileInfo::getFilePath, prjId + MYSQL_FILE_PATH_SPLIT)
|
||||
.select(ImportFileInfo::getId);
|
||||
Set<String> ids = this.baseMapper.selectList(idSelectWrapper).stream().map(ImportFileInfo::getId).collect(Collectors.toSet());
|
||||
ids.add(prjId);
|
||||
this.baseMapper.update(new ImportFileInfo(), Wrappers.<ImportFileInfo>lambdaUpdate()
|
||||
.set(ImportFileInfo::getEffectFlag, EffectFlagEnum.NOT_EFFECTIVE.code)
|
||||
.in(ImportFileInfo::getId, ids));
|
||||
return true;
|
||||
}
|
||||
|
||||
public void resetPrjName(ImportFileInfo importFileInfo) {
|
||||
if (!StrUtil.equals(importFileInfo.getParentId(), ElectromagneticConstants.PRJ_PARENT_ID)) {
|
||||
return;
|
||||
|
|
|
|||
|
|
@ -1,35 +1,35 @@
|
|||
import com.electromagnetic.industry.software.common.cons.UserConstants;
|
||||
import com.electromagnetic.industry.software.common.pojo.UserLoginInfo;
|
||||
import com.electromagnetic.industry.software.common.util.UserThreadLocal;
|
||||
import com.electromagnetic.industry.software.manage.Application;
|
||||
import com.electromagnetic.industry.software.manage.config.ElePropertyConfig;
|
||||
import com.electromagnetic.industry.software.manage.service.ImportPrjService;
|
||||
import com.electromagnetic.industry.software.manage.service.ImportTableService;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
|
||||
@SpringBootTest(classes = Application.class)
|
||||
public class ImportTableTest {
|
||||
|
||||
@Resource
|
||||
private ImportTableService importTableService;
|
||||
@Resource
|
||||
private ImportPrjService importPrjService;
|
||||
@Resource
|
||||
private ElePropertyConfig elePropertyConfig;
|
||||
|
||||
public void testImportPrj() {
|
||||
UserLoginInfo userLoginInfo = new UserLoginInfo();
|
||||
userLoginInfo.setUserId("1916756770835075072");
|
||||
userLoginInfo.setUsername("北航电磁仿真用户1");
|
||||
userLoginInfo.setWorkNumber("");
|
||||
userLoginInfo.setAdminType("");
|
||||
userLoginInfo.setPrjTmpDir(elePropertyConfig.getEleTmpPath());
|
||||
UserThreadLocal.set(userLoginInfo);
|
||||
importPrjService.importPrj(null);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
//import com.electromagnetic.industry.software.common.pojo.UserLoginInfo;
|
||||
//import com.electromagnetic.industry.software.common.util.UserThreadLocal;
|
||||
//import com.electromagnetic.industry.software.manage.Application;
|
||||
//import com.electromagnetic.industry.software.manage.config.ElePropertyConfig;
|
||||
//import com.electromagnetic.industry.software.manage.service.ImportPrjService;
|
||||
//import com.electromagnetic.industry.software.manage.service.ImportTableService;
|
||||
//import jakarta.annotation.Resource;
|
||||
//import org.junit.jupiter.api.Test;
|
||||
//import org.springframework.boot.test.context.SpringBootTest;
|
||||
//
|
||||
//@SpringBootTest(classes = Application.class)
|
||||
//public class ImportTest {
|
||||
//
|
||||
// @Resource
|
||||
// private ImportTableService importTableService;
|
||||
// @Resource
|
||||
// private ImportPrjService importPrjService;
|
||||
// @Resource
|
||||
// private ElePropertyConfig elePropertyConfig;
|
||||
//
|
||||
// @Test
|
||||
// public void testImportPrj() {
|
||||
// UserLoginInfo userLoginInfo = new UserLoginInfo();
|
||||
// userLoginInfo.setUserId("1916756770835075072");
|
||||
// userLoginInfo.setUsername("北航电磁仿真用户1");
|
||||
// userLoginInfo.setWorkNumber("");
|
||||
// userLoginInfo.setAdminType("");
|
||||
// userLoginInfo.setPrjTmpDir(elePropertyConfig.getEleTmpPath());
|
||||
// UserThreadLocal.set(userLoginInfo);
|
||||
// importPrjService.importPrj(null);
|
||||
//
|
||||
// }
|
||||
//
|
||||
//
|
||||
//}
|
||||
|
|
|
|||
Loading…
Reference in New Issue