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);
|
|
|
}
|
}
|