Commit e9955bcd authored by linpeiqin's avatar linpeiqin

删除记录时同时删除文件

parent 9d2699e3
package com.yice.webadmin.app.controller;
import cn.hutool.core.io.FileUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.databind.JsonNode;
......@@ -22,7 +23,6 @@ import com.yice.webadmin.app.dto.DatasetDetailDto;
import com.yice.webadmin.app.dto.DatasetVersionDto;
import com.yice.webadmin.app.model.DatasetDetail;
import com.yice.webadmin.app.model.DatasetVersion;
import com.yice.webadmin.app.service.DatasetManageService;
import com.yice.webadmin.app.service.DatasetVersionService;
import com.yice.webadmin.app.util.Sha1Util;
import com.yice.webadmin.app.vo.DatasetVersionVo;
......@@ -63,8 +63,6 @@ public class DatasetVersionController {
@Autowired
private DatasetVersionService datasetVersionService;
@Autowired
private DatasetManageService datasetManageService;
@Autowired
private PythonConfig pythonConfig;
/**
......@@ -202,9 +200,31 @@ public class DatasetVersionController {
errorMessage = "数据操作失败,删除的对象不存在,请刷新后重试!";
return ResponseResult.error(ErrorCodeEnum.DATA_NOT_EXIST, errorMessage);
}
try {
this.updateJsonFile(pythonConfig.getDatasetFileBaseDir() + pythonConfig.getDatasetInfo(),originalDatasetVersion.getVersionName());
} catch (IOException e) {
throw new RuntimeException(e);
}
FileUtil.del(originalDatasetVersion.getFileUrl());
return ResponseResult.success();
}
private void updateJsonFile(String filePath, String keyToRemove) throws IOException {
ObjectMapper objectMapper = new ObjectMapper();
File jsonFile = new File(filePath);
// 读取JSON文件
JsonNode rootNode = objectMapper.readTree(jsonFile);
// 删除指定键的对象
if (rootNode.isObject()) {
ObjectNode objectNode = (ObjectNode) rootNode;
objectNode.remove(keyToRemove);
} else {
log.error("Root node is not an object.");
}
// 将更新后的JSON写回文件
objectMapper.writeValue(jsonFile, rootNode);
}
@PostMapping(value = "/detail")
public ResponseResult<MyPageData<String>> detail(@MyRequestBody Long versionId,
@MyRequestBody MyPageParam pageParam) throws IOException {
......
package com.yice.webadmin.app.controller;
import cn.hutool.core.io.FileUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
......@@ -250,6 +251,7 @@ public class ModelVersionController {
errorMessage = "数据操作失败,删除的对象不存在,请刷新后重试!";
return ResponseResult.error(ErrorCodeEnum.DATA_NOT_EXIST, errorMessage);
}
FileUtil.del(originalModelVersion.getModelUrl());
return ResponseResult.success();
}
}
......@@ -26,6 +26,4 @@ public class FileUtil {
return ResponseEntity.notFound().build(); // 如果文件不存在,返回404 Not Found状态码
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment