From 42dafd36af2380a29d69669684a71ae79c3fa13e Mon Sep 17 00:00:00 2001 From: wuchunlei Date: Thu, 11 Apr 2024 09:46:54 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=9B=BD=E5=AD=A6=E5=8C=BB=E5=AD=A6?= =?UTF-8?q?=E6=A0=87=E7=AD=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/ShopProductMedicineLabelServiceImpl.java | 2 +- .../service/impl/ShopProductMedicineMarketServiceImpl.java | 2 +- .../service/impl/ShopProductSociologyLabelServiceImpl.java | 2 +- .../service/impl/ShopProductSociologyMarketServiceImpl.java | 2 +- .../service/impl/ShopProductToMedicineLabelServiceImpl.java | 2 +- .../service/impl/ShopProductToMedicineMarketServiceImpl.java | 2 +- .../service/impl/ShopProductToSociologyLabelServiceImpl.java | 2 +- .../service/impl/ShopProductToSociologyMarketServiceImpl.java | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineLabelServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineLabelServiceImpl.java index 670267b4..db7a269d 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineLabelServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineLabelServiceImpl.java @@ -8,6 +8,6 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @Slf4j -@Service("medicineShopProductMedicineLabelService") +@Service("masterShopProductMedicineLabelService") public class ShopProductMedicineLabelServiceImpl extends ServiceImpl implements ShopProductMedicineLabelService { } diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineMarketServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineMarketServiceImpl.java index d4b06879..ef992311 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineMarketServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineMarketServiceImpl.java @@ -8,6 +8,6 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @Slf4j -@Service("medicineShopProductMedicineMarketService") +@Service("masterShopProductMedicineMarketService") public class ShopProductMedicineMarketServiceImpl extends ServiceImpl implements ShopProductMedicineMarketService { } diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopProductSociologyLabelServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopProductSociologyLabelServiceImpl.java index 0845315f..98ff0a01 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopProductSociologyLabelServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopProductSociologyLabelServiceImpl.java @@ -12,7 +12,7 @@ import java.util.List; import java.util.stream.Collectors; @Slf4j -@Service("sociologyShopProductSociologyLabelService") +@Service("masterShopProductSociologyLabelService") public class ShopProductSociologyLabelServiceImpl extends ServiceImpl implements ShopProductSociologyLabelService { @Autowired diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopProductSociologyMarketServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopProductSociologyMarketServiceImpl.java index 9a14622c..bebc564b 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopProductSociologyMarketServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopProductSociologyMarketServiceImpl.java @@ -12,7 +12,7 @@ import java.util.List; import java.util.stream.Collectors; @Slf4j -@Service("sociologyShopProductSociologyMarketService") +@Service("masterShopProductSociologyMarketService") public class ShopProductSociologyMarketServiceImpl extends ServiceImpl implements ShopProductSociologyMarketService { @Autowired diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineLabelServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineLabelServiceImpl.java index 81e16dc1..206a32ec 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineLabelServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineLabelServiceImpl.java @@ -8,6 +8,6 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @Slf4j -@Service("medicineShopProductToMedicineLabelService") +@Service("masterShopProductToMedicineLabelService") public class ShopProductToMedicineLabelServiceImpl extends ServiceImpl implements ShopProductToMedicineLabelService { } diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineMarketServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineMarketServiceImpl.java index 300b8d0d..614b3572 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineMarketServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineMarketServiceImpl.java @@ -8,6 +8,6 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @Slf4j -@Service("medicineShopProductToMedicineMarketService") +@Service("masterShopProductToMedicineMarketService") public class ShopProductToMedicineMarketServiceImpl extends ServiceImpl implements ShopProductToMedicineMarketService { } diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopProductToSociologyLabelServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopProductToSociologyLabelServiceImpl.java index 77df5dff..8640d82b 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopProductToSociologyLabelServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopProductToSociologyLabelServiceImpl.java @@ -8,6 +8,6 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @Slf4j -@Service("sociologyShopProductToSociologyLabelService") +@Service("masterShopProductToSociologyLabelService") public class ShopProductToSociologyLabelServiceImpl extends ServiceImpl implements ShopProductToSociologyLabelService { } diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopProductToSociologyMarketServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopProductToSociologyMarketServiceImpl.java index 7cda9ba8..89eb4f9d 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopProductToSociologyMarketServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopProductToSociologyMarketServiceImpl.java @@ -8,6 +8,6 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @Slf4j -@Service("sociologyShopProductToSociologyMarketService") +@Service("masterShopProductToSociologyMarketService") public class ShopProductToSociologyMarketServiceImpl extends ServiceImpl implements ShopProductToSociologyMarketService { } From 45d57ae5d61cefecd8c0344df877cc636b515ae7 Mon Sep 17 00:00:00 2001 From: wuchunlei Date: Thu, 11 Apr 2024 14:02:27 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E5=95=86=E5=93=81=E7=AE=A1=E7=90=86-?= =?UTF-8?q?=E5=9B=BD=E5=AD=A6=E3=80=81=E5=8C=BB=E5=AD=A6=E6=A0=87=E7=AD=BE?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/ShopProductToMedicineLabel.java | 2 +- .../entity/ShopProductToMedicineMarket.java | 3 +- .../MedicineLabelAndMarketController.java | 351 ++++++++++++++++++ .../SociologyLabelAndMarketController.java | 2 +- .../ShopProductMedicineLabelService.java | 4 + .../ShopProductMedicineMarketService.java | 3 + .../ShopProductMedicineLabelServiceImpl.java | 34 +- .../ShopProductMedicineMarketServiceImpl.java | 34 +- ...ShopProductToMedicineLabelServiceImpl.java | 2 +- ...hopProductToMedicineMarketServiceImpl.java | 2 +- 10 files changed, 429 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/peanut/modules/common/entity/ShopProductToMedicineLabel.java b/src/main/java/com/peanut/modules/common/entity/ShopProductToMedicineLabel.java index ba78a5a7..f5c4200f 100644 --- a/src/main/java/com/peanut/modules/common/entity/ShopProductToMedicineLabel.java +++ b/src/main/java/com/peanut/modules/common/entity/ShopProductToMedicineLabel.java @@ -32,7 +32,7 @@ public class ShopProductToMedicineLabel implements Serializable { @TableField(exist = false) private ShopProduct product; @TableField(exist = false) - private ShopProductToMedicineLabel label; + private ShopProductMedicineLabel label; diff --git a/src/main/java/com/peanut/modules/common/entity/ShopProductToMedicineMarket.java b/src/main/java/com/peanut/modules/common/entity/ShopProductToMedicineMarket.java index 387fac1b..88ea445e 100644 --- a/src/main/java/com/peanut/modules/common/entity/ShopProductToMedicineMarket.java +++ b/src/main/java/com/peanut/modules/common/entity/ShopProductToMedicineMarket.java @@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; - import java.io.Serializable; import java.util.Date; @@ -32,7 +31,7 @@ public class ShopProductToMedicineMarket implements Serializable { @TableField(exist = false) private ShopProduct product; @TableField(exist = false) - private ShopProductToMedicineMarket market; + private ShopProductMedicineMarket market; diff --git a/src/main/java/com/peanut/modules/master/controller/MedicineLabelAndMarketController.java b/src/main/java/com/peanut/modules/master/controller/MedicineLabelAndMarketController.java index 6bfd8c0f..1566be33 100644 --- a/src/main/java/com/peanut/modules/master/controller/MedicineLabelAndMarketController.java +++ b/src/main/java/com/peanut/modules/master/controller/MedicineLabelAndMarketController.java @@ -1,4 +1,355 @@ package com.peanut.modules.master.controller; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.github.yulichang.wrapper.MPJLambdaWrapper; +import com.peanut.common.utils.R; +import com.peanut.modules.common.entity.*; +import com.peanut.modules.master.service.*; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import java.util.List; +import java.util.Map; + +/** + * 吴门医述医学商品标签、营销标签管理 + */ +@Slf4j +@RestController("masterMedicineLabelAndMarket") +@RequestMapping("master/medicineLabelAndMarket") public class MedicineLabelAndMarketController { + + @Autowired + private ShopProductMedicineLabelService labelService; + @Autowired + private ShopProductMedicineMarketService marketService; + @Autowired + private ShopProductToMedicineLabelService toLabelService; + @Autowired + private ShopProductToMedicineMarketService toMarketService; + @Autowired + private ShopProductService productService; + + /** + * 标签树 + */ + @RequestMapping(path = "/labelTree") + public R labelTree() { + List labelsTree = labelService.labelTree(); + return R.ok().put("result", labelsTree); + } + + /** + * 获取标签列表 + */ + @RequestMapping(path = "/getLabelListByPid") + public R getLabelListByPid(String pid) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper(); + wrapper.eq(ShopProductMedicineLabel::getPid,pid); + wrapper.orderByAsc(ShopProductMedicineLabel::getSort); + wrapper.orderByAsc(ShopProductMedicineLabel::getCreateTime); + List labelTopList = labelService.list(wrapper); + return R.ok().put("result", labelTopList); + } + + + /** + * 营销标签树 + */ + @RequestMapping(path = "/marketTree") + public R marketTree() { + List marketsTree = marketService.marketTree(); + return R.ok().put("result", marketsTree); + } + + /** + * 获取营销标签列表 + */ + @RequestMapping(path = "/getMakertListByPid") + public R getMakertListByPid(String pid) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper(); + wrapper.eq(ShopProductMedicineMarket::getPid,pid); + wrapper.orderByAsc(ShopProductMedicineMarket::getSort); + wrapper.orderByAsc(ShopProductMedicineMarket::getCreateTime); + List marketTopList = marketService.list(wrapper); + return R.ok().put("result", marketTopList); + } + + @RequestMapping(path = "/getLabelById") + public R getLabelById(String id) { + return R.ok().put("result",labelService.getById(id)); + } + + @RequestMapping(path = "/saveOrUpdateLabel") + public R saveOrUpdateLabel(@RequestBody ShopProductMedicineLabel label) { + if (label.getId()==null){ + if(label.getPid()==0){ + labelService.save(label); + return R.ok().put("result",label); + }else { + ShopProductMedicineLabel l = labelService.getById(label.getPid()); + if (l.getIsLast()==1){ + return R.error("请将父标签设置为非最后一集"); + }else { + labelService.save(label); + return R.ok().put("result",label); + } + } + }else { + if (label.getIsLast() == 1){ + List llast = labelService.list(new LambdaQueryWrapper() + .eq(ShopProductMedicineLabel::getPid,label.getId())); + if (llast.size()>0){ + return R.error("请先删除子集,再设置为最后一集"); + }else { + labelService.saveOrUpdate(label); + return R.ok().put("result",label); + } + }else { + labelService.saveOrUpdate(label); + return R.ok().put("result",label); + } + } + } + + @RequestMapping(path = "/delLabel") + public R delLabel(String id) { + ShopProductMedicineLabel label = labelService.getById(id); + if (label.getIsLast()==1){ + MPJLambdaWrapper wrapper = new MPJLambdaWrapper(); + wrapper.eq(ShopProductToMedicineLabel::getMedicineLabelId,id); + List tolables = toLabelService.list(wrapper); + if (tolables.size()>0){ + return R.error("请先移除商品"); + }else { + labelService.removeById(id); + return R.ok(); + } + }else { + List labelList = labelService.list(new LambdaQueryWrapper().eq(ShopProductMedicineLabel::getPid,id)); + if (labelList.size() > 0) { + return R.error("请先删除子集"); + }else { + labelService.removeById(id); + return R.ok(); + } + } + } + + @RequestMapping(path = "/getMarketById") + public R getMarketById(String id) { + return R.ok().put("result",marketService.getById(id)); + } + + @RequestMapping(path = "/saveOrUpdateMarket") + public R saveOrUpdateMarket(@RequestBody ShopProductMedicineMarket market) { + if (market.getId()==null){ + if(market.getPid()==0){ + marketService.save(market); + return R.ok().put("result",market); + }else { + ShopProductMedicineMarket m = marketService.getById(market.getPid()); + if (m.getIsLast()==1){ + return R.error("请将父标签设置为非最后一集"); + }else { + marketService.save(market); + return R.ok().put("result",market); + } + } + }else { + if (market.getIsLast() == 1){ + List mList = marketService.list(new LambdaQueryWrapper() + .eq(ShopProductMedicineMarket::getPid,market.getId())); + if (mList.size()>0){ + return R.error("请先删除子集,再设置为最后一集"); + }else { + marketService.saveOrUpdate(market); + return R.ok().put("result",market); + } + }else { + marketService.saveOrUpdate(market); + return R.ok().put("result",market); + } + } + } + + @RequestMapping(path = "/delMarket") + public R delMarket(String id) { + ShopProductMedicineMarket market = marketService.getById(id); + if (market.getIsLast()==1){ + MPJLambdaWrapper wrapper = new MPJLambdaWrapper(); + wrapper.eq(ShopProductToMedicineMarket::getMedicineMarketId,id); + List tomarkets = toMarketService.list(wrapper); + if (tomarkets.size()>0){ + return R.error("请先移除商品"); + }else { + marketService.removeById(id); + return R.ok(); + } + }else { + List marketList = marketService.list(new LambdaQueryWrapper().eq(ShopProductMedicineMarket::getPid,id)); + if (marketList.size() > 0) { + return R.error("请先删除子集"); + }else { + marketService.removeById(id); + return R.ok(); + } + } + } + + /** + * 获取未关联商品列表 + */ + @RequestMapping("/getNotToLabelList") + public R getNotToLabelList(@RequestBody Map params){ + LambdaQueryWrapper wrapper = new LambdaQueryWrapper(); + if (params.containsKey("goodsType")&&!"".equals(params.get("goodsType").toString())){ + wrapper.eq(ShopProduct::getGoodsType,params.get("goodsType").toString()); + } + if (params.containsKey("productName")&&!"".equals(params.get("productName").toString())){ + wrapper.like(ShopProduct::getProductName,params.get("productName").toString()); + } + if (params.containsKey("medicineLabelId")&&!"".equals(params.get("medicineLabelId").toString())){ + String sql = "select product_id from shop_product_to_medicine_label where del_flag = 0 and medicine_label_id = "+params.get("medicineLabelId"); + wrapper.notInSql(ShopProduct::getProductId,sql); + } + if (params.containsKey("medicineMarketId")&&!"".equals(params.get("medicineMarketId").toString())){ + String sql = "select product_id from shop_product_to_medicine_market where del_flag = 0 and medicine_market_id = "+params.get("medicineMarketId"); + wrapper.notInSql(ShopProduct::getProductId,sql); + } + Page page = productService.page(new Page<>( + Long.parseLong(params.get("current").toString()), Long.parseLong(params.get("limit").toString())),wrapper); + return R.ok().put("result", page); + } + + /** + * 获取书标签列表 + */ + @RequestMapping("/getToLabelList") + public R getToLabelList(@RequestBody Map params){ + MPJLambdaWrapper wrapper = new MPJLambdaWrapper(); + wrapper.selectAll(ShopProductToMedicineLabel.class); + wrapper.leftJoin(ShopProduct.class,ShopProduct::getProductId,ShopProductToMedicineLabel::getProductId); + if (params.containsKey("productName")&&!"".equals(params.get("productName").toString())){ + wrapper.like(ShopProduct::getProductName,params.get("productName").toString()); + } + if (params.containsKey("goodsType")&&!"".equals(params.get("goodsType").toString())){ + wrapper.eq(ShopProduct::getGoodsType,params.get("goodsType").toString()); + } + if (params.containsKey("productId")&&!"".equals(params.get("productId").toString())){ + wrapper.eq(ShopProductToMedicineLabel::getProductId,params.get("productId").toString()); + } + if (params.containsKey("medicineLabelId")&&!"".equals(params.get("medicineLabelId").toString())){ + wrapper.eq(ShopProductToMedicineLabel::getMedicineLabelId,params.get("medicineLabelId").toString()); + } + Page page = toLabelService.page(new Page<>( + Long.parseLong(params.get("current").toString()), Long.parseLong(params.get("limit").toString())),wrapper); + List res = page.getRecords(); + if (res.size() > 0) { + for (ShopProductToMedicineLabel item : res) { + item.setProduct(productService.getById(item.getProductId())); + item.setLabel(labelService.getById(item.getMedicineLabelId())); + } + } + page.setRecords(res); + return R.ok().put("result", page); + } + + /** + * 获取营销标签列表 + */ + @RequestMapping("/getToMarketList") + public R getToMarketList(@RequestBody Map params){ + MPJLambdaWrapper wrapper = new MPJLambdaWrapper(); + wrapper.selectAll(ShopProductToMedicineMarket.class); + wrapper.leftJoin(ShopProduct.class,ShopProduct::getProductId,ShopProductToMedicineMarket::getProductId); + if (params.containsKey("productName")&&!"".equals(params.get("productName").toString())){ + wrapper.like(ShopProduct::getProductName,params.get("productName").toString()); + } + if (params.containsKey("goodsType")&&!"".equals(params.get("goodsType").toString())){ + wrapper.eq(ShopProduct::getGoodsType,params.get("goodsType").toString()); + } + if (params.containsKey("productId")&&!"".equals(params.get("productId").toString())){ + wrapper.eq(ShopProductToBookMarket::getProductId,params.get("productId").toString()); + } + if (params.containsKey("medicineMarketId")&&!"".equals(params.get("medicineMarketId").toString())){ + wrapper.eq(ShopProductToMedicineMarket::getMedicineMarketId,params.get("medicineMarketId").toString()); + } + Page page = toMarketService.page(new Page<>( + Long.parseLong(params.get("current").toString()), Long.parseLong(params.get("limit").toString())),wrapper); + List res = page.getRecords(); + if (res.size() > 0) { + for (ShopProductToMedicineMarket item : res) { + item.setProduct(productService.getById(item.getProductId())); + item.setMarket(marketService.getById(item.getMedicineMarketId())); + } + } + page.setRecords(res); + return R.ok().put("result", page); + } + + @RequestMapping(path = "/saveToLabel") + public R saveToLabel(@RequestBody Map params) { + if (!StringUtils.isEmpty(params.get("productId").toString())){ + String[] ids = params.get("productId").toString().split(","); + if (ids.length > 0) { + for (String id : ids) { + ShopProductToMedicineLabel toLabel = new ShopProductToMedicineLabel(); + toLabel.setMedicineLabelId(Integer.parseInt(params.get("medicineLabelId").toString())); + toLabel.setProductId(Integer.parseInt(id)); + toLabelService.save(toLabel); + } + } + } + return R.ok(); + } + + @RequestMapping(path = "/saveToMarket") + public R saveToMarket(@RequestBody Map params) { + if (!StringUtils.isEmpty(params.get("productId").toString())){ + String[] ids = params.get("productId").toString().split(","); + if (ids.length > 0) { + for (String id : ids) { + ShopProductToMedicineMarket toMarket = new ShopProductToMedicineMarket(); + toMarket.setMedicineMarketId(Integer.parseInt(params.get("medicineMarketId").toString())); + toMarket.setProductId(Integer.parseInt(id)); + toMarketService.save(toMarket); + } + } + } + return R.ok(); + } + + @RequestMapping(path = "/delToLable") + public R delToLable(String lableId,String productId) { + if(StringUtils.isNotEmpty(productId)){ + String[] productIds = productId.split(","); + for(String id : productIds){ + LambdaQueryWrapper wrapper = new LambdaQueryWrapper(); + wrapper.eq(ShopProductToMedicineLabel::getMedicineLabelId,lableId); + wrapper.eq(ShopProductToMedicineLabel::getProductId,id); + toLabelService.remove(wrapper); + } + } + return R.ok(); + } + + @RequestMapping(path = "/delToMarket") + public R delToMarket(String marketId,String productId) { + if(StringUtils.isNotEmpty(productId)){ + String[] productIds = productId.split(","); + for(String id : productIds){ + LambdaQueryWrapper wrapper = new LambdaQueryWrapper(); + wrapper.eq(ShopProductToMedicineMarket::getMedicineMarketId,marketId); + wrapper.eq(ShopProductToMedicineMarket::getProductId,id); + toMarketService.remove(wrapper); + } + } + return R.ok(); + } + } diff --git a/src/main/java/com/peanut/modules/master/controller/SociologyLabelAndMarketController.java b/src/main/java/com/peanut/modules/master/controller/SociologyLabelAndMarketController.java index 38ea93a1..73609d5d 100644 --- a/src/main/java/com/peanut/modules/master/controller/SociologyLabelAndMarketController.java +++ b/src/main/java/com/peanut/modules/master/controller/SociologyLabelAndMarketController.java @@ -217,7 +217,7 @@ public class SociologyLabelAndMarketController { String sql = "select product_id from shop_product_to_sociology_label where del_flag = 0 and sociology_label_id = "+params.get("sociologyLabelId"); wrapper.notInSql(ShopProduct::getProductId,sql); } - if (params.containsKey("bookMarketId")&&!"".equals(params.get("bookMarketId").toString())){ + if (params.containsKey("sociologyMarketId")&&!"".equals(params.get("sociologyMarketId").toString())){ String sql = "select product_id from shop_product_to_sociology_market where del_flag = 0 and sociology_market_id = "+params.get("sociologyMarketId"); wrapper.notInSql(ShopProduct::getProductId,sql); } diff --git a/src/main/java/com/peanut/modules/master/service/ShopProductMedicineLabelService.java b/src/main/java/com/peanut/modules/master/service/ShopProductMedicineLabelService.java index 26f5ad25..e1166900 100644 --- a/src/main/java/com/peanut/modules/master/service/ShopProductMedicineLabelService.java +++ b/src/main/java/com/peanut/modules/master/service/ShopProductMedicineLabelService.java @@ -2,6 +2,10 @@ package com.peanut.modules.master.service; import com.baomidou.mybatisplus.extension.service.IService; import com.peanut.modules.common.entity.ShopProductMedicineLabel; +import java.util.List; public interface ShopProductMedicineLabelService extends IService { + + List labelTree(); + } diff --git a/src/main/java/com/peanut/modules/master/service/ShopProductMedicineMarketService.java b/src/main/java/com/peanut/modules/master/service/ShopProductMedicineMarketService.java index 5cabb18a..b36554b2 100644 --- a/src/main/java/com/peanut/modules/master/service/ShopProductMedicineMarketService.java +++ b/src/main/java/com/peanut/modules/master/service/ShopProductMedicineMarketService.java @@ -2,6 +2,9 @@ package com.peanut.modules.master.service; import com.baomidou.mybatisplus.extension.service.IService; import com.peanut.modules.common.entity.ShopProductMedicineMarket; +import java.util.List; public interface ShopProductMedicineMarketService extends IService { + + List marketTree(); } diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineLabelServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineLabelServiceImpl.java index db7a269d..b1f21522 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineLabelServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineLabelServiceImpl.java @@ -1,13 +1,45 @@ package com.peanut.modules.master.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.peanut.modules.common.dao.ShopProductMedicineLabelDao; import com.peanut.modules.common.entity.ShopProductMedicineLabel; -import com.peanut.modules.medical.service.ShopProductMedicineLabelService; +import com.peanut.modules.master.service.ShopProductMedicineLabelService; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; @Slf4j @Service("masterShopProductMedicineLabelService") public class ShopProductMedicineLabelServiceImpl extends ServiceImpl implements ShopProductMedicineLabelService { + @Autowired + private ShopProductMedicineLabelDao labelDao; + + @Override + public List labelTree() { + List labels = labelDao.selectList(new QueryWrapper<>()); + List labelsTree = labels.stream().filter((shopProductMedicineLabel) -> + shopProductMedicineLabel.getPid() == 0 + ).map((label)->{ + label.setChildren(getLabelChildrens(label,labels)); + return label; + }).sorted((label1,label2)->{ + return (label1.getSort() == null? 0 : label1.getSort()) - (label2.getSort()==null?0:label2.getSort()); + }).collect(Collectors.toList()); + return labelsTree; + } + + private List getLabelChildrens(ShopProductMedicineLabel root,List all){ + List children = all.stream().filter(shopProductMedicineLabel -> { + return root.getId().equals(shopProductMedicineLabel.getPid()); + }).map(shopProductMedicineLabel -> { + shopProductMedicineLabel.setChildren(getLabelChildrens(shopProductMedicineLabel, all)); + return shopProductMedicineLabel; + }).sorted((label1,label2)->{ + return (label1.getSort()==null?0:label1.getSort()) - (label2.getSort()==null?0:label2.getSort()); + }).collect(Collectors.toList()); + return children; + } } diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineMarketServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineMarketServiceImpl.java index ef992311..801a73c4 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineMarketServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopProductMedicineMarketServiceImpl.java @@ -1,13 +1,45 @@ package com.peanut.modules.master.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.peanut.modules.common.dao.ShopProductMedicineMarketDao; import com.peanut.modules.common.entity.ShopProductMedicineMarket; -import com.peanut.modules.medical.service.ShopProductMedicineMarketService; +import com.peanut.modules.master.service.ShopProductMedicineMarketService; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; @Slf4j @Service("masterShopProductMedicineMarketService") public class ShopProductMedicineMarketServiceImpl extends ServiceImpl implements ShopProductMedicineMarketService { + @Autowired + private ShopProductMedicineMarketDao marketDao; + + @Override + public List marketTree() { + List markets = marketDao.selectList(new QueryWrapper<>()); + List marketsTree = markets.stream().filter((shopProductMedicineMarket) -> + shopProductMedicineMarket.getPid() == 0 + ).map((market)->{ + market.setChildren(getMarketChildrens(market,markets)); + return market; + }).sorted((sort1,sort2)->{ + return (sort1.getSort() == null? 0 : sort1.getSort()) - (sort2.getSort()==null?0:sort2.getSort()); + }).collect(Collectors.toList()); + return marketsTree; + } + + private List getMarketChildrens(ShopProductMedicineMarket root,List all){ + List children = all.stream().filter(shopProductMedicineMarket -> { + return root.getId().equals(shopProductMedicineMarket.getPid()); + }).map(shopProductMedicineMarket -> { + shopProductMedicineMarket.setChildren(getMarketChildrens(shopProductMedicineMarket, all)); + return shopProductMedicineMarket; + }).sorted((sort1,sort2)->{ + return (sort1.getSort()==null?0:sort1.getSort()) - (sort2.getSort()==null?0:sort2.getSort()); + }).collect(Collectors.toList()); + return children; + } } diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineLabelServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineLabelServiceImpl.java index 206a32ec..cb34c3f6 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineLabelServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineLabelServiceImpl.java @@ -3,7 +3,7 @@ package com.peanut.modules.master.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.peanut.modules.common.dao.ShopProductToMedicineLabelDao; import com.peanut.modules.common.entity.ShopProductToMedicineLabel; -import com.peanut.modules.medical.service.ShopProductToMedicineLabelService; +import com.peanut.modules.master.service.ShopProductToMedicineLabelService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineMarketServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineMarketServiceImpl.java index 614b3572..6d4ec567 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineMarketServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopProductToMedicineMarketServiceImpl.java @@ -3,7 +3,7 @@ package com.peanut.modules.master.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.peanut.modules.common.dao.ShopProductToMedicineMarketDao; import com.peanut.modules.common.entity.ShopProductToMedicineMarket; -import com.peanut.modules.medical.service.ShopProductToMedicineMarketService; +import com.peanut.modules.master.service.ShopProductToMedicineMarketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; From 9ff63b6453497042f15afa7e39d58988115ce9ae Mon Sep 17 00:00:00 2001 From: wuchunlei Date: Thu, 11 Apr 2024 15:11:47 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E8=AF=BE=E7=A8=8B-=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E6=A0=87=E7=AD=BE=E5=8F=AF=E7=BB=91=E5=AE=9A=E8=AF=BE=E7=A8=8B?= =?UTF-8?q?=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../peanut/modules/master/service/impl/CourseServiceImpl.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/peanut/modules/master/service/impl/CourseServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/CourseServiceImpl.java index ce409daf..cd8f2c0b 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/CourseServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/CourseServiceImpl.java @@ -108,7 +108,9 @@ public class CourseServiceImpl extends ServiceImpl impl public Page getCourseListCanSociology(ParamTo param) { List collect = courseToSociologyDao.selectList(new LambdaQueryWrapper().eq(CourseToSociologyEntity::getSociologyId, param.getId())).stream().map(CourseToSociologyEntity::getCourseId).collect(Collectors.toList()); LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.notIn(CourseEntity::getId,collect); + if (collect.size() != 0){ + wrapper.notIn(CourseEntity::getId,collect); + } wrapper.like(StringUtils.isNotBlank(param.getKeywords()),CourseEntity::getTitle,param.getKeywords()); Page page = this.page(new Page<>(param.getPage(), param.getLimit()), wrapper); return page; From b507ff6683e0971abc742a64d275ef5ffd4c5c81 Mon Sep 17 00:00:00 2001 From: wuchunlei Date: Thu, 11 Apr 2024 16:32:37 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E7=BB=91=E5=AE=9A=E9=82=AE=E7=AE=B1-?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=B7=B2=E7=BB=91=E5=AE=9A=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../book/controller/MyUserController.java | 31 ++++++++++++------- 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/peanut/modules/book/controller/MyUserController.java b/src/main/java/com/peanut/modules/book/controller/MyUserController.java index 9065e845..782d1fb2 100644 --- a/src/main/java/com/peanut/modules/book/controller/MyUserController.java +++ b/src/main/java/com/peanut/modules/book/controller/MyUserController.java @@ -279,19 +279,26 @@ public class MyUserController { String email = map.get("email").toString(); String code = map.get("code").toString(); Integer id = Integer.valueOf(map.get("id").toString()); - String redisCode = redisTemplate.opsForValue().get("RegistCode"+email); - if(StringUtils.isEmpty(redisCode)){ - return R.error("验证码已过期,请重试"); + //查询是否存在当前邮箱 + LambdaQueryWrapper wrapper = new LambdaQueryWrapper(); + wrapper.eq(MyUserEntity::getEmail,email); + MyUserEntity userEntity = userService.getOne(wrapper); + if (userEntity == null) { + String redisCode = redisTemplate.opsForValue().get("RegistCode"+email); + if(StringUtils.isEmpty(redisCode)){ + return R.error("验证码已过期,请重试"); + } + String lcode = redisCode.split("_")[0]; + if (!lcode.equals(code)) { + return R.error("短信验证码不符!"); + } + MyUserEntity userInfo = userService.getById(id); + userInfo.setEmail(email); + userService.updateById(userInfo); + return R.ok(); + }else { + return R.error("邮箱已被绑定!"); } - String lcode = redisCode.split("_")[0]; - if (!lcode.equals(code)) { - return R.error("短信验证码不符!"); - } - MyUserEntity userInfo = userService.getById(id); - userInfo.setEmail(email); - userService.updateById(userInfo); - return R.ok(); - } @RequestMapping("/register")