Parcourir la source

更新火苗,迁移学生信息

DESKTOP-VAEGFGM\zqc il y a 5 mois
Parent
commit
21ffe869b9
49 fichiers modifiés avec 1304 ajouts et 393 suppressions
  1. 27 0
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/config/DataSourceConfig.java
  2. 317 149
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/config/MyBatiesPlusConfiguration.java
  3. 1 16
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/controller/app/SchoolController.java
  4. 64 70
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/controller/app/StudentController.java
  5. 49 0
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/controller/base/vo/student/MendunerStudentInfo.java
  6. 10 0
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/controller/base/vo/student/StudentInfoVo.java
  7. 25 0
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/controller/base/vo/student/StudentNameVo.java
  8. 376 0
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/dal/mysql/menduner/MendunerStudent.java
  9. 4 2
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/mapper/StudentMapper.java
  10. 28 0
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/menduner/mapper/MendunerStudentMapper.java
  11. 6 0
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/service/SchoolClassService.java
  12. 8 14
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/service/StudentService.java
  13. 16 0
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/service/mendunmer/MendunerStudentService.java
  14. 2 1
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/PraciceSubmitRecordServiceImpl.java
  15. 13 2
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/SchoolClassServiceImpl.java
  16. 20 1
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/SchoolServiceImpl.java
  17. 3 0
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/StudentInternshipCertificateServiceImpl.java
  18. 87 94
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/StudentServiceImpl.java
  19. 4 4
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/UserAuthRecordServiceImpl.java
  20. 78 0
      menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/menduner/MendunerStudentServiceImpl.java
  21. 0 40
      menduner/menduner-flames-biz/src/main/resources/mapper/StudentMapper.xml
  22. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/1
  23. 82 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/menduner/MendunerStudentMapper.xml
  24. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/AdvertisementMessageMapper.xml
  25. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/CommentAnalysisMapper.xml
  26. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/CommentMapper.xml
  27. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/EnterpriseHotspotsMapper.xml
  28. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/EnterpriseMapper.xml
  29. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/EnterpriseRecruitPlanMapper.xml
  30. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/EnterpriseRecruitTagMapper.xml
  31. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/FeedbackMapper.xml
  32. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/JobDictionaryMapper.xml
  33. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/MessageMapper.xml
  34. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/SchoolClassMapper.xml
  35. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/SchoolDepartmentMapper.xml
  36. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/SchoolEnterpriseChoiceActivityJoinMapper.xml
  37. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/SchoolEnterpriseVisitorMapper.xml
  38. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/SchoolMapper.xml
  39. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/SchoolStatisticsMapper.xml
  40. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudentExperienceMapper.xml
  41. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudentInternshipReportMapper.xml
  42. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudentJobIntentionMapper.xml
  43. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudentLanguageMapper.xml
  44. 82 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudentMapper.xml
  45. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudentRecommendationMapper.xml
  46. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudnetAwardExperienceMapper.xml
  47. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudnetSampleMapper.xml
  48. 0 0
      menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/UserAuthRecordMapper.xml
  49. 2 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/votingactivity/VotingActivityJoinItemMapper.java

+ 27 - 0
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/config/DataSourceConfig.java

@@ -0,0 +1,27 @@
+package com.citupro.module.menduner.flames.config;
+
+import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Primary;
+
+import javax.sql.DataSource;
+
+@Configuration
+public class DataSourceConfig {
+
+    @Bean(name = "primaryDataSource")
+    @ConfigurationProperties(prefix = "spring.datasource.primary.druid")
+    @Primary
+    public DataSource primaryDataSource() {
+        return DruidDataSourceBuilder.create().build();
+    }
+
+    @Bean(name = "mendunerDataSource")
+    @ConfigurationProperties(prefix = "spring.datasource.secondary.druid")
+    public DataSource mendunerDataSource() {
+        return DruidDataSourceBuilder.create().build();
+    }
+
+}

+ 317 - 149
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/config/MyBatiesPlusConfiguration.java

@@ -1,140 +1,306 @@
-//package com.citupro.flames.config;
-//
-//import com.alibaba.druid.pool.DruidDataSource;
-//import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;
-//import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
-//import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
-//import com.baomidou.mybatisplus.extension.plugins.inner.TenantLineInnerInterceptor;
-//import com.bing.digitalparadigm.component.MySqlInjector;
-//import com.bing.digitalparadigm.component.TenantMybaitsInnerInterceptor;
-//import com.citupro.common.mybatis.plugin.SqlInterceptor;
-//import org.mybatis.spring.annotation.MapperScan;
-//import org.springframework.beans.factory.annotation.Qualifier;
-//import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
-//import org.springframework.boot.context.properties.ConfigurationProperties;
-//import org.springframework.context.ApplicationContext;
-//import org.springframework.context.annotation.Bean;
-//import org.springframework.context.annotation.Conditional;
-//import org.springframework.context.annotation.Configuration;
-//import org.springframework.context.annotation.Primary;
-//import org.springframework.jdbc.datasource.DataSourceTransactionManager;
-//import javax.annotation.PostConstruct;
-//import javax.sql.DataSource;
-//import java.util.ArrayList;
-//import java.util.HashMap;
-//import java.util.List;
-//import java.util.Map;
-////@ConfigurationProperties(prefix="employeewhitelist")
-//@Configuration
-//@MapperScan("com.citupro.flames.mapper")
-//public class MyBatiesPlusConfiguration {
-//    @SuppressWarnings("all")
-//    private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(MyBatiesPlusConfiguration.class);
-//    // 精确到 master 目录,以便跟其他数据源隔离
-//    static final String MAPPER_LOCATION = "classpath:mybatis/mapper/**/*.xml";
-//    private volatile List<String> tableName = new ArrayList<>();
-//    private volatile List<String> nointerceptionTableNames = new ArrayList<>();
-//    private volatile Map<String, String> tablenameandcolumn = new HashMap<>();
+package com.citupro.module.menduner.flames.config;
+
+import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer;
+import com.baomidou.mybatisplus.autoconfigure.MybatisPlusProperties;
+import com.baomidou.mybatisplus.autoconfigure.SpringBootVFS;
+import com.baomidou.mybatisplus.core.MybatisConfiguration;
+import com.baomidou.mybatisplus.core.config.GlobalConfig;
+import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
+import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator;
+import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;
+import com.baomidou.mybatisplus.core.injector.ISqlInjector;
+import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
+import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
+import com.baomidou.mybatisplus.extension.plugins.inner.TenantLineInnerInterceptor;
+import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
+import com.citupro.module.menduner.flames.plugin.SqlInterceptor;
+import org.apache.ibatis.mapping.DatabaseIdProvider;
+import org.apache.ibatis.plugin.Interceptor;
+import org.apache.ibatis.session.SqlSessionFactory;
+import org.mybatis.spring.SqlSessionTemplate;
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.beans.factory.InitializingBean;
+import org.springframework.beans.factory.ObjectProvider;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Primary;
+import org.springframework.core.io.Resource;
+import org.springframework.core.io.ResourceLoader;
+import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
+import org.springframework.util.CollectionUtils;
+import org.springframework.util.ObjectUtils;
+import org.springframework.util.StringUtils;
+
+import javax.annotation.PostConstruct;
+import javax.sql.DataSource;
+import java.util.*;
+import java.util.function.Consumer;
+
+//@ConfigurationProperties(prefix="employeewhitelist")
+@Configuration
+@MapperScan(basePackages="com.citupro.module.menduner.flames.mapper",sqlSessionFactoryRef = "primarySqlSessionFactory",sqlSessionTemplateRef ="primarySqlSessionTemplateFactory" )
+@MapperScan(basePackages = "com.citupro.module.menduner.flames.menduner.mapper", sqlSessionFactoryRef = "mendunerSqlSessionFactory",sqlSessionTemplateRef ="mendunerSqlSessionTemplateFactory")
+@EnableConfigurationProperties({MybatisPlusProperties.class})
+public class MyBatiesPlusConfiguration implements InitializingBean {
+    @SuppressWarnings("all")
+    private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(MyBatiesPlusConfiguration.class);
+    private volatile List<String> tableName = new ArrayList<>();
+    private volatile List<String> nointerceptionTableNames = new ArrayList<>();
+    private volatile Map<String, String> tablenameandcolumn = new HashMap<>();
 //    private volatile TenantMybaitsInnerInterceptor tenantMybaitsInnerInterceptor = new TenantMybaitsInnerInterceptor(tableName, nointerceptionTableNames);
-//
+
+
+
+    private final MybatisPlusProperties properties;
+
+    @Autowired
+    private  ObjectProvider<Interceptor[]> interceptorsProvider;
+
+    @Autowired
+    private ObjectProvider<DatabaseIdProvider> databaseIdProvider;
+
+    private  Interceptor[] interceptors;
+    private final ResourceLoader resourceLoader;
+    private  DatabaseIdProvider finalDatabaseIdProvider;
+    private final List<ConfigurationCustomizer> configurationCustomizers;
+    private final ApplicationContext applicationContext;
+
+    public MyBatiesPlusConfiguration(MybatisPlusProperties properties,
+                                     ResourceLoader resourceLoader,
+                                     ObjectProvider<List<ConfigurationCustomizer>> configurationCustomizersProvider,
+                                     ApplicationContext applicationContext) {
+        this.properties = properties;
+
+        this.resourceLoader = resourceLoader;
+        this.configurationCustomizers = (List)configurationCustomizersProvider.getIfAvailable();
+        this.applicationContext = applicationContext;
+    }
+
+    @Override
+    public void afterPropertiesSet() throws Exception {
+        this.interceptors = (Interceptor[])this.interceptorsProvider.getIfAvailable();
+        this.finalDatabaseIdProvider = (DatabaseIdProvider)this.databaseIdProvider.getIfAvailable();
+
+    }
 //    @Bean
 //    public TenantLineInnerInterceptor intTenantLineInnerInterceptor2() {
 //        return new TenantLineInnerInterceptor(this.tenantMybaitsInnerInterceptor);
 //    }
-//
-////<editor-fold defaultstate="collapsed" desc="delombok">
-////</editor-fold>
-//    @Bean
-//    public MybatisPlusInterceptor mybatisPlusInterceptor(TenantLineInnerInterceptor tenantLineInnerInterceptor) {
-//        log.info("TenantConfig  init ========================= MybatisPlusInterceptor");
-//        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
-//        interceptor.addInnerInterceptor(tenantLineInnerInterceptor);
-////        interceptor.addInnerInterceptor(new BlockAttackInnerInterceptor());
-//        interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
-////        interceptor.addInnerInterceptor(new RelationInterceptor());
-//        return interceptor;
-//    }
-//
-////<editor-fold defaultstate="collapsed" desc="delombok">
-////</editor-fold>
-//    @Bean
-//    public SqlInterceptor intSqlInterceptor() {
-//        SqlInterceptor sqlInterceptor = new SqlInterceptor();
-//        return sqlInterceptor;
-//    }
-//
-////    private EmployeeWhiteListInterceptor employeeWhiteListInterceptor;
-////
-////    @Autowired
-////    private StatisticsWhiteEmployeeService statisticsWhiteEmployeeService;
-////    @Bean(name = "masterTransactionManager")
-////	@Primary
-////    public DataSourceTransactionManager masterTransactionManager(@Qualifier("dynamicRoutingDataSource") DynamicRoutingDataSource dataSource) {
-////        return new DataSourceTransactionManager(dataSource);
-////    }
-////
-////    @Bean
-//////    @ConditionalOnBean(MybatisPlusInterceptor.class)
-////    public EmployeeWhiteListInterceptor intTenantLineInnerInterceptor(MybatisPlusInterceptor mybatisPlusInterceptor){
-////        EmployeeWhiteListInterceptor employeeWhiteListInterceptor =new EmployeeWhiteListInterceptor();
-//////        employeeWhiteListInterceptor.addWhiteTableName("");
-////         employeeWhiteListInterceptor.addWhiteTableNameAll(tablenameandcolumn);
-////         mybatisPlusInterceptor.addInnerInterceptor(employeeWhiteListInterceptor);
-////
-////
-////         this.employeeWhiteListInterceptor = employeeWhiteListInterceptor;
-////         return employeeWhiteListInterceptor;
-////    }
-//    @Bean
-//    public DefaultSqlInjector sqlInjector() {
-//        return new MySqlInjector();
-//    }
-//
-//////    @DS()
-////    @Bean(name = "business",initMethod="init")
-////    @ConfigurationProperties(prefix = "spring.datasource.druid" )
-////    public DruidDataSource masterDataSource() {
-////        return  new DruidDataSource();
-////    }
-////
-////
-////    @Bean(name = "dataFactory",initMethod="init")
-////    @ConfigurationProperties(prefix = "spring.data.factory.datasource.druid" )
-////    @Conditional(value = DataFatroryCondition.class)
-////    public DruidDataSource dataFactoryDataSource() {
-////        return  new DruidDataSource();
-////    }
-////
-////    /**
-////     * 多数据源
-////     * DynamicDataSourceContextHolder 可以手动选择数据源
-////     * @param dataSource
-////     * @return
-////     */
-////    @Bean(name = "dynamicRoutingDataSource")
-////    @Primary
-////    public DynamicRoutingDataSource dynamicRoutingDataSource(@Qualifier("business") DruidDataSource dataSource, ApplicationContext applicationContext){
-////        DynamicRoutingDataSource dynamicRoutingDataSource =new DynamicRoutingDataSource();
-////        dynamicRoutingDataSource.addDataSource("business",dataSource);
-////        String[] beanNamesForType = applicationContext.getBeanNamesForType(DataSource.class);
-////        for (String beanName : beanNamesForType) {
-////            if(!"business".equals(beanName)  && !"dynamicRoutingDataSource".equals(beanName)){
-////                DataSource dynamicDataSource = applicationContext.getBean(beanName, DataSource.class);
-////                dynamicRoutingDataSource.addDataSource(beanName,dynamicDataSource);
-////            }
-////        }
-////
-////        dynamicRoutingDataSource.setPrimary("business");
-////        return dynamicRoutingDataSource;
-////    }
-//    public Map<String, String> getTablenameandcolumn() {
-//        return tablenameandcolumn;
-//    }
-//
-//    public void setTablenameandcolumn(Map<String, String> tablenameandcolumn) {
-//        this.tablenameandcolumn = tablenameandcolumn;
-//    }
-//
+
+
+    @Bean
+    public MybatisPlusInterceptor mybatisPlusInterceptor(TenantLineInnerInterceptor tenantLineInnerInterceptor) {
+        log.info("TenantConfig  init ========================= MybatisPlusInterceptor");
+        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
+        interceptor.addInnerInterceptor(tenantLineInnerInterceptor);
+//        interceptor.addInnerInterceptor(new BlockAttackInnerInterceptor());
+        interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
+//        interceptor.addInnerInterceptor(new RelationInterceptor());
+        return interceptor;
+    }
+
+    @Bean
+    public SqlInterceptor intSqlInterceptor() {
+        SqlInterceptor sqlInterceptor = new SqlInterceptor();
+        return sqlInterceptor;
+    }
+
+
+
+    @Bean(name = "primarySqlSessionFactory")
+    @Primary
+    public SqlSessionFactory primarySqlSessionFactory(@Qualifier("primaryDataSource") DataSource dataSource
+            ,MybatisPlusInterceptor mybatisPlusInterceptor,SqlInterceptor sqlInterceptor) throws Exception {
+        Resource[] resources = new PathMatchingResourcePatternResolver().getResources("classpath*:mybatis/mapper/primary/*.xml");
+
+
+        MybatisSqlSessionFactoryBean factory = new MybatisSqlSessionFactoryBean();
+        factory.setVfs(SpringBootVFS.class);
+        factory.setPlugins(mybatisPlusInterceptor,sqlInterceptor);
+        if (StringUtils.hasText(this.properties.getConfigLocation())) {
+            factory.setConfigLocation(this.resourceLoader.getResource(this.properties.getConfigLocation()));
+        }
+
+        this.applyConfiguration(factory);
+        if (this.properties.getConfigurationProperties() != null) {
+            factory.setConfigurationProperties(this.properties.getConfigurationProperties());
+        }
+
+        if (!ObjectUtils.isEmpty(this.interceptors)) {
+            factory.setPlugins(this.interceptors);
+        }
+
+        if (this.finalDatabaseIdProvider != null) {
+            factory.setDatabaseIdProvider(this.finalDatabaseIdProvider);
+        }
+
+        if (StringUtils.hasLength(this.properties.getTypeAliasesPackage())) {
+            factory.setTypeAliasesPackage(this.properties.getTypeAliasesPackage());
+        }
+
+
+
+        if (this.properties.getTypeAliasesSuperType() != null) {
+            factory.setTypeAliasesSuperType(this.properties.getTypeAliasesSuperType());
+        }
+
+        if (StringUtils.hasLength(this.properties.getTypeHandlersPackage())) {
+            factory.setTypeHandlersPackage(this.properties.getTypeHandlersPackage());
+        }
+
+        if (!ObjectUtils.isEmpty(this.properties.resolveMapperLocations())) {
+            factory.setMapperLocations(this.properties.resolveMapperLocations());
+        }
+
+        GlobalConfig globalConfig = this.properties.getGlobalConfig();
+        if (this.applicationContext.getBeanNamesForType(MetaObjectHandler.class, false, false).length > 0) {
+            MetaObjectHandler metaObjectHandler = (MetaObjectHandler)this.applicationContext.getBean(MetaObjectHandler.class);
+            globalConfig.setMetaObjectHandler(metaObjectHandler);
+        }
+
+
+
+        if (this.applicationContext.getBeanNamesForType(ISqlInjector.class, false, false).length > 0) {
+            ISqlInjector iSqlInjector = (ISqlInjector)this.applicationContext.getBean(ISqlInjector.class);
+            globalConfig.setSqlInjector(iSqlInjector);
+        }
+
+        Objects.requireNonNull(globalConfig);
+        this.getBeanThen(IdentifierGenerator.class, globalConfig::setIdentifierGenerator);
+        factory.setGlobalConfig(globalConfig);
+        factory.setMapperLocations(resources);
+        factory.setDataSource(dataSource);
+
+        return factory.getObject();
+
+    }
+
+    private void applyConfiguration(MybatisSqlSessionFactoryBean factory) {
+        MybatisPlusProperties.CoreConfiguration coreConfiguration = this.properties.getConfiguration();
+        MybatisConfiguration configuration = null;
+        if (coreConfiguration != null || !StringUtils.hasText(this.properties.getConfigLocation())) {
+            configuration = new MybatisConfiguration();
+        }
+
+        if (configuration != null && coreConfiguration != null) {
+            coreConfiguration.applyTo(configuration);
+        }
+
+        if (configuration != null && !CollectionUtils.isEmpty(this.configurationCustomizers)) {
+            Iterator var4 = this.configurationCustomizers.iterator();
+
+            while(var4.hasNext()) {
+                ConfigurationCustomizer customizer = (ConfigurationCustomizer)var4.next();
+                customizer.customize(configuration);
+            }
+        }
+
+        factory.setConfiguration(configuration);
+    }
+
+
+
+    @Bean(name = "mendunerSqlSessionFactory")
+    public SqlSessionFactory mendunerSqlSessionFactory(@Qualifier("mendunerDataSource") DataSource dataSource
+            ,MybatisPlusInterceptor mybatisPlusInterceptor,SqlInterceptor sqlInterceptor) throws Exception {
+
+        MybatisSqlSessionFactoryBean factory = new MybatisSqlSessionFactoryBean();
+
+//        factory.setma
+        factory.setPlugins(mybatisPlusInterceptor,sqlInterceptor);
+//        factory.setTypeAliasesPackage("com.citupro.flames.pojo");
+        if (StringUtils.hasText(this.properties.getConfigLocation())) {
+            factory.setConfigLocation(this.resourceLoader.getResource(this.properties.getConfigLocation()));
+        }
+
+        this.applyConfiguration(factory);
+        if (this.properties.getConfigurationProperties() != null) {
+            factory.setConfigurationProperties(this.properties.getConfigurationProperties());
+        }
+
+        if (!ObjectUtils.isEmpty(this.interceptors)) {
+            factory.setPlugins(this.interceptors);
+        }
+
+        if (this.finalDatabaseIdProvider != null) {
+            factory.setDatabaseIdProvider(this.finalDatabaseIdProvider);
+        }
+
+        if (StringUtils.hasLength(this.properties.getTypeAliasesPackage())) {
+            factory.setTypeAliasesPackage(this.properties.getTypeAliasesPackage());
+        }
+
+        if (this.properties.getTypeAliasesSuperType() != null) {
+            factory.setTypeAliasesSuperType(this.properties.getTypeAliasesSuperType());
+        }
+
+        if (StringUtils.hasLength(this.properties.getTypeHandlersPackage())) {
+            factory.setTypeHandlersPackage(this.properties.getTypeHandlersPackage());
+        }
+
+        if (!ObjectUtils.isEmpty(this.properties.resolveMapperLocations())) {
+            factory.setMapperLocations(this.properties.resolveMapperLocations());
+        }
+
+        GlobalConfig globalConfig = this.properties.getGlobalConfig();
+        if (this.applicationContext.getBeanNamesForType(MetaObjectHandler.class, false, false).length > 0) {
+            MetaObjectHandler metaObjectHandler = (MetaObjectHandler)this.applicationContext.getBean(MetaObjectHandler.class);
+            globalConfig.setMetaObjectHandler(metaObjectHandler);
+        }
+
+
+
+        if (this.applicationContext.getBeanNamesForType(ISqlInjector.class, false, false).length > 0) {
+            ISqlInjector iSqlInjector = (ISqlInjector)this.applicationContext.getBean(ISqlInjector.class);
+            globalConfig.setSqlInjector(iSqlInjector);
+        }
+        Objects.requireNonNull(globalConfig);
+        this.getBeanThen(IdentifierGenerator.class, globalConfig::setIdentifierGenerator);
+
+        factory.setGlobalConfig(globalConfig);
+        factory.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath*:mybatis/mapper/menduner/*.xml"));
+        factory.setDataSource(dataSource);
+        factory.setVfs(SpringBootVFS.class);
+
+        return factory.getObject();
+
+    }
+
+
+
+
+
+    @Bean(name = "primarySqlSessionTemplateFactory")
+    @Primary
+    public SqlSessionTemplate primarySqlSessionTemplateFactory(@Qualifier("primarySqlSessionFactory") SqlSessionFactory sqlSessionFactory) throws Exception {
+        return new SqlSessionTemplate(sqlSessionFactory);
+    }
+
+    @Bean(name = "mendunerSqlSessionTemplateFactory")
+    public SqlSessionTemplate mendunerSqlSessionTemplateFactory(@Qualifier("mendunerSqlSessionFactory") SqlSessionFactory sqlSessionFactory) throws Exception {
+        return new SqlSessionTemplate(sqlSessionFactory);
+    }
+
+
+    private <T> void getBeanThen(Class<T> clazz, Consumer<T> consumer) {
+        if (this.applicationContext.getBeanNamesForType(clazz, false, false).length > 0) {
+            consumer.accept(this.applicationContext.getBean(clazz));
+        }
+
+    }
+
+    public Map<String, String> getTablenameandcolumn() {
+        return tablenameandcolumn;
+    }
+
+    public void setTablenameandcolumn(Map<String, String> tablenameandcolumn) {
+        this.tablenameandcolumn = tablenameandcolumn;
+    }
+
 //    @PostConstruct
 //    public void printNacosConfig() {
 //        if (null != tenantMybaitsInnerInterceptor) {
@@ -143,20 +309,22 @@
 //        }
 //        log.info("从配置中心获取到过滤表的的配置为:{},不需要过滤的表配置为:{}", tableName, this.nointerceptionTableNames);
 //    }
-//
-//    public List<String> getTableName() {
-//        return tableName;
-//    }
-//
-//    public void setTableName(List<String> tableName) {
-//        this.tableName = tableName;
-//    }
-//
-//    public List<String> getNointerceptionTableNames() {
-//        return nointerceptionTableNames;
-//    }
-//
-//    public void setNointerceptionTableNames(List<String> nointerceptionTableNames) {
-//        this.nointerceptionTableNames = nointerceptionTableNames;
-//    }
-//}
+
+    public List<String> getTableName() {
+        return tableName;
+    }
+
+    public void setTableName(List<String> tableName) {
+        this.tableName = tableName;
+    }
+
+    public List<String> getNointerceptionTableNames() {
+        return nointerceptionTableNames;
+    }
+
+    public void setNointerceptionTableNames(List<String> nointerceptionTableNames) {
+        this.nointerceptionTableNames = nointerceptionTableNames;
+    }
+
+
+}

+ 1 - 16
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/controller/app/SchoolController.java

@@ -35,22 +35,7 @@ public class SchoolController {
     @Autowired
     private SchoolService schoolService;
 
-//    private SchoolS
-    /*
-    	-- 学生最新实习状态 ,暂时没有实习证书关联
-	select
-
-	student.student_name,internship_record.*,
-	if(internship_record.student_id is null ,'未申请实习', if(internship_record.`status` =2,'正在实习','申请实习中')   )  as internship_status
-
-	from student  left join (
-	select record.*,recruit.work_city_name from (
-			select student_id,GROUP_CONCAT(create_date  order by create_date desc) as date from practice_submit_record group by student_id
-	) a,practice_submit_record record ,enterprise_recruit recruit
-	where record.student_id = a.student_id and record.create_date = left(a.date,19) 	 and  recruit.enterprise_recruit_id=record.enterprise_recruit_id
-)  internship_record   on student.student_id = internship_record.student_id
-
-    * */
+
     /**
      * 分页查询
      * @param schoolOrganizationReqVo

+ 64 - 70
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/controller/app/StudentController.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.citu.framework.common.pojo.CommonResult;
 import com.citu.framework.security.core.util.SecurityFrameworkUtils;
 import com.citupro.module.menduner.flames.dal.mysql.Student;
+import com.citupro.module.menduner.flames.dal.mysql.menduner.MendunerStudent;
 import com.citupro.module.menduner.flames.service.StudentService;
 import com.citupro.module.menduner.flames.util.RequestParmterModel;
 import org.springframework.web.bind.annotation.*;
@@ -25,14 +26,6 @@ public class StudentController  {
     @Autowired
     private StudentService studentService;
 
-//    @Autowired
-//    private
-//    @PostMapping("/student/internship/list")
-//    public Result getStudentInternship/
-    @PostMapping("/student/test")
-    public CommonResult studentTest() {
-        return studentService.studentTest();
-    }
 
     /**
      * @eo.name 学生实习进度
@@ -50,7 +43,7 @@ public class StudentController  {
     /**
      * 分页查询
      * @param page 分页对象
-     * @param student 
+     * @param student
      * @return
      * @eo.name 分页查询
      * @eo.url /student/list
@@ -63,25 +56,26 @@ public class StudentController  {
 //           QueryWrapper<Student> query = Wrappers.query(requestParmterModel.getObject(Student.class));
         //query.eq("del",0);
         //TODO 根据职位推荐学生 "enterpriseRecruitId":"1670723260733612033",
-        return studentService.getStudentList(requestParmterModel.getPage(),
-                requestParmterModel.getObject(Student.class),
-                requestParmterModel.getLong("enterpriseId"),
-                requestParmterModel.getLong("enterpriseRecruitId"),
-                requestParmterModel.getString("internshipStatus"),
-                requestParmterModel.getString("departmentTitle"));
+        return studentService.getStudentList(requestParmterModel.getPage(), requestParmterModel.getObject(MendunerStudent.class)
+                , requestParmterModel.getLong("enterpriseId")
+                , requestParmterModel.getLong("enterpriseRecruitId")
+                , requestParmterModel.getString("internshipStatus")
+                , requestParmterModel.getString("departmentTitle")
+                , requestParmterModel.getString("studentName")
+        );
     }
 
-    /**
-     * @eo.name getStudentInformation
-     * @eo.url /student/information
-     * @eo.method post
-     * @eo.request-type formdata
-     * @return Result
-     */
-    @PostMapping("/student/information")
-    public CommonResult getStudentInformation() throws UnsupportedEncodingException {
-        return studentService.getStudentInformationByUserId(SecurityFrameworkUtils.getLoginUserId());
-    }
+//    /**
+//     * @eo.name getStudentInformation
+//     * @eo.url /student/information
+//     * @eo.method post
+//     * @eo.request-type formdata
+//     * @return Result
+//     */
+//    @PostMapping("/student/information")
+//    public CommonResult getStudentInformation() throws UnsupportedEncodingException {
+//        return studentService.getStudentInformationByUserId(SecurityFrameworkUtils.getLoginUserId());
+//    }
 
     /**
      * 通过id查询
@@ -98,50 +92,50 @@ public class StudentController  {
         return studentService.studentDetail(requestParmterModel.getLong("studentId"));
     }
 
-    /**
-     * 新增
-     * @param student 
-     * @return R
-     * @eo.name 新增
-     * @eo.url /student/add
-     * @eo.method post
-     * @eo.request-type json
-     */
-    @PostMapping("/student/add")
-    public CommonResult save(@RequestBody Student student) {
-        return studentService.studentAdd(student);
-    }
+//    /**
+//     * 新增
+//     * @param student
+//     * @return R
+//     * @eo.name 新增
+//     * @eo.url /student/add
+//     * @eo.method post
+//     * @eo.request-type json
+//     */
+//    @PostMapping("/student/add")
+//    public CommonResult save(@RequestBody Student student) {
+//        return studentService.studentAdd(student);
+//    }
 
-    /**
-     * 修改
-     * @param student 
-     * @return R
-     * @eo.name 修改
-     * @eo.url /student/update
-     * @eo.method post
-     * @eo.request-type json
-     */
-    @PostMapping("/student/update")
-    public CommonResult updateById(@RequestBody Student student) {
-        if (StringUtils.isNotBlank(student.getIdCardNo())) {
-            student.setAuthStatus("1");
-        }
-        student.setStudentUserId(null);
-//        .updateById(student);
-        return studentService.updateStudent(student);
-    }
+//    /**
+//     * 修改
+//     * @param student
+//     * @return R
+//     * @eo.name 修改
+//     * @eo.url /student/update
+//     * @eo.method post
+//     * @eo.request-type json
+//     */
+//    @PostMapping("/student/update")
+//    public CommonResult updateById(@RequestBody Student student) {
+//        if (StringUtils.isNotBlank(student.getIdCardNo())) {
+//            student.setAuthStatus("1");
+//        }
+//        student.setStudentUserId(null);
+////        .updateById(student);
+//        return studentService.updateStudent(student);
+//    }
 
-    /**
-     * 通过id删除
-     * @param studentId
-     * @return R
-     * @eo.name 通过id删除
-     * @eo.url /student/del
-     * @eo.method post
-     * @eo.request-type formdata
-     */
-    @PostMapping("/student/del")
-    public CommonResult removeById(Long studentId) {
-        return CommonResult.success(studentService.removeById(studentId));
-    }
+//    /**
+//     * 通过id删除
+//     * @param studentId
+//     * @return R
+//     * @eo.name 通过id删除
+//     * @eo.url /student/del
+//     * @eo.method post
+//     * @eo.request-type formdata
+//     */
+//    @PostMapping("/student/del")
+//    public CommonResult removeById(Long studentId) {
+//        return CommonResult.success(studentService.removeById(studentId));
+//    }
 }

+ 49 - 0
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/controller/base/vo/student/MendunerStudentInfo.java

@@ -0,0 +1,49 @@
+package com.citupro.module.menduner.flames.controller.base.vo.student;
+
+
+import com.citupro.module.menduner.flames.dal.mysql.Student;
+import com.citupro.module.menduner.flames.dal.mysql.menduner.MendunerStudent;
+
+public class MendunerStudentInfo extends Student {
+
+
+    private Long personId;
+
+
+
+
+    public MendunerStudentInfo() {
+    }
+
+
+    public MendunerStudentInfo(MendunerStudent student) {
+        super.setStudentId(student.getId());
+//        super.setUserId(student.getUserId());
+        this.personId = student.getPersonId();
+        super.setEnterpriseId(student.getEnterpriseId());
+        super.setStudentNo(student.getStudentNo());
+        super.setIdCardName(student.getIdCardName());
+        super.setIdCardNo(student.getIdCardNo());
+        super.setIdCardImg1(student.getIdCardImg1());
+        super.setIdCardImg2(student.getIdCardImg2());
+        super.setAuthStatus(student.getAuthStatus());
+        super.setSchoolId(student.getSchoolId());
+        super.setSchoolName(student.getSchoolName());
+        super.setSchoolClassId(student.getSchoolClassId());
+        super.setSchoolDepartmentName(student.getSchoolDepartmentName());
+        super.setSchoolClassName(student.getSchoolClassName());
+//        super.setM(student.getMajorId());
+        super.setMajorName(student.getMajorName());
+        super.setMajorCode(student.getMajorCode());
+        super.setEmergencyContactName(student.getEmergencyContactName());
+        super.setEmergencyContactPhone(student.getEmergencyContactPhone());
+    }
+
+    public Long getPersonId() {
+        return personId;
+    }
+
+    public void setPersonId(Long personId) {
+        this.personId = personId;
+    }
+}

+ 10 - 0
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/controller/base/vo/student/StudentInfoVo.java

@@ -17,4 +17,14 @@ public class StudentInfoVo {
     private StudentBiographicalNotes studentBiographicalNotes;
 
     private SchoolDepartment schoolDepartment;
+
+    private String jobDept;
+
+    private String enterpriseRecruitJobName;
+
+    private String enterpeiseName;
+
+    private Long enterpriseRecruitId;
+
+    private Long enterpriseId;
 }

+ 25 - 0
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/controller/base/vo/student/StudentNameVo.java

@@ -0,0 +1,25 @@
+package com.citupro.module.menduner.flames.controller.base.vo.student;
+
+public class StudentNameVo {
+
+    private Long studentId;
+
+    private String studentName;
+
+
+    public Long getStudentId() {
+        return studentId;
+    }
+
+    public void setStudentId(Long studentId) {
+        this.studentId = studentId;
+    }
+
+    public String getStudentName() {
+        return studentName;
+    }
+
+    public void setStudentName(String studentName) {
+        this.studentName = studentName;
+    }
+}

+ 376 - 0
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/dal/mysql/menduner/MendunerStudent.java

@@ -0,0 +1,376 @@
+package com.citupro.module.menduner.flames.dal.mysql.menduner;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.time.LocalDateTime;
+
+@TableName("mde_student")
+public class MendunerStudent {
+    /**
+     * id
+     */
+    private Long id;
+
+    /**
+     * 用户id
+     */
+    private Long userId;
+
+    /**
+     * 人才id
+     */
+    private Long personId;
+
+    /**
+     * 学生毕业状态 0.未毕业 1.毕业
+     */
+    private String graduationStatus;
+
+    /**
+     * 0.待就业 1.就业
+     */
+    private Integer status;
+
+    /**
+     * 学生就业企业id
+     */
+    private Long enterpriseId;
+
+    /**
+     * 学号
+     */
+    private String studentNo;
+
+    /**
+     * 身份证真实姓名
+     */
+    private String idCardName;
+
+    /**
+     * 身份证编码
+     */
+    private String idCardNo;
+
+    /**
+     * 身份证正面
+     */
+    private String idCardImg1;
+
+    /**
+     * 身份证反面
+     */
+    private String idCardImg2;
+
+    /**
+     * 学生认证状态 0.未认证 1.已认证
+     */
+    private String authStatus;
+
+    /**
+     * 学校id
+     */
+    private Long schoolId;
+
+    /**
+     * 学校名称
+     */
+    private String schoolName;
+
+    /**
+     * 学生班级
+     */
+    private Long schoolClassId;
+
+    /**
+     * 院系名称
+     */
+    private String schoolDepartmentName;
+
+    /**
+     * 学生班级
+     */
+    private String schoolClassName;
+
+    /**
+     * 学生专业
+     */
+    private Long majorId;
+
+    /**
+     * 学生专业
+     */
+    private String majorName;
+
+    /**
+     * 专业代码
+     */
+    private String majorCode;
+
+    /**
+     * 紧急联系人姓名
+     */
+    private String emergencyContactName;
+
+    /**
+     * 紧急联系人手机号
+     */
+    private String emergencyContactPhone;
+
+    /**
+     * 创建者
+     */
+    private String creator;
+
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createTime;
+
+    /**
+     * 更新者
+     */
+    private String updater;
+
+    /**
+     * 更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     * 标记该记录是否已删除
+     */
+    private Boolean deleted;
+
+    /**
+     * 租户ID
+     */
+    private Long tenantId;
+
+    public MendunerStudent() {
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+
+    public Long getPersonId() {
+        return personId;
+    }
+
+    public void setPersonId(Long personId) {
+        this.personId = personId;
+    }
+
+    public String getGraduationStatus() {
+        return graduationStatus;
+    }
+
+    public void setGraduationStatus(String graduationStatus) {
+        this.graduationStatus = graduationStatus;
+    }
+
+    public Integer getStatus() {
+        return status;
+    }
+
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+
+    public Long getEnterpriseId() {
+        return enterpriseId;
+    }
+
+    public void setEnterpriseId(Long enterpriseId) {
+        this.enterpriseId = enterpriseId;
+    }
+
+    public String getStudentNo() {
+        return studentNo;
+    }
+
+    public void setStudentNo(String studentNo) {
+        this.studentNo = studentNo;
+    }
+
+    public String getIdCardName() {
+        return idCardName;
+    }
+
+    public void setIdCardName(String idCardName) {
+        this.idCardName = idCardName;
+    }
+
+    public String getIdCardNo() {
+        return idCardNo;
+    }
+
+    public void setIdCardNo(String idCardNo) {
+        this.idCardNo = idCardNo;
+    }
+
+    public String getIdCardImg1() {
+        return idCardImg1;
+    }
+
+    public void setIdCardImg1(String idCardImg1) {
+        this.idCardImg1 = idCardImg1;
+    }
+
+    public String getIdCardImg2() {
+        return idCardImg2;
+    }
+
+    public void setIdCardImg2(String idCardImg2) {
+        this.idCardImg2 = idCardImg2;
+    }
+
+    public String getAuthStatus() {
+        return authStatus;
+    }
+
+    public void setAuthStatus(String authStatus) {
+        this.authStatus = authStatus;
+    }
+
+    public Long getSchoolId() {
+        return schoolId;
+    }
+
+    public void setSchoolId(Long schoolId) {
+        this.schoolId = schoolId;
+    }
+
+    public String getSchoolName() {
+        return schoolName;
+    }
+
+    public void setSchoolName(String schoolName) {
+        this.schoolName = schoolName;
+    }
+
+    public Long getSchoolClassId() {
+        return schoolClassId;
+    }
+
+    public void setSchoolClassId(Long schoolClassId) {
+        this.schoolClassId = schoolClassId;
+    }
+
+    public String getSchoolDepartmentName() {
+        return schoolDepartmentName;
+    }
+
+    public void setSchoolDepartmentName(String schoolDepartmentName) {
+        this.schoolDepartmentName = schoolDepartmentName;
+    }
+
+    public String getSchoolClassName() {
+        return schoolClassName;
+    }
+
+    public void setSchoolClassName(String schoolClassName) {
+        this.schoolClassName = schoolClassName;
+    }
+
+    public Long getMajorId() {
+        return majorId;
+    }
+
+    public void setMajorId(Long majorId) {
+        this.majorId = majorId;
+    }
+
+    public String getMajorName() {
+        return majorName;
+    }
+
+    public void setMajorName(String majorName) {
+        this.majorName = majorName;
+    }
+
+    public String getMajorCode() {
+        return majorCode;
+    }
+
+    public void setMajorCode(String majorCode) {
+        this.majorCode = majorCode;
+    }
+
+    public String getEmergencyContactName() {
+        return emergencyContactName;
+    }
+
+    public void setEmergencyContactName(String emergencyContactName) {
+        this.emergencyContactName = emergencyContactName;
+    }
+
+    public String getEmergencyContactPhone() {
+        return emergencyContactPhone;
+    }
+
+    public void setEmergencyContactPhone(String emergencyContactPhone) {
+        this.emergencyContactPhone = emergencyContactPhone;
+    }
+
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+
+    public LocalDateTime getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(LocalDateTime createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getUpdater() {
+        return updater;
+    }
+
+    public void setUpdater(String updater) {
+        this.updater = updater;
+    }
+
+    public LocalDateTime getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(LocalDateTime updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public Boolean getDeleted() {
+        return deleted;
+    }
+
+    public void setDeleted(Boolean deleted) {
+        this.deleted = deleted;
+    }
+
+    public Long getTenantId() {
+        return tenantId;
+    }
+
+    public void setTenantId(Long tenantId) {
+        this.tenantId = tenantId;
+    }
+
+}

+ 4 - 2
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/mapper/StudentMapper.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 
 import com.citupro.module.menduner.flames.controller.base.vo.student.StudentInfoVo;
 import com.citupro.module.menduner.flames.dal.mysql.Student;
+import com.citupro.module.menduner.flames.dal.mysql.menduner.MendunerStudent;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
@@ -16,7 +17,8 @@ import java.util.List;
  * @date 2023-06-06 09:56:21
  */
 @Mapper
-public interface StudentMapper extends BaseMapper<Student> {
+public interface StudentMapper {
 
-    List<StudentInfoVo> selectStudentDetail(@Param("studentIds") List<Long> studentId);
+
+    List<StudentInfoVo> selectStudentDetail2(@Param("mendunerStudents") List<MendunerStudent> mendunerStudents);
 }

+ 28 - 0
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/menduner/mapper/MendunerStudentMapper.java

@@ -0,0 +1,28 @@
+package com.citupro.module.menduner.flames.menduner.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+
+import com.citupro.module.menduner.flames.controller.base.reqvo.school.SchoolOrganizationReqVo;
+import com.citupro.module.menduner.flames.controller.base.reqvo.school.SchoolStudentDetailReqVo;
+import com.citupro.module.menduner.flames.controller.base.respvo.school.SchoolStudentDetailRespVo;
+import com.citupro.module.menduner.flames.controller.base.vo.student.StudentNameVo;
+import com.citupro.module.menduner.flames.dal.mysql.menduner.MendunerStudent;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+//@Mapper
+public interface MendunerStudentMapper extends BaseMapper<MendunerStudent> {
+
+    List<Map> getSchoolOrganization(SchoolOrganizationReqVo schoolOrganizationReqVo);
+
+    List<SchoolStudentDetailRespVo> schoolStudentDetail(@Param("page") Page page, @Param("reqVo") SchoolStudentDetailReqVo reqVo);
+
+    List<MendunerStudent> selectStudentDetail(@Param("studentIds") List<Long> studentIds);
+
+    List<StudentNameVo> getStudentName(@Param("studentIds") Collection<Long> studengIds);
+}

+ 6 - 0
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/service/SchoolClassService.java

@@ -5,6 +5,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.citu.framework.common.pojo.CommonResult;
 import com.citupro.module.menduner.flames.dal.mysql.SchoolClass;
 
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+
 
 /**
  * 学校班级
@@ -21,4 +25,6 @@ public interface SchoolClassService extends IService<SchoolClass> {
     public SchoolClass getSchoolClassById(Long  SchoolClassId);
 
     SchoolClass getSchoolClassByName(Long schoolId, String schoolClassName);
+
+    Map<Long, SchoolClass> getSchoolClassByIds(Collection<Long> schoolClassIds);
 }

+ 8 - 14
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/service/StudentService.java

@@ -3,8 +3,10 @@ package com.citupro.module.menduner.flames.service;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.citu.framework.common.pojo.CommonResult;
+import com.citupro.module.menduner.flames.controller.base.vo.student.MendunerStudentInfo;
 import com.citupro.module.menduner.flames.controller.base.vo.student.StudentInfoVo;
 import com.citupro.module.menduner.flames.dal.mysql.Student;
+import com.citupro.module.menduner.flames.dal.mysql.menduner.MendunerStudent;
 
 
 import java.util.Collection;
@@ -16,34 +18,26 @@ import java.util.List;
  * @author code generator
  * @date 2023-06-06 09:56:21
  */
-public interface StudentService extends IService<Student> {
+public interface StudentService   {
 
     public StudentInfoVo setStudentDetail(Long studentId);
 
 
-    CommonResult<StudentInfoVo> getStudentInformationByUserId(Long userId);
 
-    CommonResult studentAdd(Student student);
 
-    CommonResult getStudentList(Page page, Student object,Long enterpriseId,
-                          Long enterpriseRecruitId,String internshipStatus,String departmentTitle);
+    CommonResult getStudentList(Page page, MendunerStudent student, Long enterpriseId, Long enterpriseRecruitId
+            , String internshipStatus, String departmentTitle, String studentName);
 
     CommonResult studentDetail(Long studentId);
 
     Student getStudentById(Long studentId);
 
-    void setStudentInternshipEnterprise(Long studentId, Long enterpriseId);
+//    void setStudentInternshipEnterprise(Long studentId, Long enterpriseId);
 
     CommonResult studentPracticeProcess(Long studentId);
 
-    List<Student> getStudentByIds(Collection<Long> studentIds);
+    List<MendunerStudentInfo> getStudentByIds(Collection<Long> studentIds);
 
-    CommonResult studentTest();
-
-    CommonResult updateStudent(Student student);
-
-    void updateStudentAgreeAuthStatus(Long entityId);
-
-    void updateStudentRefuseAuthStatus(Long entityId);
 
+    Student getById(Long studentId);
 }

+ 16 - 0
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/service/mendunmer/MendunerStudentService.java

@@ -0,0 +1,16 @@
+package com.citupro.module.menduner.flames.service.mendunmer;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.citupro.module.menduner.flames.controller.base.reqvo.school.SchoolOrganizationReqVo;
+import com.citupro.module.menduner.flames.controller.base.reqvo.school.SchoolStudentDetailReqVo;
+import com.citupro.module.menduner.flames.controller.base.respvo.school.SchoolStudentDetailRespVo;
+
+
+import java.util.List;
+import java.util.Map;
+
+public interface MendunerStudentService {
+    List<Map> getSchoolOrganization(SchoolOrganizationReqVo schoolOrganizationReqVo);
+
+    List<SchoolStudentDetailRespVo> schoolStudentDetail(Page page, SchoolStudentDetailReqVo reqVo);
+}

+ 2 - 1
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/PraciceSubmitRecordServiceImpl.java

@@ -207,7 +207,8 @@ public class PraciceSubmitRecordServiceImpl extends ServiceImpl<PraciceSubmitRec
         }
         // 修改学生数据
 //        praciceSubmitRecord.getStudentId()
-        studentService.setStudentInternshipEnterprise(praciceSubmitRecord.getStudentId(), praciceSubmitRecord.getEnterpriseId());
+        // TODO 注释此praciceSubmitRecordAccept方法已经执行不到了
+//        studentService.setStudentInternshipEnterprise(praciceSubmitRecord.getStudentId(), praciceSubmitRecord.getEnterpriseId());
         // 清理其他已入职的请求
 //        praciceSubmitRecordMapper.selectById(practiceSubmitRecordId);
 //        studentService

+ 13 - 2
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/SchoolClassServiceImpl.java

@@ -14,8 +14,10 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 
 import com.citupro.module.menduner.flames.service.SchoolService;
-import java.util.ArrayList;
-import java.util.List;
+
+import java.util.*;
+import java.util.stream.Collectors;
+
 /**
  * 学校班级
  *
@@ -73,6 +75,15 @@ public class SchoolClassServiceImpl extends ServiceImpl<SchoolClassMapper, Schoo
         return schoolClass;
     }
 
+    @Override
+    public Map<Long, SchoolClass> getSchoolClassByIds(Collection<Long> schoolClassIds) {
+        if(schoolClassIds.isEmpty()){
+            return  new HashMap<>();
+        }
+        List<SchoolClass> schoolClasses = schoolClassMapper.selectBatchIds(new HashSet<>(schoolClassIds));
+        return schoolClasses.stream().collect(Collectors.toMap(SchoolClass::getSchoolClassId, item -> item));
+    }
+
 
     @Autowired
     public void setSchoolClassMapper(SchoolClassMapper schoolClassMapper){

+ 20 - 1
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/SchoolServiceImpl.java

@@ -18,18 +18,22 @@ import com.citupro.module.menduner.flames.controller.base.vo.school.SchoolInfoVo
 import com.citu.module.menduner.system.api.flames.enterprise.respvo.AppFlamesEnterpriseDetailRespVO;
 
 import com.citupro.module.menduner.flames.dal.mysql.School;
+import com.citupro.module.menduner.flames.dal.mysql.SchoolClass;
 import com.citupro.module.menduner.flames.dal.mysql.SchoolDepartment;
 import com.citupro.module.menduner.flames.dal.mysql.SchoolQualificaions;
 import com.citupro.module.menduner.flames.enums.ErrorCodeConstants;
 import com.citupro.module.menduner.flames.mapper.SchoolMapper;
 import com.citupro.module.menduner.flames.mapper.SchoolQualificaionsMapper;
+import com.citupro.module.menduner.flames.service.SchoolClassService;
 import com.citupro.module.menduner.flames.service.SchoolDepartmentService;
 import com.citupro.module.menduner.flames.service.SchoolService;
+import com.citupro.module.menduner.flames.service.mendunmer.MendunerStudentService;
 import com.citupro.module.menduner.flames.service.proxy.EnterpriseProxyService;
 import com.citupro.module.menduner.flames.service.proxy.EnterpriseRecruitProxyService;
 import com.citupro.module.menduner.flames.util.ListMap;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -51,6 +55,13 @@ public class SchoolServiceImpl extends ServiceImpl<SchoolMapper, School> impleme
     SchoolDepartmentService schoolDepartmentService;
 
 
+    @Autowired
+    MendunerStudentService mendunerStudentService;
+
+    @Autowired
+    @Lazy
+    SchoolClassService schoolClassService;
+
     EnterpriseProxyService enterpriseProxyService;
 
     EnterpriseRecruitProxyService enterpriseRecruitProxyService;
@@ -86,7 +97,15 @@ public class SchoolServiceImpl extends ServiceImpl<SchoolMapper, School> impleme
 
     @Override
     public CommonResult getSchoolOrganization(SchoolOrganizationReqVo schoolOrganizationReqVo) {
-        List<Map> datas = schoolMapper.getSchoolOrganization(schoolOrganizationReqVo);
+        List<Map> datas =   mendunerStudentService.getSchoolOrganization(schoolOrganizationReqVo);
+        List<Long> schoolClassIds = datas.stream().map(item -> Long.valueOf(item.get("schoolClassId").toString())).collect(Collectors.toList());
+        Map<Long, SchoolClass> schoolClassMap = schoolClassService.getSchoolClassByIds(schoolClassIds);
+        final SchoolClass empty =new SchoolClass();
+        datas.forEach(item->{
+            SchoolClass schoolClass = schoolClassMap.getOrDefault(Long.valueOf(item.get("schoolClassId").toString()), empty);
+            item.put("title",schoolClass.getTitle());
+            item.put("major",schoolClass.getMajor());
+        });
         Set<String> departments = new HashSet<>();
 //        ListMap<String,String>  majorMap =new ListMap<>();
         Map<String, HashSet> majorMap = new HashMap<>();

+ 3 - 0
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/StudentInternshipCertificateServiceImpl.java

@@ -13,6 +13,7 @@ import com.citupro.module.menduner.flames.service.*;
 import com.citupro.module.menduner.flames.service.proxy.EnterpriseProxyService;
 import com.citupro.module.menduner.flames.service.proxy.EnterpriseRecruitProxyService;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
@@ -30,6 +31,7 @@ public class StudentInternshipCertificateServiceImpl extends
         implements StudentInternshipCertificateService {
 
     StudentInternshipCertificateMapper studentInternshipCertificateMapper;
+
     StudentService studentService;
     EnterpriseProxyService enterpriseService;
 
@@ -103,6 +105,7 @@ public class StudentInternshipCertificateServiceImpl extends
     }
 
     @Autowired
+    @Lazy
     public void setStudentService(StudentService studentService) {
         this.studentService = studentService;
     }

+ 87 - 94
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/StudentServiceImpl.java

@@ -8,15 +8,20 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
 
 import com.citu.framework.common.pojo.CommonResult;
+import com.citu.module.menduner.system.api.flames.enterprise.respvo.AppFlamesEnterpriseDetailRespVO;
+import com.citupro.module.menduner.flames.controller.base.vo.student.MendunerStudentInfo;
 import com.citupro.module.menduner.flames.controller.base.vo.student.StudentInfoVo;
 import com.citupro.module.menduner.flames.dal.mysql.*;
+import com.citupro.module.menduner.flames.dal.mysql.menduner.MendunerStudent;
 import com.citupro.module.menduner.flames.enums.ErrorCodeConstants;
 import com.citupro.module.menduner.flames.mapper.StudentMapper;
+import com.citupro.module.menduner.flames.menduner.mapper.MendunerStudentMapper;
 import com.citupro.module.menduner.flames.service.*;
 import com.citupro.module.menduner.flames.service.proxy.EnterpriseProxyService;
 import com.citupro.module.menduner.flames.service.proxy.EnterpriseRecruitProxyService;
 import com.google.common.collect.ImmutableMap;
 import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.InitializingBean;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
@@ -26,6 +31,7 @@ import java.math.RoundingMode;
 import java.time.LocalDateTime;
 import java.time.ZoneId;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * 
@@ -34,11 +40,10 @@ import java.util.*;
  * @date 2023-06-06 09:56:21
  */
 @Service
-public class StudentServiceImpl
-        extends ServiceImpl<StudentMapper, Student>
-        implements StudentService {
+public class StudentServiceImpl implements StudentService, InitializingBean {
 
 
+    MendunerStudentMapper mendunerStudentMapper;
     StudentMapper studentMapper;
 
     SchoolService schoolService;
@@ -47,7 +52,7 @@ public class StudentServiceImpl
 
     EnterpriseProxyService enterpriseService;
 
-    EnterpriseRecruitProxyService enterpriseRecruitService;
+    EnterpriseRecruitProxyService  enterpriseRecruitService;
 
     SchoolClassService schoolClassService;
 
@@ -60,68 +65,67 @@ public class StudentServiceImpl
 
 
 
-    @Override
-    public CommonResult<StudentInfoVo> getStudentInformationByUserId(Long userId) {
-        Student student = studentMapper.selectOne(new LambdaQueryWrapper<Student>().select(Student::getStudentId).eq(Student::getStudentUserId, userId));
-        if(null == student){
-            return CommonResult.success(new StudentInfoVo());
-        }
-        return CommonResult.success(setStudentDetail(student.getStudentId()));
-    }
+
+
 
     @Override
-    public CommonResult studentAdd(Student student) {
-        StudentInfoVo data = getStudentInformationByUserId(student.getStudentUserId()).getData();
-        if(null==data || null== data.getStudent()){
-            student.setEnterpriseId(-1L);
-            student.setAuthStatus("0");
-            studentMapper.insert(student);
-            return CommonResult.success(student);
+    public CommonResult getStudentList(Page page, MendunerStudent student, Long enterpriseId, Long enterpriseRecruitId
+            , String internshipStatus, String departmentTitle, String studentName) {
+        LambdaQueryWrapper<MendunerStudent> queryWrapper =new LambdaQueryWrapper<>(student);
+        queryWrapper.select(MendunerStudent::getId);
+        if(StringUtils.isNotBlank(studentName)){
+            queryWrapper.apply(" user_id in ( select user_id  from  mde_person_info  where type =1  and name like concat('%',{0},'%') )",studentName);
+
         }
-        return CommonResult.error(ErrorCodeConstants.SYSTEM_ERROR);
-    }
 
-    @Override
-    public CommonResult getStudentList(Page page, Student student,Long enterpriseId,Long enterpriseRecruitId
-            ,String internshipStatus,String departmentTitle) {
-        String studentName = student.getStudentName();
-        student.setStudentName(null);
-//        student.setEnterpriseId(null);
-        LambdaQueryWrapper<Student> queryWrapper =new LambdaQueryWrapper<>(student);
-        queryWrapper.like(StringUtils.isNotBlank(studentName),Student::getStudentName,studentName);
-        queryWrapper.select(Student::getStudentId);
+
+
         EnterpriseRecruit enterpriseRecruit = enterpriseRecruitService.getEnterpriseRecruitById(enterpriseRecruitId);
         if(null!=enterpriseRecruit){
-            queryWrapper.eq(Student::getMajorCode,enterpriseRecruit.getMajorCode()) ;
+            queryWrapper.eq(MendunerStudent::getMajorCode,enterpriseRecruit.getMajorCode()) ;
         }
-        queryWrapper.like(StringUtils.isNotBlank(departmentTitle),Student::getSchoolDepartmentName,departmentTitle);
+        queryWrapper.like(StringUtils.isNotBlank(departmentTitle),MendunerStudent::getSchoolDepartmentName,departmentTitle);
+        // todo 待沟通后支持此筛选条件
         queryWrapper.apply(StringUtils.isNotBlank(internshipStatus),"student_id in  (  select student_id from practice_submit_record  where if( now()>internship_end_date,'实习结束', if( now() >= job_join_date,'实习中','等待实习' ) )={0}     )",internshipStatus);
-        studentMapper.selectPage(page,queryWrapper);
+        mendunerStudentMapper.selectPage(page,queryWrapper);
+
+
         List<Long> studentIds =new ArrayList<>(page.getRecords().size()+1);
         for (Object record : page.getRecords()) {
-            studentIds.add( (((Student) record).getStudentId() ));
+            studentIds.add( (((MendunerStudent) record).getId() ));
         }
         if(studentIds.size() >0){
-            page.setRecords(studentMapper.selectStudentDetail(studentIds));
+            List<MendunerStudent> mendunerStudents = mendunerStudentMapper.selectStudentDetail(studentIds);
+            List<StudentInfoVo> studentInfoVos = studentMapper.selectStudentDetail2(mendunerStudents);
+            page.setRecords(studentInfoVos);
+
+            List<Long> enterpriseIds = studentInfoVos.stream().filter(item->null!=item.getEnterpriseId()).map(StudentInfoVo::getEnterpriseId).collect(Collectors.toList());
+            Map<Long, AppFlamesEnterpriseDetailRespVO> enterpriseMap = enterpriseService.getEnterpriseList(enterpriseIds);
+
+            for (StudentInfoVo studentInfoVo : studentInfoVos) {
+                AppFlamesEnterpriseDetailRespVO appEnterpriseDetailRespVO = enterpriseMap.get(studentInfoVo.getEnterpriseId());
+                studentInfoVo.setEnterpeiseName(null==appEnterpriseDetailRespVO?"":appEnterpriseDetailRespVO.getEnterprise().getName());
+                // 拼接姓名  拼接 实习信息
+
+            }
 
         }
+
+
+
         return CommonResult.success(page);
     }
 
+
+
+
     @Override
     public CommonResult studentDetail(Long studentId) {
         return CommonResult.success(setStudentDetail( studentId));
     }
 
-    @Override
-    public Student getStudentById(Long studentId) {
-        return studentMapper.selectById(studentId);
-    }
 
-    @Override
-    public void setStudentInternshipEnterprise(Long studentId, Long enterpriseId) {
-        studentMapper.update(null,new LambdaUpdateWrapper<Student>().eq(Student::getStudentId,studentId).set(Student::getEnterpriseId,enterpriseId));
-    }
+
 
     @Override
     public CommonResult studentPracticeProcess(Long studentId) {
@@ -206,64 +210,56 @@ public class StudentServiceImpl
     }
 
     @Override
-    public List<Student> getStudentByIds(Collection<Long> studentIds) {
-        if(null == studentIds || studentIds.size() == 0){
-            return  new ArrayList<>();
+    public MendunerStudentInfo getStudentById(Long studentId) {
+        List<MendunerStudentInfo> studentByIds = getStudentByIds(new HashSet<>(Arrays.asList(studentId)));
+        if(studentByIds.isEmpty()){
+            return null;
         }
-        return studentMapper.selectList(new LambdaQueryWrapper<Student>().in(Student::getStudentId,studentIds));
+        return studentByIds.get(0);
     }
+//
+//    @Override
+//    public void setStudentInternshipEnterprise(Long studentId, Long enterpriseId) {
+//
+//    }
 
     @Override
-    public CommonResult studentTest() {
-        return CommonResult.success(studentMapper.selectStudentDetail(Arrays.asList(1667011005813784577L)));
-    }
+    public List<MendunerStudentInfo> getStudentByIds(Collection<Long> studengIds) {
 
-    @Override
-    public CommonResult updateStudent(Student student) {
-       SchoolClass schoolClass =  schoolClassService.getSchoolClassByName(student.getSchoolId(),student.getSchoolClassName());
-        if(null==schoolClass){
-            SchoolClass saveSchoolClass = new SchoolClass().setSchoolId(student.getSchoolId()).setTitle(student.getSchoolClassName()).setMajor(student.getMajorName());
-            schoolClassService.schoolClassSave(saveSchoolClass);
-            schoolClass = saveSchoolClass;
+
+        List<MendunerStudent> mendunerStudents = mendunerStudentMapper.selectBatchIds(studengIds);
+
+        Map<Long,String> studentNameMap = new HashMap<>();
+        mendunerStudentMapper
+                .getStudentName(studengIds)
+                .forEach(item->studentNameMap.put(item.getStudentId(),item.getStudentName()));
+        List<MendunerStudentInfo> res =new ArrayList<>(mendunerStudents.size()+1);
+
+        for (MendunerStudent mendunerStudent : mendunerStudents) {
+            MendunerStudentInfo info =new MendunerStudentInfo(mendunerStudent);
+            info.setStudentName(studentNameMap.get(mendunerStudent.getId()));
+            res.add(info);
         }
-//        if("2".equals(student.getAuthStatus())){
-//            student.setAuthStatus("0");
-//        }else{
-//            student.setAuthStatus(null);
-//        }
-        student.setSchoolClassId(schoolClass.getSchoolClassId());
-        studentMapper.updateById(student);
-        return CommonResult.success(student);
-    }
 
-    @Override
-    public void updateStudentAgreeAuthStatus(Long entityId) {
-        studentMapper.update(null,new LambdaUpdateWrapper<Student>()
-                                     .eq(Student::getStudentId,entityId)
-                .set(Student::getAuthStatus,"1")
-        );
+        return res;
     }
 
     @Override
-    public void updateStudentRefuseAuthStatus(Long entityId) {
-        studentMapper.update(null,new LambdaUpdateWrapper<Student>()
-                .eq(Student::getStudentId,entityId)
-                .set(Student::getAuthStatus,"2")
-        );
+    public Student getById(Long studentId) {
+        return (Student) getStudentByIds(Arrays.asList(studentId));
     }
 
+
     public StudentInfoVo setStudentDetail(Long studentId){
-        List<StudentInfoVo> studentInfoVo =   studentMapper.selectStudentDetail(Arrays.asList(studentId));
+        MendunerStudent mendunerStudent = mendunerStudentMapper.selectById(studentId);
+        List<StudentInfoVo> studentInfoVo =   studentMapper.selectStudentDetail2(Arrays.asList(mendunerStudent));
         return null!=studentInfoVo && studentInfoVo.size() > 0?studentInfoVo.get(0):null;
     }
     @Autowired
-    @Lazy
     public void setPraciceSubmitRecordService(PraciceSubmitRecordService praciceSubmitRecordService) {
         this.praciceSubmitRecordService = praciceSubmitRecordService;
     }
-
     @Autowired
-    @Lazy
     public void setStudentInternshipCertificateService(StudentInternshipCertificateService studentInternshipCertificateService) {
         this.studentInternshipCertificateService = studentInternshipCertificateService;
     }
@@ -274,14 +270,12 @@ public class StudentServiceImpl
     }
 
     @Autowired
-    @Lazy
     public void setEnterpriseService(EnterpriseProxyService enterpriseService) {
         this.enterpriseService = enterpriseService;
     }
 
 
     @Autowired
-    @Lazy
     public void setEnterpriseRecruitService(EnterpriseRecruitProxyService enterpriseRecruitService) {
         this.enterpriseRecruitService = enterpriseRecruitService;
     }
@@ -292,12 +286,10 @@ public class StudentServiceImpl
     }
 
     @Autowired
-    @Lazy
     public void setSchoolService(SchoolService schoolService) {
         this.schoolService = schoolService;
     }
 
-
     @Autowired
     public void setStudentMapper(StudentMapper studentMapper) {
         this.studentMapper = studentMapper;
@@ -308,13 +300,14 @@ public class StudentServiceImpl
         this.studentBiographicalNotesService = studentBiographicalNotesService;
     }
 
-//    public static void main(String[] args) {
-//        // "jobJoinDate":"2023-09-08 00:00:00"
-//        DateTime parse = DateUtil.parse("2023-09-08 00:00:00", "yyyy-MM-dd HH:mm:ss");
-//
-//        System.out.println(LocalDateTime.now().compareTo(LocalDateTime.of(2023,9,8,0,0,0)));
-//
-//
-//
-//    }
+    @Autowired
+    public void setMendunerStudentMapper(MendunerStudentMapper mendunerStudentMapper) {
+        this.mendunerStudentMapper = mendunerStudentMapper;
+    }
+
+    @Override
+    public void afterPropertiesSet() throws Exception {
+        MendunerStudentInfo studentById = this.getStudentById(1L);
+        System.out.println(studentById);
+    }
 }

+ 4 - 4
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/UserAuthRecordServiceImpl.java

@@ -69,8 +69,8 @@ public class UserAuthRecordServiceImpl extends ServiceImpl<UserAuthRecordMapper,
                // 拒绝审核
                if(Integer.valueOf(0).equals(userAuthRecord.getStatus())) {
                    if (Integer.valueOf(0).equals(userAuthRecord.getUserType())) {
-                       // 学生
-                       studentService.updateStudentRefuseAuthStatus(userAuthRecord.getEntityId());
+                       // 学生  TODO 不存在了
+//                       studentService.updateStudentRefuseAuthStatus(userAuthRecord.getEntityId());
 
                    } else if (Integer.valueOf(1).equals(userAuthRecord.getUserType())) {
                        //学校
@@ -93,8 +93,8 @@ public class UserAuthRecordServiceImpl extends ServiceImpl<UserAuthRecordMapper,
                    }
                }else{
                      if(Integer.valueOf(0).equals(userAuthRecord.getUserType())){
-                       // 学生
-                       studentService.updateStudentAgreeAuthStatus(userAuthRecord.getEntityId());
+                       // 学生  TODO 不存在了
+//                       studentService.updateStudentAgreeAuthStatus(userAuthRecord.getEntityId());
 
                    }else if (Integer.valueOf(1).equals(userAuthRecord.getUserType())) {
                          messageServiceApi.sendFlamesAuditMessage(new FlamesAuditMessageVo()

+ 78 - 0
menduner/menduner-flames-biz/src/main/java/com/citupro/module/menduner/flames/serviceimpl/menduner/MendunerStudentServiceImpl.java

@@ -0,0 +1,78 @@
+package com.citupro.module.menduner.flames.serviceimpl.menduner;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+
+import com.citupro.module.menduner.flames.controller.base.reqvo.school.SchoolOrganizationReqVo;
+import com.citupro.module.menduner.flames.controller.base.reqvo.school.SchoolStudentDetailReqVo;
+import com.citupro.module.menduner.flames.controller.base.respvo.school.SchoolStudentDetailRespVo;
+import com.citupro.module.menduner.flames.menduner.mapper.MendunerStudentMapper;
+import com.citupro.module.menduner.flames.service.mendunmer.MendunerStudentService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+@Service
+public class MendunerStudentServiceImpl implements MendunerStudentService {
+
+    MendunerStudentMapper mendunerStudentMapper;
+
+
+
+    @Autowired
+    public void setMendunerStudentMapper(MendunerStudentMapper mendunerStudentMapper) {
+        this.mendunerStudentMapper = mendunerStudentMapper;
+    }
+
+    @Override
+    public List<Map> getSchoolOrganization(SchoolOrganizationReqVo schoolOrganizationReqVo) {
+
+        List<Map> data =   mendunerStudentMapper.getSchoolOrganization(schoolOrganizationReqVo);
+
+        return data;
+    }
+
+    /**
+
+     * @param page
+     * @param reqVo
+     * @return
+     */
+    @Override
+    public List<SchoolStudentDetailRespVo> schoolStudentDetail(Page page, SchoolStudentDetailReqVo reqVo) {
+
+        /**
+         参考SQL
+         SELECT
+         if(record.`status` = 2,'实习中',if(record.`status` is null ,'未投递','待实习')) as status,
+         student.student_name ,
+         student.student_no,
+         student.school_class_name,
+         student.major_name,
+         record.enterprise_id,
+         record.enterprise_recruit_id,
+         student.phone,
+         student.emergency_contact_name,
+         student.emergency_contact_phone,
+         student.school_department_name,
+         DATE_FORMAT(record.create_date, '%Y-%m-%d %H:%i:%s')  as  record_date
+         FROM
+         student
+         LEFT JOIN practice_submit_record record ON student.student_id = record.student_id
+         <where>
+         <if test="null!=reqVo.schoolId">
+         student.school_id = #{reqVo.schoolId}
+         </if>
+         <if test="null!=reqVo.jobFairId">
+         and   record.job_fair_id = #{reqVo.jobFairId}
+         </if>
+         </where>
+         */
+
+
+        List<SchoolStudentDetailRespVo> datas =  mendunerStudentMapper.schoolStudentDetail(page,reqVo);
+
+        return List.of();
+    }
+}

+ 0 - 40
menduner/menduner-flames-biz/src/main/resources/mapper/StudentMapper.xml

@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-
-<mapper namespace="com.citupro.module.menduner.flames.mapper.StudentMapper">
-<!--// mybatis-plus_SchoolCooperateEnterprise-->
-    <resultMap id="studentInfoVoMap" type="com.citupro.module.menduner.flames.controller.base.vo.student.StudentInfoVo" autoMapping="true">
-        <association property="major" column="major_id" resultMap="com.citupro.module.menduner.flames.mapper.MajorMapper.mybatis-plus_Major"></association>
-        <association property="student" column="student_id" resultMap="com.citupro.module.menduner.flames.mapper.StudentMapper.mybatis-plus_Student"></association>
-        <association property="school" resultMap="com.citupro.module.menduner.flames.mapper.SchoolMapper.mybatis-plus_School"></association>
-        <association property="schoolClass"  resultMap="com.citupro.module.menduner.flames.mapper.SchoolClassMapper.mybatis-plus_SchoolClass"></association>
-        <association property="studentBiographicalNotes" resultMap="com.citupro.module.menduner.flames.mapper.StudentBiographicalNotesMapper.mybatis-plus_StudentBiographicalNotes"></association>
-        <association property="schoolDepartment" resultMap="com.citupro.module.menduner.flames.mapper.SchoolDepartmentMapper.mybatis-plus_SchoolDepartment"></association>
-
-        <!--        <result ty></result>-->
-    </resultMap>
-
-
-
-    <select id="selectStudentDetail"  resultMap="studentInfoVoMap">
-        SELECT
-
-            *
-        FROM
-            student
-                LEFT JOIN school ON student.school_id = school.school_id
-                LEFT JOIN major ON student.student_major_id = major.major_id
-                LEFT JOIN school_class ON student.school_class_id = school_class.school_class_id
-                LEFT JOIN student_biographical_notes ON student.student_id = student_biographical_notes.student_id
-                LEFT JOIN school_department ON student.school_department_name = school_department.department_title  and  student.school_id = school_department.school_id
-                LEFT JOIN practice_submit_record record ON student.student_id = record.student_id
-
-        where
-                  <if test="null!=studentIds">
-                      student.student_id  in
-                      <foreach collection="studentIds" item="item" separator="," open="(" close=")">
-                          #{item}
-                      </foreach>
-                  </if>
-    </select>
-</mapper>

+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/1


+ 82 - 0
menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/menduner/MendunerStudentMapper.xml

@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.citupro.module.menduner.flames.menduner.mapper.MendunerStudentMapper">
+
+
+    <select id="getSchoolOrganization" resultType="java.util.Map">
+        SELECT
+        ifnull(student.school_department_name,"") as departmentTitle,
+        ifnull(student.school_class_id,-1)as schoolClassId
+        FROM
+        mde_student  as student
+        <where>
+            <if test="null!=schoolId">
+                student.school_id  =#{schoolId}
+            </if>
+
+        </where>
+        GROUP BY
+        student.school_department_name,
+        student.school_class_id
+
+    </select>
+    <select id="schoolStudentDetail" resultType="com.citupro.module.menduner.flames.controller.base.respvo.school.SchoolStudentDetailRespVo">
+        SELECT
+            <!-- TODO 此处需要确认 -->
+            if(record.`status` is not null ,'实习中',if(record.`status` is null ,'未投递','待实习')) as status,
+            person_info.name as student_name ,
+            student.student_no,
+            student.school_class_name,
+            student.major_name,
+            record.enterprise_id,
+            record.job_id as  enterprise_recruit_id,
+            person_info.phone,
+            student.emergency_contact_name,
+            student.emergency_contact_phone,
+            student.school_department_name,
+            DATE_FORMAT(record.start_time, '%Y-%m-%d %H:%i:%s')  as  record_date
+        FROM
+            mde_student as student
+            LEFT JOIN mde_student_practice_record record ON student.id = record.student_id
+            left join mde_person_info as person_info on student.person_id = person_info.id
+        <where>
+            <if test="null!=reqVo.schoolId">
+                student.school_id = #{reqVo.schoolId}
+            </if>
+            <if test="null!=reqVo.jobFairId">
+                and   record.job_fair_id = #{reqVo.jobFairId}
+            </if>
+        </where>
+
+    </select>
+    <select id="selectStudentDetail"  resultType="com.citupro.module.menduner.flames.dal.mysql.menduner.MendunerStudent">
+        SELECT
+                *
+        FROM
+        mde_student
+
+        where
+        <if test="null!=studentIds">
+            mde_student.id  in
+            <foreach collection="studentIds" item="item" separator="," open="(" close=")">
+                #{item}
+            </foreach>
+        </if>
+    </select>
+    <select id="getStudentName" resultType="com.citupro.module.menduner.flames.controller.base.vo.student.StudentNameVo">
+        select
+            student.id as studentId,
+            person_info.name as studentName
+        from
+                mde_student as student
+                left join mde_person_info as person_info on student.person_id = person_info.id
+        where
+        <if test="null!=studentIds">
+            student.id  in
+            <foreach collection="studentIds" item="item" separator="," open="(" close=")">
+                #{item}
+            </foreach>
+        </if>
+    </select>
+</mapper>

+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/AdvertisementMessageMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/AdvertisementMessageMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/CommentAnalysisMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/CommentAnalysisMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/CommentMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/CommentMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/EnterpriseHotspotsMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/EnterpriseHotspotsMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/EnterpriseMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/EnterpriseMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/EnterpriseRecruitPlanMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/EnterpriseRecruitPlanMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/EnterpriseRecruitTagMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/EnterpriseRecruitTagMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/FeedbackMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/FeedbackMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/JobDictionaryMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/JobDictionaryMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/MessageMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/MessageMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/SchoolClassMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/SchoolClassMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/SchoolDepartmentMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/SchoolDepartmentMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/SchoolEnterpriseChoiceActivityJoinMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/SchoolEnterpriseChoiceActivityJoinMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/SchoolEnterpriseVisitorMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/SchoolEnterpriseVisitorMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/SchoolMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/SchoolMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/SchoolStatisticsMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/SchoolStatisticsMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/StudentExperienceMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudentExperienceMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/StudentInternshipReportMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudentInternshipReportMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/StudentJobIntentionMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudentJobIntentionMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/StudentLanguageMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudentLanguageMapper.xml


+ 82 - 0
menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudentMapper.xml

@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.citupro.module.menduner.flames.mapper.StudentMapper">
+<!--// mybatis-plus_SchoolCooperateEnterprise-->
+    <resultMap id="studentInfoVoMap" type="com.citupro.module.menduner.flames.controller.base.vo.student.StudentInfoVo" autoMapping="true">
+        <association property="major" column="major_id" resultMap="com.citupro.module.menduner.flames.mapper.MajorMapper.mybatis-plus_Major"></association>
+        <association property="student" column="student_id" resultMap="com.citupro.module.menduner.flames.mapper.StudentMapper.mybatis-plus_Student"></association>
+        <association property="school" resultMap="com.citupro.module.menduner.flames.mapper.SchoolMapper.mybatis-plus_School"></association>
+        <association property="schoolClass"  resultMap="com.citupro.module.menduner.flames.mapper.SchoolClassMapper.mybatis-plus_SchoolClass"></association>
+        <association property="studentBiographicalNotes" resultMap="com.citupro.module.menduner.flames.mapper.StudentBiographicalNotesMapper.mybatis-plus_StudentBiographicalNotes"></association>
+        <association property="schoolDepartment" resultMap="com.citupro.module.menduner.flames.mapper.SchoolDepartmentMapper.mybatis-plus_SchoolDepartment"></association>
+
+        <!--        <result ty></result>-->
+    </resultMap>
+    <select id="selectStudentDetail2"
+            resultMap="studentInfoVoMap">
+
+        SELECT
+
+        *
+        FROM
+        (
+        <foreach collection="mendunerStudents" item="student" separator="UNION ALL">
+            SELECT
+            #{student.id} AS id,
+            #{student.id} AS student_id,
+            #{student.userId} AS user_id,
+            #{student.personId} AS person_id,
+            #{student.graduationStatus} AS graduation_status,
+            #{student.status} AS status,
+            #{student.enterpriseId} AS enterprise_id,
+            #{student.studentNo} AS student_no,
+            #{student.idCardName} AS idCard_name,
+            #{student.idCardNo} AS idCard_no,
+            #{student.idCardImg1} AS idCard_img1,
+            #{student.idCardImg2} AS idCard_img2,
+            #{student.authStatus} AS auth_status,
+            #{student.schoolId} AS school_id,
+            #{student.schoolName} AS school_name,
+            #{student.schoolClassId} AS school_class_id,
+            #{student.schoolDepartmentName} AS school_department_name,
+            #{student.schoolClassName} AS school_class_name,
+            #{student.majorId} AS major_id,
+            #{student.majorName} AS major_name,
+            #{student.majorCode} AS major_code,
+            #{student.emergencyContactName} AS emergency_contact_name,
+            #{student.emergencyContactPhone} AS emergency_contact_phone
+        </foreach>) as student
+        LEFT JOIN school ON student.school_id = school.school_id
+        LEFT JOIN major ON student.major_id = major.major_id
+        LEFT JOIN school_class ON student.school_class_id = school_class.school_class_id
+        LEFT JOIN student_biographical_notes ON student.student_id = student_biographical_notes.student_id
+        LEFT JOIN school_department ON student.school_department_name = school_department.department_title  and  student.school_id = school_department.school_id
+
+
+
+    </select>
+
+
+    <!--    <select id="selectStudentDetail"  resultMap="studentInfoVoMap">-->
+<!--        SELECT-->
+
+<!--            *-->
+<!--        FROM-->
+<!--            student-->
+<!--                LEFT JOIN school ON student.school_id = school.school_id-->
+<!--                LEFT JOIN major ON student.student_major_id = major.major_id-->
+<!--                LEFT JOIN school_class ON student.school_class_id = school_class.school_class_id-->
+<!--                LEFT JOIN student_biographical_notes ON student.student_id = student_biographical_notes.student_id-->
+<!--                LEFT JOIN school_department ON student.school_department_name = school_department.department_title  and  student.school_id = school_department.school_id-->
+<!--                LEFT JOIN practice_submit_record record ON student.student_id = record.student_id-->
+
+<!--        where-->
+<!--                  <if test="null!=studentIds">-->
+<!--                      student.student_id  in-->
+<!--                      <foreach collection="studentIds" item="item" separator="," open="(" close=")">-->
+<!--                          #{item}-->
+<!--                      </foreach>-->
+<!--                  </if>-->
+<!--    </select>-->
+</mapper>

+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/StudentRecommendationMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudentRecommendationMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/StudnetAwardExperienceMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudnetAwardExperienceMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/StudnetSampleMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/StudnetSampleMapper.xml


+ 0 - 0
menduner/menduner-flames-biz/src/main/resources/mapper/UserAuthRecordMapper.xml → menduner/menduner-flames-biz/src/main/resources/mybatis/mapper/primary/UserAuthRecordMapper.xml


+ 2 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/votingactivity/VotingActivityJoinItemMapper.java

@@ -32,6 +32,8 @@ public interface VotingActivityJoinItemMapper extends BaseMapperX<VotingActivity
                 .eqIfPresent(VotingActivityJoinItemDO::getHeadImg, reqVO.getHeadImg())
                 .orderByDesc(0==reqVO.getSortType()?VotingActivityJoinItemDO::getVotingActivityJoinItemId:VotingActivityJoinItemDO::getVotingActivityJoinItemNum)
 
+
+
         );
     }