zxl
2025-10-16 9059794ae16a847c1b3aa6d1600675429ab55379
店铺上下级
2个文件已添加
96 ■■■■■ 已修改文件
framework/src/main/java/cn/lili/modules/lmk/domain/vo/StoreRelationshipVO.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
manager-api/src/main/java/cn/lili/controller/lmk/StoreRelationshipController.java 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/cn/lili/modules/lmk/domain/vo/StoreRelationshipVO.java
New file
@@ -0,0 +1,21 @@
package cn.lili.modules.lmk.domain.vo;
import cn.lili.modules.store.entity.dos.Store;
import lombok.Data;
import java.util.List;
/**
 * lmk-shop-java
 *
 * @author : zxl
 * @date : 2025-10-16 10:23
 **/
@Data
public class StoreRelationshipVO {
    private Store upStore;
    private List<Store> downStore;
}
manager-api/src/main/java/cn/lili/controller/lmk/StoreRelationshipController.java
New file
@@ -0,0 +1,75 @@
package cn.lili.controller.lmk;
import cn.lili.base.Result;
import cn.lili.common.utils.StringUtils;
import cn.lili.modules.lmk.domain.vo.StoreRelationshipVO;
import cn.lili.modules.member.entity.dos.Member;
import cn.lili.modules.member.service.MemberService;
import cn.lili.modules.store.entity.dos.Store;
import cn.lili.modules.store.service.StoreService;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import io.swagger.annotations.Api;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.List;
/**
 * lmk-shop-java
 *
 * @author : zxl
 * @date : 2025-10-16 10:10
 **/
@RequiredArgsConstructor
@Api(value = "店铺关系", tags = "店铺关系")
@RestController
@RequestMapping("/manager/lmk/storeRelationship")
public class StoreRelationshipController {
    private final StoreService storeService;
    private final MemberService memberService;
    @GetMapping("/{id}")
    public Result getStoreRelationship(@PathVariable String id){
        //通过店铺信息获得会员信息
        Store store = storeService.getById(id);
        String memberId = store.getMemberId();
        Member member = memberService.getById(memberId);
        StoreRelationshipVO vo = new StoreRelationshipVO();
        if (member !=null){
            //获得会员分享店铺id
            String shareStoreId = member.getShareStoreId();
            if (StringUtils.isNotBlank(shareStoreId)){
                //存在上级店铺
                Store upStore = storeService.getById(shareStoreId);
                vo.setUpStore(upStore);
            }
        }
        //判断是否拥有下级店铺
        List<Member> members = new LambdaQueryChainWrapper<>(memberService.getBaseMapper())
                .eq(Member::getDeleteFlag, Boolean.FALSE)
                .eq(Member::getShareStoreId, id)
                .list();
        List<Store> downStore = new ArrayList<>();
        for (Member m : members){
            if (m.getHaveStore() && StringUtils.isNotBlank(m.getStoreId())){
                downStore.add(storeService.getById(m.getStoreId()));
            }
        }
        StoreRelationshipVO storeRelationshipVO = new StoreRelationshipVO();
        storeRelationshipVO.setUpStore(store);
        storeRelationshipVO.setDownStore(downStore);
        return Result.ok().data(storeRelationshipVO);
    }
}