From 6ac0849d13ec2f178b2daa6cd3e63bbe9fdde596 Mon Sep 17 00:00:00 2001
From: huanghongfa <huanghongfa123456>
Date: 星期二, 20 四月 2021 21:22:42 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopStoreServiceImpl.java |  128 +++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 125 insertions(+), 3 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopStoreServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopStoreServiceImpl.java
index 0b5400f..05f514c 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopStoreServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopStoreServiceImpl.java
@@ -1,14 +1,25 @@
 package com.panzhihua.service_community.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.panzhihua.common.model.dtos.shop.PageComShopStoreDTO;
 import com.panzhihua.common.model.vos.R;
+import com.panzhihua.common.model.vos.shop.*;
+import com.panzhihua.common.model.vos.shop.PageShopStoreVO;
+import com.panzhihua.service_community.dao.ComShopGoodsAttrDAO;
+import com.panzhihua.service_community.dao.ComShopGoodsDAO;
+import com.panzhihua.common.model.vos.shop.PageShopStoreVO;
 import com.panzhihua.service_community.dao.ComShopStoreDAO;
 import com.panzhihua.service_community.model.dos.ComShopStoreDO;
 import com.panzhihua.service_community.service.ComShopStoreService;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
 
 /**
  * @auther lyq
@@ -19,10 +30,121 @@
 @Service
 public class ComShopStoreServiceImpl extends ServiceImpl<ComShopStoreDAO, ComShopStoreDO> implements ComShopStoreService {
 
+    @Resource
+    private ComShopGoodsDAO shopGoodsDAO;
+    @Resource
+    private ComShopGoodsAttrDAO comShopGoodsAttrDAO;
+
+    /**
+     * 查询店铺列表
+     *
+     * @param pageComShopStoreDTO 请求参数
+     * @return 店铺列表
+     */
+
     @Override
-    public R pageStoreList(PageComShopStoreDTO pageComShopStoreDTO){
-        Page page = new Page<>(pageComShopStoreDTO.getPageNum(),pageComShopStoreDTO.getPageSize());
-        return R.ok(this.baseMapper.pageShopStore(page,pageComShopStoreDTO));
+    public R pageStoreList(PageComShopStoreDTO pageComShopStoreDTO) {
+        Page page = new Page<>(pageComShopStoreDTO.getPageNum(), pageComShopStoreDTO.getPageSize());
+        IPage<PageShopStoreVO> comShopStoreVOIPage = this.baseMapper.pageShopStore(page, pageComShopStoreDTO);
+        return R.ok(comShopStoreVOIPage);
     }
 
+    /**
+     * 查询店铺详情
+     *
+     * @param comShopStoreDTO 请求参数
+     * @return 店铺详情
+     */
+    @Override
+    public R shopStoreDetail(PageComShopStoreDTO comShopStoreDTO) {
+        //查询店铺
+        ComShopStoreDO storeDO = this.baseMapper.selectById(comShopStoreDTO.getStoreId());
+        if (storeDO == null) {
+            return R.fail(401, "店铺不存在");
+        }
+        if (storeDO.getStatus().equals(ComShopStoreDO.status.no)) {
+            return R.fail(402, "店铺已被禁用");
+        }
+        PageShopStoreVO shopStoreVO = new PageShopStoreVO();
+        BeanUtils.copyProperties(storeDO, shopStoreVO);
+
+        //查询店铺下商品信息
+        Page page = new Page<>(comShopStoreDTO.getPageNum(), comShopStoreDTO.getPageSize());
+
+        List<ComShopGoodsVO> goodsList = shopGoodsDAO.pageShopGoodsByStoreId(page, comShopStoreDTO).getRecords();
+        if(!goodsList.isEmpty()){
+            //查询商品规格列表
+            goodsList.forEach(goods -> {
+                List<ComShopGoodsAttrVO> goodsAttrList = comShopGoodsAttrDAO.getGoodsAttr(goods.getId());
+                if(!goodsAttrList.isEmpty()){
+                    goods.setGoodsAttrList(goodsAttrList);
+                }
+            });
+        }
+        shopStoreVO.setGoodsList(goodsList);
+        return R.ok(shopStoreVO);
+
+    }
+
+    @Override
+    public R saveStore(ShopStoreVO storeVO) {
+        if (storeVO == null) {
+            return R.ok("500", "数据为空!");
+        }
+        ComShopStoreDO comShopStoreDO = this.baseMapper.selectOne(new LambdaQueryWrapper<ComShopStoreDO>()
+                .eq(ComShopStoreDO::getStoreAccount, storeVO.getStoreAccount()));
+        if (comShopStoreDO != null) {
+            return R.ok("500", "商家账号存在");
+        }
+        ComShopStoreDO storeDO = new ComShopStoreDO();
+        BeanUtils.copyProperties(storeVO, storeDO);
+        storeDO.setSale(0);
+        this.baseMapper.insert(storeDO);
+        return R.ok();
+    }
+
+    @Override
+    public R editStore(Long id, ShopStoreVO storeVO) {
+        if (storeVO == null) {
+            return R.ok("500", "数据为空!");
+        }
+        LambdaQueryWrapper<ComShopStoreDO> query = new LambdaQueryWrapper<ComShopStoreDO>().eq(ComShopStoreDO::getId, id);
+        ComShopStoreDO storeDO = new ComShopStoreDO();
+        BeanUtils.copyProperties(storeVO, storeDO);
+        int update = this.baseMapper.update(storeDO, query);
+        return update > 0 ? R.ok() : R.fail();
+    }
+
+    @Override
+    public R deleteStore(Long[] id) {
+        LambdaQueryWrapper<ComShopStoreDO> query = new LambdaQueryWrapper<ComShopStoreDO>().in(ComShopStoreDO::getId, id);
+        List<ComShopStoreDO> comShopStoreDO = this.baseMapper.selectList(query);
+        for (ComShopStoreDO shopStoreDO:comShopStoreDO) {
+            shopStoreDO.setDeleteStatus(2);
+            int update = this.baseMapper.updateById(shopStoreDO);
+        }
+        return R.ok();
+    }
+
+    @Override
+    public R getOneInfo(Long id) {
+        ComShopStoreDO comShopStoreDO = this.baseMapper.selectById(id);
+        if (comShopStoreDO == null) {
+            R.fail(500, "商铺不存在");
+        }
+        ShopStoreVO shopStoreVO = new ShopStoreVO();
+        BeanUtils.copyProperties(comShopStoreDO, shopStoreVO);
+        return R.ok(shopStoreVO);
+    }
+
+    @Override
+    public R getUserStoreInfo(Long userId) {
+        ComShopStoreDO comShopStoreDO = this.baseMapper.selectOne(new LambdaQueryWrapper<ComShopStoreDO>().eq(ComShopStoreDO::getDeleteStatus, 1).eq(ComShopStoreDO::getSysUserId, userId));
+        if (comShopStoreDO == null) {
+            R.fail(500, "商铺不存在");
+        }
+        ShopStoreVO shopStoreVO = new ShopStoreVO();
+        BeanUtils.copyProperties(comShopStoreDO, shopStoreVO);
+        return R.ok(shopStoreVO);
+    }
 }

--
Gitblit v1.7.1