2026-03-09 优化
1、优化目录是否可见接口,修改目录时同步修改目录下属的所有标注是否可见。
2、优化controller接口返回数据字段。
2 files modified
71 ■■■■■ changed files
ard-admin/src/main/java/com/ard/web/controller/sample/AnnotationController.java 44 ●●●●● patch | view | raw | blame | history
ard-sample/src/main/java/com/ard/sample/annotation/service/impl/AnnotationDirectoryServiceImpl.java 27 ●●●●● patch | view | raw | blame | history
ard-admin/src/main/java/com/ard/web/controller/sample/AnnotationController.java
@@ -45,12 +45,12 @@
            else {
                re = 400;
            }
            result.put("success", re);
            result.put("code", re);
            result.put("msg", success ? "目录新增成功" : "目录新增失败");
            result.put("data", entity.getId()); // 返回新增ID
        } catch (Exception e) {
            log.error("新增目录异常", e);
            result.put("success", 400);
            result.put("code", 400);
            result.put("msg", "新增目录失败:" + e.getMessage());
        }
        return ResponseEntity.ok(result);
@@ -70,11 +70,11 @@
            else {
                re = 400;
            }
            result.put("success", re);
            result.put("code", re);
            result.put("msg", success ? "目录修改成功" : "目录修改失败");
        } catch (Exception e) {
            log.error("修改目录异常", e);
            result.put("success", 400);
            result.put("code", 400);
            result.put("msg", "修改目录失败:" + e.getMessage());
        }
        return ResponseEntity.ok(result);
@@ -94,12 +94,12 @@
            else {
                re = 400;
            }
            result.put("success", re);
            result.put("code", re);
            result.put("msg", success ? "修改目录是否可见成功" : "修改目录是否可见失败");
        }
        catch (Exception e) {
            log.error("修改目录是否可见异常", e);
            result.put("success", 400);
            result.put("code", 400);
            result.put("msg", "修改目录是否可见失败:" + e.getMessage());
        }
        return ResponseEntity.ok(result);
@@ -118,11 +118,11 @@
            else {
                re = 400;
            }
            result.put("success", re);
            result.put("code", re);
            result.put("msg", success ? "目录删除成功" : "目录删除失败");
        } catch (Exception e) {
            log.error("删除目录异常", e);
            result.put("success", 400);
            result.put("code", 400);
            result.put("msg", "删除目录失败:" + e.getMessage());
        }
        return ResponseEntity.ok(result);
@@ -144,12 +144,12 @@
            else {
                re = 400;
            }
            result.put("success", re);
            result.put("code", re);
            result.put("msg", success ? "标记新增成功" : "标记新增失败");
            result.put("data", entity.getId());
        } catch (Exception e) {
            log.error("新增标记异常", e);
            result.put("success", 400);
            result.put("code", 400);
            result.put("msg", "新增标记失败:" + e.getMessage());
        }
        return ResponseEntity.ok(result);
@@ -169,11 +169,11 @@
            else {
                re = 400;
            }
            result.put("success", re);
            result.put("code", re);
            result.put("msg", success ? "标记修改成功" : "标记修改失败");
        } catch (Exception e) {
            log.error("修改标记异常", e);
            result.put("success", 400);
            result.put("code", 400);
            result.put("msg", "修改标记失败:" + e.getMessage());
        }
        return ResponseEntity.ok(result);
@@ -193,12 +193,12 @@
            else {
                re = 400;
            }
            result.put("success", re);
            result.put("code", re);
            result.put("msg", success ? "修改标记是否可见成功" : "修改标记是否可见失败");
        }
        catch (Exception e) {
            log.error("修改标记是否可见异常", e);
            result.put("success", 400);
            result.put("code", 400);
            result.put("msg", "修改标记是否可见失败:" + e.getMessage());
        }
        //boolean result = annotationService.updateAnnotationVisible(id, isTrue);
@@ -218,11 +218,11 @@
            else {
                re = 400;
            }
            result.put("success", re);
            result.put("code", re);
            result.put("msg", success ? "标记删除成功" : "标记删除失败");
        } catch (Exception e) {
            log.error("删除标记异常", e);
            result.put("success", 400);
            result.put("code", 400);
            result.put("msg", "删除标记失败:" + e.getMessage());
        }
        return ResponseEntity.ok(result);
@@ -241,11 +241,11 @@
            else {
                re = 400;
            }
            result.put("success", re);
            result.put("code", re);
            result.put("msg", success ? "标记批量删除成功" : "标记批量删除失败");
        } catch (Exception e) {
            log.error("批量删除标记异常", e);
            result.put("success", 400);
            result.put("code", 400);
            result.put("msg", "批量删除标记失败:" + e.getMessage());
        }
        return ResponseEntity.ok(result);
@@ -260,7 +260,7 @@
            // 1. 查询目录
            AnnotationDirectoryEntity dirEntity = directoryService.getById(directoryId);
            if (dirEntity == null) {
                result.put("success", 400);
                result.put("code", 400);
                result.put("msg", "目录不存在");
                return ResponseEntity.ok(result);
            }
@@ -271,11 +271,11 @@
            List<AnnotationDTO> annoDtos = ConvertUtil.annotationEntityListToDtoList(annoEntities);
            dirDto.setAnnotations(annoDtos);
            result.put("success", 200);
            result.put("code", 200);
            result.put("data", dirDto);
        } catch (Exception e) {
            log.error("查询目录及标记异常", e);
            result.put("success", 400);
            result.put("code", 400);
            result.put("msg", "查询失败:" + e.getMessage());
        }
        return ResponseEntity.ok(result);
@@ -290,7 +290,7 @@
        List<AnnotationDirectoryDTO> directoryList = directoryService.listAllDirectoryWithAnnotations();
        Map<String, Object> result = new HashMap<>();
        result.put("success", 200);
        result.put("code", 200);
        result.put("msg", "查询全部目录及标注成功");
        result.put("data", directoryList);
ard-sample/src/main/java/com/ard/sample/annotation/service/impl/AnnotationDirectoryServiceImpl.java
@@ -9,6 +9,7 @@
import com.ard.sample.annotation.service.IAnnotationDirectoryService;
import com.ard.sample.annotation.service.IAnnotationService;
import com.ard.sample.annotation.util.JsonSerializeUtil;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ard.sample.annotation.mapper.AnnotationDirectoryMapper;
import lombok.RequiredArgsConstructor;
@@ -50,15 +51,33 @@
     * 新增:修改目录显示状态
     */
    @Override
    @Transactional(rollbackFor = Exception.class) // 事务控制:目录和标注修改要么都成功,要么都回滚
    public boolean updateDirectoryVisible(String id, Boolean isTrue) {
        // 1. 参数校验
        if (id == null || id.isEmpty() || isTrue == null) {
            log.error("修改目录显示状态失败:参数非法,id={}, isTrue={}", id, isTrue);
            return false;
        }
        AnnotationDirectoryEntity entity = new AnnotationDirectoryEntity();
        entity.setId(id);
        entity.setIsTrue(isTrue);
        return updateById(entity);
        // 2. 修改目录自身的可见状态
        AnnotationDirectoryEntity directoryEntity = new AnnotationDirectoryEntity();
        directoryEntity.setId(id);
        directoryEntity.setIsTrue(isTrue);
        boolean dirUpdateResult = updateById(directoryEntity);
        if (!dirUpdateResult) {
            log.error("修改目录{}显示状态失败", id);
            return false;
        }
        // 3. 批量修改该目录下所有标注的可见状态(核心新增逻辑)
        LambdaUpdateWrapper<AnnotationEntity> annotationUpdateWrapper = new LambdaUpdateWrapper<>();
        annotationUpdateWrapper.eq(AnnotationEntity::getDirectoryId, id) // 匹配目录ID
                .set(AnnotationEntity::getIsTrue, isTrue); // 同步设置相同的可见状态
        boolean annotationUpdateResult = annotationService.update(annotationUpdateWrapper);
        // 简化日志:只记录操作结果
        log.info("目录{}显示状态修改成功(状态:{}),下属标注状态同步修改结果:{}",
                id, isTrue, annotationUpdateResult);
        // 4. 返回最终结果(目录修改成功且标注修改成功,或标注无数据时返回目录修改结果)
        return dirUpdateResult;
    }
    @Override