Explorar o código

修复 updateUploadFile 接口 category_id 字段

tsurumure hai 3 meses
pai
achega
99383307d8

+ 6 - 1
src/main/java/com/backendsys/modules/upload/dao/SysFileDao.java

@@ -9,8 +9,13 @@ import java.util.List;
 @Mapper
 public interface SysFileDao extends BaseMapper<SysFile> {
 
+    // 获取文件列表
     List<SysFile> selectUploadFileList(SysFile sysFile);
-    // 更新合并分块时的记录
+
+    // 更新文件
+    void updateFile(SysFile sysFile);
+
+    // 更新合并分块记录
     void updateCompleteFile(SysFile sysFile);
 
 }

+ 1 - 1
src/main/java/com/backendsys/modules/upload/entity/SysFile.java

@@ -36,7 +36,7 @@ public class SysFile {
     private String username;
 
     @NotEmpty(message = "文件名不能为空", groups = { Update.class })
-    @Size(max = 100, message = "资讯分类名称长度不超过 {max} 字符", groups = { Update.class })
+    @Size(max = 100, message = "文件名长度不超过 {max} 字符", groups = { Update.class })
     private String name;
     private String content_type;
     private String url;

+ 16 - 10
src/main/java/com/backendsys/modules/upload/service/impl/SysFileServiceImpl.java

@@ -3,20 +3,20 @@ package com.backendsys.modules.upload.service.impl;
 import cn.hutool.core.codec.Base64;
 import cn.hutool.core.convert.Convert;
 import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.io.file.FileNameUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.crypto.digest.DigestUtil;
 import cn.hutool.json.JSONArray;
-import cn.hutool.json.JSONObject;
-import cn.hutool.json.JSONUtil;
 import com.backendsys.exception.CustException;
 import com.backendsys.modules.common.config.security.utils.HttpRequestUtil;
+import com.backendsys.modules.common.config.security.utils.SecurityUtil;
 import com.backendsys.modules.sdk.douyincloud.tos.service.DouyinTosService;
 import com.backendsys.modules.sdk.tencentcloud.cos.service.TencentCosService;
 import com.backendsys.modules.system.entity.SysCommon;
 import com.backendsys.modules.system.service.SysCommonService;
+import com.backendsys.modules.upload.dao.SysFileCategoryDao;
 import com.backendsys.modules.upload.dao.SysFileDao;
 import com.backendsys.modules.upload.entity.SysFile;
+import com.backendsys.modules.upload.entity.SysFileCategory;
 import com.backendsys.modules.upload.entity.SysFileResult;
 import com.backendsys.modules.upload.enums.StyleEnums;
 import com.backendsys.modules.upload.service.SysFileService;
@@ -26,7 +26,6 @@ import com.backendsys.utils.response.PageInfoResult;
 import com.backendsys.utils.v2.PageUtils;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.google.gson.JsonElement;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
@@ -54,6 +53,8 @@ public class SysFileServiceImpl extends ServiceImpl<SysFileDao, SysFile> impleme
     @Autowired
     private SysFileDao sysFileDao;
     @Autowired
+    private SysFileCategoryDao sysFileCategoryDao;
+    @Autowired
     private SysCommonService sysCommonService;
 
     // [方法] 设置缩略图 (参数)
@@ -357,17 +358,22 @@ public class SysFileServiceImpl extends ServiceImpl<SysFileDao, SysFile> impleme
 
 
     /**
-     * 编辑文件 (名称)
+     * 编辑文件 (名称、文件分类)
      */
     @Override
     public Map<String, Object> updateUploadFile(SysFile sysFile) {
 
-        SysFile entity = new SysFile();
-        entity.setId(sysFile.getId());
-        entity.setName(sysFile.getName());
-        entity.setCategory_id(sysFile.getCategory_id());
-        sysFileDao.updateById(entity);
+        // 查询文件分类是否存在
+        if (sysFile.getCategory_id() != null) {
+            LambdaQueryWrapper<SysFileCategory> wrapper = new LambdaQueryWrapper<>();
+            wrapper.eq(SysFileCategory::getUser_id, SecurityUtil.getUserId());
+            wrapper.eq(SysFileCategory::getId, sysFile.getCategory_id());
+            if (!sysFileCategoryDao.exists(wrapper)) {
+                throw new CustException("文件分类不存在");
+            }
+        }
 
+        sysFileDao.updateFile(sysFile);
         return Map.of("id", sysFile.getId());
     }
 

+ 12 - 0
src/main/resources/mapper/upload/SysFileDao.xml

@@ -75,6 +75,18 @@
         ORDER BY f.create_time DESC
     </select>
 
+    <update id="updateFile" parameterType="com.backendsys.modules.upload.entity.SysFile"
+        useGeneratedKeys="true" keyProperty="id">
+        UPDATE sys_file
+        <set>
+            <trim suffixOverrides="," suffix=" ">
+                name = #{name},
+                category_id = #{category_id},
+            </trim>
+        </set>
+        WHERE id = #{id}
+    </update>
+
     <update id="updateCompleteFile" parameterType="com.backendsys.modules.upload.entity.SysFile"
         useGeneratedKeys="true" keyProperty="id">
         UPDATE sys_file