@@ -26,7 +26,7 @@ public interface ProductManager { | |||
ProductDetailResponseDTO detail(ProductDetailRequestDTO req) throws ManagerException; | |||
void status(ProductStatusRequestDTO req); | |||
void status(ProductStatusRequestDTO req) throws ManagerException; | |||
void examine(ProductExamineRequestDTO req) throws ManagerException; | |||
@@ -375,7 +375,10 @@ public class ProductManagerImpl extends RedisCacheManager implements ProductMana | |||
} | |||
@Override | |||
public void status(ProductStatusRequestDTO req) { | |||
public void status(ProductStatusRequestDTO req) throws ManagerException { | |||
IssueProduct product = issueProductRepo.findById(req.getId()).orElse(null); | |||
if (product == null) throw new ManagerException("产品不存在"); | |||
if (product.getExamine() != 0) throw new ManagerException("未审核通过的产品,不可改变产品状态"); | |||
issueProductRepo.updateState(req.getStatus(), LocalDateTime.now(), req.getId()); | |||
} | |||
@@ -325,6 +325,7 @@ public class PromotionManagerImpl extends AbstractManager implements PromotionMa | |||
public void status(PromoteStatusReqDTO req) throws ManagerException { | |||
IssueProductPromotion promotion = issueProductPromotionRepo.findById(req.getId()).orElse(null); | |||
if (promotion == null) throw new ManagerException("要变更的推广产品不存在"); | |||
if (promotion.getExamine() != 0) throw new ManagerException("推广产品未审核通过,不可改变状态"); | |||
IssueProduct product = issueProductRepo.findByReleaseId(promotion.getReleaseId()); | |||
if (EnableStatus.ENABLE.equals(req.getStatus()) && EnableStatus.DISABLE.equals(product.getStatus())) { | |||
throw new ManagerException("此产品已停用,不可启用推广"); |