|
@@ -1,5 +1,6 @@
|
|
package cn.newfeifan.mall.module.product.service.spuapply;
|
|
package cn.newfeifan.mall.module.product.service.spuapply;
|
|
|
|
|
|
|
|
+import cn.newfeifan.mall.framework.common.exception.ErrorCode;
|
|
import cn.newfeifan.mall.module.product.controller.admin.skuapply.vo.SkuApplySaveReqVO;
|
|
import cn.newfeifan.mall.module.product.controller.admin.skuapply.vo.SkuApplySaveReqVO;
|
|
import cn.newfeifan.mall.module.product.controller.admin.spu.vo.ProductSpuSaveReqVO;
|
|
import cn.newfeifan.mall.module.product.controller.admin.spu.vo.ProductSpuSaveReqVO;
|
|
import cn.newfeifan.mall.module.product.controller.admin.spu.vo.ProductSpuUpdateStatusReqVO;
|
|
import cn.newfeifan.mall.module.product.controller.admin.spu.vo.ProductSpuUpdateStatusReqVO;
|
|
@@ -138,7 +139,7 @@ public class SpuApplyServiceImpl implements SpuApplyService {
|
|
spu.setStock(getSumValue(skus, SkuApplySaveReqVO::getStock, Integer::sum));
|
|
spu.setStock(getSumValue(skus, SkuApplySaveReqVO::getStock, Integer::sum));
|
|
// 若是 spu 已有状态则不处理
|
|
// 若是 spu 已有状态则不处理
|
|
if (spu.getStatus() == null) {
|
|
if (spu.getStatus() == null) {
|
|
- spu.setStatus(ProductSpuStatusEnum.ENABLE.getStatus()); // 默认状态为上架
|
|
|
|
|
|
+// spu.setStatus(ProductSpuStatusEnum.ENABLE.getStatus()); // 默认状态为上架
|
|
spu.setSalesCount(0); // 默认商品销量
|
|
spu.setSalesCount(0); // 默认商品销量
|
|
spu.setBrowseCount(0); // 默认商品浏览量
|
|
spu.setBrowseCount(0); // 默认商品浏览量
|
|
}
|
|
}
|
|
@@ -164,6 +165,8 @@ public class SpuApplyServiceImpl implements SpuApplyService {
|
|
|
|
|
|
// 更新 SPU
|
|
// 更新 SPU
|
|
SpuApplyDO updateObj = BeanUtils.toBean(updateReqVO, SpuApplyDO.class);
|
|
SpuApplyDO updateObj = BeanUtils.toBean(updateReqVO, SpuApplyDO.class);
|
|
|
|
+ SpuApplyDO spuApplyDO = spuApplyMapper.selectById(updateReqVO.getId());
|
|
|
|
+ updateObj.setStatus(spuApplyDO.getStatus());
|
|
initSpuFromSkus(updateObj, skuSaveReqList);
|
|
initSpuFromSkus(updateObj, skuSaveReqList);
|
|
|
|
|
|
//最大推广费, 单位: 分 add by Ben
|
|
//最大推广费, 单位: 分 add by Ben
|
|
@@ -276,6 +279,9 @@ public class SpuApplyServiceImpl implements SpuApplyService {
|
|
validateSpuApplyExists(id);
|
|
validateSpuApplyExists(id);
|
|
// 删除
|
|
// 删除
|
|
spuApplyMapper.deleteById(id);
|
|
spuApplyMapper.deleteById(id);
|
|
|
|
+
|
|
|
|
+ ProductSpuDO spu = spuService.getSpuByApplyId(id);
|
|
|
|
+ spuService.deleteSpu(spu.getId());
|
|
}
|
|
}
|
|
|
|
|
|
private void validateSpuApplyExists(Long id) {
|
|
private void validateSpuApplyExists(Long id) {
|
|
@@ -330,6 +336,20 @@ public class SpuApplyServiceImpl implements SpuApplyService {
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void updateSpuStatus(ProductSpuUpdateStatusReqVO updateReqVO) {
|
|
public void updateSpuStatus(ProductSpuUpdateStatusReqVO updateReqVO) {
|
|
|
|
+
|
|
|
|
+ // 商户不允许回收商品
|
|
|
|
+ if(updateReqVO.getStatus().equals(ProductSpuStatusEnum.RECYCLE.getStatus())){
|
|
|
|
+ ErrorCode ERROR = new ErrorCode(1_008_005_001, "商户不允许回收商品");
|
|
|
|
+ throw exception(ERROR);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 如果商户的商品在回收站中,则商品不允许上下架
|
|
|
|
+ SpuApplyDO spuApplyDO = spuApplyMapper.selectById(updateReqVO.getId());
|
|
|
|
+ if(spuApplyDO.getStatus().equals(ProductSpuStatusEnum.RECYCLE.getStatus())){
|
|
|
|
+ ErrorCode SPU_SAVE_FAIL_CATEGORY_LEVEL_ERROR = new ErrorCode(1_008_005_001, "商品在回收站中不允许上下架");
|
|
|
|
+ throw exception(SPU_SAVE_FAIL_CATEGORY_LEVEL_ERROR);
|
|
|
|
+ }
|
|
|
|
+
|
|
// 校验存在
|
|
// 校验存在
|
|
validateSpuApplyExists(updateReqVO.getId());
|
|
validateSpuApplyExists(updateReqVO.getId());
|
|
// TODO 非繁人:【可选】参与活动中的商品,不允许下架???
|
|
// TODO 非繁人:【可选】参与活动中的商品,不允许下架???
|