diff --git a/core/src/main/java/com/dite/znpt/domain/entity/ImageEntity.java b/core/src/main/java/com/dite/znpt/domain/entity/ImageEntity.java index 2955ab4..3b89da4 100644 --- a/core/src/main/java/com/dite/znpt/domain/entity/ImageEntity.java +++ b/core/src/main/java/com/dite/znpt/domain/entity/ImageEntity.java @@ -12,7 +12,6 @@ import lombok.EqualsAndHashCode; import java.io.Serial; import java.io.Serializable; -import java.math.BigDecimal; import java.time.LocalDateTime; /** @@ -117,4 +116,8 @@ public class ImageEntity extends AuditableEntity implements Serializable { @TableField("image_path") private String imagePath; + @ApiModelProperty("是否已审核,0未审核,1已审核") + @TableField("review_state") + private Boolean reviewState; + } diff --git a/core/src/main/java/com/dite/znpt/domain/vo/ImageListReq.java b/core/src/main/java/com/dite/znpt/domain/vo/ImageListReq.java index e523da5..1809ea2 100644 --- a/core/src/main/java/com/dite/znpt/domain/vo/ImageListReq.java +++ b/core/src/main/java/com/dite/znpt/domain/vo/ImageListReq.java @@ -30,4 +30,7 @@ public class ImageListReq implements Serializable { @ApiModelProperty("图像类型") private String[] imageTypes; + @ApiModelProperty("是否已审核,0未审核,1已审核") + private Boolean reviewState; + } diff --git a/core/src/main/java/com/dite/znpt/domain/vo/ImageResp.java b/core/src/main/java/com/dite/znpt/domain/vo/ImageResp.java index 4105c44..d203632 100644 --- a/core/src/main/java/com/dite/znpt/domain/vo/ImageResp.java +++ b/core/src/main/java/com/dite/znpt/domain/vo/ImageResp.java @@ -1,15 +1,11 @@ package com.dite.znpt.domain.vo; -import com.baomidou.mybatisplus.annotation.TableField; -import com.dite.znpt.domain.entity.AudioFileInfoEntity; -import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.io.Serial; import java.io.Serializable; -import java.time.LocalDateTime; import java.util.List; /** @@ -47,4 +43,7 @@ public class ImageResp implements Serializable { @ApiModelProperty("关联图像的音频列表") private List audioList; + @ApiModelProperty("是否已审核,0未审核,1已审核") + private Boolean reviewState; + } diff --git a/core/src/main/java/com/dite/znpt/service/ImageService.java b/core/src/main/java/com/dite/znpt/service/ImageService.java index af583a7..01bb42d 100644 --- a/core/src/main/java/com/dite/znpt/service/ImageService.java +++ b/core/src/main/java/com/dite/znpt/service/ImageService.java @@ -42,4 +42,13 @@ public interface ImageService extends IService { * @date 2025/06/06 09:44 **/ void linkAppImagesToPart(AppImageToPartReq partReq); + + /** + * 功能描述:审核图片 + * + * @param imageIds 图片id列表 + * @author cuizhibin + * @date 2025/07/16 15:28 + **/ + void reviewImages(List imageIds); } diff --git a/core/src/main/java/com/dite/znpt/service/impl/ImageServiceImpl.java b/core/src/main/java/com/dite/znpt/service/impl/ImageServiceImpl.java index c47e9c2..ccb6c56 100644 --- a/core/src/main/java/com/dite/znpt/service/impl/ImageServiceImpl.java +++ b/core/src/main/java/com/dite/znpt/service/impl/ImageServiceImpl.java @@ -441,4 +441,19 @@ public class ImageServiceImpl extends ServiceImpl impl imageCollectService.save(BeanUtil.copyProperties(partReq, ImageCollectEntity.class)); baseMapper.insert(newImageList); } + + /** + * 功能描述:审核图片 + * + * @param imageIds 图片id列表 + * @author cuizhibin + * @date 2025/07/16 15:28 + **/ + @Override + public void reviewImages(List imageIds) { + if (CollUtil.isEmpty(imageIds)) { + throw new ServiceException(Message.IMAGE_IS_EMPTY); + } + lambdaUpdate().in(ImageEntity::getImageId, imageIds).set(ImageEntity::getReviewState, "1").update(); + } } diff --git a/core/src/main/resources/mapper/ImageMapper.xml b/core/src/main/resources/mapper/ImageMapper.xml index 580bbd0..e47e4b9 100644 --- a/core/src/main/resources/mapper/ImageMapper.xml +++ b/core/src/main/resources/mapper/ImageMapper.xml @@ -5,7 +5,7 @@ SELECT i.image_id, i.image_name, i.part_id, p.part_name, i.image_resolution, i.focal_distance, i.shooting_time, i.camera_manufacturer, i.camera_model, i.GPS, ic.weather, ic.humidness, CONCAT(ic.temperature_min, '℃', '~',temperature_max, '℃') AS temperature, ic.wind_level, - ic.shooting_method, ic.shooting_distance,ic.collector_name, i.image_type, i.image_path, ic.image_source + ic.shooting_method, ic.shooting_distance,ic.collector_name, i.image_type, i.image_path, ic.image_source, i.review_state FROM image i LEFT JOIN image_collect ic ON i.collect_id = ic.collect_id LEFT JOIN part p ON i.part_id = p.part_id @@ -22,6 +22,9 @@ AND i.image_type in #{imageType} + + and i.review_state = #{reviewState} + @@ -31,6 +34,7 @@ + @@ -64,7 +68,7 @@ SELECT i.image_id, i.image_name, i.image_path, i.image_height, i.image_resolution, i.image_width, i.image_height, i.focal_distance, i.focal_distance35, i.x_resolution, i.y_resolution, i.resolution_units, i.shooting_time, i.camera_manufacturer, i.camera_model, i.latitude, i.latitude, i.altitude, ic.collect_id, ic.weather, CONCAT(ic.temperature_min, '℃', '~',temperature_max, '℃') AS temperature, - ic.wind_level, ic.shooting_method, ic.shooting_distance, ic.collector_name, ic.image_source + ic.wind_level, ic.shooting_method, ic.shooting_distance, ic.collector_name, ic.image_source, i.review_state FROM image i LEFT JOIN image_collect ic ON i.collect_id = ic.collect_id WHERE i.image_id = #{imageId} diff --git a/web/src/main/java/com/dite/znpt/web/controller/ImageController.java b/web/src/main/java/com/dite/znpt/web/controller/ImageController.java index 4c3ed4c..9ee105b 100644 --- a/web/src/main/java/com/dite/znpt/web/controller/ImageController.java +++ b/web/src/main/java/com/dite/znpt/web/controller/ImageController.java @@ -88,4 +88,11 @@ public class ImageController { imageService.linkAppImagesToPart(partReq); return Result.ok(); } + + @ApiOperation(value = "审核图片", httpMethod = "POST") + @PostMapping("/reviewImages") + public Result reviewImages(@RequestBody List imageIds) { + imageService.reviewImages(imageIds); + return Result.ok(); + } }