feat: 提交审核时间 submit_review_time 与审核台 createTime 语义对齐
- 新增 t_ugc_work.submit_review_time,publish/withdraw/revoke 维护 - 内容审核 VO:createTime 优先为提交审核时间,补充 workCreateTime Made-with: Cursor
This commit is contained in:
parent
872cd22bcc
commit
079aed72e8
@ -211,6 +211,7 @@ public class PublicContentReviewService {
|
||||
uw.eq(UgcWork::getId, id)
|
||||
.set(UgcWork::getStatus, WorkPublishStatus.PENDING_REVIEW.getValue())
|
||||
.set(UgcWork::getReviewTime, null)
|
||||
.set(UgcWork::getSubmitReviewTime, LocalDateTime.now())
|
||||
.set(UgcWork::getReviewerId, null)
|
||||
.set(UgcWork::getReviewNote, null)
|
||||
.set(UgcWork::getModifyTime, LocalDateTime.now());
|
||||
@ -316,11 +317,14 @@ public class PublicContentReviewService {
|
||||
} else if ("views".equals(sortBy)) {
|
||||
wrapper.orderByDesc(UgcWork::getViewCount);
|
||||
} else if ("oldest".equals(sortBy)) {
|
||||
wrapper.orderByAsc(UgcWork::getSubmitReviewTime);
|
||||
wrapper.orderByAsc(UgcWork::getCreateTime);
|
||||
} else if ("latest".equals(sortBy) || !StringUtils.hasText(sortBy)) {
|
||||
wrapper.orderByDesc(UgcWork::getSubmitReviewTime);
|
||||
wrapper.orderByDesc(UgcWork::getPublishTime);
|
||||
wrapper.orderByDesc(UgcWork::getCreateTime);
|
||||
} else {
|
||||
wrapper.orderByDesc(UgcWork::getSubmitReviewTime);
|
||||
wrapper.orderByDesc(UgcWork::getCreateTime);
|
||||
}
|
||||
}
|
||||
@ -420,7 +424,10 @@ public class PublicContentReviewService {
|
||||
vo.put("reviewNote", work.getReviewNote());
|
||||
vo.put("reviewTime", work.getReviewTime());
|
||||
vo.put("publishTime", work.getPublishTime());
|
||||
vo.put("createTime", work.getCreateTime());
|
||||
// 审核台「创建时间」语义:优先展示提交审核时间(与 POST /public/works/{id}/publish 一致),非作品首次入库时间
|
||||
vo.put("submitReviewTime", work.getSubmitReviewTime());
|
||||
vo.put("workCreateTime", work.getCreateTime());
|
||||
vo.put("createTime", work.getSubmitReviewTime() != null ? work.getSubmitReviewTime() : work.getCreateTime());
|
||||
|
||||
// 补充作者信息(user 与 creator 同构,便于前端组件复用)
|
||||
if (work.getUserId() != null) {
|
||||
|
||||
@ -196,6 +196,7 @@ public class PublicUserWorkService {
|
||||
throw new BusinessException(400, "当前状态不可发布");
|
||||
}
|
||||
work.setStatus(WorkPublishStatus.PENDING_REVIEW.getValue());
|
||||
work.setSubmitReviewTime(LocalDateTime.now());
|
||||
work.setModifyTime(LocalDateTime.now());
|
||||
ugcWorkMapper.updateById(work);
|
||||
}
|
||||
@ -217,6 +218,7 @@ public class PublicUserWorkService {
|
||||
uw.eq(UgcWork::getId, id)
|
||||
.set(UgcWork::getStatus, WorkPublishStatus.UNPUBLISHED.getValue())
|
||||
.set(UgcWork::getReviewTime, null)
|
||||
.set(UgcWork::getSubmitReviewTime, null)
|
||||
.set(UgcWork::getReviewerId, null)
|
||||
.set(UgcWork::getReviewNote, null)
|
||||
.set(UgcWork::getModifyTime, LocalDateTime.now());
|
||||
|
||||
@ -57,6 +57,10 @@ public class UgcWork implements Serializable {
|
||||
@TableField("review_time")
|
||||
private LocalDateTime reviewTime;
|
||||
|
||||
@Schema(description = "提交审核时间(用户发起上架审核,非作品创建时间)")
|
||||
@TableField("submit_review_time")
|
||||
private LocalDateTime submitReviewTime;
|
||||
|
||||
@Schema(description = "审核人ID")
|
||||
@TableField("reviewer_id")
|
||||
private Long reviewerId;
|
||||
|
||||
@ -0,0 +1,11 @@
|
||||
-- 用户发起「提交审核」时间(与作品 create_time 区分,供内容审核台列表/详情展示)
|
||||
ALTER TABLE t_ugc_work
|
||||
ADD COLUMN submit_review_time DATETIME(3) NULL COMMENT '提交审核时间(用户 POST /public/works/{id}/publish)' AFTER review_time;
|
||||
|
||||
-- 历史待审核数据:用 modify_time 近似提交时间(通常为最近一次提交审核时更新)
|
||||
UPDATE t_ugc_work
|
||||
SET submit_review_time = modify_time
|
||||
WHERE status = 'pending_review'
|
||||
AND submit_review_time IS NULL;
|
||||
|
||||
CREATE INDEX idx_ugc_work_submit_review ON t_ugc_work (submit_review_time);
|
||||
Loading…
Reference in New Issue
Block a user