From 00c597948cf3e3360b42a747b9bccf60bee4763a Mon Sep 17 00:00:00 2001
From: wzy <wzy19931122ai@163.com>
Date: Thu, 19 May 2022 22:31:21 +0800
Subject: [PATCH] fix goods add and goodsUPdate
---
src/main/resources/mapper/modules/MallGoodsMapper.xml | 1
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallGoodsService.java | 51 +++++++++++++++++++++++++
src/main/java/cc/mrbird/febs/mall/vo/AdminMallGoodsVo.java | 2 +
src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html | 8 ++--
src/main/resources/templates/febs/views/modules/goods/goodsList.html | 2
5 files changed, 59 insertions(+), 5 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallGoodsService.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallGoodsService.java
index 5f746d0..5ed4b73 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallGoodsService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallGoodsService.java
@@ -131,6 +131,27 @@
return new FebsResponse().success().message("添加成功");
}
+ // 单规格
+ if (addMallGoodsDto.getIsSku() == 2) {
+ MallGoodsStyle style = new MallGoodsStyle();
+ style.setGoodsId(mallGoods.getId());
+ style.setName(mallGoods.getGoodsName());
+ mallGoodsStyleMapper.insert(style);
+
+ MallGoodsSku sku = new MallGoodsSku();
+ sku.setGoodsId(mallGoods.getId());
+ sku.setSkuImage(mallGoods.getThumb());
+ sku.setSkuName(mallGoods.getGoodsName());
+ sku.setCostPrice(mallGoods.getCostPrice());
+ sku.setPresentPrice(new BigDecimal(mallGoods.getPresentPrice()));
+ sku.setOriginalPrice(new BigDecimal(mallGoods.getOriginalPrice()));
+ sku.setSkuVolume(mallGoods.getVolume());
+ sku.setStock(mallGoods.getStock());
+ sku.setStyleId(style.getId());
+ mallGoodsSkuMapper.insert(sku);
+ return new FebsResponse().success().message("添加成功");
+ }
+
List<AddMallGoodsSkuDto> addMallGoodsSkuDtos = addMallGoodsDto.getAddMallGoodsSkuDtos();
Set<String> styles = new HashSet<>();
@@ -308,6 +329,13 @@
//新增商品
MallGoods mallGoods = mallGoodsMapper.selectById(mallGoodsUpdateDto.getId());
+
+ // 若原来不为多规格或编辑后也不为多规格,则清空样式和规格
+ if (mallGoods.getIsSku() == 2 || mallGoodsUpdateDto.getIsSku() == 2) {
+ mallGoodsSkuMapper.deleteByGoodsId(mallGoods.getId());
+ mallGoodsStyleMapper.deleteByGoodsId(mallGoods.getId());
+ }
+
BeanUtil.copyProperties(mallGoodsUpdateDto, mallGoods);
mallGoodsMapper.updateById(mallGoods);
@@ -332,6 +360,29 @@
return new FebsResponse().success().message("编辑成功");
}
+ // 单规格
+ if (mallGoodsUpdateDto.getIsSku() == 2) {
+ MallGoodsStyle style = new MallGoodsStyle();
+ style.setGoodsId(mallGoods.getId());
+ style.setName(mallGoods.getGoodsName());
+ mallGoodsStyleMapper.insert(style);
+
+ MallGoodsSku sku = new MallGoodsSku();
+ sku.setGoodsId(mallGoods.getId());
+ sku.setSkuImage(mallGoods.getThumb());
+ sku.setSkuName(mallGoods.getGoodsName());
+ sku.setCostPrice(mallGoods.getCostPrice());
+ sku.setPresentPrice(new BigDecimal(mallGoods.getPresentPrice()));
+ sku.setOriginalPrice(new BigDecimal(mallGoods.getOriginalPrice()));
+ sku.setSkuVolume(mallGoods.getVolume());
+ sku.setStock(mallGoods.getStock());
+ sku.setStyleId(style.getId());
+ mallGoodsSkuMapper.insert(sku);
+ return new FebsResponse().success().message("添加成功");
+ }
+
+
+
// 删除已存在sku
List<Long> delSkuIds = mallGoodsUpdateDto.getDelSkuId();
if (CollUtil.isNotEmpty(delSkuIds)) {
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/AdminMallGoodsVo.java b/src/main/java/cc/mrbird/febs/mall/vo/AdminMallGoodsVo.java
index d2c5e98..3f7e649 100644
--- a/src/main/java/cc/mrbird/febs/mall/vo/AdminMallGoodsVo.java
+++ b/src/main/java/cc/mrbird/febs/mall/vo/AdminMallGoodsVo.java
@@ -42,4 +42,6 @@
private Integer stock;
private BigDecimal score;
+
+ private int isNormal;
}
diff --git a/src/main/resources/mapper/modules/MallGoodsMapper.xml b/src/main/resources/mapper/modules/MallGoodsMapper.xml
index ac3fde8..3b68816 100644
--- a/src/main/resources/mapper/modules/MallGoodsMapper.xml
+++ b/src/main/resources/mapper/modules/MallGoodsMapper.xml
@@ -129,6 +129,7 @@
a.present_price,
a.is_hot,
a.score,
+ a.is_normal,
b.name categaryName,
IFNULL(sum(c.sku_volume), a.volume) skuVolume,
IFNULL(sum(c.stock), a.stock) stock
diff --git a/src/main/resources/templates/febs/views/modules/goods/goodsList.html b/src/main/resources/templates/febs/views/modules/goods/goodsList.html
index bd804bb..c8de164 100644
--- a/src/main/resources/templates/febs/views/modules/goods/goodsList.html
+++ b/src/main/resources/templates/febs/views/modules/goods/goodsList.html
@@ -68,7 +68,7 @@
{{# } }}
</script>
<script type="text/html" id="goodsTypeFormat">
- {{# if(d.isNormal === 1) { }}
+ {{# if(d.isNormal == 1) { }}
<span>普通商品</span>
{{# } else { }}
<span>套餐</span>
diff --git a/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html b/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html
index 3174f0f..bfd4d27 100644
--- a/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html
+++ b/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html
@@ -563,11 +563,11 @@
if (goodsInfo.isSku == 1) {
$(".multi-sku-table").show();
- }
- var skus = goodsInfo.skus;
- for (let i = 0; i < skus.length; i++) {
- skus[i].index = i+1;
+ var skus = goodsInfo.skus;
+ for (let i = 0; i < skus.length; i++) {
+ skus[i].index = i+1;
+ }
}
for (let i = 0; i < images.length; i++) {
--
Gitblit v1.9.1