优化在线编辑日志代码

This commit is contained in:
gaojiabao
2023-05-19 16:40:50 +08:00
parent 8069309683
commit a45de04e11
@@ -1059,13 +1059,13 @@ public class WorkFlowController extends BaseController {
if(!directory){ if(!directory){
file.mkdirs(); file.mkdirs();
} }
//file = new File(path+"/",onlineFileLog.getOLdFileName()+time+"."+onlineFileLog.getFileSuffix()); file = new File(path+"/"+onlineFileLog.getOLdFileName(),onlineFileLog.getOLdFileName()+"."+onlineFileLog.getFileSuffix());
file = new File(path+"/"+onlineFileLog.getOLdFileName(),time+"."+onlineFileLog.getFileSuffix());
fileOutputStream = new FileOutputStream(file); fileOutputStream = new FileOutputStream(file);
bufferedOutputStream = new BufferedOutputStream(fileOutputStream); bufferedOutputStream = new BufferedOutputStream(fileOutputStream);
fileOutputStream.write(onlineFileLog.getBytes()); fileOutputStream.write(onlineFileLog.getBytes());
fileOutputStream.close(); fileOutputStream.close();
//把文件下载到本地 然后获得文件的名称 通过文件名称 调用 filesave接口 获取id 进行日志存入 //把文件下载到本地 然后获得文件的名称 通过文件名称 调用 filesave接口 获取id 进行日志存入
logger.info("======================文件存储到本地成功,作为存储与Att表的桥梁===============================");
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
}finally { }finally {
@@ -1082,58 +1082,57 @@ public class WorkFlowController extends BaseController {
} }
//把文件放置到本地 //把文件放置到本地
AttFileVo attFileVo = attFileEOService.saveFileInfo(file); AttFileVo attFileVo = attFileEOService.saveFileInfo(file);
logger.info("======================文件成功存储到Att中==============================="+attFileVo.toString());
//储存文件 一个文件夹 储存十个 //储存文件 一个文件夹 储存十个
if(attFileVo!=null) { if(attFileVo!=null) {
// 更新文件名称 用于显示
AttFileEO attFileEO = new AttFileEO();
attFileEO.setId(attFileVo.getId());
attFileEO.setOldFileName(onlineFileLog.getOLdFileName()+"."+onlineFileLog.getFileSuffix());
attFileEODao.updateFileInfoById(attFileEO);
onlineFileLog.setAttFileId(attFileVo.getId()); onlineFileLog.setAttFileId(attFileVo.getId());
onlineFileLog.setUpdateTime(new Date()); onlineFileLog.setUpdateTime(new Date());
onlineFileLog.setCreateTime(new Date()); onlineFileLog.setCreateTime(new Date());
onlineFileLog.setFileName(String.valueOf(time)); onlineFileLog.setFileName(String.valueOf(time));
onlineFileLog.setValidFlag("0"); onlineFileLog.setValidFlag("0");
onlineFileLogDao.insert(onlineFileLog); onlineFileLogDao.insert(onlineFileLog);
//存储完成以后 去查询是否是最近的是个文件 如果是 则 如果不是则 logger.info("======================日志存入成功==============================="+onlineFileLog.toString());
File deleteFile = new File(path + onlineFileLog.getOLdFileName()); //删除媒介桥梁文件
File[] files = deleteFile.listFiles(); if(file.delete()){
// 如果大于十个 删除最早的版本 //删除文件名称
int count = 0; File fileTOW = new File(path+onlineFileLog.getOLdFileName());
for (File fileData: files){ if(fileTOW.delete()){
if(fileData.isFile()){ File fileInfo = new File(path);
count = count+1; if(fileInfo.delete()){
logger.info("======================桥梁文件删除成功===============================");
}
} }
}else {
logger.info("======================桥梁文件删除失败!!!!!!!!===============================");
} }
if(count>10){ QueryWrapper<OnlineFileLog> onlineFileLogQueryWrapperHis = new QueryWrapper<>();
QueryWrapper<OnlineFileLog> onlineFileLogQueryWrapperHis = new QueryWrapper<>(); onlineFileLogQueryWrapperHis.eq("HIS_ID",onlineFileId);
onlineFileLogQueryWrapperHis.eq("HIS_ID",onlineFileId); onlineFileLogQueryWrapperHis.eq("VALID_FLAG","0");
onlineFileLogQueryWrapperHis.eq("VALID_FLAG","0"); onlineFileLogQueryWrapperHis.orderByAsc("CREATE_TIME");
onlineFileLogQueryWrapperHis.orderByAsc("CREATE_TIME"); List<OnlineFileLog> onlineFileLogs = onlineFileLogDao.selectList(onlineFileLogQueryWrapperHis);
List<OnlineFileLog> onlineFileLogs = onlineFileLogDao.selectList(onlineFileLogQueryWrapperHis); //建立删除
//建立删除 // File deleteFileInfo = new File(path + onlineFileLog.getOLdFileName()+"/",onlineFileLogs.get(0).getFileName()+"."+onlineFileLogs.get(0).getFileSuffix());
File deleteFileInfo = new File(path + onlineFileLog.getOLdFileName()+"/",onlineFileLogs.get(0).getFileName()+"."+onlineFileLogs.get(0).getFileSuffix()); if(onlineFileLogs.size()>10){
if(deleteFileInfo.delete()){ logger.info("======================文件日志记录小于10==============================="+onlineFileLogs.size());
QueryWrapper<OnlineFileLog> onlineFileLogQueryWrapper = new QueryWrapper<>(); QueryWrapper<OnlineFileLog> onlineFileLogQueryWrapper = new QueryWrapper<>();
onlineFileLogQueryWrapper.eq("FILE_NAME",onlineFileLogs.get(0).getFileName()); onlineFileLogQueryWrapper.eq("FILE_NAME",onlineFileLogs.get(0).getFileName());
OnlineFileLog onlineFileLogIsNot = onlineFileLogDao.selectOne(onlineFileLogQueryWrapper); OnlineFileLog onlineFileLogIsNot = onlineFileLogDao.selectOne(onlineFileLogQueryWrapper);
if(onlineFileLogIsNot!=null){ if(onlineFileLogIsNot!=null){
//删除此处有关的数据 //删除此处有关的数据
AttFileEO fileInfo = attFileEOService.getFileInfo(onlineFileLogIsNot.getAttFileId()); AttFileEO fileInfo = attFileEOService.getFileInfo(onlineFileLogIsNot.getAttFileId());
if(fileInfo!=null){ if(fileInfo!=null){
File fileAtt = new File(standEditFilePath+fileInfo.getFilePath()+fileInfo.getFileName()); File fileAtt = new File(standEditFilePath+fileInfo.getFilePath()+fileInfo.getFileName());
if(fileAtt.delete()){ if(fileAtt.delete()){
attFileEOService.deleteById(onlineFileLogIsNot.getAttFileId()); attFileEOService.deleteById(onlineFileLogIsNot.getAttFileId());
onlineFileLogDao.deleteById(onlineFileLogs.get(0).getId()); onlineFileLogDao.deleteById(onlineFileLogs.get(0).getId());
}
} }
} }
logger.info("删除成功"+onlineFileLogs.get(0).getId());
}else {
logger.info("删除失败"+onlineFileLogs.get(0).getId());
} }
logger.info("删除成功"+onlineFileLogs.get(0).getId());
}else {
logger.info("======================文件日志记录小于10==============================="+onlineFileLogs.size());
return Result.success(attFileVo.getId());
} }
} }
return Result.success(attFileVo.getId()); return Result.success(attFileVo.getId());
} }