From 97abfaf3b963bafbf37e66066c05785dd6052725 Mon Sep 17 00:00:00 2001
From: Hentua <wangdoubleone@gmail.com>
Date: Tue, 22 Aug 2023 23:17:42 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/mall/vo/FootprintListVo.java                           |    3 
 src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html              |   88 +++++++++++----------
 src/main/java/cc/mrbird/febs/mall/vo/CollectionListVo.java                          |    3 
 src/main/resources/mapper/modules/MallMemberFootprintMapper.xml                     |    2 
 src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberCollectionServiceImpl.java |   18 ++++
 src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html           |   74 +++++++++---------
 src/main/resources/application-test.yml                                             |    2 
 src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberFootprintServiceImpl.java  |   10 ++
 src/main/resources/application.yml                                                  |    2 
 9 files changed, 119 insertions(+), 83 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberCollectionServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberCollectionServiceImpl.java
index a70cb57..3b16dcd 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberCollectionServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberCollectionServiceImpl.java
@@ -1,11 +1,14 @@
 package cc.mrbird.febs.mall.service.impl;
 
+import cc.mrbird.febs.common.exception.FebsException;
 import cc.mrbird.febs.common.utils.LoginUserUtil;
 import cc.mrbird.febs.mall.dto.AddCollectionDto;
 import cc.mrbird.febs.mall.dto.MemberCollectionListDto;
+import cc.mrbird.febs.mall.entity.MallGoods;
 import cc.mrbird.febs.mall.entity.MallMember;
 import cc.mrbird.febs.mall.entity.MallMemberCollection;
 import cc.mrbird.febs.mall.mapper.MallMemberCollectionMapper;
+import cc.mrbird.febs.mall.service.IApiMallGoodsService;
 import cc.mrbird.febs.mall.service.IMallMemberCollectionService;
 import cc.mrbird.febs.mall.vo.AddCollectionVo;
 import cc.mrbird.febs.mall.vo.CollectionListVo;
@@ -29,10 +32,25 @@
 @RequiredArgsConstructor
 public class MallMemberCollectionServiceImpl extends ServiceImpl<MallMemberCollectionMapper, MallMemberCollection> implements IMallMemberCollectionService {
 
+    private final IApiMallGoodsService apiMallGoodsService;
+
     @Override
     public void add(AddCollectionDto addCollectionDto) {
         MallMember member = LoginUserUtil.getLoginUser();
 
+        MallGoods mallgoods = apiMallGoodsService.getById(addCollectionDto.getGoodsId());
+        if (mallgoods == null) {
+            throw new FebsException("商品不存在");
+        }
+
+        LambdaQueryWrapper<MallMemberCollection> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(MallMemberCollection::getMemberId, member.getId());
+        queryWrapper.eq(MallMemberCollection::getGoodsId, addCollectionDto.getGoodsId());
+        List<MallMemberCollection> mallMemberCollections = this.baseMapper.selectList(queryWrapper);
+        if (CollUtil.isNotEmpty(mallMemberCollections)) {
+            throw new FebsException("商品已收藏");
+        }
+
         MallMemberCollection collection = new MallMemberCollection();
         collection.setMemberId(member.getId());
         collection.setGoodsId(addCollectionDto.getGoodsId());
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberFootprintServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberFootprintServiceImpl.java
index 49aa6cc..7996440 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberFootprintServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberFootprintServiceImpl.java
@@ -1,11 +1,14 @@
 package cc.mrbird.febs.mall.service.impl;
 
+import cc.mrbird.febs.common.exception.FebsException;
 import cc.mrbird.febs.common.utils.LoginUserUtil;
 import cc.mrbird.febs.mall.dto.MemberFootprintListDto;
+import cc.mrbird.febs.mall.entity.MallGoods;
 import cc.mrbird.febs.mall.entity.MallMember;
 import cc.mrbird.febs.mall.entity.MallMemberCollection;
 import cc.mrbird.febs.mall.entity.MallMemberFootprint;
 import cc.mrbird.febs.mall.mapper.MallMemberFootprintMapper;
+import cc.mrbird.febs.mall.service.IApiMallGoodsService;
 import cc.mrbird.febs.mall.service.IMallMemberFootprintService;
 import cc.mrbird.febs.mall.vo.CollectionListVo;
 import cc.mrbird.febs.mall.vo.FootprintListVo;
@@ -30,8 +33,15 @@
 @RequiredArgsConstructor
 public class MallMemberFootprintServiceImpl extends ServiceImpl<MallMemberFootprintMapper, MallMemberFootprint> implements IMallMemberFootprintService {
 
+    private final IApiMallGoodsService apiMallGoodsService;
+
     @Override
     public void add(Long goodsId, Long memberId) {
+        MallGoods mallgoods = apiMallGoodsService.getById(goodsId);
+        if (mallgoods == null) {
+            throw new FebsException("商品不存在");
+        }
+
         LambdaQueryWrapper<MallMemberFootprint> query = new LambdaQueryWrapper<>();
         query.eq(MallMemberFootprint::getGoodsId, goodsId);
         query.eq(MallMemberFootprint::getMemberId, memberId);
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/CollectionListVo.java b/src/main/java/cc/mrbird/febs/mall/vo/CollectionListVo.java
index a728c6d..7775fc0 100644
--- a/src/main/java/cc/mrbird/febs/mall/vo/CollectionListVo.java
+++ b/src/main/java/cc/mrbird/febs/mall/vo/CollectionListVo.java
@@ -8,6 +8,9 @@
 @ApiModel(value = "CollectionListVo", description = "会员收藏列表返回参数类")
 public class CollectionListVo {
 
+    @ApiModelProperty(value = "id")
+    private Long id;
+
     @ApiModelProperty(value = "商品ID")
     private Long goodsId;
 
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/FootprintListVo.java b/src/main/java/cc/mrbird/febs/mall/vo/FootprintListVo.java
index a19c44f..88a53f9 100644
--- a/src/main/java/cc/mrbird/febs/mall/vo/FootprintListVo.java
+++ b/src/main/java/cc/mrbird/febs/mall/vo/FootprintListVo.java
@@ -12,6 +12,9 @@
 @ApiModel(value = "FootprintListVo", description = "浏览记录列表返回参数类")
 public class FootprintListVo {
 
+    @ApiModelProperty(value = "足迹ID")
+    private Long id;
+
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "浏览时间")
     private Date updatedTime;
diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml
index d5473f2..dcb0185 100644
--- a/src/main/resources/application-test.yml
+++ b/src/main/resources/application-test.yml
@@ -82,4 +82,4 @@
   serviceName: yiyuanshucai
 
 system:
-  job: false
\ No newline at end of file
+  job: true
\ No newline at end of file
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index ebfeb13..fa54718 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -5,7 +5,7 @@
 
 spring:
   profiles:
-    active: dev
+    active: test
 
   servlet:
     multipart:
diff --git a/src/main/resources/mapper/modules/MallMemberFootprintMapper.xml b/src/main/resources/mapper/modules/MallMemberFootprintMapper.xml
index 5f25ed7..3890f4f 100644
--- a/src/main/resources/mapper/modules/MallMemberFootprintMapper.xml
+++ b/src/main/resources/mapper/modules/MallMemberFootprintMapper.xml
@@ -14,7 +14,7 @@
         <where>
             <if test="record != null">
                 <if test="record.memberId != null">
-                    and collection.member_id = #{record.memberId}
+                    and footprint.member_id = #{record.memberId}
                 </if>
             </if>
         </where>
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 03f8cb1..10c3e1f 100644
--- a/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
+++ b/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
@@ -190,43 +190,45 @@
                                                     <input type="text" name="originalPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
                                                 </div>
                                             </div>
+                                            <div class="layui-col-lg6">
+                                                <label class="layui-form-label febs-form-item-require">现价:</label>
+                                                <div class="layui-input-block">
+                                                    <input type="text" name="presentPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
+                                                </div>
+                                            </div>
+                                        </div>
+<!--                                        <blockquote class="layui-elem-quote blue-border">代理价格</blockquote>-->
+<!--                                        <div class="layui-row layui-col-space10 layui-form-item">-->
 <!--                                            <div class="layui-col-lg6">-->
-<!--                                                <label class="layui-form-label febs-form-item-require">折扣价:</label>-->
+<!--                                                <label class="layui-form-label febs-form-item-require">一级价格:</label>-->
 <!--                                                <div class="layui-input-block">-->
-<!--                                                    <input type="text" name="presentPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">-->
+<!--                                                    <input type="text" name="levelOnePrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">-->
 <!--                                                </div>-->
 <!--                                            </div>-->
-                                        </div>
-                                        <blockquote class="layui-elem-quote blue-border">代理价格</blockquote>
-                                        <div class="layui-row layui-col-space10 layui-form-item">
-                                            <div class="layui-col-lg6">
-                                                <label class="layui-form-label febs-form-item-require">一级价格:</label>
-                                                <div class="layui-input-block">
-                                                    <input type="text" name="levelOnePrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
-                                                </div>
-                                            </div>
-                                            <div class="layui-col-lg6">
-                                                <label class="layui-form-label febs-form-item-require">二级价格:</label>
-                                                <div class="layui-input-block">
-                                                    <input type="text" name="levelTwoPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
-                                                </div>
-                                            </div>
-                                        </div>
-                                        <div class="layui-row layui-col-space10 layui-form-item">
-                                            <div class="layui-col-lg6">
-                                                <label class="layui-form-label febs-form-item-require">三级价格:</label>
-                                                <div class="layui-input-block">
-                                                    <input type="text" name="levelThreePrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
-                                                </div>
-                                            </div>
-                                        </div>
-
-<!--                                        <div class="layui-form-item">-->
-<!--                                            <label class="layui-form-label febs-form-item-require">成本价:</label>-->
-<!--                                            <div class="layui-input-block">-->
-<!--                                                <input type="text" name="costPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">-->
+<!--                                            <div class="layui-col-lg6">-->
+<!--                                                <label class="layui-form-label febs-form-item-require">二级价格:</label>-->
+<!--                                                <div class="layui-input-block">-->
+<!--                                                    <input type="text" name="levelTwoPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">-->
+<!--                                                </div>-->
 <!--                                            </div>-->
 <!--                                        </div>-->
+<!--                                        <div class="layui-row layui-col-space10 layui-form-item">-->
+<!--                                            <div class="layui-col-lg6">-->
+<!--                                                <label class="layui-form-label febs-form-item-require">三级价格:</label>-->
+<!--                                                <div class="layui-input-block">-->
+<!--                                                    <input type="text" name="levelThreePrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">-->
+<!--                                                </div>-->
+<!--                                            </div>-->
+<!--                                        </div>-->
+
+                                        <div class="layui-form-item">
+                                            <div class="layui-col-lg6">
+                                                <label class="layui-form-label febs-form-item-require">成本价:</label>
+                                                <div class="layui-input-block">
+                                                    <input type="text" name="costPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
+                                                </div>
+                                            </div>
+                                        </div>
                                         <blockquote class="layui-elem-quote blue-border">运费设置</blockquote>
                                         <div class="layui-form-item">
                                             <label class="layui-form-label">运费:</label>
@@ -277,12 +279,12 @@
                                                         添加
                                                     </button>
                                                 </div>
-                                                <div class="layui-col-lg1">
-                                                    <button type="button"
-                                                            class="layui-btn layui-btn-normal layui-btn" id="test4">
-                                                        新增样品
-                                                    </button>
-                                                </div>
+<!--                                                <div class="layui-col-lg1">-->
+<!--                                                    <button type="button"-->
+<!--                                                            class="layui-btn layui-btn-normal layui-btn" id="test4">-->
+<!--                                                        新增样品-->
+<!--                                                    </button>-->
+<!--                                                </div>-->
                                             </div>
 
                                             <div class="layui-form-item">
@@ -448,14 +450,14 @@
                 ,{field: 'index', title: '序号', width:70}
                 ,{field: 'styleName', title: '样式', edit:'text', width:200}
                 ,{field: 'skuName', title: '规格', edit:'text', width:200}
-                ,{field: 'sample', title:'样品', width:100}
+                // ,{field: 'sample', title:'样品', width:100}
                 ,{field: 'goodsWeight', title: '重量', edit:'text', width:100}
-                // ,{field: 'presentPrice', title: '折扣价', edit:'text', width:100}
-                ,{field: 'levelOnePrice', title: '一级价格', edit:'text', width:100}
-                ,{field: 'levelTwoPrice', title: '二级价格', edit:'text', width:100}
-                ,{field: 'levelThreePrice', title: '三级价格', edit:'text', width:100}
+                // ,{field: 'levelOnePrice', title: '一级价格', edit:'text', width:100}
+                // ,{field: 'levelTwoPrice', title: '二级价格', edit:'text', width:100}
+                // ,{field: 'levelThreePrice', title: '三级价格', edit:'text', width:100}
                 ,{field: 'originalPrice', title: '原价', edit:'text', width:100}
-                // ,{field: 'costPrice', title: '成本价', edit:'text', width:100}
+                ,{field: 'presentPrice', title: '现价', edit:'text', width:100}
+                ,{field: 'costPrice', title: '成本价', edit:'text', width:100}
                 ,{templet: '#tableImgUpload', title: '缩略图', width:150}
                 ,{field: 'stock', title: '库存', edit:'text', width:100}
                 ,{field: 'skuVolume', title: '销量', edit:'text', width:100}
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 e0ef5d6..8ac71dd 100644
--- a/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html
+++ b/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html
@@ -214,43 +214,44 @@
                                                            placeholder="" autoComplete="off" class="layui-input">
                                                 </div>
                                             </div>
-<!--                                            <div class="layui-col-lg6">-->
-<!--                                                <label class="layui-form-label febs-form-item-require">折扣价:</label>-->
-<!--                                                <div class="layui-input-block">-->
-<!--                                                    <input type="text" name="presentPrice" lay-verify="required"-->
-<!--                                                           placeholder="" autoComplete="off" class="layui-input">-->
-<!--                                                </div>-->
-<!--                                            </div>-->
-                                        </div>
-                                        <blockquote class="layui-elem-quote blue-border">代理价格</blockquote>
-                                        <div class="layui-row layui-col-space10 layui-form-item">
                                             <div class="layui-col-lg6">
-                                                <label class="layui-form-label febs-form-item-require">一级价格:</label>
+                                                <label class="layui-form-label febs-form-item-require">现价:</label>
                                                 <div class="layui-input-block">
-                                                    <input type="text" name="levelOnePrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
-                                                </div>
-                                            </div>
-                                            <div class="layui-col-lg6">
-                                                <label class="layui-form-label febs-form-item-require">二级价格:</label>
-                                                <div class="layui-input-block">
-                                                    <input type="text" name="levelTwoPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
-                                                </div>
-                                            </div>
-                                        </div>
-                                        <div class="layui-row layui-col-space10 layui-form-item">
-                                            <div class="layui-col-lg6">
-                                                <label class="layui-form-label febs-form-item-require">三级价格:</label>
-                                                <div class="layui-input-block">
-                                                    <input type="text" name="levelThreePrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
+                                                    <input type="text" name="presentPrice" lay-verify="required"
+                                                           placeholder="" autoComplete="off" class="layui-input">
                                                 </div>
                                             </div>
                                         </div>
 
-<!--                                        <div class="layui-form-item">-->
-<!--                                            <label class="layui-form-label febs-form-item-require">成本价:</label>-->
-<!--                                            <div class="layui-input-block">-->
-<!--                                                <input type="text" name="costPrice" lay-verify="required" placeholder=""-->
-<!--                                                       autoComplete="off" class="layui-input">-->
+                                        <div class="layui-form-item">
+                                            <div class="layui-col-lg6">
+                                                <label class="layui-form-label febs-form-item-require">成本价:</label>
+                                                <div class="layui-input-block">
+                                                    <input type="text" name="costPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
+                                                </div>
+                                            </div>
+                                        </div>
+<!--                                        <blockquote class="layui-elem-quote blue-border">代理价格</blockquote>-->
+<!--                                        <div class="layui-row layui-col-space10 layui-form-item">-->
+<!--                                            <div class="layui-col-lg6">-->
+<!--                                                <label class="layui-form-label febs-form-item-require">一级价格:</label>-->
+<!--                                                <div class="layui-input-block">-->
+<!--                                                    <input type="text" name="levelOnePrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">-->
+<!--                                                </div>-->
+<!--                                            </div>-->
+<!--                                            <div class="layui-col-lg6">-->
+<!--                                                <label class="layui-form-label febs-form-item-require">二级价格:</label>-->
+<!--                                                <div class="layui-input-block">-->
+<!--                                                    <input type="text" name="levelTwoPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">-->
+<!--                                                </div>-->
+<!--                                            </div>-->
+<!--                                        </div>-->
+<!--                                        <div class="layui-row layui-col-space10 layui-form-item">-->
+<!--                                            <div class="layui-col-lg6">-->
+<!--                                                <label class="layui-form-label febs-form-item-require">三级价格:</label>-->
+<!--                                                <div class="layui-input-block">-->
+<!--                                                    <input type="text" name="levelThreePrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">-->
+<!--                                                </div>-->
 <!--                                            </div>-->
 <!--                                        </div>-->
 
@@ -480,14 +481,13 @@
                 ,{field: 'index', title: '序号', width: 70}
                 ,{field: 'styleName', title: '样式', edit:'text', width:200}
                 ,{field: 'skuName', title: '规格', edit:'text', width:200}
-                ,{field: 'sample', title:'样品', width:100}
                 ,{field: 'goodsWeight', title: '重量', edit:'text', width:100}
-                // ,{field: 'presentPrice', title: '折扣价', edit:'text', width:100}
                 ,{field: 'originalPrice', title: '原价', edit:'text', width:100}
-                ,{field: 'levelOnePrice', title: '一级价格', edit:'text', width:100}
-                ,{field: 'levelTwoPrice', title: '二级价格', edit:'text', width:100}
-                ,{field: 'levelThreePrice', title: '三级价格', edit:'text', width:100}
-                // ,{field: 'costPrice', title: '成本价', edit:'text', width:100}
+                ,{field: 'presentPrice', title: '现价', edit:'text', width:100}
+                // ,{field: 'levelOnePrice', title: '一级价格', edit:'text', width:100}
+                // ,{field: 'levelTwoPrice', title: '二级价格', edit:'text', width:100}
+                // ,{field: 'levelThreePrice', title: '三级价格', edit:'text', width:100}
+                ,{field: 'costPrice', title: '成本价', edit:'text', width:100}
                 ,{templet: '#tableImgUpload', title: '缩略图', width:150}
                 ,{field: 'stock', title: '库存', edit:'text', width:100}
                 ,{field: 'skuVolume', title: '销量', edit:'text', width:100}

--
Gitblit v1.9.1