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