From cd00884c3db8fa6808b3b5949ab1a2b1459d6bdc Mon Sep 17 00:00:00 2001
From: cuilei <ray_tsu1@163.com>
Date: 星期三, 11 六月 2025 10:36:55 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/MdcProductionServiceImpl.java |   35 +++++++++++++++++++++++++++++++++++
 1 files changed, 35 insertions(+), 0 deletions(-)

diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/MdcProductionServiceImpl.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/MdcProductionServiceImpl.java
index 5bfc7ff..a3128e2 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/MdcProductionServiceImpl.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/MdcProductionServiceImpl.java
@@ -9,9 +9,11 @@
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.apache.commons.lang3.StringUtils;
+import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.constant.FillRuleConstant;
 import org.jeecg.common.system.vo.DictModel;
+import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.common.util.FillRuleUtil;
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.system.entity.*;
@@ -79,12 +81,25 @@
     @Override
     public List<MdcProductionTreeModel> queryTreeListByConfig(){
         SysParams sysParams = sysParamsService.getSysPramBySettingKey("dnc_production");
+        LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
         LambdaQueryWrapper<MdcProduction> query = new LambdaQueryWrapper<MdcProduction>();
         if (sysParams == null) {
             return null;
         }else {
+            List<String> productionIds = new ArrayList<>();
+            if (!("admin").equals(loginUser.getUsername())) {
+                //涓嶆槸瓒呯骇绠$悊鍛橈紝鑾峰彇鐢ㄦ埛鎷ユ湁鐨勪骇绾�
+                if (loginUser.getProductionIds() != null) {
+                    if (loginUser.getProductionIds().contains(",")) {
+                        productionIds = Arrays.asList(loginUser.getProductionIds().split(","));
+                    } else {
+                        productionIds = Collections.singletonList(loginUser.getProductionIds());
+                    }
+                }
+            }
             if (("0").equals(sysParams.getSettingValue())){
                 query.eq(MdcProduction::getOrgType,"2");
+                query.in(!productionIds.isEmpty(), MdcProduction::getId, productionIds);
                 query.eq(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_0.toString());
                 query.orderByAsc(MdcProduction::getProductionOrder);
                 List<MdcProduction> list = this.list(query);
@@ -552,6 +567,11 @@
     }
 
     @Override
+    public List<MdcProduction> findMdcPros(String userId, String productionId) {
+        return this.baseMapper.loadProductionOptions(userId, productionId);
+    }
+
+    @Override
     public List<MdcProOptionsVo> loadTeamOptions(String userId, String productionId) {
         List<MdcProOptionsVo> result = new ArrayList<>();
         List<String> productionList = this.findChildren(Arrays.asList(productionId.split(",")));
@@ -573,6 +593,11 @@
             }
         }
         return result;
+    }
+
+    @Override
+    public List<String> findProIdsByUId(String userId, List<String> allProductionIds) {
+        return this.baseMapper.findProIdsByUId(userId, allProductionIds);
     }
 
     /**
@@ -602,4 +627,14 @@
             super.update(updateWrapper);
         }
     }
+
+    @Override
+    public List<String> findChildByProId(String productionId) {
+        return this.baseMapper.findChildByProId(productionId);
+    }
+
+    @Override
+    public String findProName(String equipmentId) {
+        return this.baseMapper.findProName(equipmentId);
+    }
 }

--
Gitblit v1.9.3