package org.springblade.modules.yw.service.impl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import org.springblade.core.oss.model.BladeFile;
|
import org.springblade.core.tool.api.R;
|
import org.springblade.modules.resource.builder.OssBuilder;
|
import org.springblade.modules.yw.entity.YwAttachEntity;
|
import org.springblade.modules.yw.vo.YwAttachVO;
|
import org.springblade.modules.yw.mapper.YwAttachMapper;
|
import org.springblade.modules.yw.service.IYwAttachService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import org.springframework.web.multipart.MultipartFile;
|
|
import java.io.IOException;
|
import java.util.List;
|
|
/**
|
* 业务附件表 服务实现类
|
*
|
* @author BladeX
|
* @since 2024-11-11
|
*/
|
@Service
|
public class YwAttachServiceImpl extends ServiceImpl<YwAttachMapper, YwAttachEntity> implements IYwAttachService {
|
|
|
/**
|
* 对象存储构建类
|
*/
|
@Autowired
|
private OssBuilder ossBuilder;
|
|
@Override
|
public IPage<YwAttachVO> selectAttachPage(IPage<YwAttachVO> page, YwAttachVO attach) {
|
return page.setRecords(baseMapper.selectAttachPage(page, attach));
|
}
|
|
/**
|
* 导入单位附件信息
|
* @param files
|
* @param firmId
|
* @param type
|
* @return
|
*/
|
@Override
|
public R importAttach(List<MultipartFile> files, Long firmId,Integer type) {
|
// 遍历文件导入
|
for (MultipartFile file : files) {
|
String originalFilename = file.getOriginalFilename();
|
String[] split = originalFilename.split("\\.");
|
// 设置
|
try {
|
// 文件上传
|
BladeFile bladeFile = ossBuilder.template().putFile(file.getOriginalFilename(), file.getInputStream());
|
// 设置信息
|
YwAttachEntity attachEntity = new YwAttachEntity();
|
attachEntity.setName(split[0]);
|
attachEntity.setLink(bladeFile.getLink());
|
attachEntity.setFirmId(firmId);
|
attachEntity.setType(type);
|
// 保存
|
save(attachEntity);
|
} catch (IOException e) {
|
e.printStackTrace();
|
}
|
}
|
return null;
|
}
|
}
|