标准excel导入
This commit is contained in:
@@ -22,4 +22,6 @@ public interface IAttFileEOService extends IService<AttFileEO> {
|
||||
|
||||
public String saveFileAttId(File file);
|
||||
|
||||
public AttFileVo insertFileInfo(File file,String fileName);
|
||||
|
||||
}
|
||||
|
||||
@@ -358,4 +358,74 @@ public class AttFileEOServiceImpl extends ServiceImpl<AttFileEODao, AttFileEO> i
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 保存文件并返回文件ID
|
||||
*
|
||||
* @param file
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public AttFileVo insertFileInfo(File file,String customFileName) {
|
||||
/**
|
||||
* 1、首先生成文件保存的主键ID
|
||||
* 2、根据文件ID生成随机路径
|
||||
* 3、生成文件名
|
||||
* 3、保存文件
|
||||
* 4、获取文件相关信息
|
||||
* 5、判断当前表是否有存在,如果存在则执行insert语句 如果不存在则创建表结构
|
||||
* 5、保存入库并返回主键ID
|
||||
*/
|
||||
AttFileVo attFileVo = new AttFileVo();
|
||||
String fileId = UUIDUtils.randomUUID20();
|
||||
try {
|
||||
String uuidPath = UUIDUtils.getUUIDPath(fileId);
|
||||
|
||||
String FileSavePath = filePath + uuidPath + "/";
|
||||
File dir = new File(FileSavePath);
|
||||
if (!dir.exists()) {
|
||||
dir.mkdirs();
|
||||
}
|
||||
|
||||
String fileName = file.getName();
|
||||
String fileSuffix = fileName.substring(fileName.lastIndexOf(".")+1, fileName.length());
|
||||
|
||||
String newFileName = fileId +"."+ fileSuffix;
|
||||
String oldName=customFileName+"."+fileSuffix;
|
||||
|
||||
|
||||
|
||||
File saveFile = new File(FileSavePath + newFileName);
|
||||
FileUtils.copyFile(file,saveFile);
|
||||
//开始存储文件信息
|
||||
String tableName = UUIDUtils.getAttTable();
|
||||
int existTable = this.baseMapper.existTable(tableName);
|
||||
if (existTable == 0) {
|
||||
this.baseMapper.creatTableInfo(tableName);
|
||||
}
|
||||
fileId = tableName + "_" + fileId;
|
||||
AttFileEO attFileEO = new AttFileEO();
|
||||
attFileEO.setTableName(tableName);
|
||||
attFileEO.setId(fileId);
|
||||
attFileEO.setOldFileName(customFileName);
|
||||
attFileEO.setFileSuffix(fileSuffix);
|
||||
attFileEO.setFilePath(uuidPath);
|
||||
attFileEO.setFileName(oldName);
|
||||
attFileEO.setValidFlag(ValidFlagEnum.VALID_TRUE.getValue());
|
||||
attFileEO.setCreationTime(new Date());
|
||||
attFileEO.setModifyTime(new Date());
|
||||
this.baseMapper.insertData(attFileEO);
|
||||
attFileVo.setId(fileId);
|
||||
attFileVo.setFileName(newFileName);
|
||||
attFileVo.setFilePath(uuidPath);
|
||||
attFileVo.setFileSuffix(fileSuffix);
|
||||
attFileVo.setOldFileName(oldName);
|
||||
} catch (IOException e) {
|
||||
log.error(e.getMessage(),e);
|
||||
} catch (Exception e) {
|
||||
log.error(e.getMessage(),e);
|
||||
}
|
||||
return attFileVo;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user