package com.fzzy.eoms.file; import com.fzzy.eoms.data.ConfigData; import com.fzzy.eoms.file.mapper.FileServiceMapper; import com.fzzy.eoms.models.FileInfo; import com.fzzy.eoms.utils.ContextUtil; import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.time.DateFormatUtils; import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.io.File; import java.util.Date; import java.util.List; @Component public class CoreFileServiceImpl implements CoreFileService { @Resource private FileServiceMapper fileServiceMapper; @Resource private ConfigData configData; @Override public String getStoragePath(Date date) { if (null == date) date = new Date(); String basePath = configData.getProfile() + "/" + DateFormatUtils.format(date, "yyyyMM") + "/"; File file = new File(basePath); if (!file.exists()) { file.mkdirs(); } return basePath; } @Override public String getTempFilePath(Date date) { String basePath = configData.getProfile() + "TEMP/" + DateFormatUtils.format(date, "yyyyMM") + "/"; File file = new File(basePath); if (!file.exists()) { file.mkdirs(); } return basePath; } @Override public void addRecord(FileInfo fileData) { fileServiceMapper.addFile(fileData); } @Override public List listFile(String companyId, String bizId) { if (StringUtils.isEmpty(companyId)) { companyId = ContextUtil.getDefaultCompanyId(); } if (StringUtils.isEmpty(bizId)) return null; return fileServiceMapper.listFile(companyId, bizId); } @Override public List listFile(String companyId, String bizId, String bizTag) { if (StringUtils.isEmpty(companyId)) { companyId = ContextUtil.getDefaultCompanyId(); } if (StringUtils.isEmpty(bizId)) return null; if (StringUtils.isEmpty(bizTag)) return fileServiceMapper.listFile(companyId, bizId); return fileServiceMapper.listFile2(companyId, bizId, bizTag); } @Override public void delFile(String fileId) { fileServiceMapper.delFile(fileId); } @Override public void addRecords(List files, String bizId, String bizTag, String companyId) { if (null == files || files.isEmpty()) { return; } if (null == companyId) { companyId = ContextUtil.getDefaultCompanyId(); } FileInfo fileData; for (FileInfo data : files) { if (StringUtils.isEmpty(data.getFileName())) { continue; } //如有业务ID则不处理 if (StringUtils.isNotEmpty(data.getBizId())) { continue; } if (StringUtils.isEmpty(data.getCompanyId())) { data.setCompanyId(companyId); } if (null == data.getCreateTime()) { data.setCreateTime(new Date()); } if (null == data.getBizTag()) { data.setBizTag(bizTag); } data.setBizId(bizId); if (null == data.getFileId()) { data.setFileId(ContextUtil.getUUID()); } fileData = new FileInfo(); fileData.setFileId(data.getFileId()); fileData.setBizId(data.getBizId()); fileData.setBizTag(data.getBizTag()); fileData.setFileName(data.getFileName()); fileData.setCreateTime(data.getCreateTime()); fileData.setCompanyId(data.getCompanyId()); fileServiceMapper.addFile(fileData); } } }