From d53c16a12e612a95dc8f6fb248e3669cbc441eb4 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期二, 17 十二月 2024 16:48:41 +0800 Subject: [PATCH] 新增加商品特价接口 --- ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsBargainPriceServiceImpl.java | 81 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 80 insertions(+), 1 deletions(-) diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsBargainPriceServiceImpl.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsBargainPriceServiceImpl.java index bf7bf04..362f771 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsBargainPriceServiceImpl.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsBargainPriceServiceImpl.java @@ -1,10 +1,23 @@ package com.ruoyi.other.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.security.service.TokenService; +import com.ruoyi.other.api.domain.GoodsBargainPriceDetail; import com.ruoyi.other.mapper.GoodsBargainPriceMapper; import com.ruoyi.other.api.domain.GoodsBargainPrice; +import com.ruoyi.other.service.GoodsBargainPriceDetailService; import com.ruoyi.other.service.GoodsBargainPriceService; +import com.ruoyi.other.vo.AddGoodsBargainPriceVo; +import com.ruoyi.other.vo.GoodsBargainPriceInfo; +import com.ruoyi.system.api.domain.SysUser; +import com.ruoyi.system.api.feignClient.SysUserClient; import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.time.LocalDateTime; +import java.util.List; /** * <p> @@ -16,5 +29,71 @@ */ @Service public class GoodsBargainPriceServiceImpl extends ServiceImpl<GoodsBargainPriceMapper, GoodsBargainPrice> implements GoodsBargainPriceService { - + + @Resource + private TokenService tokenService; + + @Resource + private SysUserClient sysUserClient; + + @Resource + private GoodsBargainPriceDetailService goodsBargainPriceDetailService; + + + + + /** + * 获取商品特殊售价明细 + * @param id + * @return + */ + @Override + public GoodsBargainPriceInfo getGoodsBargainPriceInfo(Integer id) { + Long userid = tokenService.getLoginUser().getUserid(); + SysUser sysUser = sysUserClient.getSysUser(userid).getData(); + GoodsBargainPrice bargainPrice = this.getOne(new LambdaQueryWrapper<GoodsBargainPrice>().eq(GoodsBargainPrice::getShopId, sysUser.getObjectId()) + .eq(GoodsBargainPrice::getGoodsId, id).eq(GoodsBargainPrice::getDelFlag, 0).last(" order by create_time desc limit 0, 1")); + if(null == bargainPrice){ + return null; + } + List<GoodsBargainPriceDetail> list = goodsBargainPriceDetailService.list(new LambdaQueryWrapper<GoodsBargainPriceDetail>().eq(GoodsBargainPriceDetail::getGoodsBargainPriceId, bargainPrice.getId())); + GoodsBargainPriceInfo info = new GoodsBargainPriceInfo(); + info.setId(bargainPrice.getId().toString()); + info.setList(list); + info.setAuditMsg(bargainPrice.getAuditMsg()); + info.setAuditStatus(bargainPrice.getAuditStatus()); + return info; + } + + + /** + * 提交特殊售价申请 + * @param vo + * @return + */ + @Override + public R addGoodsBargainPrice(AddGoodsBargainPriceVo vo) { + Long userid = tokenService.getLoginUser().getUserid(); + SysUser sysUser = sysUserClient.getSysUser(userid).getData(); + GoodsBargainPrice bargainPrice = this.getOne(new LambdaQueryWrapper<GoodsBargainPrice>().eq(GoodsBargainPrice::getShopId, sysUser.getObjectId()) + .eq(GoodsBargainPrice::getGoodsId, vo.getGoodsId()).eq(GoodsBargainPrice::getDelFlag, 0).last(" order by create_time desc limit 0, 1")); + if(null != bargainPrice && 1 == bargainPrice.getAuditStatus()){ + return R.fail("特价申请正在审核中"); + } + bargainPrice = new GoodsBargainPrice(); + bargainPrice.setShopId(sysUser.getObjectId()); + bargainPrice.setGoodsId(vo.getGoodsId()); + bargainPrice.setAuditStatus(1); + bargainPrice.setDelFlag(0); + bargainPrice.setCreateTime(LocalDateTime.now()); + bargainPrice.setCreateUserId(userid); + this.updateById(bargainPrice); + //添加明细 + List<GoodsBargainPriceDetail> list = vo.getList(); + for (GoodsBargainPriceDetail goodsBargainPriceDetail : list) { + goodsBargainPriceDetail.setGoodsBargainPriceId(bargainPrice.getId()); + } + goodsBargainPriceDetailService.saveBatch(list); + return R.ok(); + } } -- Gitblit v1.7.1