From 248f8116f4ef74f63429c54915498eba6634bb61 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 24 Mar 2026 10:46:13 +0800
Subject: [PATCH] fix(yinhe): 修复公司级别限制logo的比较逻辑

---
 src/main/java/cc/mrbird/febs/yinhe/service/impl/YhAiServiceImpl.java |   64 ++++++++++++++++++++++++++++++++
 1 files changed, 64 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/yinhe/service/impl/YhAiServiceImpl.java b/src/main/java/cc/mrbird/febs/yinhe/service/impl/YhAiServiceImpl.java
index b3a34d8..1ded724 100644
--- a/src/main/java/cc/mrbird/febs/yinhe/service/impl/YhAiServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/yinhe/service/impl/YhAiServiceImpl.java
@@ -86,6 +86,13 @@
             yhMemberVo.setCompanyId(yhAiCompany.getId());
             yhMemberVo.setCompanyName(yhAiCompany.getName());
             yhMemberVo.setPhone(yhAiMember.getPhone());
+
+            String levelCode = yhAiCompany.getLevelCode();
+            YHSysCompanyLevel yhSysCompanyLevel = yhSysCompanyLevelMapper.selectOne(
+                    Wrappers.lambdaQuery(YHSysCompanyLevel.class)
+                            .eq(YHSysCompanyLevel::getCode, levelCode)
+            );
+            yhMemberVo.setLimitLogo(yhSysCompanyLevel.getLimitLogo());
         }
         return new FebsResponse().success().data(yhMemberVo);
     }
@@ -542,7 +549,38 @@
         YhAiMember yhAiMember = yhAiMemberMapper.selectOne(Wrappers.lambdaQuery(YhAiMember.class).eq(YhAiMember::getMemberUuid, memberUuid));
         String companyId = yhAiMember.getCompanyId();
 
+
+
         List<YHBannerVo> vos = new ArrayList<>();
+
+        YHAiCompany yhAiCompany = yhAiCompanyMapper.selectById(companyId);
+        String levelCode = yhAiCompany.getLevelCode();
+        if (StrUtil.isNotEmpty(levelCode)){
+            YHSysCompanyLevel sysCompanyLevel = yhSysCompanyLevelMapper.selectOne(
+                    Wrappers.lambdaQuery(YHSysCompanyLevel.class)
+                            .eq(YHSysCompanyLevel::getCode, levelCode)
+            );
+
+            Integer limitLogo = sysCompanyLevel.getLimitLogo();
+            if (1 == limitLogo){
+                List<YHAiBanner> list = yhAiBannerMapper.selectList(
+                        Wrappers.lambdaQuery(YHAiBanner.class)
+                                .eq(YHAiBanner::getState, 1)
+                                .isNull(YHAiBanner::getCompanyId)
+                                .orderByDesc(YHAiBanner::getSort)
+                );
+                if (CollUtil.isNotEmpty(list)){
+                    for (YHAiBanner aiBanner : list){
+                        YHBannerVo vo = new YHBannerVo();
+                        vo.setName(aiBanner.getName());
+                        vo.setImageUrl(aiBanner.getImageUrl());
+                        vo.setSort(aiBanner.getSort());
+                        vos.add(vo);
+                    }
+                }
+                return new FebsResponse().success().data(vos);
+            }
+        }
         List<YHAiBanner> list = yhAiBannerMapper.selectList(
                 Wrappers.lambdaQuery(YHAiBanner.class)
                         .eq(YHAiBanner::getState, 1)
@@ -569,6 +607,32 @@
 
         YHLogoVo yhLogoVo = new YHLogoVo();
 
+        YHAiCompany yhAiCompany = yhAiCompanyMapper.selectById(companyId);
+        String levelCode = yhAiCompany.getLevelCode();
+        if (StrUtil.isNotEmpty(levelCode)){
+            YHSysCompanyLevel sysCompanyLevel = yhSysCompanyLevelMapper.selectOne(
+                    Wrappers.lambdaQuery(YHSysCompanyLevel.class)
+                            .eq(YHSysCompanyLevel::getCode, levelCode)
+            );
+
+            Integer limitLogo = sysCompanyLevel.getLimitLogo();
+            if (1 == limitLogo){
+                List<YHAiLogo> yhAiLogos = yhAiLogoMapper.selectList(
+                        Wrappers.lambdaQuery(YHAiLogo.class)
+                                .eq(YHAiLogo::getState, 1)
+                                .isNull(YHAiLogo::getCompanyId)
+                );
+                if (CollUtil.isNotEmpty(yhAiLogos)){
+                    YHAiLogo yhAiLogo = yhAiLogos.get(0);
+                    yhLogoVo.setName(yhAiLogo.getName());
+                    yhLogoVo.setImageUrl(yhAiLogo.getImageUrl());
+                    yhLogoVo.setDesription(yhAiLogo.getDesription());
+                }
+
+                return new FebsResponse().success().data(yhLogoVo);
+            }
+        }
+
         List<YHAiLogo> yhAiLogos = yhAiLogoMapper.selectList(
                 Wrappers.lambdaQuery(YHAiLogo.class)
                         .eq(YHAiLogo::getState, 1)

--
Gitblit v1.9.1