diff --git a/Zhibo/zhibo-h/crmeb-service/src/main/java/com/zbkj/service/service/impl/WorksServiceImpl.java b/Zhibo/zhibo-h/crmeb-service/src/main/java/com/zbkj/service/service/impl/WorksServiceImpl.java index b93b0b5a..c0400239 100644 --- a/Zhibo/zhibo-h/crmeb-service/src/main/java/com/zbkj/service/service/impl/WorksServiceImpl.java +++ b/Zhibo/zhibo-h/crmeb-service/src/main/java/com/zbkj/service/service/impl/WorksServiceImpl.java @@ -299,6 +299,34 @@ public class WorksServiceImpl extends ServiceImpl implements Wo return true; } + @Override + @Transactional(rollbackFor = Exception.class) + public Boolean updateWorksStatus(Long worksId, Integer status) { + // 验证状态值 + if (status != 0 && status != 1) { + throw new CrmebException("状态值无效,只能是0(下架)或1(上架)"); + } + + // 查询作品 + Works works = getById(worksId); + if (works == null || works.getIsDeleted() == 1) { + throw new CrmebException("作品不存在"); + } + + // 更新状态 + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(Works::getId, worksId) + .set(Works::getStatus, status); + + boolean updated = update(updateWrapper); + if (!updated) { + throw new CrmebException("更新作品状态失败"); + } + + log.info("更新作品状态成功,作品ID:{},新状态:{}", worksId, status == 1 ? "上架" : "下架"); + return true; + } + @Override public WorksResponse getWorksDetail(Long worksId, Integer userId) { log.info("=== 获取作品详情 === worksId={}, userId={}", worksId, userId);