From b3194b83dc3f0a2d49f1526592e13956d6b930a4 Mon Sep 17 00:00:00 2001 From: GYJ <1157756119@qq.com> Date: Wed, 10 Jul 2024 10:12:21 +0800 Subject: [PATCH 01/12] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E4=BC=9A=E5=91=98=E5=85=85=E5=80=BC=E9=87=91=E9=A2=9Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mybatis/mapper/TbMShopUserMapper.java | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/TbMShopUserMapper.java b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/TbMShopUserMapper.java index fe7f49b6..5ab665a9 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/TbMShopUserMapper.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/TbMShopUserMapper.java @@ -16,19 +16,23 @@ import java.util.Map; */ public interface TbMShopUserMapper extends BaseMapper { @Select("") Map selectUserSummary(@Param("shopId") String shopId, @Param("isVip") Integer isVip); From f23fa44c574a90bb4de1eae2cd792ee0b3e382d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9F=A9=E9=B9=8F=E8=BE=89?= <18322780655@163.com> Date: Wed, 10 Jul 2024 11:08:10 +0800 Subject: [PATCH 02/12] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=80=97=E6=9D=90?= =?UTF-8?q?=E5=95=86=E5=93=81=E6=89=B9=E9=87=8F=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cons/rest/TbProskuConController.java | 12 ++- .../cons/service/TbProskuConService.java | 2 +- .../service/impl/TbProskuConServiceImpl.java | 94 ++++++++++--------- 3 files changed, 60 insertions(+), 48 deletions(-) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/cons/rest/TbProskuConController.java b/eladmin-system/src/main/java/cn/ysk/cashier/cons/rest/TbProskuConController.java index 623a318b..0c091571 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/cons/rest/TbProskuConController.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/cons/rest/TbProskuConController.java @@ -5,6 +5,7 @@ import cn.ysk.cashier.cons.domain.TbProskuCon; import cn.ysk.cashier.cons.service.TbProskuConService; import cn.ysk.cashier.cons.service.dto.ProskuInfo; import cn.ysk.cashier.cons.service.dto.TbProskuConQueryCriteria; +import cn.ysk.cashier.exception.BadRequestException; import org.springframework.data.domain.Pageable; import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; @@ -13,6 +14,7 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import io.swagger.annotations.*; import java.io.IOException; +import java.util.List; import javax.servlet.http.HttpServletResponse; /** @@ -44,8 +46,14 @@ public class TbProskuConController { @PostMapping @Log("新增商品规格耗材信息") @ApiOperation("新增商品规格耗材信息") - public ResponseEntity createTbProskuCon(@Validated @RequestBody ProskuInfo resources) throws Exception { - return new ResponseEntity<>(tbProskuConService.create(resources),HttpStatus.CREATED); + public ResponseEntity createTbProskuCon(@Validated @RequestBody List resources) throws Exception { + try { + return new ResponseEntity<>(tbProskuConService.create(resources),HttpStatus.CREATED); + } catch (BadRequestException be) { + throw new Exception(be.getMessage()); + }catch (Exception e){ + throw new Exception("系统异常"); + } } @PutMapping diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/TbProskuConService.java b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/TbProskuConService.java index c59dc515..f95aaec0 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/TbProskuConService.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/TbProskuConService.java @@ -43,7 +43,7 @@ public interface TbProskuConService { * @param resources / * @return TbProskuConDto */ - TbProskuConDto create(ProskuInfo resources) throws Exception; + TbProskuConDto create(List resources) throws Exception; /** * 编辑 diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java index 91d58937..abc52ba1 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java @@ -6,6 +6,7 @@ import cn.ysk.cashier.cons.domain.TbConsSuppFlow; import cn.ysk.cashier.cons.domain.TbProskuCon; import cn.ysk.cashier.cons.repository.TbConsInfoRepository; import cn.ysk.cashier.cons.service.dto.ProskuInfo; +import cn.ysk.cashier.exception.BadRequestException; import cn.ysk.cashier.pojo.product.TbProduct; import cn.ysk.cashier.pojo.product.TbProductSku; import cn.ysk.cashier.repository.product.TbProductRepository; @@ -70,65 +71,68 @@ public class TbProskuConServiceImpl implements TbProskuConService { @Override @Transactional(rollbackFor = Exception.class) - public TbProskuConDto create(ProskuInfo resources) throws Exception { + public TbProskuConDto create(List resources) throws BadRequestException,Exception { + for (ProskuInfo resource : resources) { + TbProduct product= tbProductRepository.getById(resource.getProductId()); + if(Objects.isNull(product)){ + throw new BadRequestException("对应的商品信息不存在"); + } - TbProduct product= tbProductRepository.getById(resources.getProductId()); - if(Objects.isNull(product)){ - throw new Exception("对应的商品信息不存在"); - } + TbConsInfo tbConsInfo= tbConsInfoRepository.getById(resource.getConsInfoId()); + if(Objects.isNull(tbConsInfo)){ + throw new BadRequestException("对应的耗材信息不存在"); + } - TbConsInfo tbConsInfo= tbConsInfoRepository.getById(resources.getConsInfoId()); - if(Objects.isNull(tbConsInfo)){ - throw new Exception("对应的耗材信息不存在"); - } + List list=new ArrayList<>(); + if(product.getIsDistribute().intValue()==1){ + //查询商品对应的所有规格 + List skuList= tbProductSkuRepository.searchSku(product.getId().toString()); + if(Objects.nonNull(skuList)&&skuList.size()>0){ + for (TbProductSku tbProductSku : skuList) { + int count=tbProskuConRepository.countByConInfoIdAndProductSkuIdAndShopId(resource.getConsInfoId(), tbProductSku.getId(), Integer.valueOf(tbProductSku.getShopId()), Integer.valueOf(tbProductSku.getProductId())); + if(count<=0){ + TbProskuCon tbProskuCon=new TbProskuCon(); - List list=new ArrayList<>(); - if(product.getIsDistribute().intValue()==1){ - //查询商品对应的所有规格 - List skuList= tbProductSkuRepository.searchSku(product.getId().toString()); - if(Objects.nonNull(skuList)&&skuList.size()>0){ - for (TbProductSku tbProductSku : skuList) { - int count=tbProskuConRepository.countByConInfoIdAndProductSkuIdAndShopId(resources.getConsInfoId(), tbProductSku.getId(), Integer.valueOf(tbProductSku.getShopId()), Integer.valueOf(tbProductSku.getProductId())); + tbProskuCon.setShopId(Integer.valueOf(tbProductSku.getShopId())); + tbProskuCon.setConInfoId(resource.getConsInfoId()); + tbProskuCon.setProductId(Integer.valueOf(tbProductSku.getProductId())); + tbProskuCon.setProductSkuId(tbProductSku.getId()); + tbProskuCon.setSurplusStock(resource.getSurplusStock()); + tbProskuCon.setStatus("1"); + tbProskuCon.setCreateTime(new Timestamp(System.currentTimeMillis())); + list.add(tbProskuCon); + }else { + throw new BadRequestException(product.getName().concat("对应的耗材信息已存在")); + } + } + } + + }else { + for (ProskuInfo.SkuInfo skuInfo : resource.getSkuInfos()) { + int count=tbProskuConRepository.countByConInfoIdAndProductSkuIdAndShopId(resource.getConsInfoId(), skuInfo.getSkuId(), skuInfo.getShopId(), resource.getProductId()); if(count<=0){ TbProskuCon tbProskuCon=new TbProskuCon(); - - tbProskuCon.setShopId(Integer.valueOf(tbProductSku.getShopId())); - tbProskuCon.setConInfoId(resources.getConsInfoId()); - tbProskuCon.setProductId(Integer.valueOf(tbProductSku.getProductId())); - tbProskuCon.setProductSkuId(tbProductSku.getId()); - tbProskuCon.setSurplusStock(resources.getSurplusStock()); + tbProskuCon.setShopId(Integer.valueOf(skuInfo.getShopId())); + tbProskuCon.setConInfoId(skuInfo.getConInfoId()); + tbProskuCon.setProductId(resource.getProductId()); + tbProskuCon.setProductSkuId(skuInfo.getSkuId()); + tbProskuCon.setSurplusStock(skuInfo.getSurplusStock()); tbProskuCon.setStatus("1"); tbProskuCon.setCreateTime(new Timestamp(System.currentTimeMillis())); list.add(tbProskuCon); }else { - throw new Exception(product.getName().concat("对应的耗材信息已存在")); + TbProductSku sku= tbProductSkuRepository.getById(skuInfo.getSkuId()); + throw new BadRequestException(product.getName().concat("商品对应的").concat(Objects.nonNull(sku.getSpecSnap())?sku.getSpecSnap():"").concat("规格已存在")); } } - } - }else { - for (ProskuInfo.SkuInfo skuInfo : resources.getSkuInfos()) { - int count=tbProskuConRepository.countByConInfoIdAndProductSkuIdAndShopId(resources.getConsInfoId(), skuInfo.getSkuId(), skuInfo.getShopId(), resources.getProductId()); - if(count<=0){ - TbProskuCon tbProskuCon=new TbProskuCon(); - tbProskuCon.setShopId(Integer.valueOf(skuInfo.getShopId())); - tbProskuCon.setConInfoId(skuInfo.getConInfoId()); - tbProskuCon.setProductId(resources.getProductId()); - tbProskuCon.setProductSkuId(skuInfo.getSkuId()); - tbProskuCon.setSurplusStock(skuInfo.getSurplusStock()); - tbProskuCon.setStatus("1"); - tbProskuCon.setCreateTime(new Timestamp(System.currentTimeMillis())); - list.add(tbProskuCon); - }else { - TbProductSku sku= tbProductSkuRepository.getById(skuInfo.getSkuId()); - throw new Exception(product.getName().concat("商品对应的").concat(Objects.nonNull(sku.getSpecSnap())?sku.getSpecSnap():"").concat("规格已存在")); - } } + if(Objects.nonNull(list)&&list.size()>0){ + tbProskuConRepository.saveAll(list); + } + } + - } - if(Objects.nonNull(list)&&list.size()>0){ - tbProskuConRepository.saveAll(list); - } return new TbProskuConDto(); } From df6a41430edee6b732aad0029f5e2e184f1238f8 Mon Sep 17 00:00:00 2001 From: GYJ <1157756119@qq.com> Date: Wed, 10 Jul 2024 13:37:39 +0800 Subject: [PATCH 03/12] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E4=BC=9A=E5=91=98=E5=85=85=E5=80=BCbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../shop/SummaryByDayController.java | 2 -- .../controller/shop/TbShopUserController.java | 1 + .../mybatis/mapper/ShopUserMapper.java | 7 ++---- .../mybatis/mapper/TbShopUserFlowMapper.java | 25 +++++++++++-------- .../service/TbShopUserFlowService.java | 2 +- .../impl/TbShopUserFlowServiceImpl.java | 4 +-- .../service/impl/SummaryServiceImpl.java | 3 +-- .../impl/shopimpl/TbShopUserServiceImpl.java | 16 +++++++++++- 8 files changed, 36 insertions(+), 24 deletions(-) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/SummaryByDayController.java b/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/SummaryByDayController.java index b1110f52..1ec74bb4 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/SummaryByDayController.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/SummaryByDayController.java @@ -1,7 +1,5 @@ package cn.ysk.cashier.controller.shop; -import cn.ysk.cashier.annotation.AnonymousAccess; -import cn.ysk.cashier.annotation.Log; import cn.ysk.cashier.dto.ShopSummaryDto; import cn.ysk.cashier.service.SummaryService; import cn.ysk.cashier.vo.TbOrderPayCountVo; diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopUserController.java b/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopUserController.java index ee7d8fd9..0dbe5f8b 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopUserController.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopUserController.java @@ -50,6 +50,7 @@ public class TbShopUserController { @GetMapping("queryAllShopUser") @ApiOperation("查询商家用户") + @AnonymousGetMapping public ResponseEntity queryAllShopUser(TbShopUserQueryCriteria criteria) { return new ResponseEntity<>(tbShopUserService.queryShopUser(criteria), HttpStatus.OK); } diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java index e6f39314..2b160fc4 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java @@ -19,19 +19,16 @@ public interface ShopUserMapper extends BaseMapper { "FROM tb_shop_user su " + "LEFT JOIN tb_user_info u ON su.user_id = u.id " + " " + - "su.user_id is not null and su.user_id != ''" + "" + "AND su.shop_id = #{param.shopId} " + "" + "" + "AND (u.nick_name like concat('%', #{param.name}, '%') or u.telephone like concat('%', #{param.name}, '%'))" + "" + - "" + - "AND su.is_vip=#{param.isVip}" + - "" + + "AND su.is_vip=#{isVip}" + "" + "") - IPage queryUser(TbShopUserQueryCriteria param, Page pageInfo); + IPage queryUser(TbShopUserQueryCriteria param, Integer isVip, Page pageInfo); @Select("") BigDecimal sumUserFlowAmountByConditions(@Param("shopId") Long shopId, @Param("startTime") String startTime, - @Param("endTime") String endTime, - @Param("types") List types); + @Param("endTime") String endTime); } diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/service/TbShopUserFlowService.java b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/service/TbShopUserFlowService.java index c55bbddc..ae55eb02 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/service/TbShopUserFlowService.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/service/TbShopUserFlowService.java @@ -12,5 +12,5 @@ import java.util.List; */ public interface TbShopUserFlowService extends IService { - BigDecimal sumUserFlowAmountByConditions(Long shopId, String startTime, String endTime, List types); + BigDecimal sumUserFlowAmountByConditions(Long shopId, String startTime, String endTime); } diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/service/impl/TbShopUserFlowServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/service/impl/TbShopUserFlowServiceImpl.java index 7a051c64..eec93bd5 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/service/impl/TbShopUserFlowServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/service/impl/TbShopUserFlowServiceImpl.java @@ -15,7 +15,7 @@ import java.util.List; @Service public class TbShopUserFlowServiceImpl extends ServiceImpl implements TbShopUserFlowService { @Override - public BigDecimal sumUserFlowAmountByConditions(Long shopId, String startTime, String endTime, List types) { - return baseMapper.sumUserFlowAmountByConditions(shopId, startTime, endTime, types); + public BigDecimal sumUserFlowAmountByConditions(Long shopId, String startTime, String endTime) { + return baseMapper.sumUserFlowAmountByConditions(shopId, startTime, endTime); } } diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/SummaryServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/SummaryServiceImpl.java index 0f9000e1..a8bf5b37 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/SummaryServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/SummaryServiceImpl.java @@ -379,8 +379,7 @@ public class SummaryServiceImpl implements SummaryService { BigDecimal recharge = tbShopUserFlowService.sumUserFlowAmountByConditions(Long.valueOf(summaryDto.getShopId()), tbOrderPayCountByDayVo.getTradeDay() + " 00:00:00", - tbOrderPayCountByDayVo.getTradeDay() + " 23:59:59", - Arrays.asList("cashMemberIn", "scanMemberIn")); + tbOrderPayCountByDayVo.getTradeDay() + " 23:59:59"); tbOrderPayCountByDayVo.setRecharge(recharge); BigDecimal decimal = tbOrderInfoRepository.queryRefundOrderAmountByTradeDay(summaryDto.getShopId(), tbOrderPayCountByDayVo.getTradeDay()); diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopUserServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopUserServiceImpl.java index e1b011c7..86393543 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopUserServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopUserServiceImpl.java @@ -1,6 +1,7 @@ package cn.ysk.cashier.service.impl.shopimpl; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; import cn.ysk.cashier.dto.shop.TbShopRechargeListDto; import cn.ysk.cashier.dto.shop.TbShopRechargeRespDto; import cn.ysk.cashier.dto.shop.TbShopUserDto; @@ -49,8 +50,21 @@ public class TbShopUserServiceImpl implements TbShopUserService { @Override public Map queryShopUser(TbShopUserQueryCriteria criteria) { - IPage iPage = shopUserMapper.queryUser(criteria, + IPage iPage = shopUserMapper.queryUser(criteria, criteria.getIsVip(), new com.baomidou.mybatisplus.extension.plugins.pagination.Page<>(criteria.getPage(), criteria.getSize())); + + for (ShopUserInfoVo shopUserInfoVo : iPage.getRecords()) { + if (StrUtil.isBlank(shopUserInfoVo.getNickName())) { + tbShopUserRepository.findById(shopUserInfoVo.getId()).ifPresent(tbShopUser -> { + shopUserInfoVo.setNickName(tbShopUser.getName()); + shopUserInfoVo.setBirthDay(tbShopUser.getBirthDay()); + shopUserInfoVo.setHeadImg(tbShopUser.getHeadImg()); + shopUserInfoVo.setTelephone(tbShopUser.getTelephone()); + shopUserInfoVo.setTotalScore(0); + }); + } + } + return PageUtil.toPlusPage(iPage.getRecords(), Integer.valueOf(iPage.getTotal() + "")); } From d528c4c10d76dfaa3abbad47c681c6020a8581b5 Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Wed, 10 Jul 2024 14:00:12 +0800 Subject: [PATCH 04/12] =?UTF-8?q?=E6=AD=8C=E6=9B=B2=E9=A1=B5=E9=9D=A2=20?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20=E6=AD=8C=E6=89=8B=E9=A1=B5=E5=9C=B0?= =?UTF-8?q?=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../TbShopSongOrderController.java | 22 ++-------------- .../controller/shop/TbShopSongController.java | 26 +++++++++++++++++++ 2 files changed, 28 insertions(+), 20 deletions(-) rename eladmin-system/src/main/java/cn/ysk/cashier/controller/{shop => order}/TbShopSongOrderController.java (77%) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongOrderController.java b/eladmin-system/src/main/java/cn/ysk/cashier/controller/order/TbShopSongOrderController.java similarity index 77% rename from eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongOrderController.java rename to eladmin-system/src/main/java/cn/ysk/cashier/controller/order/TbShopSongOrderController.java index 3f60dc5d..f01c4eaf 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongOrderController.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/controller/order/TbShopSongOrderController.java @@ -1,4 +1,4 @@ -package cn.ysk.cashier.controller.shop; +package cn.ysk.cashier.controller.order; import cn.ysk.cashier.annotation.rest.AnonymousGetMapping; import cn.ysk.cashier.annotation.rest.AnonymousPostMapping; @@ -51,27 +51,9 @@ public class TbShopSongOrderController{ @ApiOperation("获取歌曲列表 分页") @AnonymousGetMapping public ResponseEntity selectAll(TbShopSongOrderQueryCriteria tbShopSongOrder) { - String code = ""; - if(redisUtils.hasKey(CacheKey.SONG_URL + tbShopSongOrder.getShopId())){ - code = (String) redisUtils.get(CacheKey.SONG_URL + tbShopSongOrder.getShopId()); - } - Map stringObjectMap = tbShopSongOrderService.queryAll(tbShopSongOrder); - stringObjectMap.put("songUrl",code); - return new ResponseEntity<>(stringObjectMap, HttpStatus.OK); + return new ResponseEntity<>(tbShopSongOrderService.queryAll(tbShopSongOrder), HttpStatus.OK); } - @PostMapping("createUrl") - @ApiOperation("更新歌手页地址") - @AnonymousPostMapping - public ResponseEntity createUrl(String shopId) { - String key = RandomStringUtils.randomAlphanumeric(8); - redisUtils.set(CacheKey.SONG_URL + shopId, key); - redisUtils.set(CacheKey.SONG_URL + key, shopId); - return new ResponseEntity<>(key,HttpStatus.OK); - } - - - /** * 通过主键查询单条数据 * diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongController.java b/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongController.java index 1babf030..0f7a037b 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongController.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongController.java @@ -1,13 +1,17 @@ package cn.ysk.cashier.controller.shop; import cn.ysk.cashier.annotation.Log; +import cn.ysk.cashier.annotation.rest.AnonymousPostMapping; import cn.ysk.cashier.dto.shop.TbShopSongQueryCriteria; import cn.ysk.cashier.exception.BadRequestException; import cn.ysk.cashier.mybatis.entity.TbShopSong; import cn.ysk.cashier.mybatis.service.TbShopSongService; +import cn.ysk.cashier.utils.CacheKey; +import cn.ysk.cashier.utils.RedisUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; +import org.apache.commons.lang3.RandomStringUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; @@ -16,6 +20,7 @@ import org.springframework.web.bind.annotation.*; import java.util.Date; import java.util.List; +import java.util.Map; @RestController @@ -23,14 +28,35 @@ import java.util.List; @Api(tags = "歌曲管理") @RequestMapping("/api/tbShopSong") public class TbShopSongController { + private final RedisUtils redisUtils; private final TbShopSongService tbShopSongService; @GetMapping @ApiOperation("查询歌曲列表") public ResponseEntity queryTbShopPurveyor(TbShopSongQueryCriteria criteria){ + String code = ""; + if(redisUtils.hasKey(CacheKey.SONG_URL + criteria.getShopId())){ + code = (String) redisUtils.get(CacheKey.SONG_URL + criteria.getShopId()); + }else { + code = RandomStringUtils.randomAlphanumeric(8); + redisUtils.set(CacheKey.SONG_URL + criteria.getShopId(), code); + redisUtils.set(CacheKey.SONG_URL + code, criteria.getShopId()); + } + Map stringObjectMap = tbShopSongService.queryAll(criteria); + stringObjectMap.put("songUrl",code); return new ResponseEntity<>(tbShopSongService.queryAll(criteria), HttpStatus.OK); } + @PostMapping("createUrl") + @ApiOperation("更新歌手页地址") + @AnonymousPostMapping + public ResponseEntity createUrl(String shopId) { + String key = RandomStringUtils.randomAlphanumeric(8); + redisUtils.set(CacheKey.SONG_URL + shopId, key); + redisUtils.set(CacheKey.SONG_URL + key, shopId); + return new ResponseEntity<>(key,HttpStatus.OK); + } + @PostMapping @Log("新增歌曲:#resources.name") @ApiOperation("新增歌曲") From 981671d5839a1f00bd653307b615af8b655636d6 Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Wed, 10 Jul 2024 14:09:26 +0800 Subject: [PATCH 05/12] =?UTF-8?q?=E6=AD=8C=E6=9B=B2=E9=A1=B5=E9=9D=A2=20?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20=E6=AD=8C=E6=89=8B=E9=A1=B5=E5=9C=B0?= =?UTF-8?q?=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/ysk/cashier/controller/shop/TbShopSongController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongController.java b/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongController.java index 0f7a037b..6be92f27 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongController.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongController.java @@ -44,7 +44,7 @@ public class TbShopSongController { } Map stringObjectMap = tbShopSongService.queryAll(criteria); stringObjectMap.put("songUrl",code); - return new ResponseEntity<>(tbShopSongService.queryAll(criteria), HttpStatus.OK); + return new ResponseEntity<>(stringObjectMap, HttpStatus.OK); } @PostMapping("createUrl") From 9f2f9bf59a1090eb5985246e0321f85762b8cea9 Mon Sep 17 00:00:00 2001 From: GYJ <1157756119@qq.com> Date: Wed, 10 Jul 2024 15:19:52 +0800 Subject: [PATCH 06/12] =?UTF-8?q?=E5=85=85=E5=80=BC=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20=20scanMemberAwardIn=20=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E5=A5=96=E5=8A=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java | 2 +- .../java/cn/ysk/cashier/mybatis/mapper/TbMShopUserMapper.java | 2 +- .../cn/ysk/cashier/mybatis/mapper/TbShopUserFlowMapper.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java index 2b160fc4..938d4ba6 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java @@ -44,7 +44,7 @@ public interface ShopUserMapper extends BaseMapper { " from tb_shop_user_flow tsuf " + " left join tb_shop_user as tsu on tsuf.shop_user_id = tsu.id " + "left join tb_shop_info as tsi on tsi.id = tsu.shop_id " + - "where tsuf.create_time BETWEEN #{param.startTime} and #{param.endTime} and tsuf.biz_code in ('cashMemberIn', 'scanMemberIn') " + + "where tsuf.create_time BETWEEN #{param.startTime} and #{param.endTime} and tsuf.biz_code in ('cashMemberIn', 'scanMemberIn', 'scanMemberAwardIn') " + " and tsu.shop_id = #{param.shopId} " + "order by tsuf.create_time desc " + "") diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/TbMShopUserMapper.java b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/TbMShopUserMapper.java index 5ab665a9..1b7c89a4 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/TbMShopUserMapper.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/TbMShopUserMapper.java @@ -25,7 +25,7 @@ public interface TbMShopUserMapper extends BaseMapper { " LEFT JOIN (\n" + " SELECT shop_user_id, SUM(amount) AS total_amount \n" + " FROM tb_shop_user_flow \n" + - " WHERE biz_code IN ('cashMemberIn','scanMemberIn') \n" + + " WHERE biz_code IN ('cashMemberIn','scanMemberIn', 'scanMemberAwardIn') \n" + " GROUP BY shop_user_id\n" + " ) AS flow ON flow.shop_user_id = a.id\n" + "WHERE \n" + diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/TbShopUserFlowMapper.java b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/TbShopUserFlowMapper.java index a9a76117..51a9334c 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/TbShopUserFlowMapper.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/TbShopUserFlowMapper.java @@ -29,7 +29,7 @@ public interface TbShopUserFlowMapper extends BaseMapper { " LEFT JOIN (\n" + " SELECT shop_user_id, SUM(amount) AS total_amount \n" + " FROM tb_shop_user_flow \n" + - " WHERE biz_code IN ('cashMemberIn','scanMemberIn') \n" + + " WHERE biz_code IN ('cashMemberIn','scanMemberIn', 'scanMemberAwardIn') \n" + " AND create_time BETWEEN #{startTime} AND #{endTime} \n" + " GROUP BY shop_user_id\n" + " ) AS flow ON flow.shop_user_id = a.id\n" + From c49765c3536fdd152580dee827196b37a8a41468 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9F=A9=E9=B9=8F=E8=BE=89?= <18322780655@163.com> Date: Wed, 10 Jul 2024 16:18:34 +0800 Subject: [PATCH 07/12] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=80=97=E6=9D=90?= =?UTF-8?q?=E5=95=86=E5=93=81=E6=89=B9=E9=87=8F=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cons/service/impl/TbProskuConServiceImpl.java | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java index abc52ba1..cc3d7f5d 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java @@ -77,14 +77,13 @@ public class TbProskuConServiceImpl implements TbProskuConService { if(Objects.isNull(product)){ throw new BadRequestException("对应的商品信息不存在"); } - - TbConsInfo tbConsInfo= tbConsInfoRepository.getById(resource.getConsInfoId()); - if(Objects.isNull(tbConsInfo)){ - throw new BadRequestException("对应的耗材信息不存在"); - } - List list=new ArrayList<>(); if(product.getIsDistribute().intValue()==1){ + + TbConsInfo tbConsInfo= tbConsInfoRepository.getById(resource.getConsInfoId()); + if(Objects.isNull(tbConsInfo)){ + throw new BadRequestException("对应的耗材信息不存在"); + } //查询商品对应的所有规格 List skuList= tbProductSkuRepository.searchSku(product.getId().toString()); if(Objects.nonNull(skuList)&&skuList.size()>0){ From ad628b3d7274d8312722e00114d356975ce6f0ba Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Wed, 10 Jul 2024 17:11:02 +0800 Subject: [PATCH 08/12] =?UTF-8?q?sku=20=E9=80=BB=E8=BE=91=E5=88=A0?= =?UTF-8?q?=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../product/TbProductController.java | 1 - .../controller/shop/TbShopSongController.java | 4 +- .../cashier/dto/product/TbProductSkuDto.java | 2 + .../cashier/pojo/product/TbProductSku.java | 41 ++++++++----------- .../product/TbProductSkuRepository.java | 16 ++++++-- .../productimpl/TbProductServiceImpl.java | 39 +++++++++++------- 6 files changed, 57 insertions(+), 46 deletions(-) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/controller/product/TbProductController.java b/eladmin-system/src/main/java/cn/ysk/cashier/controller/product/TbProductController.java index 7be97e0c..5e78001a 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/controller/product/TbProductController.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/controller/product/TbProductController.java @@ -1,6 +1,5 @@ package cn.ysk.cashier.controller.product; -import cn.ysk.cashier.annotation.AnonymousAccess; import cn.ysk.cashier.annotation.Log; import cn.ysk.cashier.dto.product.TbProductSortCriteria; import cn.ysk.cashier.vo.TbProductVo; diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongController.java b/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongController.java index 6be92f27..d5fe5cb0 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongController.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/controller/shop/TbShopSongController.java @@ -38,7 +38,7 @@ public class TbShopSongController { if(redisUtils.hasKey(CacheKey.SONG_URL + criteria.getShopId())){ code = (String) redisUtils.get(CacheKey.SONG_URL + criteria.getShopId()); }else { - code = RandomStringUtils.randomAlphanumeric(8); + code = RandomStringUtils.randomAlphanumeric(12); redisUtils.set(CacheKey.SONG_URL + criteria.getShopId(), code); redisUtils.set(CacheKey.SONG_URL + code, criteria.getShopId()); } @@ -51,7 +51,7 @@ public class TbShopSongController { @ApiOperation("更新歌手页地址") @AnonymousPostMapping public ResponseEntity createUrl(String shopId) { - String key = RandomStringUtils.randomAlphanumeric(8); + String key = RandomStringUtils.randomAlphanumeric(12); redisUtils.set(CacheKey.SONG_URL + shopId, key); redisUtils.set(CacheKey.SONG_URL + key, shopId); return new ResponseEntity<>(key,HttpStatus.OK); diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/dto/product/TbProductSkuDto.java b/eladmin-system/src/main/java/cn/ysk/cashier/dto/product/TbProductSkuDto.java index b2f0c612..44683d80 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/dto/product/TbProductSkuDto.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/dto/product/TbProductSkuDto.java @@ -56,6 +56,8 @@ public class TbProductSkuDto implements Serializable { /** 进货参考价 */ private BigDecimal guidePrice; + private Integer suit; + private BigDecimal strategyPrice; /** 库存数量 */ diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/pojo/product/TbProductSku.java b/eladmin-system/src/main/java/cn/ysk/cashier/pojo/product/TbProductSku.java index 4c83db0a..34330430 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/pojo/product/TbProductSku.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/pojo/product/TbProductSku.java @@ -1,33 +1,17 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ package cn.ysk.cashier.pojo.product; -import cn.hutool.json.JSON; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.bean.copier.CopyOptions; import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; -import cn.hutool.core.bean.BeanUtil; import io.swagger.annotations.ApiModelProperty; -import cn.hutool.core.bean.copier.CopyOptions; +import lombok.Data; + import javax.persistence.*; -import javax.validation.constraints.*; -import java.math.BigDecimal; +import javax.validation.constraints.NotBlank; import java.io.Serializable; +import java.math.BigDecimal; /** * @website https://eladmin.vip @@ -85,6 +69,9 @@ public class TbProductSku implements Serializable { @ApiModelProperty(value = "进货参考价") private BigDecimal guidePrice; + @ApiModelProperty(value = "起售数量 默认为1") + private Integer suit = 1; + @Column(name = "`strategy_price`") @ApiModelProperty(value = "strategyPrice") private BigDecimal strategyPrice; @@ -132,13 +119,17 @@ public class TbProductSku implements Serializable { @Column(name = "`updated_at`") @ApiModelProperty(value = "updatedAt") private Long updatedAt; - public void copy(TbProductSku source){ - BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); - } + + @Column(name = "`is_del`") + private Integer isDel; @Column(name = "`is_pause_sale`") @ApiModelProperty(value = "是否暂停销售") private Integer isPauseSale = 0; + public void copy(TbProductSku source){ + BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); + } + } diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/repository/product/TbProductSkuRepository.java b/eladmin-system/src/main/java/cn/ysk/cashier/repository/product/TbProductSkuRepository.java index 6b11ddce..63fc21fe 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/repository/product/TbProductSkuRepository.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/repository/product/TbProductSkuRepository.java @@ -23,10 +23,10 @@ import java.util.List; **/ public interface TbProductSkuRepository extends JpaRepository, JpaSpecificationExecutor { - @Query("SELECT sku FROM TbProductSku sku WHERE sku.productId IN :productId") + @Query("SELECT sku FROM TbProductSku sku WHERE sku.productId IN :productId and sku.isDel=0") List searchSku(@Param("productId")List productId); - @Query("SELECT sku FROM TbProductSku sku WHERE sku.productId = :productId") + @Query("SELECT sku FROM TbProductSku sku WHERE sku.productId = :productId and sku.isDel=0") List searchSku(@Param("productId")String productId); @Transactional @@ -34,7 +34,12 @@ public interface TbProductSkuRepository extends JpaRepository skuList = new ArrayList<>(); - for (TbProductSku sku : resources.getSkuList()) { - TbProductSku tbProductSku = tbProductSkuRepository.searchBarCode(sku.getBarCode()); - if (tbProductSku != null) { - tbProductSkuRepository.updateByBarCode(sku.getBarCode(), sku.getCostPrice(), sku.getCoverImg(), sku.getFirstShared(), sku.getMemberPrice(), - sku.getOriginPrice(), sku.getSalePrice(), sku.getSpecSnap(), tbProductSku.getId()); - } else { - if ("sku".equals(save.getTypeEnum())) { - tbProductSkuRepository.deleteByProductId(String.valueOf(save.getId())); +// List skuList = new ArrayList<>(); +// for (TbProductSku sku : resources.getSkuList()) { +// TbProductSku tbProductSku = tbProductSkuRepository.searchBarCode(sku.getBarCode()); +// if (tbProductSku != null) { +// tbProductSkuRepository.updateByBarCode(sku.getBarCode(), sku.getCostPrice(), sku.getCoverImg(), sku.getFirstShared(), sku.getMemberPrice(), +// sku.getOriginPrice(), sku.getSalePrice(), sku.getSpecSnap(), tbProductSku.getId()); +// } else { +// if ("sku".equals(save.getTypeEnum())) { +// tbProductSkuRepository.deleteByProductId(String.valueOf(save.getId())); +// } +// sku.setProductId(String.valueOf(save.getId())); +// sku.setShopId(save.getShopId()); +// sku.setCreatedAt(Instant.now().toEpochMilli()); +// sku.setUpdatedAt(Instant.now().toEpochMilli()); +// skuList.add(sku); +// } +// } + if ("sku".equals(save.getTypeEnum())) { + List collect = resources.getSkuList().stream().map(TbProductSku::getId).collect(Collectors.toList()); + List tbProductSkus = tbProductSkuRepository.searchSku(resources.getId().toString()); + for (TbProductSku productSkus : tbProductSkus) { + if (!collect.contains(productSkus.getId())) { + tbProductSkuRepository.deleteBySkuId(productSkus.getId().toString()); } - sku.setProductId(String.valueOf(save.getId())); - sku.setShopId(save.getShopId()); - sku.setCreatedAt(Instant.now().toEpochMilli()); - sku.setUpdatedAt(Instant.now().toEpochMilli()); - skuList.add(sku); } } - tbProductSkuRepository.saveAll(skuList); + tbProductSkuRepository.saveAll(resources.getSkuList()); } //保存到sku_result if ("sku".equals(resources.getTypeEnum())) { From 570f5611df9e77c0dfd695939b6b79ff73901bf7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9F=A9=E9=B9=8F=E8=BE=89?= <18322780655@163.com> Date: Wed, 10 Jul 2024 17:25:50 +0800 Subject: [PATCH 09/12] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=80=97=E6=9D=90?= =?UTF-8?q?=E5=95=86=E5=93=81=E6=89=B9=E9=87=8F=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cons/service/impl/TbProskuConServiceImpl.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java index cc3d7f5d..c38d53b4 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java @@ -80,10 +80,11 @@ public class TbProskuConServiceImpl implements TbProskuConService { List list=new ArrayList<>(); if(product.getIsDistribute().intValue()==1){ - TbConsInfo tbConsInfo= tbConsInfoRepository.getById(resource.getConsInfoId()); - if(Objects.isNull(tbConsInfo)){ + TbConsInfo tbConsInfo= tbConsInfoRepository.findById(resource.getConsInfoId()).orElseGet(TbConsInfo::new); + if(ObjectUtil.isNull(tbConsInfo)){ throw new BadRequestException("对应的耗材信息不存在"); } + //查询商品对应的所有规格 List skuList= tbProductSkuRepository.searchSku(product.getId().toString()); if(Objects.nonNull(skuList)&&skuList.size()>0){ @@ -108,6 +109,14 @@ public class TbProskuConServiceImpl implements TbProskuConService { }else { for (ProskuInfo.SkuInfo skuInfo : resource.getSkuInfos()) { + + + TbConsInfo tbConsInfo= tbConsInfoRepository.findById(skuInfo.getConInfoId()).orElseGet(TbConsInfo::new); + if(ObjectUtil.isNull(tbConsInfo)){ + throw new BadRequestException("对应的耗材信息不存在"); + } + + int count=tbProskuConRepository.countByConInfoIdAndProductSkuIdAndShopId(resource.getConsInfoId(), skuInfo.getSkuId(), skuInfo.getShopId(), resource.getProductId()); if(count<=0){ TbProskuCon tbProskuCon=new TbProskuCon(); From 90501ccfb125a61692dac45a9c276d32890e166d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9F=A9=E9=B9=8F=E8=BE=89?= <18322780655@163.com> Date: Wed, 10 Jul 2024 17:40:22 +0800 Subject: [PATCH 10/12] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=89=8D=E7=AB=AF?= =?UTF-8?q?=E4=BC=A0=E9=80=92=E6=95=B0=E6=8D=AE=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/TbProskuConServiceImpl.java | 29 ++++++++++++++----- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java index c38d53b4..114a1e7a 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java @@ -11,16 +11,14 @@ import cn.ysk.cashier.pojo.product.TbProduct; import cn.ysk.cashier.pojo.product.TbProductSku; import cn.ysk.cashier.repository.product.TbProductRepository; import cn.ysk.cashier.repository.product.TbProductSkuRepository; -import cn.ysk.cashier.utils.FileUtil; -import cn.ysk.cashier.utils.PageUtil; -import cn.ysk.cashier.utils.QueryHelp; -import cn.ysk.cashier.utils.ValidationUtil; +import cn.ysk.cashier.utils.*; import lombok.RequiredArgsConstructor; import cn.ysk.cashier.cons.repository.TbProskuConRepository; import cn.ysk.cashier.cons.service.TbProskuConService; import cn.ysk.cashier.cons.service.dto.TbProskuConDto; import cn.ysk.cashier.cons.service.dto.TbProskuConQueryCriteria; import cn.ysk.cashier.cons.service.mapstruct.TbProskuConMapper; +import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.data.domain.Page; @@ -39,6 +37,7 @@ import javax.servlet.http.HttpServletResponse; **/ @Service @RequiredArgsConstructor +@Slf4j public class TbProskuConServiceImpl implements TbProskuConService { private final TbProskuConRepository tbProskuConRepository; @@ -81,7 +80,9 @@ public class TbProskuConServiceImpl implements TbProskuConService { if(product.getIsDistribute().intValue()==1){ TbConsInfo tbConsInfo= tbConsInfoRepository.findById(resource.getConsInfoId()).orElseGet(TbConsInfo::new); - if(ObjectUtil.isNull(tbConsInfo)){ + + log.info("product.getIsDistribute().intValue():{}", JSONUtil.toJSONString(tbConsInfo)); + if(ObjectUtil.isNull(tbConsInfo)||ObjectUtil.isNull(tbConsInfo.getId())){ throw new BadRequestException("对应的耗材信息不存在"); } @@ -94,7 +95,7 @@ public class TbProskuConServiceImpl implements TbProskuConService { TbProskuCon tbProskuCon=new TbProskuCon(); tbProskuCon.setShopId(Integer.valueOf(tbProductSku.getShopId())); - tbProskuCon.setConInfoId(resource.getConsInfoId()); + tbProskuCon.setConInfoId(tbConsInfo.getId()); tbProskuCon.setProductId(Integer.valueOf(tbProductSku.getProductId())); tbProskuCon.setProductSkuId(tbProductSku.getId()); tbProskuCon.setSurplusStock(resource.getSurplusStock()); @@ -112,16 +113,28 @@ public class TbProskuConServiceImpl implements TbProskuConService { TbConsInfo tbConsInfo= tbConsInfoRepository.findById(skuInfo.getConInfoId()).orElseGet(TbConsInfo::new); - if(ObjectUtil.isNull(tbConsInfo)){ + + log.info("skuInfo:{}", JSONUtil.toJSONString(tbConsInfo)); + + if(ObjectUtil.isNull(tbConsInfo)||ObjectUtil.isNull(tbConsInfo.getId())){ throw new BadRequestException("对应的耗材信息不存在"); } + + TbProductSku tbProductSku= tbProductSkuRepository.findById(skuInfo.getSkuId()).orElseGet(TbProductSku::new); + if(ObjectUtil.isNull(tbProductSku)||ObjectUtil.isNull(tbProductSku.getId())){ + throw new BadRequestException("规格信息不存在"); + } + + + + int count=tbProskuConRepository.countByConInfoIdAndProductSkuIdAndShopId(resource.getConsInfoId(), skuInfo.getSkuId(), skuInfo.getShopId(), resource.getProductId()); if(count<=0){ TbProskuCon tbProskuCon=new TbProskuCon(); tbProskuCon.setShopId(Integer.valueOf(skuInfo.getShopId())); - tbProskuCon.setConInfoId(skuInfo.getConInfoId()); + tbProskuCon.setConInfoId(tbConsInfo.getId()); tbProskuCon.setProductId(resource.getProductId()); tbProskuCon.setProductSkuId(skuInfo.getSkuId()); tbProskuCon.setSurplusStock(skuInfo.getSurplusStock()); From 7214d9d4fcc32eff45b1e89dac32fd43a0861033 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9F=A9=E9=B9=8F=E8=BE=89?= <18322780655@163.com> Date: Wed, 10 Jul 2024 17:40:52 +0800 Subject: [PATCH 11/12] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=89=8D=E7=AB=AF?= =?UTF-8?q?=E4=BC=A0=E9=80=92=E6=95=B0=E6=8D=AE=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cashier/cons/service/impl/TbProskuConServiceImpl.java | 5 ----- 1 file changed, 5 deletions(-) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java index 114a1e7a..8d8815af 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java @@ -120,16 +120,11 @@ public class TbProskuConServiceImpl implements TbProskuConService { throw new BadRequestException("对应的耗材信息不存在"); } - - TbProductSku tbProductSku= tbProductSkuRepository.findById(skuInfo.getSkuId()).orElseGet(TbProductSku::new); if(ObjectUtil.isNull(tbProductSku)||ObjectUtil.isNull(tbProductSku.getId())){ throw new BadRequestException("规格信息不存在"); } - - - int count=tbProskuConRepository.countByConInfoIdAndProductSkuIdAndShopId(resource.getConsInfoId(), skuInfo.getSkuId(), skuInfo.getShopId(), resource.getProductId()); if(count<=0){ TbProskuCon tbProskuCon=new TbProskuCon(); From 713350ac3a64442cc8409bd348b9c54c63c27959 Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Wed, 10 Jul 2024 17:42:51 +0800 Subject: [PATCH 12/12] =?UTF-8?q?=E4=BC=9A=E5=91=98=E6=A0=87=E8=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java index 938d4ba6..a2fc89cb 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/mybatis/mapper/ShopUserMapper.java @@ -25,7 +25,9 @@ public interface ShopUserMapper extends BaseMapper { "" + "AND (u.nick_name like concat('%', #{param.name}, '%') or u.telephone like concat('%', #{param.name}, '%'))" + "" + + "" + "AND su.is_vip=#{isVip}" + + "" + "" + "") IPage queryUser(TbShopUserQueryCriteria param, Integer isVip, Page pageInfo);