From 22aaacd9e51da58ed10221639b6bd2fd9a13c6e5 Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期五, 16 一月 2026 18:49:23 +0800
Subject: [PATCH] 经销商管理

---
 server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java |   67 +++++++++++++++++++++++++++++----
 1 files changed, 59 insertions(+), 8 deletions(-)

diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java
index e797e19..28eff80 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java
@@ -10,10 +10,7 @@
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.Utils;
-import com.doumee.dao.business.LabelsMapper;
-import com.doumee.dao.business.MemberMapper;
-import com.doumee.dao.business.ShopJoinMapper;
-import com.doumee.dao.business.ShopMapper;
+import com.doumee.dao.business.*;
 import com.doumee.dao.business.join.ProductLabelJoinMapper;
 import com.doumee.dao.business.model.*;
 import com.doumee.dao.business.model.Labels;
@@ -61,6 +58,12 @@
 
     @Autowired
     private ShopMapper shopMapper;
+    @Autowired
+    private GoodsMapper goodsMapper;
+    @Autowired
+    private GoodsSkuMapper goodsSkuMapper;
+    @Autowired
+    private ShopGoodsRelationMapper shopGoodsRelationMapper;
 
     @Autowired
     private ShopCommentService shopCommentService;
@@ -330,6 +333,7 @@
 
     @Override
     public List<Shop> findList(Shop shop) {
+        shop.setIsdeleted(Constants.ZERO);
         QueryWrapper<Shop> wrapper = new QueryWrapper<>(shop);
         return shopMapper.selectList(wrapper);
     }
@@ -341,6 +345,10 @@
         Utils.MP.blankToNull(pageWrap.getModel());
 
         queryWrapper.selectAll(Shop.class);
+        if(pageWrap.getModel().getGoodsId()!=null){
+            //鏌ヨ鏌愬晢鍝佺殑渚涜揣浠�
+            queryWrapper.select("(select s.price from shop_goods_relation s where s.ISDELETED=0 and s.shop_id = t.id and s.GOODS_ID="+pageWrap.getModel().getGoodsId()+") as goodsPrice ");
+        }
         queryWrapper.selectAs(Labels::getName,Shop::getBigAreaName);
         queryWrapper.selectAs(Member::getNickname,Shop::getNickName);
         queryWrapper.selectAs(Member::getImgurl,Shop::getMemberImgurl);
@@ -356,7 +364,10 @@
         queryWrapper.eq(pageWrap.getModel().getSaleType()!=null, Shop::getSaleType, pageWrap.getModel().getSaleType());
         queryWrapper.eq(pageWrap.getModel().getStatus()!=null, Shop::getStatus, pageWrap.getModel().getStatus());
         queryWrapper.eq(pageWrap.getModel().getIsrec()!=null, Shop::getIsrec, pageWrap.getModel().getIsrec());
-        queryWrapper.orderByDesc(Shop::getCreateDate);
+        if(pageWrap.getModel().getGoodsId()!=null){
+            queryWrapper.orderByAsc("goodsPrice");
+        }
+        queryWrapper.orderByDesc(Shop::getId);
         IPage<Shop> result = shopJoinMapper.selectJoinPage(page, Shop.class, queryWrapper);
         String path = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
                 + systemDictDataBiz.queryByCode(Constants.OSS, Constants.SHOP_FILE).getCode();
@@ -539,16 +550,16 @@
         memberCoupon.setShopId(shopId);
         memberCoupon.setType(Constants.ZERO);
         memberCoupon.setStatus(Constants.ONE);
-        Integer shopCouponUseCount = memberCouponService.count(memberCoupon);
+        long shopCouponUseCount = memberCouponService.count(memberCoupon);
 
         ShopFollow shopFollow = new ShopFollow();
         shopFollow.setObjId(shopId);
         shopFollow.setObjType(Constants.ZERO);
-        Integer shopFansCount = shopFollowService.count(shopFollow);
+        long shopFansCount = shopFollowService.count(shopFollow);
 
         ShopNews shopNews = new ShopNews();
         shopNews.setShopId(shopId);
-        Integer shopNewCount = shopNewsService.count(shopNews);
+        long shopNewCount = shopNewsService.count(shopNews);
         ShopDataStatisticsDTO shopDataStatisticsDTO = new ShopDataStatisticsDTO();
         shopDataStatisticsDTO.setShopCouponUseCount(shopCouponUseCount)
                 .setShopFansCount(shopFansCount).setShopNewCount(shopNewCount);
@@ -585,4 +596,44 @@
         updateUserDto.setPassword(Utils.Secure.encryptPassword( shop.getCode()+"@123456", shop.getSalt()));
         shopMapper.updateById(updateUserDto);
     }
+    @Override
+    @Transactional
+    public  String setGoodsPrice(Shop dto){
+        // 鏌ヨ鐢ㄦ埛
+        Shop shop = shopMapper.selectById(dto.getId());
+        if (shop == null) {
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝渚涢攢鍟嗕俊鎭煡璇㈡棤鏁堬紒");
+        }
+        GoodsSku queryGoodsSku=new GoodsSku();
+        queryGoodsSku.setGoodsId(dto.getGoodsId());
+        queryGoodsSku.setIsdeleted(Constants.ZERO);
+        List<GoodsSku> goodsSkuList=goodsSkuMapper.selectList(new QueryWrapper<>(queryGoodsSku));
+        if(goodsSkuList==null || goodsSkuList.size() ==0){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝璇风‘璁ゅ晢鍝佷俊鎭湁鏁堜笖銆愰攢鍞环銆戝凡璁剧疆锛�");
+        }
+        //榛樿sku淇℃伅
+        GoodsSku goodsSku = goodsSkuList.get(0);
+        if(Constants.formatBigdecimal(goodsSku.getPrice()).compareTo(Constants.formatBigdecimal(dto.getGoodsPrice())) >=0){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝渚涜揣浠蜂笉鍏佽澶т簬鍟嗗搧閿�鍞环锛�");
+        }
+        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+        //鍏堝垹闄ゅ師鏉ョ殑鏁版嵁
+        shopGoodsRelationMapper.delete(new QueryWrapper<ShopGoodsRelation>().lambda()
+                .eq(ShopGoodsRelation::getGoodsId,dto.getGoodsId())
+                .eq(ShopGoodsRelation::getShopId,shop.getId())
+         );
+        ShopGoodsRelation add =new ShopGoodsRelation();
+        add.setCreator(user.getId());
+        add.setCreateDate(new Date());
+        add.setIsdeleted(Constants.ZERO);
+        add.setEditor(add.getCreator());
+        add.setEditDate(add.getCreateDate());
+        add.setShopId(dto.getId());
+        add.setGoodsId(dto.getGoodsId());
+        add.setGoodsSkuId(goodsSku.getId());
+        add.setPrice(dto.getGoodsPrice());
+        add.setStatus(Constants.ZERO);
+        shopGoodsRelationMapper.insert(add);
+        return "鎿嶄綔鎴愬姛";
+    }
 }

--
Gitblit v1.9.3