From 15bd0c229222bb104bcb591eb4e1658e57336fec Mon Sep 17 00:00:00 2001 From: "1215525055@qq.com" <1215525055@qq.com> Date: Wed, 4 Jun 2025 16:05:14 +0800 Subject: [PATCH] =?UTF-8?q?=E5=95=86=E5=93=81=E5=AE=A1=E6=A0=B8BUG?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/api/goods/GoodsController.java | 7 ++++ .../impl/GoodsonlineServiceImpl.java | 32 ++++++++++++++--- .../mybatis/mapper/goods/goods-mapper.xml | 6 ++-- .../mapper/goodsonline/goodsonline-mapper.xml | 15 ++++---- src/main/resources/templates/goods/check.html | 4 +-- .../templates/goods/list-system.html | 35 +++++++++++++++++++ 6 files changed, 84 insertions(+), 15 deletions(-) diff --git a/src/main/java/cn/com/tenlion/aishop/controller/api/goods/GoodsController.java b/src/main/java/cn/com/tenlion/aishop/controller/api/goods/GoodsController.java index 6c2d880..6d65429 100644 --- a/src/main/java/cn/com/tenlion/aishop/controller/api/goods/GoodsController.java +++ b/src/main/java/cn/com/tenlion/aishop/controller/api/goods/GoodsController.java @@ -40,6 +40,13 @@ public class GoodsController extends DefaultBaseController { @Autowired private IGoodsService goodsService; + @ApiOperation(value = "置顶", notes = "置顶接口") + @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)}) + @PutMapping("update-top/{goodsIds}") + public SuccessResult updateTop(@PathVariable("goodsIds") String goodsIds) { + return goodsService.updateFlag(Arrays.asList(goodsIds.split("\\_")), "置顶"); + } + @ApiOperation(value = "今日特价", notes = "今日特价接口") @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)}) @PutMapping("update-flag/{goodsIds}") diff --git a/src/main/java/cn/com/tenlion/aishop/service/goodsonline/impl/GoodsonlineServiceImpl.java b/src/main/java/cn/com/tenlion/aishop/service/goodsonline/impl/GoodsonlineServiceImpl.java index 36484f5..bb4fd19 100644 --- a/src/main/java/cn/com/tenlion/aishop/service/goodsonline/impl/GoodsonlineServiceImpl.java +++ b/src/main/java/cn/com/tenlion/aishop/service/goodsonline/impl/GoodsonlineServiceImpl.java @@ -57,8 +57,19 @@ public class GoodsonlineServiceImpl extends DefaultBaseService implements IGoods params.put("goodsTypes", Arrays.asList(params.get("goodsType").toString().split(","))); params.put("goodsType", ""); } - PageHelper.startPage(page.getPage(), page.getRows()); - List goodsDTOs = goodsonlineDao.listPageAll(page.getParams()); + List goodsDTOs = new ArrayList<>(); + if (params.get("goodsFlag") != null && params.get("goodsFlag").toString().equals("置顶")) { + PageHelper.startPage(1, 1); + goodsDTOs = goodsonlineDao.listPageAll(page.getParams()); + if(goodsDTOs.size() < 1) { + params.put("goodsFlag", "特价"); + goodsDTOs = goodsonlineDao.listPageAll(page.getParams()); + } + }else{ + PageHelper.startPage(page.getPage(), page.getRows()); + goodsDTOs = goodsonlineDao.listPageAll(page.getParams()); + } + for(GoodsSimpleDTO dto : goodsDTOs) { if(!StringUtils.isEmpty(dto.getGoodsDevelop())) { DataDTO dataDTO1 = iDataService.get(dto.getGoodsDevelop()); @@ -66,7 +77,20 @@ public class GoodsonlineServiceImpl extends DefaultBaseService implements IGoods dto.setGoodsDevelop(dataDTO1.getDataName()); } } - if ("1".equals(dto.getGoodsGetType())) { + if(!StringUtils.isEmpty(dto.getGoodsType())) { + String[] arr = dto.getGoodsType().split(","); + String[] arr1 = new String[arr.length]; + int index = 0; + for(String a : arr) { + DataDTO dataDTO1 = iDataService.get(a); + if (dataDTO1 != null) { + arr1[index] = dataDTO1.getDataName(); + index++; + } + } + dto.setGoodsTypeName(StringUtils.join(arr1, "、")); + } + /* if ("1".equals(dto.getGoodsGetType())) { dto.setGoodsGetType("原始取得"); }else if ("2".equals(dto.getGoodsGetType())) { dto.setGoodsGetType("继受取得(受让)"); @@ -74,7 +98,7 @@ public class GoodsonlineServiceImpl extends DefaultBaseService implements IGoods dto.setGoodsGetType("继受取得(继承)"); }else if ("4".equals(dto.getGoodsGetType())) { dto.setGoodsGetType("继受取得(承受)"); - } + }*/ } PageInfo pageInfo = new PageInfo<>(goodsDTOs); return new SuccessResultList<>(goodsDTOs, pageInfo.getPageNum(), pageInfo.getTotal()); diff --git a/src/main/resources/mybatis/mapper/goods/goods-mapper.xml b/src/main/resources/mybatis/mapper/goods/goods-mapper.xml index cdfc5cd..e58203c 100644 --- a/src/main/resources/mybatis/mapper/goods/goods-mapper.xml +++ b/src/main/resources/mybatis/mapper/goods/goods-mapper.xml @@ -487,6 +487,9 @@ AND t1.goods_flag LIKE CONCAT('%', #{goodsFlag}, '%') + + AND t1.goods_flag = '' + AND t1.goods_type LIKE CONCAT('%', #{goodsType}, '%') @@ -496,9 +499,6 @@ t1.goods_type LIKE CONCAT('%', #{goodsTypes[${index}]}, '%') - - AND t1.goods_flag = #{goodsFlag} - AND ( t2.user_username LIKE CONCAT('%', #{keywords}, '%') diff --git a/src/main/resources/mybatis/mapper/goodsonline/goodsonline-mapper.xml b/src/main/resources/mybatis/mapper/goodsonline/goodsonline-mapper.xml index e68d3d8..337dfb2 100644 --- a/src/main/resources/mybatis/mapper/goodsonline/goodsonline-mapper.xml +++ b/src/main/resources/mybatis/mapper/goodsonline/goodsonline-mapper.xml @@ -206,14 +206,9 @@ t1.goods_status_time, t1.goods_vnumber, t1.goodsonline_id, - t3.goods_flag, - t2.data_name AS goods_type_name + t3.goods_flag FROM shop_goodsonline t1 - LEFT JOIN - data_data t2 - ON - t1.goods_type = t2.data_id INNER JOIN ( SELECT t2.goods_id, MAX(t2.goods_vnumber) AS v FROM shop_goodsonline t2 WHERE t2.is_delete = 0 AND t2.goods_status = 1 AND t2.goods_check_status = 2 GROUP BY t2.goods_id @@ -232,6 +227,9 @@ AND t3.goods_flag LIKE CONCAT('%', #{goodsFlag}, '%') + + AND t3.goods_flag = '' + AND t1.creator != #{notUserId} @@ -270,6 +268,11 @@ ORDER BY t1.goods_vnumber DESC , + CASE + WHEN FIND_IN_SET('置顶', t3.goods_flag) > 0 THEN 0 + WHEN FIND_IN_SET('特价', t3.goods_flag) > 0 THEN 1 + ELSE 2 + END , t1.goods_open_price DESC , diff --git a/src/main/resources/templates/goods/check.html b/src/main/resources/templates/goods/check.html index 0fb1bd5..9a95228 100644 --- a/src/main/resources/templates/goods/check.html +++ b/src/main/resources/templates/goods/check.html @@ -180,10 +180,10 @@
- +
- +
diff --git a/src/main/resources/templates/goods/list-system.html b/src/main/resources/templates/goods/list-system.html index f60d1c7..1041b90 100644 --- a/src/main/resources/templates/goods/list-system.html +++ b/src/main/resources/templates/goods/list-system.html @@ -40,6 +40,7 @@
@@ -89,6 +90,9 @@ +
@@ -524,6 +528,37 @@ } }); } + } else if(layEvent === 'zhiDingEvent') { + if(checkDatas.length === 0) { + top.dialog.msg("至少选择一个软著商品"); + } else { + var ids = ''; + for(var i = 0, item; item = checkDatas[i++];) { + if(i > 1) { + ids += '_'; + } + ids += item['goodsId']; + } + top.dialog.msg("确定改变这些商品的置顶状态?", { + time: 0, + btn: [top.dataMessage.button.yes, top.dataMessage.button.no], + shade: 0.3, + yes: function (index) { + top.dialog.close(index); + var layIndex; + top.restAjax.put(top.restAjax.path('api/goods/update-top/{goodsIds}', [ids]), {}, null, function (code, data) { + top.dialog.msg("修改完成", {time: 1000}); + reloadTable(); + }, function (code, data) { + top.dialog.msg(data.msg); + }, function () { + layIndex = top.dialog.msg("上架中...", {icon: 16, time: 0, shade: 0.3}); + }, function () { + top.dialog.close(layIndex); + }); + } + }); + } } else if(layEvent === 'downEvent') { if(checkDatas.length === 0) { top.dialog.msg(top.dataMessage.table.selectEdit);