Cui Zhi Feng
2024-09-20 bbce1624d0d4e9063a2ad71b7f54e34298da9b7a
src/main/java/com/mzl/flower/service/flower/FlowerCategoryService.java
@@ -2,6 +2,7 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.mzl.flower.base.Node;
import com.mzl.flower.base.cache.CategoryPriceCacheClient;
import com.mzl.flower.config.exception.ValidationException;
import com.mzl.flower.config.security.SecurityUtils;
@@ -12,12 +13,15 @@
import com.mzl.flower.dto.response.flower.FlowerCategoryDTO;
import com.mzl.flower.dto.response.flower.FlowerCategoryShowDTO;
import com.mzl.flower.dto.response.flower.FlowerCategoryTreeDTO;
import com.mzl.flower.entity.customer.Customer;
import com.mzl.flower.entity.flower.Flower;
import com.mzl.flower.entity.flower.FlowerCategory;
import com.mzl.flower.entity.flower.FlowerCategoryDaily;
import com.mzl.flower.entity.menber.Member;
import com.mzl.flower.mapper.flower.FlowerCategoryDailyMapper;
import com.mzl.flower.mapper.flower.FlowerCategoryMapper;
import com.mzl.flower.mapper.flower.FlowerMapper;
import com.mzl.flower.mapper.member.MemberMapper;
import com.mzl.flower.service.BaseService;
import com.mzl.flower.utils.TreeBuilderUtil;
import io.micrometer.core.instrument.util.StringUtils;
@@ -118,9 +122,26 @@
        return dto;
    }
    public List<FlowerCategoryTreeDTO> selectCategoryList(FlowerCategoryQueryDTO dto){
        return categoryMapper.selectCategoryList(dto);
    }
    public List<FlowerCategoryTreeDTO> selectCategoryTree(FlowerCategoryQueryDTO dto) {
        List<FlowerCategoryTreeDTO> treeList = categoryMapper.selectTreeList(dto);
        treeList = (List<FlowerCategoryTreeDTO>) TreeBuilderUtil.buildListToTree(treeList);
        if(treeList != null && treeList.size() > 0){
            for(FlowerCategoryTreeDTO t : treeList){
                List<Node> cLs = t.getChildren();
                String ll = t.getLevelLimit();
                if(cLs != null && cLs.size() > 0){
                    for(Node c : cLs){
                        FlowerCategoryTreeDTO cc = (FlowerCategoryTreeDTO)c;
                        cc.setLevelLimit(ll);
                    }
                }
            }
        }
        return treeList;
    }
@@ -140,7 +161,11 @@
        List<FlowerCategoryTreeDTO> treeList = new ArrayList<>();
        List<FlowerCategoryTreeDTO> result = new ArrayList<>();
        if(tLs != null && tLs.size() > 0){
            Long partnerId = getCurrentCustomerPartner();
            Customer p = getCurrentCustomerWithoutCheck();
            Long partnerId = p == null ? null : p.getPartnerId();
            Long levelId = p == null ? null : p.getLevelId();
            Member member = getMember(levelId);
            for(FlowerCategoryTreeDTO t : tLs){
                if(t.getParentId() != null && t.getFlowerCount() == 0){
                    continue;
@@ -151,6 +176,8 @@
                    JSONObject o = parseObject(ppp, JSONObject.class);
                    t.setPriceLow(o.getBigDecimal("priceLow"));
                    t.setPriceHigh(o.getBigDecimal("priceHigh"));
                    t.setPriceLowMember(calculateMemberPrice(t.getPriceLow(), member));
                    t.setPriceHighMember(calculateMemberPrice(t.getPriceHigh(), member));
                }
                treeList.add(t);