Browse Source

代码提交

jingyuanchao 2 years ago
parent
commit
38313cc05e

+ 2 - 0
soc-common/soc-common-core/src/main/java/com/xunmei/common/core/constant/ErrorMsgConstants.java

@@ -12,4 +12,6 @@ public class ErrorMsgConstants {
     public static final String QUERY_ROLE_DATA_ERROR = "获取角色信息失败!";
 
     public static final String QUERY_STATICS_SAVE_PATH_ERROR = "获取静态存储路径失败!";
+
+    public static final String CUR_USER_ORT_TYPE_ERROR = "当前用户所在机构类型无法确认!";
 }

+ 31 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/edu/service/impl/CoreEduTrainingPlanServiceImpl.java

@@ -45,6 +45,7 @@ import org.springframework.transaction.support.TransactionSynchronizationManager
 import java.util.*;
 import java.util.concurrent.CompletableFuture;
 import java.util.stream.Collectors;
+import java.util.stream.Stream;
 
 /**
  * 教育培训计划Service业务层处理
@@ -623,6 +624,35 @@ public class CoreEduTrainingPlanServiceImpl extends ServiceImpl<CoreEduTrainingP
     @Override
     public List<IdName<String, String>> planList(Long orgId) {
         SysOrg org = RemoteCallHandlerExecutor.executeRemoteCall(() -> orgService.selectOrgById(orgId, SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR);
-        return coreEduTrainingPlanMapper.planList(org.getPath());
+        final Integer orgType = org.getType();
+        switch (orgType) {
+            case 1:
+                //省联社
+                final List<CoreEduTrainingPlan> sLsPlanList = getPlanList(orgId,1,1);
+                return sLsPlanList.stream().map(x -> new IdName<>(x.getId().toString(), x.getPlanName())).collect(Collectors.toList());
+            case 2:
+                //办事处
+                SysOrg topOrg = RemoteCallHandlerExecutor.executeRemoteCall(() -> orgService.selectTopOrg(SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR);
+                final List<CoreEduTrainingPlan> lsPlanList = getPlanList(topOrg.getId(),1,1);
+                final List<CoreEduTrainingPlan> bscPlanList = getPlanList(orgId,1,1);
+                return Stream.of(lsPlanList, bscPlanList).flatMap(Collection::stream).map(x -> new IdName<>(x.getId().toString(), x.getPlanName())).collect(Collectors.toList());
+            case 3:
+                //行社
+                final List<CoreEduTrainingPlan> hsPlanList = getPlanList(orgId,0,0);
+                return hsPlanList.stream().map(x -> new IdName<>(x.getId().toString(), x.getPlanName())).collect(Collectors.toList());
+            default:
+                return new ArrayList<>();
+        }
+    }
+
+    private List<CoreEduTrainingPlan> getPlanList(Long orgId,Integer standard,Integer issue) {
+        return coreEduTrainingPlanMapper.selectList(new LambdaQueryWrapper<CoreEduTrainingPlan>()
+                .eq(CoreEduTrainingPlan::getBelongOrgId, orgId)
+                .eq(CoreEduTrainingPlan::getStandard, standard)
+                .eq(CoreEduTrainingPlan::getIssue, issue)
+                .eq(CoreEduTrainingPlan::getDeleted, 0)
+                .eq(CoreEduTrainingPlan::getPlanStatus, 0)
+                .select(CoreEduTrainingPlan::getId, CoreEduTrainingPlan::getPlanName)
+        );
     }
 }