From 89e2b353cb22e38dbe0a7144b26fa69766cf7f9b Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Tue, 28 Sep 2021 10:12:50 +0800
Subject: [PATCH] Merge branch 'master' of http://120.27.238.55:7000/r/xc-mall
---
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallGoodsService.java | 25 +++++-
src/main/java/cc/mrbird/febs/mall/dto/AddMallGoodsSkuDto.java | 2
src/main/resources/mapper/modules/MallGoodsStyleMapper.xml | 6 +
src/main/resources/templates/febs/views/modules/mallMember/moneyFlowList.html | 24 ++++-
src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsStyleMapper.java | 1
src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html | 64 ++++++++-------
src/main/resources/templates/febs/views/modules/product/categoryUpdate.html | 35 --------
src/main/resources/templates/febs/views/modules/goods/detailGoods.html | 76 ++++++++++++++++--
src/main/resources/mapper/modules/MallMoneyFlowMapper.xml | 1
src/main/resources/templates/febs/views/modules/mallMember/moneyFlow.html | 6 +
10 files changed, 151 insertions(+), 89 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/AddMallGoodsSkuDto.java b/src/main/java/cc/mrbird/febs/mall/dto/AddMallGoodsSkuDto.java
index 308ab52..5d1cf20 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/AddMallGoodsSkuDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/AddMallGoodsSkuDto.java
@@ -9,6 +9,8 @@
@ApiModel(value = "AddMallGoodsSkuDto", description = "参数接收类")
public class AddMallGoodsSkuDto {
+ private String styleName;
+
private String skuName;
private String skuImage;
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsStyleMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsStyleMapper.java
index c958ad3..c8dd84b 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsStyleMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsStyleMapper.java
@@ -8,4 +8,5 @@
void deleteByGoodsId(@Param("id")Long id);
+ MallGoodsStyle selectByStyleName(@Param("name")String styleName, @Param("goodsId")Long id);
}
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 915c5e6..379d795 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
@@ -20,9 +20,12 @@
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
@Slf4j
@Service
@@ -43,6 +46,7 @@
}
@Override
+ @Transactional
public FebsResponse addMallGoods(AddMallGoodsDto addMallGoodsDto) {
String goodsName = addMallGoodsDto.getGoodsName();
if(StrUtil.isEmpty(goodsName)){
@@ -120,18 +124,31 @@
i++;
}
}
-
}
+
+
List<AddMallGoodsSkuDto> addMallGoodsSkuDtos = addMallGoodsDto.getAddMallGoodsSkuDtos();
+ Set<String> styles = new HashSet<>();
if(CollUtil.isNotEmpty(addMallGoodsSkuDtos)){
- for(AddMallGoodsSkuDto addMallGoodsSkuDto : addMallGoodsSkuDtos){
+ for(AddMallGoodsSkuDto addStyleDto : addMallGoodsSkuDtos){
+ styles.add(addStyleDto.getStyleName());
+ }
+ }
+ if(CollUtil.isNotEmpty(styles)){
+ for(String style : styles){
//新增样式
MallGoodsStyle mallGoodsStyle = new MallGoodsStyle();
- mallGoodsStyle.setName(addMallGoodsSkuDto.getSkuName());
+ mallGoodsStyle.setName(style);
mallGoodsStyle.setGoodsId(mallGoods.getId());
mallGoodsStyleMapper.insert(mallGoodsStyle);
+ }
+ }
+
+ if(CollUtil.isNotEmpty(addMallGoodsSkuDtos)){
+ for(AddMallGoodsSkuDto addMallGoodsSkuDto : addMallGoodsSkuDtos){
+ MallGoodsStyle mallGoodsStyleSku = mallGoodsStyleMapper.selectByStyleName(addMallGoodsSkuDto.getStyleName(),mallGoods.getId());
//新增商品规格
MallGoodsSku mallGoodsSku = new MallGoodsSku();
mallGoodsSku.setSkuName(addMallGoodsSkuDto.getSkuName());
@@ -140,7 +157,7 @@
mallGoodsSku.setSkuVolume(addMallGoodsSkuDto.getSkuVolume()==null?0:addMallGoodsSkuDto.getSkuVolume());
mallGoodsSku.setOriginalPrice(new BigDecimal(addMallGoodsSkuDto.getOriginalPrice()));
mallGoodsSku.setPresentPrice(new BigDecimal(addMallGoodsSkuDto.getPresentPrice()));
- mallGoodsSku.setStyleId(mallGoodsStyle.getId());
+ mallGoodsSku.setStyleId(mallGoodsStyleSku.getId());
mallGoodsSku.setGoodsId(mallGoods.getId());
mallGoodsSkuMapper.insert(mallGoodsSku);
}
diff --git a/src/main/resources/mapper/modules/MallGoodsStyleMapper.xml b/src/main/resources/mapper/modules/MallGoodsStyleMapper.xml
index 8ea2e48..24119ab 100644
--- a/src/main/resources/mapper/modules/MallGoodsStyleMapper.xml
+++ b/src/main/resources/mapper/modules/MallGoodsStyleMapper.xml
@@ -6,4 +6,10 @@
delete from mall_goods_style where goods_id = #{id}
</delete>
+
+
+ <select id="selectByStyleName" resultType="cc.mrbird.febs.mall.entity.MallGoodsStyle">
+ select * from mall_goods_style where goods_id = #{goodsId} and name = #{name}
+ </select>
+
</mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml b/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
index 31c91e4..4250bd6 100644
--- a/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
+++ b/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
@@ -41,7 +41,6 @@
inner join mall_member b on a.member_id=b.id
left join mall_order_info c on a.order_no = c.order_no
<where>
- a.type != 6
<if test="record != null" >
<if test="record.name!=null and record.name!=''">
and b.name like concat('%', #{record.name},'%')
diff --git a/src/main/resources/templates/febs/views/modules/goods/detailGoods.html b/src/main/resources/templates/febs/views/modules/goods/detailGoods.html
index 2e55f91..9c45f8b 100644
--- a/src/main/resources/templates/febs/views/modules/goods/detailGoods.html
+++ b/src/main/resources/templates/febs/views/modules/goods/detailGoods.html
@@ -75,17 +75,17 @@
<input type="text" name="goodsIntrodution" autocomplete="off" class="layui-input" >
</div>
</div>
- <div class="layui-row layui-col-space10 layui-form-item">
- <div class="layui-col-lg6">
- <label class="layui-form-label">规格:</label>
- <div class="layui-input-block">
- <input type="text" name="addMallGoodsSkuDtos" autocomplete="off" class="layui-input" id="attrName">
- </div>
- </div>
- <div class="layui-col-lg6">
- <button type="button" class="layui-btn layui-btn-normal layui-btn-xs" id="test3" >添加</button>
- </div>
- </div>
+<!-- <div class="layui-row layui-col-space10 layui-form-item">-->
+<!-- <div class="layui-col-lg6">-->
+<!-- <label class="layui-form-label">规格:</label>-->
+<!-- <div class="layui-input-block">-->
+<!-- <input type="text" name="addMallGoodsSkuDtos" autocomplete="off" class="layui-input" id="attrName">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-col-lg6">-->
+<!-- <button type="button" class="layui-btn layui-btn-normal layui-btn-xs" id="test3" >添加</button>-->
+<!-- </div>-->
+<!-- </div>-->
<div id="attrWrap"></div>
<div class="layui-form-item">
<label class="layui-form-label">缩略图链接:</label>
@@ -161,11 +161,65 @@
initUserValue();
+ function appendSku(sku,skuIndex){
+ var index = skuIndex;
+ let attrNameVal = sku.skuName;
+ let stockVal = sku.stock;
+ let skuVolume = sku.skuVolume;
+ let originalPrice = sku.originalPrice;
+ let presentPrice = sku.presentPrice;
+ let skuImage = sku.skuImage;
+ $('#attrWrap').append(`
+ <div class="layui-form-item">
+ <label class="layui-form-label">规格详情:</label>
+ <div class="layui-input-block layui-form-item item">
+ <div style="float:left" >
+ <div>
+ <input type="text" class="layui-input" value="` + attrNameVal + `" readonly >
+ </div>
+ </div>
+ <div style="float:left" >
+ <div>
+ <img class="layui-upload-img" src="` + skuImage + `" style="width: 100px" readonly>
+ </div>
+ </div>
+ <div style="float:left" >
+ <div>
+ <input type="text" value="` + stockVal + `" placeholder="库存" autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ <div style="float:left" >
+ <div>
+ <input type="text" value="` + skuVolume + `" placeholder="销售数量" autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ <div style="float:left" >
+ <div>
+ <input type="text" value="` + originalPrice + `" placeholder="原价" autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ <div style="float:left" >
+ <div>
+ <input type="text" value="` + presentPrice + `" placeholder="现价" autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ </div>
+ </div>
+ `)
+ }
+
function initUserValue() {
+ var skuIndex = 0;
+ let skuLength = mailGoodsDetail.mailGoodsSkuDetailVo.length;
+ for(var skuIndex = 0; skuIndex < skuLength; skuIndex++){
+ appendSku(mailGoodsDetail.mailGoodsSkuDetailVo[skuIndex],skuIndex);
+ }
+
form.val("goods-detail-form", {
"id": mailGoodsDetail.id,
"goodsNo": mailGoodsDetail.goodsNo,
"categoryId": mailGoodsDetail.categoryId,
+ "mailGoodsSkuDetailVo": mailGoodsDetail.mailGoodsSkuDetailVo,
"unit": mailGoodsDetail.unit,
"originalPrice": mailGoodsDetail.originalPrice,
"presentPrice": mailGoodsDetail.presentPrice,
diff --git a/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html b/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
index f228ff3..7a5cca0 100644
--- a/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
+++ b/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
@@ -57,7 +57,7 @@
</div>
<div class="layui-row layui-col-space10 layui-form-item">
<div class="layui-col-lg6">
- <label class="layui-form-label">规格:</label>
+ <label class="layui-form-label">样式:</label>
<div class="layui-input-block">
<input type="text" name="addMallGoodsSkuDtos" autocomplete="off" class="layui-input" id="attrName">
</div>
@@ -232,43 +232,53 @@
$('#test3').on('click', function (){
var index = $("#attrWrap").children().length;
+ let attrNameVal = $('#attrName').val();
+ if(attrNameVal==null || attrNameVal==""){
+ febs.alert.warn('样式名称不能为空');
+ return false;
+ }
$('#attrWrap').append(`
<div class="layui-form-item item">
<div style="float:left" >
- <input type="text" name="skuName` + index + `" autocomplete="off" class="layui-input" value="` + $('#attrName').val() + `" readonly >
+ <input type="text" name="styleName` + index + `" value="` + $('#attrName').val() + `" autocomplete="off" class="layui-input" readonly >
+ </div>
+ <div style="float:left" >
+ <div>
+ <input type="text" name="skuName` + index +`" placeholder="名称" autocomplete="off" class="layui-input" >
+ </div>
</div>
<div style="float:left" >
<label class="layui-form-label">图片:</label>
<div class="layui-input-block">
<div class="layui-upload">
- <button type="button" class="layui-btn layui-btn-normal layui-btn-xs sku-img" id="` + index + `">上传</button>
- <input type="text" id="skuImage` + index +`" name="skuImage` + index + `" autocomplete="off"
- class="layui-input">
+ <button type="button" class="layui-btn layui-btn-normal layui-btn-xs sku-img" id="skuImg` + index + `">上传</button>
+ <img class="layui-upload-img" id="imageUrls` + index + `" style="width: 100px" >
</div>
</div>
</div>
- <div style="float:left" >
- <label class="layui-form-label">库存:</label>
- <div class="layui-input-block">
- <input type="text" name="stock` + index +`" autocomplete="off" class="layui-input" >
+ <div style="float:left" class="febs-hide">
+ <div>
+ <input type="text" id="skuImage` + index +`" name="skuImage` + index + `" autocomplete="off" class="layui-input">
</div>
</div>
<div style="float:left" >
- <label class="layui-form-label">销售数量:</label>
- <div class="layui-input-block">
- <input type="text" name="skuVolume` + index +`" autocomplete="off" class="layui-input" >
+ <div>
+ <input type="number" name="stock` + index +`" placeholder="库存" autocomplete="off" class="layui-input" >
</div>
</div>
<div style="float:left" >
- <label class="layui-form-label">原价:</label>
- <div class="layui-input-block">
- <input type="text" name="originalPrice` + index +`" autocomplete="off" class="layui-input" >
+ <div>
+ <input type="number" name="skuVolume` + index +`" placeholder="销售数量" autocomplete="off" class="layui-input" >
</div>
</div>
<div style="float:left" >
- <label class="layui-form-label">现价:</label>
- <div class="layui-input-block">
- <input type="text" name="presentPrice` + index + `" autocomplete="off" class="layui-input" >
+ <div>
+ <input type="number" name="originalPrice` + index +`" placeholder="原价" autocomplete="off" class="layui-input" >
+ </div>
+ </div>
+ <div style="float:left" >
+ <div>
+ <input type="number" name="presentPrice` + index + `" placeholder="现价" autocomplete="off" class="layui-input" >
</div>
</div>
<div style="float:left" >
@@ -278,30 +288,25 @@
`)
//普通图片上传
upload.render({
- elem: '.sku-img'
+ elem: '#skuImg' + index
,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
,done: function(res){
febs.alert.success(res.data.src);
- var cid = this.item.attr('id');
- $('#skuImgPreview' + cid).attr('src', res.data.src);
- $('#skuImage'+cid).val(res.data.src);
+ $('#imageUrls' + index).attr('src', res.data.src);
+ $('#skuImage'+ index).val(res.data.src);
}
});
});
upload.render({
- elem: '.sku-img'
+ elem: '#skuImg'+index
,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
,done: function(res){
febs.alert.success(res.data.src);
- var cid = this.item.attr('id');
- $('#skuImgPreview' + cid).attr('src', res.data.src);
- $('#skuImage'+cid).val(res.data.src);
+ $('#imageUrls' + index).attr('src', res.data.src);
+ $('#skuImage'+ index).val(res.data.src);
}
});
$("#attrWrap").on("click",".del-attr-btn",function(){
- // console.log(this)
- // console.log($(this).index())
- // console.log($(this).attr('data-index'))
var index = $(this).attr('data-index')
$($("#attrWrap").find(".item")[index].remove());
});
@@ -310,6 +315,7 @@
var skuArr = $("#attrWrap").find(".item");
for(var i = 0;i < skuArr.length;i++){
skuArrs.push({
+ styleName: $("input[name='styleName" + i + "']").val(),
skuName: $("input[name='skuName" + i + "']").val(),
skuImage: $("input[name='skuImage" + i + "']").val(),
stock: $("input[name='stock" + i + "']").val(),
diff --git a/src/main/resources/templates/febs/views/modules/mallMember/moneyFlow.html b/src/main/resources/templates/febs/views/modules/mallMember/moneyFlow.html
index 440cc4a..0db1691 100644
--- a/src/main/resources/templates/febs/views/modules/mallMember/moneyFlow.html
+++ b/src/main/resources/templates/febs/views/modules/mallMember/moneyFlow.html
@@ -47,9 +47,9 @@
{field: 'type', title: '流水类型',
templet: function (d) {
if (d.type === 1) {
- return '<span>分红收入</span>'
+ return '<span>直推奖励</span>'
} else if (d.type === 2) {
- return '<span>业绩奖励</span>'
+ return '<span>团队奖励</span>'
} else if (d.type === 3) {
return '<span>订单支付</span>'
} else if (d.type === 4) {
@@ -58,6 +58,8 @@
return '<span>转账</span>'
}else if (d.type === 6) {
return '<span>提现</span>'
+ }else if (d.type === 7) {
+ return '<span>排名奖励</span>'
}else{
return ''
}
diff --git a/src/main/resources/templates/febs/views/modules/mallMember/moneyFlowList.html b/src/main/resources/templates/febs/views/modules/mallMember/moneyFlowList.html
index 07791c0..4a75d57 100644
--- a/src/main/resources/templates/febs/views/modules/mallMember/moneyFlowList.html
+++ b/src/main/resources/templates/febs/views/modules/mallMember/moneyFlowList.html
@@ -22,11 +22,13 @@
<div class="layui-input-inline">
<select name="type">
<option value="">请选择</option>
- <option value="1">分红收入</option>
- <option value="2">业绩奖励</option>
+ <option value="1">直推奖励</option>
+ <option value="2">团队奖励</option>
<option value="3">订单支付</option>
<option value="4">退款</option>
<option value="5">转账</option>
+ <option value="6">提现</option>
+ <option value="7">排名奖励</option>
</select>
</div>
</div>
@@ -99,23 +101,31 @@
{field: 'type', title: '流水类型',
templet: function (d) {
if (d.type === 1) {
- return '<span>分红收入</span>'
+ return '<span>直推奖励</span>'
} else if (d.type === 2) {
- return '<span>业绩奖励</span>'
+ return '<span>团队奖励</span>'
} else if (d.type === 3) {
return '<span>订单支付</span>'
} else if (d.type === 4) {
return '<span>退款</span>'
- } else if (d.type === 5) {
+ }else if (d.type === 5) {
return '<span>转账</span>'
- } else{
+ }else if (d.type === 6) {
+ return '<span>提现</span>'
+ }else if (d.type === 7) {
+ return '<span>排名奖励</span>'
+ }else{
return ''
}
}, minWidth: 80,align:'center'},
{field: 'type', title: '支付方式',
templet: function (d) {
if (d.type === 3) {
- return '<span>'+d.payMethod+'</span>'
+ if(d.payMethod === null || d.payMethod ===''){
+ return ''
+ }else{
+ return '<span>'+d.payMethod+'</span>'
+ }
} else{
return ''
}
diff --git a/src/main/resources/templates/febs/views/modules/product/categoryUpdate.html b/src/main/resources/templates/febs/views/modules/product/categoryUpdate.html
index 477c14d..6c75df5 100644
--- a/src/main/resources/templates/febs/views/modules/product/categoryUpdate.html
+++ b/src/main/resources/templates/febs/views/modules/product/categoryUpdate.html
@@ -61,16 +61,6 @@
<input type="text" id="imageUrl" name="image" class="layui-input" readonly>
</div>
</div>
-<!-- <div class="layui-form-item">-->
-<!-- <label class="layui-form-label ">父类:</label>-->
-<!-- <div class="layui-input-block">-->
-<!-- <select name="parentId"-->
-<!-- xm-select-direction="down"-->
-<!-- xm-select="user-update-category"-->
-<!-- xm-select-skin="default">-->
-<!-- </select>-->
-<!-- </div>-->
-<!-- </div>-->
<div class="layui-form-item">
<label class="layui-form-label febs-form-item-require">是否推荐:</label>
<div class="layui-input-block">
@@ -134,31 +124,6 @@
form.render();
});
});
- // formSelects.config('user-update-category', {
- // searchUrl: ctx + 'admin/goodsCategory/categorys',
- // response: {
- // statusCode: 200
- // },
- // beforeSuccess: function (id, url, searchVal, result) {
- // var data = result.data;
- // var tranData = [];
- // for (var i = 0; i < data.length; i++) {
- // tranData.push({
- // name: data[i].name,
- // value: data[i].id
- // })
- // }
- // result.data = tranData;
- // return result;
- // },
- // success: function () {
- // formSelects.value('user-update-category', goodsCategoryVo.parentId);
- // },
- // error: function (id, url, searchVal, err) {
- // console.error(err);
- // febs.alert.error('获取分类列表失败');
- // }
- // });
initUserValue();
function initUserValue() {
--
Gitblit v1.9.1