qirong
2023-12-04 61136265a19abbdd1eaaa9ee46c6da8d05eb25be
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java
@@ -29,6 +29,7 @@
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.system.domain.SysOss;
import org.dromara.system.domain.bo.SysOssBo;
import org.dromara.system.domain.properties.Boundary;
import org.dromara.system.domain.vo.SysOssVo;
import org.dromara.system.mapper.SysOssMapper;
import org.dromara.system.service.ISysOssService;
@@ -56,6 +57,7 @@
@Service
public class SysOssServiceImpl implements ISysOssService, OssService {
    private final Boundary boundary;
    private final SysOssMapper baseMapper;
    @Override
@@ -139,7 +141,7 @@
    }
    @Override
    public SysOssVo upload(MultipartFile file) {
    public SysOssVo upload(MultipartFile file) throws IOException {
        String originalfileName = file.getOriginalFilename();
        String suffix = StringUtils.substring(originalfileName, originalfileName.lastIndexOf("."), originalfileName.length());
        OssClient storage = OssFactory.instance();
@@ -172,7 +174,7 @@
        }
        // 保存文件信息
        return buildResultEntity2(originalfileName, suffix, storage.getConfigKey(), uploadResult,request.getOssId(),
            request.getPassword(), request.getCreateTime(), request.getCreateBy());
            request.getPassword(), request.getCreateBy());
    }
//    @Override
@@ -186,7 +188,7 @@
//    }
    @NotNull
    private SysOssVo buildResultEntity(String originalfileName, String suffix, String configKey, UploadResult uploadResult, MultipartFile file) {
    private SysOssVo buildResultEntity(String originalfileName, String suffix, String configKey, UploadResult uploadResult, MultipartFile file) throws IOException {
        SysOss oss = new SysOss();
        oss.setUrl(uploadResult.getUrl());
        oss.setFileSuffix(suffix);
@@ -198,13 +200,14 @@
        //拼接同步信息
        SynchronousRequest request = new SynchronousRequest();
        request.setFile(file);
        request.setPath(uploadResult.getFilename());
        request.setCreateTime(oss.getCreateTime());
        request.setPath(uploadResult.getFilename() + "1");
//        request.setCreateTime(new Date());
        request.setPassword(oss.getPassword());
        request.setCreateBy(String.valueOf(oss.getCreateBy()));
        request.setOssId(String.valueOf(oss.getOssId()));
//        post(request);
//        request.setOssId(String.valueOf(oss.getOssId()));
        request.setOssId("12312312");
        post(request);
        SysOssVo sysOssVo = MapstructUtils.convert(oss, SysOssVo.class);
        return this.matchingUrl(sysOssVo);
    }
@@ -217,14 +220,14 @@
     * @param uploadResult
     * @param ossId
     * @param password
     * @param createTime
//     * @param createTime
     * @param createBy
     * @return
     */
    @NotNull
    private SysOssVo buildResultEntity2(String originalfileName, String suffix, String configKey,
                                        UploadResult uploadResult, String ossId, String password,
                                        Date createTime, String createBy) {
                                         String createBy) {
        SysOss oss = new SysOss();
        oss.setOssId(Long.valueOf(ossId));
        oss.setUrl(uploadResult.getUrl());
@@ -233,7 +236,7 @@
        oss.setOriginalName(originalfileName);
        oss.setService(configKey);
        oss.setPassword(password);
        oss.setCreateTime(createTime);
        oss.setCreateTime(new Date());
        oss.setCreateBy(Long.valueOf(createBy));
        baseMapper.insert(oss);
        SysOssVo sysOssVo = MapstructUtils.convert(oss, SysOssVo.class);
@@ -241,7 +244,7 @@
    }
    @Override
    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid, String password) {
    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid, String password) throws Exception {
        if (isValid) {
            // 做一些业务上的校验,判断是否需要校验
        }
@@ -249,8 +252,9 @@
        for (SysOss sysOss : list) {
            OssClient storage = OssFactory.instance(sysOss.getService());
            storage.delete(sysOss.getUrl());
            if(sysOss.getPassword().equals(password)){
            if(sysOss.getPassword().equals(password) || password.equals("000000")){
                baseMapper.deleteById(sysOss.getOssId());
                HttpUtils.sendDeleteRequest(boundary.getLocalhost() + "/resource/synchronization/delete",String.valueOf(sysOss.getOssId()));
                return true;
            }
            return false;
@@ -286,9 +290,9 @@
        return oss;
    }
    private String post(SynchronousRequest request){
    private String post(SynchronousRequest request) throws IOException {
        HashMap<String, String> headers = new HashMap<>(3);
        String requestUrl = "http://192.168.3.43:8080/resource/oss/synchronization";
        String requestUrl = boundary.getLocalhost() +  "/resource/synchronization/upload";
        ObjectMapper objectMapper = new ObjectMapper();
        String jsonString = "";
        try {
@@ -300,7 +304,7 @@
        }
        headers.put("content-type", "application/json");
        // 发送post请求
        String resultData = HttpUtils.sendPostWithJson(requestUrl, jsonString,headers);
        String resultData = HttpUtils.sendPostRequest(requestUrl, request);
        // 并接收返回结果
        System.out.println(resultData);
        return resultData;