From 415e6ff469d9291ccb84f1b24e8fbf0071e485bc Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Tue, 24 Sep 2024 16:28:08 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E7=BB=91=E5=AE=9A=E8=87=B3=E8=A7=84?= =?UTF-8?q?=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ysk/cashier/cons/rest/TbProskuConController.java | 2 +- .../ysk/cashier/cons/service/dto/TbProskuConDto.java | 2 -- .../ysk/cashier/cons/service/dto/TbProskuConDtoV2.java | 3 +-- .../cons/service/impl/TbProskuConServiceImpl.java | 10 +++++++--- 4 files changed, 9 insertions(+), 8 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 3471f737..39eea495 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 @@ -68,7 +68,7 @@ public class TbProskuConController { throw new Exception(be.getMessage()); }catch (Exception e){ e.printStackTrace(); - throw new Exception("相同商品耗材信息不允许添加"); + throw new Exception("参数错误"); } } diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDto.java b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDto.java index af5088be..9a2844a8 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDto.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDto.java @@ -15,10 +15,8 @@ */ package cn.ysk.cashier.cons.service.dto; -import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.persistence.Column; import java.math.BigDecimal; import java.sql.Timestamp; import java.io.Serializable; diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDtoV2.java b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDtoV2.java index b11f8d8b..5cfc8548 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDtoV2.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDtoV2.java @@ -1,6 +1,5 @@ package cn.ysk.cashier.cons.service.dto; -import cn.ysk.cashier.cons.domain.TbProskuCon; import lombok.Data; import javax.validation.constraints.NotNull; @@ -11,5 +10,5 @@ public class TbProskuConDtoV2 { @NotNull private Integer productId; - List cons; + List cons; } 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 27bed072..66ab95db 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 @@ -1,5 +1,7 @@ package cn.ysk.cashier.cons.service.impl; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.bean.copier.CopyOptions; import cn.hutool.core.util.ObjectUtil; import cn.ysk.cashier.cons.domain.TbConsInfo; import cn.ysk.cashier.cons.domain.TbConsSuppFlow; @@ -172,7 +174,7 @@ public class TbProskuConServiceImpl implements TbProskuConService { throw new BadRequestException("对应的商品信息不存在"); } - List collect = resources.getCons().stream().map(TbProskuCon::getId).collect(Collectors.toList()); + List collect = resources.getCons().stream().map(TbProskuConDto::getId).collect(Collectors.toList()); //现有的 List tbProskuCons = tbProskuConRepository.searchAllByProductId(resources.getProductId()); List delIds = new ArrayList<>(); @@ -186,7 +188,7 @@ public class TbProskuConServiceImpl implements TbProskuConService { } //判断 - for (TbProskuCon resource : resources.getCons()) { + for (TbProskuConDto resource : resources.getCons()) { TbConsInfo tbConsInfo = tbConsInfoRepository.findById(resource.getConInfoId()).orElseGet(TbConsInfo::new); if (ObjectUtil.isNull(tbConsInfo) || ObjectUtil.isNull(tbConsInfo.getId())) { throw new BadRequestException("对应的耗材信息不存在"); @@ -197,7 +199,9 @@ public class TbProskuConServiceImpl implements TbProskuConService { throw new BadRequestException("规格信息不存在"); } } - newCons.add(resource); + TbProskuCon tbConsInfo1 = new TbProskuCon(); + BeanUtil.copyProperties(tbConsInfo1,resource, CopyOptions.create().setIgnoreNullValue(true)); + newCons.add(tbConsInfo1); } if (!CollectionUtils.isEmpty(newCons)) { tbProskuConRepository.saveAll(newCons); From 0de90718135fc8053a66f146188447728c5542ca Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Tue, 24 Sep 2024 17:05:54 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E5=95=86=E5=93=81=E5=88=97=E8=A1=A8=20?= =?UTF-8?q?=E8=80=97=E6=9D=90=E5=BC=B9=E7=AA=97=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E8=87=B3=E5=95=86=E5=93=81/=E6=B7=BB=E5=8A=A0=E8=87=B3?= =?UTF-8?q?=E8=A7=84=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cashier/cons/rest/TbProskuConController.java | 3 ++- .../cons/service/dto/TbProskuConDtoV2.java | 4 +--- .../cons/service/impl/TbProskuConServiceImpl.java | 3 ++- .../impl/productimpl/TbProductServiceImpl.java | 15 +++++++++++---- .../java/cn/ysk/cashier/vo/TbProductNewVo.java | 2 ++ 5 files changed, 18 insertions(+), 9 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 39eea495..7017a82f 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 @@ -7,6 +7,7 @@ import cn.ysk.cashier.cons.service.dto.ProskuInfo; import cn.ysk.cashier.cons.service.dto.TbProskuConDtoV2; import cn.ysk.cashier.cons.service.dto.TbProskuConQueryCriteria; import cn.ysk.cashier.exception.BadRequestException; +import cn.ysk.cashier.utils.JSONUtil; import org.springframework.data.domain.Pageable; import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; @@ -60,7 +61,7 @@ public class TbProskuConController { @PostMapping("V2") @Log("新增商品耗材绑定关系") @ApiOperation("新增商品耗材绑定关系") - public ResponseEntity upV2(@Validated @RequestBody TbProskuConDtoV2 resources) throws Exception { + public ResponseEntity upV2(@RequestBody TbProskuConDtoV2 resources) throws Exception { try { tbProskuConService.upV2(resources); return new ResponseEntity<>(HttpStatus.CREATED); diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDtoV2.java b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDtoV2.java index 5cfc8548..5309118f 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDtoV2.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDtoV2.java @@ -2,13 +2,11 @@ package cn.ysk.cashier.cons.service.dto; import lombok.Data; -import javax.validation.constraints.NotNull; import java.util.List; @Data public class TbProskuConDtoV2 { - @NotNull private Integer productId; - List cons; + private List cons; } 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 66ab95db..e5e34c0e 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 @@ -200,7 +200,8 @@ public class TbProskuConServiceImpl implements TbProskuConService { } } TbProskuCon tbConsInfo1 = new TbProskuCon(); - BeanUtil.copyProperties(tbConsInfo1,resource, CopyOptions.create().setIgnoreNullValue(true)); + BeanUtil.copyProperties(resource,tbConsInfo1, CopyOptions.create().setIgnoreNullValue(true)); + tbConsInfo1.setSurplusStock(resource.getLasterInStock()); newCons.add(tbConsInfo1); } if (!CollectionUtils.isEmpty(newCons)) { diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/productimpl/TbProductServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/productimpl/TbProductServiceImpl.java index 24aa8d5f..8364a096 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/productimpl/TbProductServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/productimpl/TbProductServiceImpl.java @@ -255,15 +255,22 @@ public class TbProductServiceImpl implements TbProductService { BigDecimal maxPrice = tbProductSkus.stream().map(TbProductSku::getSalePrice).max(BigDecimal::compareTo).get(); productNewVo.setLowPrice("¥" +productNewVo.getLowPrice() + "~¥" + maxPrice); } - if(product.getTypeEnum().equals("sku")){ - //规格填充 - productNewVo.setSkuList(convert(tbProductSkus)); - } ViewConSku viewConSku = new ViewConSku(); viewConSku.setShopId(Integer.valueOf(product.getShopId())); viewConSku.setProductId(product.getId()); Example query = Example.of(viewConSku); List skuCons = viewConSkuRepository.findAll(query); + if(product.getTypeEnum().equals("sku")){ + //规格填充 + productNewVo.setSkuList(convert(tbProductSkus)); + //耗材弹窗选项 + if (!CollectionUtils.isEmpty(skuCons)) { + Integer productSkuId = skuCons.get(0).getProductSkuId(); + if (productSkuId != 0) {//添加至商品 + productNewVo.setIsSaveSku(1); + } + } + } productNewVo.setConInfos(CollectionUtils.isEmpty(skuCons)?Arrays.asList():skuCons); products.add(productNewVo); } diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/vo/TbProductNewVo.java b/eladmin-system/src/main/java/cn/ysk/cashier/vo/TbProductNewVo.java index f7c44847..5693e831 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/vo/TbProductNewVo.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/vo/TbProductNewVo.java @@ -44,6 +44,8 @@ public class TbProductNewVo { //退款是否退回库存 private Integer isRefundStock = 1; + private Integer isSaveSku = 0; + //库存警戒线 private Integer warnLine = 0; From 418e834fe30112b7c7dc93516082215e43382863 Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Tue, 24 Sep 2024 17:13:57 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E5=95=86=E5=93=81=E5=88=97=E8=A1=A8=20?= =?UTF-8?q?=E8=80=97=E6=9D=90=E5=BC=B9=E7=AA=97=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E8=87=B3=E5=95=86=E5=93=81/=E6=B7=BB=E5=8A=A0=E8=87=B3?= =?UTF-8?q?=E8=A7=84=E6=A0=BC=201/2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cashier/service/impl/productimpl/TbProductServiceImpl.java | 2 +- .../src/main/java/cn/ysk/cashier/vo/TbProductNewVo.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/productimpl/TbProductServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/productimpl/TbProductServiceImpl.java index 8364a096..01771974 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/productimpl/TbProductServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/productimpl/TbProductServiceImpl.java @@ -267,7 +267,7 @@ public class TbProductServiceImpl implements TbProductService { if (!CollectionUtils.isEmpty(skuCons)) { Integer productSkuId = skuCons.get(0).getProductSkuId(); if (productSkuId != 0) {//添加至商品 - productNewVo.setIsSaveSku(1); + productNewVo.setIsSaveSku(2); } } } diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/vo/TbProductNewVo.java b/eladmin-system/src/main/java/cn/ysk/cashier/vo/TbProductNewVo.java index 5693e831..34e15dcf 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/vo/TbProductNewVo.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/vo/TbProductNewVo.java @@ -44,7 +44,7 @@ public class TbProductNewVo { //退款是否退回库存 private Integer isRefundStock = 1; - private Integer isSaveSku = 0; + private Integer isSaveSku = 1; //库存警戒线 private Integer warnLine = 0; From d8841522ad78bc2cc5aab41b6076b582e9feda23 Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Tue, 24 Sep 2024 17:46:21 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E5=95=86=E5=93=81=20=E8=80=97=E6=9D=90=20?= =?UTF-8?q?=E7=BB=91=E5=AE=9A=E5=85=B3=E7=B3=BB=20=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E6=97=A5=E5=BF=97=20=E9=97=AE=E9=A2=98=E5=A4=84=E7=90=86=20?= =?UTF-8?q?=E4=B8=8D=E4=BC=A0=E8=A7=84=E6=A0=BCid=E6=97=B6=20=E8=BF=87?= =?UTF-8?q?=E6=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/cn/ysk/cashier/config/AppApiMethodAspect.java | 1 + .../java/cn/ysk/cashier/cons/service/dto/TbProskuConDto.java | 1 + .../ysk/cashier/cons/service/impl/TbProskuConServiceImpl.java | 4 +++- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/config/AppApiMethodAspect.java b/eladmin-system/src/main/java/cn/ysk/cashier/config/AppApiMethodAspect.java index 2ab44a67..7c79a6f3 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/config/AppApiMethodAspect.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/config/AppApiMethodAspect.java @@ -29,6 +29,7 @@ public class AppApiMethodAspect { "cn.ysk.cashier.controller.* " + "|| cn.ysk.cashier.controller.*.* " + "|| cn.ysk.cashier.mnt.rest.* " + + "|| cn.ysk.cashier.cons.rest.* " + "|| cn.ysk.cashier.system.rest.* " + "|| cn.ysk.cashier.config.security.rest.*" + ").*(..))") diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDto.java b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDto.java index 9a2844a8..b39bf638 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDto.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/cons/service/dto/TbProskuConDto.java @@ -38,6 +38,7 @@ public class TbProskuConDto implements Serializable { private String status; private BigDecimal lasterInStock; + private BigDecimal surplusStock; /** 创建时间 */ private Timestamp createTime; 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 e5e34c0e..428d6c0c 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 @@ -189,6 +189,9 @@ public class TbProskuConServiceImpl implements TbProskuConService { //判断 for (TbProskuConDto resource : resources.getCons()) { + if (resource.getConInfoId() == null) { + continue; + } TbConsInfo tbConsInfo = tbConsInfoRepository.findById(resource.getConInfoId()).orElseGet(TbConsInfo::new); if (ObjectUtil.isNull(tbConsInfo) || ObjectUtil.isNull(tbConsInfo.getId())) { throw new BadRequestException("对应的耗材信息不存在"); @@ -201,7 +204,6 @@ public class TbProskuConServiceImpl implements TbProskuConService { } TbProskuCon tbConsInfo1 = new TbProskuCon(); BeanUtil.copyProperties(resource,tbConsInfo1, CopyOptions.create().setIgnoreNullValue(true)); - tbConsInfo1.setSurplusStock(resource.getLasterInStock()); newCons.add(tbConsInfo1); } if (!CollectionUtils.isEmpty(newCons)) { From 056126127b576106ebebf63d52c8e4a9d11e7276 Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Tue, 24 Sep 2024 18:14:04 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E7=BB=9F=E8=AE=A1=20?= =?UTF-8?q?=E9=94=80=E5=94=AE=E6=95=B0=E9=87=8F=20=E8=A7=86=E5=9B=BE?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=20=E6=96=B0=E5=A2=9E=E5=BA=97=E9=93=BA=20?= =?UTF-8?q?=E5=BA=97=E9=93=BA=E5=90=8D=E7=A7=B0=20=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/ysk/cashier/service/impl/SummaryServiceImpl.java | 2 +- .../cashier/service/impl/shopimpl/TbShopInfoServiceImpl.java | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) 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 0d7c5596..b5536994 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 @@ -245,7 +245,7 @@ public class SummaryServiceImpl implements SummaryService { List numList = new ArrayList<>(); for (Object[] o : objects) { CountDateVO countDateVO = new CountDateVO(); - BigInteger integers = (BigInteger) o[1]; + BigInteger integers = (BigInteger) o[0]; countDateVO.setCount(new BigDecimal(integers.toString())); Date date = (Date) o[2]; countDateVO.setTradeDay(date.toString()); diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopInfoServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopInfoServiceImpl.java index a112ff6e..1fdaeaa5 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopInfoServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopInfoServiceImpl.java @@ -127,6 +127,10 @@ public class TbShopInfoServiceImpl implements TbShopInfoService { @Override @Transactional(rollbackFor = Exception.class) public TbShopInfoDto create(TbShopInfoDto resources) { + if(StringUtils.isBlank(resources.getShopName())){ + throw new BadRequestException("店铺名称不可为空"); + } + resources.setShopName(resources.getShopName().trim()); if ("release".equals(resources.getProfiles())){ if (resources.getRegisterCode() == null){ throw new BadRequestException("未绑定激活码");