Commit 65538c24 by 涂亚平

第一个版本

1 parent 36ea1093
Showing with 2498 additions and 8713 deletions
......@@ -7,16 +7,16 @@
<sourceOutputDir name="target/generated-sources/annotations" />
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
<outputRelativeToContentRoot value="true" />
<module name="electron" />
<module name="zhongzhi" />
</profile>
</annotationProcessing>
<bytecodeTargetLevel>
<module name="electron" target="1.8" />
<module name="zhongzhi" target="1.8" />
</bytecodeTargetLevel>
</component>
<component name="JavacSettings">
<option name="ADDITIONAL_OPTIONS_OVERRIDE">
<module name="electron" options="-parameters" />
<module name="zhongzhi" options="-parameters" />
</option>
</component>
</project>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.baomidou:dynamic-datasource-spring-boot-starter:3.6.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/baomidou/dynamic-datasource-spring-boot-starter/3.6.1/dynamic-datasource-spring-boot-starter-3.6.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/baomidou/dynamic-datasource-spring-boot-starter/3.6.1/dynamic-datasource-spring-boot-starter-3.6.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/baomidou/dynamic-datasource-spring-boot-starter/3.6.1/dynamic-datasource-spring-boot-starter-3.6.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
......@@ -7,5 +7,5 @@
</list>
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="false" project-jdk-name="1.8" project-jdk-type="JavaSDK" />
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="false" project-jdk-name="1.8" project-jdk-type="JavaSDK" />
</project>
\ No newline at end of file
......@@ -2,7 +2,7 @@
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/electron.iml" filepath="$PROJECT_DIR$/electron.iml" />
<module fileurl="file://$PROJECT_DIR$/zhongzhi.iml" filepath="$PROJECT_DIR$/zhongzhi.iml" />
</modules>
</component>
</project>
\ No newline at end of file
This diff could not be displayed because it is too large.
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="Spring" name="Spring">
<configuration />
</facet>
<facet type="web" name="Web">
<configuration>
<webroots />
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.3.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.3.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.2.12.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.3.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.3.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.3" level="project" />
<orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.3" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.13.3" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.13.3" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.30" level="project" />
<orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.2.12.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.2.12.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.26" level="project" />
<orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.30" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.3.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.3.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.11.3" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.11.3" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.11.3" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.3.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.41" level="project" />
<orderEntry type="library" name="Maven: org.glassfish:jakarta.el:3.0.3" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.41" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.2.12.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.2.12.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.2.12.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.2.12.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.3.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.2.12.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.9.6" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-configuration-processor:2.3.7.RELEASE" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: mysql:mysql-connector-java:8.0.22" level="project" />
<orderEntry type="library" name="Maven: com.alibaba:druid-spring-boot-starter:1.1.22" level="project" />
<orderEntry type="library" name="Maven: com.alibaba:druid:1.1.22" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.3.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.zaxxer:HikariCP:3.4.5" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.2.12.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-tx:5.2.12.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.16" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-boot-starter:3.3.0" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus:3.3.0" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-generator:3.3.2" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-extension:3.3.2" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-core:3.3.2" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-annotation:3.3.2" level="project" />
<orderEntry type="library" name="Maven: com.github.jsqlparser:jsqlparser:3.1" level="project" />
<orderEntry type="library" name="Maven: org.mybatis:mybatis:3.5.4" level="project" />
<orderEntry type="library" name="Maven: org.mybatis:mybatis-spring:2.0.4" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:dynamic-datasource-spring-boot-starter:3.6.1" level="project" />
<orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.58" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger2:2.9.2" level="project" />
<orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.5.20" level="project" />
<orderEntry type="library" name="Maven: io.swagger:swagger-models:1.5.20" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.11.3" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-spi:2.9.2" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-core:2.9.2" level="project" />
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.10.18" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-schema:2.9.2" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger-common:2.9.2" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-spring-web:2.9.2" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:guava:20.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.5.1" level="project" />
<orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-core:1.2.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-metadata:1.2.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.mapstruct:mapstruct:1.2.0.Final" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger-ui:2.9.2" level="project" />
<orderEntry type="library" name="Maven: com.amdelamar:jhash:2.0.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:3.13" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi:3.13" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:3.13" level="project" />
<orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" level="project" />
<orderEntry type="library" name="Maven: com.aliyun:aliyun-java-sdk-dysmsapi:1.1.0" level="project" />
<orderEntry type="library" name="Maven: com.aliyun:aliyun-java-sdk-core:4.0.1" level="project" />
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.8.6" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.13" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.14" level="project" />
<orderEntry type="library" name="Maven: javax.xml.bind:jaxb-api:2.3.1" level="project" />
<orderEntry type="library" name="Maven: javax.activation:javax.activation-api:1.2.0" level="project" />
<orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-core:2.3.0" level="project" />
<orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.3.0" level="project" />
<orderEntry type="library" name="Maven: javax.activation:activation:1.1.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.9" level="project" />
<orderEntry type="library" name="Maven: com.itextpdf:itext-asian:5.2.0" level="project" />
<orderEntry type="library" name="Maven: com.itextpdf:itextpdf:5.4.1" level="project" />
<orderEntry type="library" name="Maven: com.auth0:java-jwt:3.10.3" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.11.3" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.11.3" level="project" />
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.14" level="project" />
<orderEntry type="library" name="Maven: com.aliyun.oss:aliyun-sdk-oss:3.15.0" level="project" />
<orderEntry type="library" name="Maven: org.jdom:jdom2:2.0.6" level="project" />
<orderEntry type="library" name="Maven: org.codehaus.jettison:jettison:1.1" level="project" />
<orderEntry type="library" name="Maven: stax:stax-api:1.0.1" level="project" />
<orderEntry type="library" name="Maven: com.aliyun:aliyun-java-sdk-ram:3.1.0" level="project" />
<orderEntry type="library" name="Maven: com.aliyun:aliyun-java-sdk-kms:2.11.0" level="project" />
<orderEntry type="library" name="Maven: com.tencentcloudapi:tencentcloud-sdk-java:3.1.64" level="project" />
<orderEntry type="library" name="Maven: com.squareup.okio:okio:1.12.0" level="project" />
<orderEntry type="library" name="Maven: com.squareup.okhttp:okhttp:2.5.0" level="project" />
<orderEntry type="library" name="Maven: commons-httpclient:commons-httpclient:3.1" level="project" />
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.0.4" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:fluent-hc:4.5.13" level="project" />
</component>
</module>
\ No newline at end of file
2025-12-29 10:46:00,055 [main] ERROR org.springframework.boot.SpringApplication:837 - Application run failed
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'documentationPluginsBootstrapper' defined in URL [jar:file:/C:/Users/TYP/.m2/repository/io/springfox/springfox-spring-web/2.9.2/springfox-spring-web-2.9.2.jar!/springfox/documentation/spring/web/plugins/DocumentationPluginsBootstrapper.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'webMvcRequestHandlerProvider' defined in URL [jar:file:/C:/Users/TYP/.m2/repository/io/springfox/springfox-spring-web/2.9.2/springfox-spring-web-2.9.2.jar!/springfox/documentation/spring/web/plugins/WebMvcRequestHandlerProvider.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'requestMappingHandlerMapping' defined in class path resource [com/zhongzhi/common/configure/WebConfig.class]: Invocation of init method failed; nested exception is java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'projectController' method
com.zhongzhi.controller.ProjectController#createHonglvProject(CreateVocationalProjectDTO)
to {POST /project/createVocationalProject}: There is already 'projectController' bean method
com.zhongzhi.controller.ProjectController#createVocationalProject(CreateVocationalProjectDTO) mapped.
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:799)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:228)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1356)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1203)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:556)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:516)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:324)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:897)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:879)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:551)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:143)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:405)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)
at com.zhongzhi.ZhongzhiApplication.main(ZhongzhiApplication.java:14)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'webMvcRequestHandlerProvider' defined in URL [jar:file:/C:/Users/TYP/.m2/repository/io/springfox/springfox-spring-web/2.9.2/springfox-spring-web-2.9.2.jar!/springfox/documentation/spring/web/plugins/WebMvcRequestHandlerProvider.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'requestMappingHandlerMapping' defined in class path resource [com/zhongzhi/common/configure/WebConfig.class]: Invocation of init method failed; nested exception is java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'projectController' method
com.zhongzhi.controller.ProjectController#createHonglvProject(CreateVocationalProjectDTO)
to {POST /project/createVocationalProject}: There is already 'projectController' bean method
com.zhongzhi.controller.ProjectController#createVocationalProject(CreateVocationalProjectDTO) mapped.
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:799)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:228)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1356)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1203)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:556)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:516)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:324)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:1525)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1489)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveMultipleBeans(DefaultListableBeanFactory.java:1378)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1265)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1227)
at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:886)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:790)
... 20 common frames omitted
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'requestMappingHandlerMapping' defined in class path resource [com/zhongzhi/common/configure/WebConfig.class]: Invocation of init method failed; nested exception is java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'projectController' method
com.zhongzhi.controller.ProjectController#createHonglvProject(CreateVocationalProjectDTO)
to {POST /project/createVocationalProject}: There is already 'projectController' bean method
com.zhongzhi.controller.ProjectController#createVocationalProject(CreateVocationalProjectDTO) mapped.
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1794)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:594)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:516)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:324)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:1525)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1489)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveMultipleBeans(DefaultListableBeanFactory.java:1378)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1265)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1227)
at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:886)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:790)
... 37 common frames omitted
Caused by: java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'projectController' method
com.zhongzhi.controller.ProjectController#createHonglvProject(CreateVocationalProjectDTO)
to {POST /project/createVocationalProject}: There is already 'projectController' bean method
com.zhongzhi.controller.ProjectController#createVocationalProject(CreateVocationalProjectDTO) mapped.
at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry.validateMethodMapping(AbstractHandlerMethodMapping.java:636)
at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry.register(AbstractHandlerMethodMapping.java:603)
at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.registerHandlerMethod(AbstractHandlerMethodMapping.java:318)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping.registerHandlerMethod(RequestMappingHandlerMapping.java:378)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping.registerHandlerMethod(RequestMappingHandlerMapping.java:75)
at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.lambda$detectHandlerMethods$1(AbstractHandlerMethodMapping.java:288)
at java.util.LinkedHashMap.forEach(LinkedHashMap.java:684)
at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.detectHandlerMethods(AbstractHandlerMethodMapping.java:286)
at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.processCandidateBean(AbstractHandlerMethodMapping.java:258)
at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.initHandlerMethods(AbstractHandlerMethodMapping.java:217)
at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.afterPropertiesSet(AbstractHandlerMethodMapping.java:205)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping.afterPropertiesSet(RequestMappingHandlerMapping.java:189)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1853)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1790)
... 51 common frames omitted
2026-04-10 15:16:08,277 [http-nio-23511-exec-4] ERROR org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class com.zhongzhi.vo.ResponseVO] with preset Content-Type 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'] with root cause
org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class com.zhongzhi.vo.ResponseVO] with preset Content-Type 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:299)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.handleReturnValue(RequestResponseBodyMethodProcessor.java:181)
at org.springframework.web.method.support.HandlerMethodReturnValueHandlerComposite.handleReturnValue(HandlerMethodReturnValueHandlerComposite.java:82)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:123)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:878)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:792)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:92)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:888)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1597)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
2026-04-10 15:19:53,982 [http-nio-23511-exec-7] ERROR org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class com.zhongzhi.vo.ResponseVO] with preset Content-Type 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'] with root cause
org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class com.zhongzhi.vo.ResponseVO] with preset Content-Type 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:299)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.handleReturnValue(RequestResponseBodyMethodProcessor.java:181)
at org.springframework.web.method.support.HandlerMethodReturnValueHandlerComposite.handleReturnValue(HandlerMethodReturnValueHandlerComposite.java:82)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:123)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:878)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:792)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:92)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:888)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1597)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
2026-04-10 15:20:35,395 [http-nio-23511-exec-9] ERROR org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class com.zhongzhi.vo.ResponseVO] with preset Content-Type 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'] with root cause
org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class com.zhongzhi.vo.ResponseVO] with preset Content-Type 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:299)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.handleReturnValue(RequestResponseBodyMethodProcessor.java:181)
at org.springframework.web.method.support.HandlerMethodReturnValueHandlerComposite.handleReturnValue(HandlerMethodReturnValueHandlerComposite.java:82)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:123)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:878)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:792)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:92)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:888)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1597)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
2026-04-10 15:22:06,560 [http-nio-23511-exec-6] ERROR org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class com.zhongzhi.vo.ResponseVO] with preset Content-Type 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'] with root cause
org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class com.zhongzhi.vo.ResponseVO] with preset Content-Type 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:299)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.handleReturnValue(RequestResponseBodyMethodProcessor.java:181)
at org.springframework.web.method.support.HandlerMethodReturnValueHandlerComposite.handleReturnValue(HandlerMethodReturnValueHandlerComposite.java:82)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:123)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:878)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:792)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:92)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:888)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1597)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
2026-04-10 15:22:08,433 [http-nio-23511-exec-7] ERROR org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class com.zhongzhi.vo.ResponseVO] with preset Content-Type 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'] with root cause
org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class com.zhongzhi.vo.ResponseVO] with preset Content-Type 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:299)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.handleReturnValue(RequestResponseBodyMethodProcessor.java:181)
at org.springframework.web.method.support.HandlerMethodReturnValueHandlerComposite.handleReturnValue(HandlerMethodReturnValueHandlerComposite.java:82)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:123)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:878)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:792)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:92)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:888)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1597)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
2026-04-10 15:24:08,090 [http-nio-23511-exec-2] ERROR org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class com.zhongzhi.vo.ResponseVO] with preset Content-Type 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'] with root cause
org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class com.zhongzhi.vo.ResponseVO] with preset Content-Type 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:299)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.handleReturnValue(RequestResponseBodyMethodProcessor.java:181)
at org.springframework.web.method.support.HandlerMethodReturnValueHandlerComposite.handleReturnValue(HandlerMethodReturnValueHandlerComposite.java:82)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:123)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:878)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:792)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:92)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:888)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1597)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
......@@ -95,12 +95,6 @@
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>dynamic-datasource-spring-boot-starter</artifactId>
<version>3.6.1</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>${fastjson.version}</version>
......@@ -204,7 +198,7 @@
</repositories>
<build>
<finalName>electron</finalName>
<finalName>lixin</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
......
package com.zhongzhi.common.configure;
import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.After;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.reflect.MethodSignature;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
import java.lang.reflect.Method;
@Aspect
@Order(-10) // 保证该 AOP 在 @Transactional 之前执行
@Component
public class DataSourceAspect {
@Before("@annotation(com.zhongzhi.common.configure.DataSourceSwitch) || @within(com.zhongzhi.common.configure.DataSourceSwitch)")
public void before(JoinPoint point) {
Class<?> targetClass = point.getTarget().getClass();
DataSourceSwitch classDataSource = targetClass.getAnnotation(DataSourceSwitch.class);
// 默认使用类上的数据源配置
String dsName = "master";
if (classDataSource != null) {
dsName = classDataSource.value();
}
// 方法上的数据源配置会覆盖类上的配置
MethodSignature signature = (MethodSignature) point.getSignature();
Method method = signature.getMethod();
DataSourceSwitch methodDataSource = method.getAnnotation(DataSourceSwitch.class);
if (methodDataSource != null) {
dsName = methodDataSource.value();
}
// 切换数据源
DynamicDataSourceContextHolder.push(dsName);
}
@After("@annotation(com.zhongzhi.common.configure.DataSourceSwitch) || @within(com.zhongzhi.common.configure.DataSourceSwitch)")
public void after(JoinPoint point) {
// 清除数据源,避免线程复用导致的问题
DynamicDataSourceContextHolder.poll();
}
}
\ No newline at end of file
package com.zhongzhi.common.configure;
import java.lang.annotation.*;
@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface DataSourceSwitch {
String value() default "db2"; // 默认使用主数据源
}
\ No newline at end of file
package com.zhongzhi.common.configure;
import com.zhongzhi.common.constant.DBTypeEnum;
public class DbContextHolder {
private static final ThreadLocal contextHolder = new ThreadLocal<>();
/**
* 设置数据源
* @param dbTypeEnum
*/
public static void setDbType(DBTypeEnum dbTypeEnum) {
contextHolder.set(dbTypeEnum.getValue());
}
/**
* 取得当前数据源
* @return
*/
public static String getDbType() {
return (String) contextHolder.get();
}
/**
* 清除上下文数据
*/
public static void clearDbType() {
contextHolder.remove();
}
}
package com.zhongzhi.common.configure;
import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;
public class DynamicDataSource extends AbstractRoutingDataSource {
@Override
protected Object determineCurrentLookupKey() {
return DbContextHolder.getDbType();
}
}
package com.zhongzhi.common.configure;
import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder;
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.core.MybatisConfiguration;
import com.baomidou.mybatisplus.core.config.GlobalConfig;
import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
import com.zhongzhi.common.constant.DBTypeEnum;
import com.zhongzhi.common.handler.MetaHandler;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.type.JdbcType;
import org.springframework.beans.factory.annotation.Qualifier;
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 org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import javax.sql.DataSource;
import java.util.HashMap;
import java.util.Map;
@Configuration
public class MybatisPlusConfig {
......@@ -39,79 +24,13 @@ public class MybatisPlusConfig {
/**
* 自动填充功能
* ConfigurationProperties 设置多数据源下逻辑删除等全局配置失效
*
* @return
*/
@Bean
@ConfigurationProperties(prefix = "mybatis-plus.global-config")
public GlobalConfig globalConfig() {
GlobalConfig globalConfig = new GlobalConfig();
globalConfig.setSqlInjector(new DefaultSqlInjector());
globalConfig.setMetaObjectHandler(new MetaHandler());
return globalConfig;
}
/**
* 配置多数据源
*/
@Bean(name = "db1")
@ConfigurationProperties(prefix = "spring.datasource.dynamic.datasource.db1")
public DataSource db1() {
return DruidDataSourceBuilder.create().build();
}
@Bean(name = "db2")
@ConfigurationProperties(prefix = "spring.datasource.dynamic.datasource.db2")
public DataSource db2() {
return DruidDataSourceBuilder.create().build();
}
@Bean
@Primary
public DataSource multipleDataSource(@Qualifier("db1") DataSource db1, @Qualifier("db2") DataSource db2) {
DynamicDataSource dynamicDataSource = new DynamicDataSource();
Map<Object, Object> dataSource = new HashMap<>();
dataSource.put(DBTypeEnum.db1.getValue(), db1);
dataSource.put(DBTypeEnum.db2.getValue(), db2);
dynamicDataSource.setTargetDataSources(dataSource);
dynamicDataSource.setDefaultTargetDataSource(db2);
return dynamicDataSource;
}
@Bean("sqlSessionFactory")
public SqlSessionFactory sqlSessionFactory() throws Exception {
MybatisSqlSessionFactoryBean sqlSessionFactory = new MybatisSqlSessionFactoryBean();
sqlSessionFactory.setDataSource(multipleDataSource(db1(), db2()));
sqlSessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver()
.getResources("classpath:mapper/*.xml"));
MybatisConfiguration configuration = new MybatisConfiguration();
configuration.setJdbcTypeForNull(JdbcType.NULL);
configuration.setMapUnderscoreToCamelCase(true);
configuration.setCacheEnabled(false);
sqlSessionFactory.setConfiguration(configuration);
sqlSessionFactory.setPlugins(paginationInterceptor());
sqlSessionFactory.setGlobalConfig(globalConfig());
return sqlSessionFactory.getObject();
}
// @Bean(name = "sqlSessionFactory1")
// public SqlSessionFactory sqlSessionFactory1(@Qualifier("db1") DataSource dataSource) throws Exception {
// MybatisSqlSessionFactoryBean bean = new MybatisSqlSessionFactoryBean();
// bean.setDataSource(dataSource);
// bean.setMapperLocations(new PathMatchingResourcePatternResolver()
// .getResources("classpath:mapper/*.xml"));
// MybatisConfiguration configuration = new MybatisConfiguration();
// configuration.setJdbcTypeForNull(JdbcType.NULL);
// configuration.setMapUnderscoreToCamelCase(true);
// configuration.setCacheEnabled(false);
// bean.setConfiguration(configuration);
// bean.setPlugins(paginationInterceptor());
// bean.setGlobalConfig(globalConfig());
// return bean.getObject();
// }
}
\ No newline at end of file
......@@ -30,7 +30,7 @@ public class SwaggerConfig {
.paths(PathSelectors.any())
.build()
.apiInfo(new ApiInfoBuilder()
.title("中职双创系统")
.title("国泰君安")
.description("接口文档")
.version("1.0")
.build());
......
......@@ -19,7 +19,7 @@ public enum Code {
TOKEN_VERIFICATION_FAILED(1012, "令牌验证失败"),
OSS_ERROR(1013, "OSS文件上传异常"),
Network_ERROR(9000, "网络请求失败"),
SERVER_INTERNAL_ERROR(99999, "功能维护,请联系技术支持人员"),
SERVER_INTERNAL_ERROR(99999, "服务器内部错误"),
;
private final Integer code;
......
package com.zhongzhi.common.constant;
public enum DBTypeEnum {
db1("db1"), //自己库
db2("db2"); //中间库
private String value;
DBTypeEnum(String value) {
this.value = value;
}
public String getValue() {
return value;
}
}
\ No newline at end of file
package com.zhongzhi.common.constant;
public class OpenStatus {
public static final String DOING = "进行中";
public static final String DONE = "已结束";
public static final String TODO = "待开始";
}
......@@ -8,17 +8,13 @@ import java.util.stream.Collectors;
public class PDFCheckBox {
public static String getType(String type, String projectGroup,String themeName) {
public static String getType(String type, String projectGroup) {
if (StringUtils.isBlank(type) &&
projectGroup.equals(ProjectType.TECHNOLOGY_INNOVATION_GROUP)) {
return "□方案设计类 □模型创意类 □虚拟演示类";
} else if (StringUtils.isBlank(type) &&
projectGroup.equals(ProjectType.CULTURAL_CREATIVE_GROUP)) {
if ("创意让生活更美好".equals(themeName)){
return themeName+"\n"+"□服装与服饰类设计 □视觉传达类 □产品设计类";
}else {
return themeName+"\n"+"□插画类 □文创产品类";
}
return "□服装与服饰类设计 □视觉传达类 □产品设计类";
}
String[] typeT = {"方案设计类", "模型创意类", "虚拟演示类"};
......@@ -35,22 +31,14 @@ public class PDFCheckBox {
}
return typeValue;
} else if (projectGroup.equals(ProjectType.CULTURAL_CREATIVE_GROUP)) {
if ("创意让生活更美好".equals(themeName)){
if (type.equals("服装与服饰类设计")) {
return themeName+"\n"+"■服装与服饰类设计 □视觉传达类 □产品设计类";
} else if (type.equals("视觉传达类")) {
return themeName+"\n"+"□服装与服饰类设计 ■视觉传达类 □产品设计类";
} else if (type.equals("产品设计类")) {
return themeName+"\n"+"□服装与服饰类设计 □视觉传达类 ■产品设计类";
} else {
return themeName+"\n"+"□服装与服饰类设计 □视觉传达类 □产品设计类";
}
}else {
if (type.equals("插画类")) {
return themeName+"\n"+"■插画类 □文创产品类";
} else {
return themeName+"\n"+"□插画类 ■文创产品类";
}
if (type.equals("服装与服饰类设计")) {
return "■服装与服饰类设计 □视觉传达类 □产品设计类";
} else if (type.equals("视觉传达类")) {
return "□服装与服饰类设计 ■视觉传达类 □产品设计类";
} else if (type.equals("产品设计类")) {
return "□服装与服饰类设计 □视觉传达类 ■产品设计类";
} else {
return "□服装与服饰类设计 □视觉传达类 □产品设计类";
}
}
return "";
......
package com.zhongzhi.common.constant;
public class ProjectAssignStatus {
public static final String NO_ASSIGNED = "未分配";
public static final String ASSIGNED = "已分配";
}
......@@ -3,10 +3,10 @@ package com.zhongzhi.common.constant;
import lombok.Data;
@Data
public class RoleType {
public class ProjectAssigned {
public static final String TEAMLEADER = "组长";
public static final String ASSIGN_ED = "已分配";
public static final String TEAMMEMBER = "组员";
public static final String UN_ASSIGN = "未分配";
}
......@@ -6,4 +6,10 @@ public class ProjectProgress {
public static final String UNREGISTERED = "创意设计阶段";
public static final String CHUANGYI = "创意组";
public static final String CHUCHUANG = "初创组";
public static final String CHENGZHANGZU = "成长组";
}
......@@ -16,8 +16,6 @@ public class ProjectSchedule {
// 校内赛
public static final String SCHOOL_REVIEW = "校级申请项目";
// public static final String PRELIMINARY_REVIEW = "市级初赛项目";
public static final String SEMI_FINAL_REVIEW = "市级复赛项目";
public static final String FINAL_REVIEW = "市级决赛项目";
......
......@@ -10,10 +10,10 @@ package com.zhongzhi.common.constant;
*/
public class ProjectStatus {
// public static final String TO_REVIEW = "";
public static final String UN_SUBMITTED = "填写中";
public static final String TO_CHECK = "待评审";
public static final String WITHDRAWN = "已撤回";
public static final String SCHOOL_NOT_PASSED = "不予提交市级复赛";
......@@ -22,11 +22,13 @@ public class ProjectStatus {
public static final String PRELIMINARY_NOT_PASSED = "不予提交市级初赛";
public static final String REMATCH_WINNING_AWARD = "市级优胜奖";
public static final String REMATCH_WINNING_AWARD = "优胜奖";
public static final String REMATCH_SILVER_AWARD = "二等奖";
public static final String REMATCH_SILVER_AWARD = "市级银奖";
public static final String REMATCH_BRONZE_AWARD = "三等奖";
public static final String REMATCH_BRONZE_AWARD = "市级铜奖";
public static final String REMATCH_FINALS_GOLD_AWARD = "一等奖";
public static final String REMATCH_FINALS_GOLD_AWARD = "市级金奖";
public static final String ABANDON = "未通过";
}
......@@ -17,11 +17,7 @@ public class ProjectType {
public static final String SEED_TRACK = "种子赛道";
public static final String VOCATIONAL = "职教赛道";
public static final String HONGLV = "红旅赛道";
public static final String INTERNATIONAL = "国际合作";
// public static final String VOCATIONAL = "职教赛道";
/**
* 组别
......
package com.zhongzhi.common.constant;
import lombok.Data;
@Data
public class SubmitStatus {
public static final String DONE = "已提交";
public static final String TEMP = "暂存";
public static final String GIVEUP = "弃权";
}
package com.zhongzhi.common.constant;
import lombok.Data;
@Data
public class TeachType {
public static final String INDUSTRY = "行业专家";
public static final String TEACH = "教学专家";
}
......@@ -113,7 +113,7 @@ public class GlobalExceptionHandler {
@ExceptionHandler(value = Exception.class)
public ResponseVO<T> serverInternalError(Exception e, HttpServletRequest request) {
String url = request.getRequestURI();
e.printStackTrace();
e.printStackTrace();
return ResponseData.generateCreatedResponse(Code.SERVER_INTERNAL_ERROR.getCode(), Code.SERVER_INTERNAL_ERROR.getMessage(), url);
}
}
\ No newline at end of file
......@@ -85,7 +85,7 @@ public class CodeGenerator {
pc.setService("service");
pc.setServiceImpl("service.impl");
pc.setEntity("model");
pc.setMapper("com/zhongzhi/dao/mapper");
pc.setMapper("mapper");
mpg.setPackageInfo(pc);
// 自定义配置
......
package com.zhongzhi.common.interceptor;
import com.auth0.jwt.interfaces.Claim;
import com.zhongzhi.common.configure.DbContextHolder;
import com.zhongzhi.common.constant.Code;
import com.zhongzhi.common.constant.DBTypeEnum;
import com.zhongzhi.common.constant.SmsCode;
import com.zhongzhi.common.exception.HttpException;
import com.zhongzhi.common.utils.JwtUtil;
import com.zhongzhi.common.utils.Localstorage;
import com.zhongzhi.common.utils.LoginRequired;
import com.zhongzhi.model.*;
import com.zhongzhi.service.*;
import com.zhongzhi.model.AdministerDO;
import com.zhongzhi.model.CollegesDictDO;
import com.zhongzhi.model.ProjectJudgeDO;
import com.zhongzhi.model.StudentDO;
import com.zhongzhi.service.AdministerService;
import com.zhongzhi.service.CollegesDictService;
import com.zhongzhi.service.ProjectJudgeService;
import com.zhongzhi.service.StudentService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
......@@ -77,9 +81,6 @@ public class AuthenticationInterceptor implements HandlerInterceptor {
if (role.length > 0) {
if (Arrays.asList(role).contains(type)) {
if (SmsCode.student.equals(type)) {
DbContextHolder.setDbType(DBTypeEnum.db2);
StudentDO studentDO = studentService.getById(claimMap.get("id").asLong());
if (studentDO != null) {
Localstorage.setUser(studentDO, type);
......@@ -89,9 +90,6 @@ public class AuthenticationInterceptor implements HandlerInterceptor {
throw new HttpException(Code.USERNAMENOTFOUND.getCode(), Code.USERNAMENOTFOUND.getMessage());
}
} else if (SmsCode.center.equals(type)) {
DbContextHolder.setDbType(DBTypeEnum.db2);
AdministerDO administerDO = administerService.getById(claimMap.get("id").asLong());
if (administerDO != null) {
Localstorage.setUser(administerDO, type);
......@@ -101,8 +99,6 @@ public class AuthenticationInterceptor implements HandlerInterceptor {
throw new HttpException(Code.USERNAMENOTFOUND.getCode(), Code.USERNAMENOTFOUND.getMessage());
}
} else if (SmsCode.school.equals(type)) {
DbContextHolder.setDbType(DBTypeEnum.db2);
CollegesDictDO collegesDictDO = collegesDictService.getById(claimMap.get("id").asLong());
if (collegesDictDO != null) {
Localstorage.setUser(collegesDictDO, type);
......@@ -112,8 +108,6 @@ public class AuthenticationInterceptor implements HandlerInterceptor {
throw new HttpException(Code.USERNAMENOTFOUND.getCode(), Code.USERNAMENOTFOUND.getMessage());
}
} else if (SmsCode.review.equals(type)) {
DbContextHolder.setDbType(DBTypeEnum.db2);
ProjectJudgeDO projectJudgeDO = projectJudgeService.getById(claimMap.get("id").asLong());
if (projectJudgeDO != null) {
Localstorage.setUser(projectJudgeDO, type);
......
......@@ -63,9 +63,9 @@ public class AliyunSmsUtil {
//必填:待发送手机号
request.setPhoneNumbers(phone);
//必填:短信签名-可在短信控制台中找到
request.setSignName("双创平台");
request.setSignName("有课互联");
//必填:短信模板-可在短信控制台中找到
request.setTemplateCode("SMS_229640297");
request.setTemplateCode("SMS_484075307");
//可选:模板中的变量替换JSON串,如模板内容为"亲爱的${name},您的验证码为${code}"时,此处的值为
request.setTemplateParam("{\"code\":\"" + code + "\"}");
......@@ -87,33 +87,33 @@ public class AliyunSmsUtil {
}
// /**
// * 三网平台短信
// * @param msg
// * @param phone
// * @param templateId
// */
// public void sendTemplateMsg(String msg, String phone, String templateId) {
// Map<String, Object> map = new HashMap<>();
// try {
// map.put("cpcode", aliyunSmsProperties.getCpcode());
// map.put("msg", msg);
// map.put("mobiles", phone);
// map.put("excode", aliyunSmsProperties.getExcode());
// map.put("templetid", templateId);
// String md5source = aliyunSmsProperties.getCpcode() + msg + phone + aliyunSmsProperties.getExcode() + templateId + aliyunSmsProperties.getKey();
// map.put("sign", makeMD5(new String(md5source.getBytes(StandardCharsets.UTF_8), StandardCharsets.UTF_8)).toLowerCase());
// RestTemplate restTemplate = new RestTemplate();
// ResponseEntity<String> responseEntity = restTemplate.postForEntity(aliyunSmsProperties.getRcsapi(), map, String.class);
// String body = responseEntity.getBody();
// JSONObject object = JSON.parseObject(body);
// if (Integer.valueOf(object.get("resultcode").toString()) != 0) {
// log.error(object.get("resultmsg").toString());
// }
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
/**
* 三网平台短信
* @param msg
* @param phone
* @param templateId
*/
public void sendTemplateMsg(String msg, String phone, String templateId) {
Map<String, Object> map = new HashMap<>();
try {
map.put("cpcode", aliyunSmsProperties.getCpcode());
map.put("msg", msg);
map.put("mobiles", phone);
map.put("excode", aliyunSmsProperties.getExcode());
map.put("templetid", templateId);
String md5source = aliyunSmsProperties.getCpcode() + msg + phone + aliyunSmsProperties.getExcode() + templateId + aliyunSmsProperties.getKey();
map.put("sign", makeMD5(new String(md5source.getBytes(StandardCharsets.UTF_8), StandardCharsets.UTF_8)).toLowerCase());
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<String> responseEntity = restTemplate.postForEntity(aliyunSmsProperties.getRcsapi(), map, String.class);
String body = responseEntity.getBody();
JSONObject object = JSON.parseObject(body);
if (Integer.valueOf(object.get("resultcode").toString()) != 0) {
log.error(object.get("resultmsg").toString());
}
} catch (Exception e) {
e.printStackTrace();
}
}
// /**
// * 三网平台短信 新版本 https://flaginfo-cloud.yuque.com/staff-rozzgq/ofcpak
......
package com.zhongzhi.common.utils;
/**
* 枚举类
*/
public class ConstantUtils {
public static final String DELETE_SUCCESS = "删除成功";
public static final String UPLOAD_FAIL = "上传失败";
public static final String ADD_SUCCESS = "新增成功";
public static final String COMMIT_SUCCESS = "提交成功";
public static final String SUCCESS_SEND_OUT = "发送成功";
public static final String FAIL_SEND_OUT = "发送失败";
public static final String SAVE_SUCCESS = "保存成功";
public static final String SHARE_SUCCESS = "共享成功";
public static final String SUBMIT_SUCCESS = "提交成功";
public static final String SUCCESS_UPDATE = "更新成功";
public static final String FAIL_UPDATE = "更新失败";
public static final String SET_SUCCESS = "设置成功";
public static final String SUCCESS_VERIFY = "验证成功";
public static final String FAIL_VERIFY = "验证失败";
public static final String COMPANY_NAME = "TeachAI";
public static final String ALREADY_DONE = "已完成";
public static final String ALREADY_RECOMMEND = "已推荐";
public static final String VERIFY_NAME = "有课互联";
public static final String NOTICE_NAME = "有课进度通知";
public static final String TECH_NAME = "有课互联学习平台";
public static final String SUCCESS_REJECT = "驳回成功";
public static final String SUCCESS_CHECK = "审批成功";
/**
* 短信模板---验证模板
*/
public static final String TEMPLATE_CODE = "SMS_190945394";
/**
* 短信 地域ID
*/
public static final String REGION_ID = "cn-hangzhou";
/**
* 短信 RAM账号AccessKey ID
*/
public static final String ACCESS_KEY_ID = "LTAI5tLUBG4B6QxhHrhddc7p";
/**
* 短信 RAM账号AccessKey Secret
*/
public static final String SECRET = "eber38QGHZixTQ6bFfrd80kbg67jIP";
/**
* 腾讯云点播视频转码模板
*/
public static final Long TEMPLATE_VOD = 100030L;
/**
* 手机端token
*/
public static final String MOBILE_TERMINATE = "mobile";
public static final String ADMINISTER_TERMINATE = "administer";
/**
* API密钥--微信参数
*/
public static final String SECRET_ID = "AKIDOcePHvZ2C5VeYHQGSO5aqtlNxJQLqfz2";
public static final String SECRET_KEY = "vjHYRmrfDbw0rWxA7oFcj7F8lDPKCm8E";
/**
* 图形验证码
*/
public static final Long CAPTCHAAPP_ID = 2013197365L;
public static final String APP_SECRET_KEY = "04ABoF0ZVuMje8NP84DE5Sg**";
public static final Long BUSINESS_ID = 1L;
public static final String UTF8 = "UTF-8";
/**
* 保利威视
*/
public static final String POLYV_VIEWLOG_2 = "http://api.polyv.net/live/v1/statistics/{channelId}/viewlog";
/**
* 推送人社局图片格式
*/
public static final String IMAGE_FORMAT = "?x-oss-process=image/auto-orient,1/resize,m_pad,w_500,h_500/quality,Q_100/format,jpg";
}
package com.zhongzhi.common.utils;
import com.alibaba.druid.support.json.JSONUtils;
import com.auth0.jwt.JWT;
import com.auth0.jwt.JWTVerifier;
import com.auth0.jwt.algorithms.Algorithm;
......
......@@ -42,7 +42,7 @@ public class PDFUtil {
}
}
public static void create(String projectMatch, MatchDictDO matchDictDO, String projectGroup, SeedTrackProjectVO seedTrackProjectVO,String themeName) {
public static void create(String projectMatch, MatchDictDO matchDictDO, String projectGroup, SeedTrackProjectVO seedTrackProjectVO) {
try {
ByteArrayOutputStream bao = new ByteArrayOutputStream();
Document document = new Document(PageSize.A4, 20, 20, 20, 20);
......@@ -89,7 +89,7 @@ public class PDFUtil {
cell.setPaddingBottom(5);
table.addCell(cell);
Paragraph typeValue = new Paragraph(PDFCheckBox.getType(seedTrackProjectVO.getClassification(), projectGroup,themeName), new Font(PDFUtil.baseFont, 10));
Paragraph typeValue = new Paragraph(PDFCheckBox.getType(seedTrackProjectVO.getClassification(), projectGroup), new Font(PDFUtil.baseFont, 10));
cell = new PdfPCell(typeValue);
cell.setHorizontalAlignment(Element.ALIGN_LEFT);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
......@@ -597,7 +597,6 @@ public class PDFUtil {
cell.setBorderWidthBottom(0);
cell.setFixedHeight(50);
table.addCell(cell);
}
// Paragraph roadshow = new Paragraph("路演拟采用表现形式(请打√)", new Font(PDFUtil.baseFont, 10));
......@@ -977,221 +976,10 @@ public class PDFUtil {
document.add(blank);
document.add(new Paragraph(" "));
Paragraph thirdPart = new Paragraph("请将盖章版本回传至大赛管理平台,逾期视为报名失败。", new Font(baseFont, 12, Font.NORMAL));
document.add(thirdPart);
document.add(new Paragraph(" "));
document.close();
bao.close();
renderPdf(bao.toByteArray(), String.valueOf(System.currentTimeMillis()), "pdf");
} catch (Exception e) {
log.error("---PDF创建异常: " + e);
e.printStackTrace();
throw new HttpException(10010);
}
}
public static void createInternationalProjectPDF(List<VocationalProjectVO> result, String schoolName,String deadline,String matchName) {
try {
ByteArrayOutputStream bao = new ByteArrayOutputStream();
Document document = new Document(PageSize.A4, 20, 20, 20, 20);
PdfWriter.getInstance(document, bao);
document.open();
Paragraph t1 = new Paragraph("附件2:", new Font(baseFont, 14, Font.BOLD));
t1.setAlignment(Element.ALIGN_LEFT);
document.add(t1);
document.add(new Paragraph(" "));
Paragraph t3 = new Paragraph(matchName, new Font(baseFont, 14, Font.BOLD));
t3.setAlignment(Element.ALIGN_CENTER);
document.add(t3);
Paragraph teamName = new Paragraph("市级复赛项目申报汇总表" , new Font(baseFont, 14, Font.BOLD));
teamName.setAlignment(Element.ALIGN_CENTER);
document.add(teamName);
document.add(new Paragraph(" "));
Paragraph collegeName = new Paragraph("学校名称: "+ schoolName +" (盖学校公章)" , new Font(baseFont, 12, Font.BOLD));
teamName.setAlignment(Element.ALIGN_LEFT);
document.add(collegeName);
document.add(new Paragraph(" "));
//开始画表
PdfPTable table = new PdfPTable(30);
table.setTotalWidth(560);
table.setLockedWidth(true);
// PDFUtil.tableStyle(new PdfPTable(22), new int[22]);
PdfPCell cell;
Paragraph teacherTitle = new Paragraph("序号", new Font(PDFUtil.baseFont, 10,Font.BOLD));
cell = new PdfPCell(teacherTitle);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(2);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
Paragraph name = new Paragraph("项目名称", new Font(PDFUtil.baseFont, 10,Font.BOLD));
cell = new PdfPCell(name);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(4);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
Paragraph projectType = new Paragraph("赛道组别", new Font(PDFUtil.baseFont, 10,Font.BOLD));
cell = new PdfPCell(projectType);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(3);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
Paragraph leader = new Paragraph("负责人姓名", new Font(PDFUtil.baseFont, 10,Font.BOLD));
cell = new PdfPCell(leader);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(3);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
Paragraph studyCountry = new Paragraph("学籍所在国", new Font(PDFUtil.baseFont, 10,Font.BOLD));
cell = new PdfPCell(studyCountry);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(3);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
Paragraph phone = new Paragraph("负责人手机", new Font(PDFUtil.baseFont, 10,Font.BOLD));
cell = new PdfPCell(phone);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(3);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
Paragraph leaderName = new Paragraph("成员姓名", new Font(PDFUtil.baseFont, 10,Font.BOLD));
cell = new PdfPCell(leaderName);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(6);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
Paragraph teacher = new Paragraph("指导教师", new Font(PDFUtil.baseFont, 10,Font.BOLD));
cell = new PdfPCell(teacher);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(6);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
for (int i = 0; i < result.size(); i++) {
//序号
Paragraph partner = new Paragraph(""+ (i + 1), new Font(PDFUtil.baseFont, 10));
partner.setAlignment(Element.ALIGN_CENTER);
cell = new PdfPCell(partner);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(2);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
//项目名称
Paragraph userName = new Paragraph(result.get(i).getProjectName()== null ? "" : result.get(i).getProjectName(), new Font(PDFUtil.baseFont, 10));
cell = new PdfPCell(userName);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(4);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
//组别
Paragraph memberInfo = new Paragraph(result.get(i).getProjectProgress() == null ? "" : result.get(i).getProjectProgress(), new Font(PDFUtil.baseFont, 10));
cell = new PdfPCell(memberInfo);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(3);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
//负责人姓名
Paragraph leaderNameTmp = new Paragraph(result.get(i).getName() == null ? "" : result.get(i).getName(), new Font(PDFUtil.baseFont, 10));
cell = new PdfPCell(leaderNameTmp);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(3);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
//负责人姓名
Paragraph studyCountryTmp = new Paragraph(result.get(i).getStudyCountry() == null ? "" : result.get(i).getStudyCountry(), new Font(PDFUtil.baseFont, 10));
cell = new PdfPCell(studyCountryTmp);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(3);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
//负责人手机
Paragraph leaderPhoneTmp = new Paragraph(result.get(i).getTelephone() == null ? "" : result.get(i).getTelephone(), new Font(PDFUtil.baseFont, 10));
cell = new PdfPCell(leaderPhoneTmp);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(3);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
//member
Paragraph memberName = new Paragraph(result.get(i).getTeamMember() == null ? "" : result.get(i).getTeamMember(), new Font(PDFUtil.baseFont, 10));
cell = new PdfPCell(memberName);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(6);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
//指导教师
Paragraph zhidaojiaoshi = new Paragraph(result.get(i).getMentor() == null ? "" : result.get(i).getMentor(), new Font(PDFUtil.baseFont, 10));
cell = new PdfPCell(zhidaojiaoshi);
cell.setHorizontalAlignment(Element.ALIGN_CENTER);
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
cell.setColspan(6);
cell.setPaddingTop(5);
cell.setPaddingBottom(5);
table.addCell(cell);
}
document.add(table);
Paragraph blank = new Paragraph("", new Font(baseFont, 32, Font.BOLD));
blank.setAlignment(Element.ALIGN_LEFT);
document.add(blank);
document.add(new Paragraph(" "));
Paragraph thirdPart = new Paragraph("请将盖章版本回传至大赛管理平台,逾期视为报名失败。", new Font(baseFont, 12, Font.NORMAL));
Paragraph thirdPart = new Paragraph("备注: 纸质盖章版请于"+deadline+"前快递到组委会办公室" +
"(冠生园路401号2号楼208室 周欢老师收,联系电话 021-64822115),逾期视为放弃比赛。", new Font(baseFont, 12, Font.NORMAL));
document.add(thirdPart);
document.add(new Paragraph(" "));
......
package com.zhongzhi.common.utils;
import com.alibaba.fastjson.JSON;
import com.zhongzhi.common.exception.HttpException;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.codec.digest.HmacAlgorithms;
import org.apache.commons.codec.digest.HmacUtils;
......@@ -10,6 +9,7 @@ import org.apache.http.HttpResponse;
import org.apache.http.HttpVersion;
import org.apache.http.client.fluent.Request;
import org.apache.http.entity.ContentType;
import springfox.documentation.service.ApiKey;
import java.io.IOException;
import java.util.*;
......@@ -79,18 +79,9 @@ public class SMSSendUtils {
*/
public static HttpResponse send(String templateCode, LinkedList<String> params, String ... phones) throws IOException {
//手机号先去重,然后再转换
try {
return sendBatch(templateCode,params!=null&&!params.isEmpty()?JSON.toJSONString(params):null,Arrays.stream(phones).collect(Collectors.toSet()).stream().collect(Collectors.joining(",")), false);
}catch (Exception e){
throw new HttpException(10026);
}
return sendBatch(templateCode,params!=null&&!params.isEmpty()?JSON.toJSONString(params):null,Arrays.stream(phones).collect(Collectors.toSet()).stream().collect(Collectors.joining(",")), false);
}
public static void main(String[] args) throws Exception{
LinkedList<String> a = new LinkedList<>();
a.add("012121");
send("1008072673404706816",a,"18201963812");
}
/**
* 短信发送
......
package com.zhongzhi.common.utils;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.PostMethod;
import org.apache.commons.httpclient.params.HttpMethodParams;
public class SmsUtils {
// API接口信息
// 账号:SHP10016-N2
// apiKey:01b0312e7d016d2af41a47e5ba2c2748
// AccessKey:bd985a3772ca3b362f8b049a3017b6edac604815e34be96631513e29afbcac47
public static void main(String[] args) {
String info = null;
try{
HttpClient httpclient = new HttpClient();
PostMethod post = new PostMethod("https://opassapi.infocloud.cc/sms/Api/SendGBK.do");//
post.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET,"gb2312");
post.addParameter("SpCode", "333665");//替换企业真实数据
post.addParameter("LoginName", "tangyining");//替换企业真实数据
post.addParameter("Password", "Vq9542055#");//替换企业真实数据
post.addParameter("MessageContent", "1008072673404706816");//替换企业真实数据
post.addParameter("UserNumber", "18201963812");//替换企业真实数据
// post.addParameter("SerialNumber", "");
post.addParameter("f", "111111");
httpclient.executeMethod(post);
info = new String(post.getResponseBody(),"gbk");
System.out.println(info);
}catch (Exception e) {
e.printStackTrace();
}
}
public static String getByteString( byte[] buff_out )
{
StringBuffer strBuf = new StringBuffer(buff_out.length * 3);
strBuf.append("Length[");
strBuf.append(buff_out.length);
strBuf.append("];Content[");
for ( int i = 0 ; i < buff_out.length ; ++i ) {
int l = buff_out[i] & 0x0F;
int h = (buff_out[i] & 0xF0) >> 4;
char ll = (char) (l > 9 ? 'a' + l - 10 : '0' + l);
char hh = (char) (h > 9 ? 'a' + h - 10 : '0' + h);
strBuf.append(hh);
strBuf.append(ll);
strBuf.append(" ");
}
strBuf.append("]");
return strBuf.toString().toUpperCase();
}
}
package com.zhongzhi.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zhongzhi.common.constant.Platform;
import com.zhongzhi.common.utils.LoginRequired;
import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.dto.administer.AdministerPageDTO;
import com.zhongzhi.dto.administer.CreateAdministerDTO;
import com.zhongzhi.dto.administer.LoginDTO;
import com.zhongzhi.model.AdministerDO;
import com.zhongzhi.model.AdministerPermissionDO;
import com.zhongzhi.model.AdministerTrackMappingDO;
import com.zhongzhi.service.AdministerPermissionService;
import com.zhongzhi.service.AdministerService;
import com.zhongzhi.service.AdministerTrackMappingService;
import com.zhongzhi.vo.ResponseVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
......@@ -16,6 +22,8 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* <p>
* 中心管理账户表 前端控制器
......@@ -32,6 +40,12 @@ public class AdministerController {
@Autowired
private AdministerService administerService;
@Autowired
private AdministerTrackMappingService administerTrackMappingService;
@Autowired
private AdministerPermissionService administerPermissionService;
@PostMapping(value = "/login")
@ApiOperation("中心端 --- 登录:手机号/telephone, code/验证码")
public ResponseVO login(@RequestBody LoginDTO loginDTO) {
......@@ -39,33 +53,80 @@ public class AdministerController {
}
@PostMapping(value = "/getAdministerPage")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 成员管理分页查询:listItem/角色、 username/搜索名称、pageNo/当前页数、pageSize/每页显示条数")
@ApiOperation("[立信]中心端 --- 成员管理分页查询:listItem/角色、 username/搜索名称、pageNo/当前页数、pageSize/每页显示条数")
public ResponseVO getAdministerPage(@RequestBody AdministerPageDTO administerPageDTO) {
return ResponseData.generateCreatedResponse(0, administerService.getAdministerPage(administerPageDTO));
}
@PostMapping(value = "/createAdminister")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 新增成员:username/名称、telephone/手机号、avatar/头像、role/角色")
public ResponseVO createAdminister(@RequestBody AdministerDO administerDO) {
administerService.save(administerDO);
@ApiOperation("[立信]中心端 --- 新增成员:username/名称、telephone/手机号、avatar/头像、role/角色 trackIds[] 赛道ids permissionIds[] 权限ids")
public ResponseVO createAdminister(@RequestBody CreateAdministerDTO createAdministerDTO) {
administerService.save(createAdministerDTO);
List<Long> trackIds = createAdministerDTO.getTrackIds();
if (null != trackIds){
for (Long id : trackIds){
AdministerTrackMappingDO administerTrackMappingDO = new AdministerTrackMappingDO();
administerTrackMappingDO.setAdministerId(createAdministerDTO.getId());
administerTrackMappingDO.setTrackId(id);
administerTrackMappingService.save(administerTrackMappingDO);
}
}
List<Long> permissionIds = createAdministerDTO.getPermissionIds();
if (null != permissionIds){
for (Long id : permissionIds){
AdministerPermissionDO administerPermissionDO = new AdministerPermissionDO();
administerPermissionDO.setAdministerId(createAdministerDTO.getId());
administerPermissionDO.setPermissionId(id);
administerPermissionService.save(administerPermissionDO);
}
}
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/updateAdminister")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 编辑成员:id/成员ID、username/名称、telephone/手机号、avatar/头像、role/角色")
public ResponseVO updateAdminister(@RequestBody AdministerDO administerDO) {
administerService.updateById(administerDO);
@ApiOperation("[立信]中心端 --- 编辑成员:id/成员ID、username/名称、telephone/手机号、avatar/头像、role/角色 trackIds[] 赛道ids permissionIds[] 权限ids")
public ResponseVO updateAdminister(@RequestBody CreateAdministerDTO createAdministerDTO) {
administerService.updateAdminister(createAdministerDTO);
List<Long> trackIds = createAdministerDTO.getTrackIds();
if (null != trackIds){
administerTrackMappingService.remove(new QueryWrapper<AdministerTrackMappingDO>()
.lambda()
.eq(AdministerTrackMappingDO::getAdministerId,createAdministerDTO.getId()));
for (Long id : trackIds){
AdministerTrackMappingDO administerTrackMappingDO = new AdministerTrackMappingDO();
administerTrackMappingDO.setAdministerId(createAdministerDTO.getId());
administerTrackMappingDO.setTrackId(id);
administerTrackMappingService.save(administerTrackMappingDO);
}
}
List<Long> permissionIds = createAdministerDTO.getPermissionIds();
if (null != permissionIds) {
administerPermissionService.remove(new QueryWrapper<AdministerPermissionDO>()
.lambda()
.eq(AdministerPermissionDO::getAdministerId,createAdministerDTO.getId()));
for (Long id : permissionIds){
AdministerPermissionDO administerPermissionDO = new AdministerPermissionDO();
administerPermissionDO.setAdministerId(createAdministerDTO.getId());
administerPermissionDO.setPermissionId(id);
administerPermissionService.save(administerPermissionDO);
}
}
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/deleteById")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 删除成员:id/成员ID")
@ApiOperation("[立信]中心端 --- 删除成员:id/成员ID")
public ResponseVO delete(@RequestBody AdministerDO administerDO) {
administerService.removeById(administerDO.getId());
administerTrackMappingService.remove(new QueryWrapper<AdministerTrackMappingDO>()
.lambda()
.eq(AdministerTrackMappingDO::getAdministerId,administerDO.getId()));
return ResponseData.generateCreatedResponse(0);
}
}
package com.zhongzhi.controller;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
......
package com.zhongzhi.controller;
import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.dto.administer.AdministerTracksDTO;
import com.zhongzhi.service.AdministerTrackMappingService;
import com.zhongzhi.vo.ResponseVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* <p>
* 赛道管理员映射表 前端控制器
* </p>
*
* @author DengMin
* @since 2025-03-28
*/
@RestController
@RequestMapping("/administerTrackMapping")
@Api("管理员赛道")
public class AdministerTrackMappingController {
@Autowired
private AdministerTrackMappingService administerTrackMappingService;
@PostMapping("administerTracks")
@ApiOperation("[立信]管理员的赛道 userId")
public ResponseVO administerTracks(@RequestBody AdministerTracksDTO administerTracksDTO){
return ResponseData.generateCreatedResponse(0,administerTrackMappingService.administerTracks(administerTracksDTO));
}
}
......@@ -3,8 +3,6 @@ package com.zhongzhi.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhongzhi.common.configure.DbContextHolder;
import com.zhongzhi.common.constant.DBTypeEnum;
import com.zhongzhi.common.constant.Platform;
import com.zhongzhi.common.utils.LoginRequired;
import com.zhongzhi.common.utils.ResponseData;
......@@ -42,9 +40,8 @@ public class CollegesDictController {
public CollegesDictService collegesDictService;
@PostMapping(value = "/getCollegesListNew")
@ApiOperation("查询所有就读院校: name/院校名称, education/学历")
@ApiOperation("####查询所有就读院校: name/院校名称, education/学历")
public ResponseVO getCollegesList(@RequestBody CollegesDictDTO collegesDictDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
QueryWrapper<CollegesDictDO> queryWrapper = new QueryWrapper();
if (StringUtils.isNotBlank(collegesDictDTO.getEducation())) {
if ("中职".equals(collegesDictDTO.getEducation())){
......@@ -62,17 +59,11 @@ public class CollegesDictController {
}
@PostMapping("getCollegeInfo")
@ApiOperation("返回院校基本信息 sceneId name")
@ApiOperation("[立信]返回院校基本信息 name")
public ResponseVO getCollegeInfo(@RequestBody GetCollegesListDTO getCollegesListDTO){
return ResponseData.generateCreatedResponse(0,collegesDictService.getCollegeInfo(getCollegesListDTO));
}
@PostMapping("getSceneCollegeInfo")
@ApiOperation("返回院校基本信息 sceneId name")
public ResponseVO getSceneCollegeInfo(@RequestBody GetCollegesListDTO getCollegesListDTO){
return ResponseData.generateCreatedResponse(0,collegesDictService.getSceneCollegeInfo(getCollegesListDTO));
}
@PostMapping(value = "/login")
@ApiOperation("院校端 --- 登录: account/账户, password/密码")
public ResponseVO login(@RequestBody LoginDTO loginDTO) {
......@@ -80,8 +71,8 @@ public class CollegesDictController {
}
@PostMapping(value = "updateCollegeById")
@LoginRequired({Platform.center})
@ApiOperation("院校端 --- 更新院校信息: id/ID, account/账户,code/代码, name/名称, password/密码")
@LoginRequired({Platform.center,Platform.school})
@ApiOperation("####院校端,中心端 --- 更新院校信息: id/ID, account/账户,code/代码, name/名称, password/密码")
public ResponseVO updateCollegeById(@RequestBody CollegesDictDO collegesDictDO) {
collegesDictService.updateById(collegesDictDO);
return ResponseData.generateCreatedResponse(0);
......@@ -209,14 +200,14 @@ public class CollegesDictController {
@PostMapping(value = "/getCollegesPage")
@LoginRequired(Platform.center)
@ApiOperation("中心端 --- 院校名录分页查询: name/搜索名称, pageNo/当前页数, pageSize/每页显示条数")
@ApiOperation("####中心端 --- 院校名录分页查询: name/搜索名称, pageNo/当前页数, pageSize/每页显示条数")
public ResponseVO getCollegesPage(@RequestBody CollegesPageDTO collegesPageDTO) {
return ResponseData.generateCreatedResponse(0, collegesDictService.getCollegesPage(collegesPageDTO));
}
@PostMapping(value = "/createColleges")
@LoginRequired(Platform.center)
@ApiOperation("中心端 --- 新建院校: name/搜索名称, code/院校代码、 phone/手机号")
@ApiOperation("####中心端 --- 新建院校: name/搜索名称, code/院校代码、 phone/手机号")
public ResponseVO createColleges(@RequestBody CollegesDictDO collegesDictDO) {
collegesDictService.createColleges(collegesDictDO);
return ResponseData.generateCreatedResponse(0);
......@@ -224,7 +215,7 @@ public class CollegesDictController {
@PostMapping(value = "/delete")
@LoginRequired(Platform.center)
@ApiOperation("中心端 --- 删除院校: id/院校ID")
@ApiOperation("####中心端 --- 删除院校: id/院校ID")
public ResponseVO delete(@RequestBody CollegesDictDO collegesDictDO) {
collegesDictService.removeById(collegesDictDO.getId());
return ResponseData.generateCreatedResponse(0);
......@@ -261,7 +252,7 @@ public class CollegesDictController {
@PostMapping(value = "/exportCollege")
@LoginRequired(Platform.center)
@ApiOperation("导出院校名录")
@ApiOperation("####导出院校名录")
public ResponseVO exportCollege() {
collegesDictService.exportCollege();
return ResponseData.generateCreatedResponse(0);
......
package com.zhongzhi.controller;
import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.model.DrawLotGroupDictDO;
import com.zhongzhi.model.DrawLotsGroupJudgesDO;
import com.zhongzhi.service.DrawLotGroupDictService;
import com.zhongzhi.service.DrawLotsGroupJudgesService;
import com.zhongzhi.vo.ResponseVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@RestController
@RequestMapping("/drawLotGroupDict")
@Api("小组字典表")
public class DrawLotGroupDictController {
@Autowired
private DrawLotGroupDictService drawLotGroupDictService;
@PostMapping("allGroups")
@ApiOperation("所有组别 sceneId ")
public ResponseVO allGroups(@RequestBody DrawLotGroupDictDO drawLotGroupDictDO) {
return ResponseData.generateCreatedResponse(0,drawLotGroupDictService.allGroups(drawLotGroupDictDO));
}
@PostMapping("addGroup")
@ApiOperation("新建组别 sceneId projectCnt fieldCnt teachCnt")
public ResponseVO addGroup(@RequestBody DrawLotGroupDictDO drawLotGroupDictDO){
return ResponseData.generateCreatedResponse(0,drawLotGroupDictService.addGroup(drawLotGroupDictDO));
}
@PostMapping("updateGroup")
@ApiOperation("修改组别 id sceneId projectCnt fieldCnt teachCnt")
public ResponseVO updateGroup(@RequestBody DrawLotGroupDictDO drawLotGroupDictDO){
return ResponseData.generateCreatedResponse(0,drawLotGroupDictService.updateGroup(drawLotGroupDictDO));
}
@PostMapping("deleteGroup")
@ApiOperation("移除组别 id")
public ResponseVO deleteGroup(@RequestBody DrawLotGroupDictDO drawLotGroupDictDO){
return ResponseData.generateCreatedResponse(0,drawLotGroupDictService.deleteGroup(drawLotGroupDictDO));
}
@PostMapping("sceneGroups")
@ApiOperation("查看某现场的组别 sceneId")
public ResponseVO sceneGroups(@RequestBody DrawLotGroupDictDO drawLotGroupDictDO){
return ResponseData.generateCreatedResponse(0,drawLotGroupDictService.sceneGroups(drawLotGroupDictDO));
}
}
package com.zhongzhi.controller;
import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.dto.drawlots.AddProjectToSceneDTO;
import com.zhongzhi.dto.drawlots.AllGroupItemsDTO;
import com.zhongzhi.dto.drawlots.CollegeProjectsDTO;
import com.zhongzhi.dto.drawlots.MatchProjectsDTO;
import com.zhongzhi.model.DrawLotsGroupItemsDO;
import com.zhongzhi.service.DrawLotsGroupItemsService;
import com.zhongzhi.vo.ResponseVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@RestController
@RequestMapping("/drawLotsGroupItems")
@Api("小组项目")
public class DrawLotsGroupItemsController {
@Autowired
private DrawLotsGroupItemsService drawLotsGroupItemsService;
@PostMapping("allGroupItems")
@ApiOperation("查看所有小组项目 pageSize pageNum sceneId projectName college")
public ResponseVO allGroupItems(@RequestBody AllGroupItemsDTO allGroupItemsDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.allGroupItems(allGroupItemsDTO));
}
@PostMapping("deleteGroupItem")
@ApiOperation("删除小组项目 id")
public ResponseVO deleteGroupItem(@RequestBody DrawLotsGroupItemsDO drawLotsGroupItemsDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.deleteGroupItem(drawLotsGroupItemsDO));
}
@PostMapping("matchProjects")
@ApiOperation("项目名单含赛段筛选(除去这一届已经选中的) matchId projectSchedule")
public ResponseVO matchProjects(@RequestBody MatchProjectsDTO matchProjectsDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.matchProjects(matchProjectsDTO));
}
@PostMapping("collegeProjects")
@ApiOperation("选择院校下这一届的项目(除去已经分配的) college matchId sceneId")
public ResponseVO collegeProjects(@RequestBody CollegeProjectsDTO collegeProjectsDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.collegeProjects(collegeProjectsDTO));
}
@PostMapping("addProjectToScene")
@ApiOperation("添加项目到现场 sceneId projectIds")
public ResponseVO addProjectToScene(@RequestBody AddProjectToSceneDTO addProjectToSceneDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.addProjectToScene(addProjectToSceneDTO));
}
@PostMapping("drawlots")
@ApiOperation("学生--项目抽签 返回组别+编号 sceneId projectId (映射id)")
public ResponseVO drawlots(@RequestBody DrawLotsGroupItemsDO drawLotsGroupItemsDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.drawlots(drawLotsGroupItemsDO));
}
@PostMapping("groupProjectScreen")
@ApiOperation("项目抽签大屏 sceneId")
public ResponseVO groupProjectScreen(@RequestBody DrawLotsGroupItemsDO drawLotsGroupItemsDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.groupProjectScreen(drawLotsGroupItemsDO));
}
}
package com.zhongzhi.controller;
import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.dto.drawlots.AddJudgeDTO;
import com.zhongzhi.dto.drawlots.AddProjectToSceneDTO;
import com.zhongzhi.dto.drawlots.DrawLoginDTO;
import com.zhongzhi.dto.drawlots.JudgeScoreScreenDTO;
import com.zhongzhi.dto.judge.MatchJudgesDTO;
import com.zhongzhi.model.DrawLotGroupDictDO;
import com.zhongzhi.model.DrawLotsGroupItemsDO;
import com.zhongzhi.model.DrawLotsGroupJudgesDO;
import com.zhongzhi.model.DrawLotsJudgeNumDO;
import com.zhongzhi.service.DrawLotsGroupJudgesService;
import com.zhongzhi.vo.ResponseVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 赛组评委表 前端控制器
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@RestController
@RequestMapping("/drawLotsGroupJudges")
@Api("评委表")
public class DrawLotsGroupJudgesController {
@Autowired
private DrawLotsGroupJudgesService drawLotsGroupJudgesService;
@PostMapping("matchJudges")
@ApiOperation("某赛道的所有评委 pageSize pageNum sceneId userName expectorType roleType ")
public ResponseVO matchJudges(@RequestBody MatchJudgesDTO matchJudgesDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.matchJudges(matchJudgesDTO));
}
@PostMapping("selectJudges")
@ApiOperation("选择没有被选择过的评委 pageSize pageNum sceneId userName ")
public ResponseVO selectJudges(@RequestBody MatchJudgesDTO matchJudgesDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.selectJudges(matchJudgesDTO));
}
@PostMapping("removeJudge")
@ApiOperation("移除评委 matchJudges返回的id")
public ResponseVO removeJudge(@RequestBody DrawLotsGroupJudgesDO drawLotsGroupJudgesDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.removeJudge(drawLotsGroupJudgesDO));
}
@PostMapping("updateJudge")
@ApiOperation("编辑评委 id expectorType roleType groupId")
public ResponseVO updateJudge(@RequestBody DrawLotsGroupJudgesDO drawLotsGroupJudgesDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.updateJudge(drawLotsGroupJudgesDO));
}
@PostMapping("addJudge")
@ApiOperation("新加评委 judgeIds sceneId")
public ResponseVO addJudge(@RequestBody AddJudgeDTO addJudgeDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.addJudge(addJudgeDTO));
}
@PostMapping("assignJudge")
@ApiOperation("批量分配评委 ids expectorType roleType")
public ResponseVO assignJudge(@RequestBody AddJudgeDTO addJudgeDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.assignJudge(addJudgeDTO));
}
@PostMapping("selectNoDrawLotsJudge")
@ApiOperation("选择现场还没有抽过签的评委 roleType 组长/组员 sceneId")
public ResponseVO selectNoDrawLotsJudge(@RequestBody DrawLotsGroupJudgesDO drawLotsGroupJudgesDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.selectNoDrawLotsJudge(drawLotsGroupJudgesDO));
}
@PostMapping("drawlots")
@ApiOperation("评审-项目抽签 返回组别+评委编号 sceneId judgeId roleType")
public ResponseVO drawlots(@RequestBody DrawLotsGroupJudgesDO drawLotsGroupJudgesDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.drawlots(drawLotsGroupJudgesDO));
}
@PostMapping("judgeScreen")
@ApiOperation("评委抽签大屏 sceneId")
public ResponseVO judgeScreen(@RequestBody DrawLotsGroupJudgesDO drawLotsGroupJudgesDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.judgeScreen(drawLotsGroupJudgesDO));
}
@PostMapping("login")
@ApiOperation("评委登录 name 评委编号")
public ResponseVO login(@RequestBody DrawLoginDTO drawLoginDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.login(drawLoginDTO));
}
@PostMapping("judgeScoreScreen")
@ApiOperation("评委分数大屏 groupId groupNums[] ")
public ResponseVO judgeScoreScreen(@RequestBody JudgeScoreScreenDTO judgeScoreScreenDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.judgeScoreScreen(judgeScoreScreenDTO));
}
@PostMapping("leaderFull")
@ApiOperation("组长是否已满 sceneId")
public ResponseVO leaderFull(@RequestBody DrawLotGroupDictDO drawLotGroupDictDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.leaderFull(drawLotGroupDictDO));
}
@PostMapping("judgeInfo")
@ApiOperation("评委信息 groupId groupNum")
public ResponseVO judgeFullInfo(@RequestBody DrawLotsJudgeNumDO drawLotsJudgeNumDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.judgeInfo(drawLotsJudgeNumDO));
}
}
package com.zhongzhi.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author DengMin
* @since 2025-07-10
*/
@RestController
@RequestMapping("/draw-lots-judge-num-do")
public class DrawLotsJudgeNumController {
}
package com.zhongzhi.controller;
import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.model.DrawLotsScenesDO;
import com.zhongzhi.service.DrawLotsScenesService;
import com.zhongzhi.vo.ResponseVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@RestController
@RequestMapping("/drawLotsScenes")
@Api("现场赛事")
public class DrawLotsScenesController {
@Autowired
private DrawLotsScenesService drawLotsScenesService;
@PostMapping("allMatchScenes")
@ApiOperation("查看某一赛道的所有现场 matchId")
public ResponseVO allMatchScenes(@RequestBody DrawLotsScenesDO drawLotsScenesDO){
return ResponseData.generateCreatedResponse(0,drawLotsScenesService.allMatchScenes(drawLotsScenesDO));
}
@PostMapping("addMatchScene")
@ApiOperation("添加某一赛道的所有现场 matchId sceneName openStatus ")
public ResponseVO addMatchScene(@RequestBody DrawLotsScenesDO drawLotsScenesDO){
return ResponseData.generateCreatedResponse(0,drawLotsScenesService.addMatchScene(drawLotsScenesDO));
}
@PostMapping("updateMatchScene")
@ApiOperation("修改某一个赛道现场 id matchId sceneName openStatus ")
public ResponseVO updateMatchScene(@RequestBody DrawLotsScenesDO drawLotsScenesDO){
return ResponseData.generateCreatedResponse(0,drawLotsScenesService.updateMatchScene(drawLotsScenesDO));
}
@PostMapping("deleteMatchScene")
@ApiOperation("删除某一个赛道现场 id matchId sceneName projectCnt groupCnt judgeCnt rankCnt openStatus ")
public ResponseVO deleteMatchScene(@RequestBody DrawLotsScenesDO drawLotsScenesDO){
return ResponseData.generateCreatedResponse(0,drawLotsScenesService.deleteMatchScene(drawLotsScenesDO));
}
}
package com.zhongzhi.controller;
import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.dto.drawlots.GroupScoresDTO;
import com.zhongzhi.model.*;
import com.zhongzhi.service.DrawLotsScenesService;
import com.zhongzhi.service.DrawLotsScoresService;
import com.zhongzhi.vo.ResponseVO;
import com.zhongzhi.vo.drawlots.RankListVO;
import com.zhongzhi.vo.drawlots.RankVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author DengMin
* @since 2025-07-04
*/
@RestController
@RequestMapping("/drawLotsScores")
@Api(tags = "评分")
public class DrawLotsScoresController {
@Autowired
private DrawLotsScoresService drawLotsScoresService;
@PostMapping("groupScores")
@ApiOperation("小组评分 sceneId ")
public ResponseVO groupScores(@RequestBody GroupScoresDTO groupScoresDTO){
return ResponseData.generateCreatedResponse(0,drawLotsScoresService.groupScores(groupScoresDTO));
}
@PostMapping("queryItems")
@ApiOperation("查询某评委可以看到的项目 judgeId")
public ResponseVO queryItems(@RequestBody DrawLotsGroupJudgesDO drawLotsGroupJudgesDO){
return ResponseData.generateCreatedResponse(0,drawLotsScoresService.queryItems(drawLotsGroupJudgesDO));
}
@PostMapping("submit")
@ApiOperation("暂存/提交 sceneId groupId judgeId projectId submitStatus :暂存/已提交 score")
public ResponseVO submit(@RequestBody DrawLotsScoresDO drawLotsScoresDO){
return ResponseData.generateCreatedResponse(0,drawLotsScoresService.submit(drawLotsScoresDO));
}
@PostMapping("groupRank")
@ApiOperation("某个组别的排行 groupId")
public ResponseVO groupRank(@RequestBody DrawLotsGroupItemsDO drawLotsGroupItemsDO){
return ResponseData.generateCreatedResponse(0,drawLotsScoresService.groupRank(drawLotsGroupItemsDO));
}
@PostMapping("rankList")
@ApiOperation("排位赛抽签(前四名展示) 查询 sceneId ")
public ResponseVO rankList(@RequestBody DrawLotGroupDictDO drawLotGroupDictDO){
return ResponseData.generateCreatedResponse(0,drawLotsScoresService.rankList(drawLotGroupDictDO));
}
@PostMapping("rank")
@ApiOperation("排位赛抽签(随机排序,每个现场只能查一次) sceneId groupId projectName ")
public ResponseVO rank(@RequestBody RankVO rankVO){
return ResponseData.generateCreatedResponse(0,drawLotsScoresService.rank(rankVO));
}
// @PostMapping("rankItems")
// @ApiOperation("排位项目查询 sceneId groupId projectName ")
// public ResponseVO rankItems(@RequestBody RankVO rankVO){
// return ResponseData.generateCreatedResponse(0,drawLotsScoresService.rankItems(rankVO));
// }
}
package com.zhongzhi.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.model.MajorDictDO;
import com.zhongzhi.service.MajorDictService;
import com.zhongzhi.vo.ResponseVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
......@@ -29,9 +33,13 @@ public class MajorDictController {
private MajorDictService majorDictService;
@PostMapping(value = "/getMajorList")
@ApiOperation("查询全部就读专业: major/专业名称、education/学历、code/院校代码")
@ApiOperation("[立信]####查询全部就读专业: major/专业名称、education/学历、code/院校代码")
public ResponseVO getMajorList(@RequestBody MajorDictDO majorDictDO) {
return ResponseData.generateCreatedResponse(0, majorDictService.getMajorList(majorDictDO));
return ResponseData.generateCreatedResponse(0, majorDictService.list(new QueryWrapper<MajorDictDO>()
.lambda()
.eq(StringUtils.isNotBlank(majorDictDO.getEducation()), MajorDictDO::getEducation, majorDictDO.getEducation())
.eq(StringUtils.isNotBlank(majorDictDO.getCode()), MajorDictDO::getCode, majorDictDO.getCode())
.like(StringUtils.isNotBlank(majorDictDO.getMajor()), MajorDictDO::getMajor, majorDictDO.getMajor())));
}
}
package com.zhongzhi.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author DengMin
* @since 2025-06-10
*/
@RestController
@RequestMapping("/match-college-count-do")
public class MatchCollegeCountController {
}
......@@ -2,15 +2,12 @@ package com.zhongzhi.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhongzhi.common.configure.DbContextHolder;
import com.zhongzhi.common.constant.DBTypeEnum;
import com.zhongzhi.common.constant.Platform;
import com.zhongzhi.common.constant.ProjectType;
import com.zhongzhi.common.utils.LoginRequired;
import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.dto.match.MatchDictDTO;
import com.zhongzhi.dto.match.SelectListPageDTO;
import com.zhongzhi.dto.project.ProjectListPageDTO;
import com.zhongzhi.model.MatchDictDO;
import com.zhongzhi.service.MatchDictService;
import com.zhongzhi.vo.ResponseVO;
......@@ -38,14 +35,6 @@ public class MatchDictController {
@Autowired
private MatchDictService matchDictService;
@PostMapping(value = "/getMainMatch")
@LoginRequired({Platform.school, Platform.center, Platform.student})
@ApiOperation("查询主赛道启用赛事年份")
public ResponseVO getAllMatch() {
return ResponseData.generateCreatedResponse(0, matchDictService.getAllMatch());
}
@PostMapping(value = "/getMainTrackMatch")
@LoginRequired({Platform.school, Platform.center, Platform.student})
@ApiOperation("查询主赛道启用赛事年份")
......@@ -97,17 +86,12 @@ public class MatchDictController {
}
@PostMapping(value = "/getSeedTrackMatchPage")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 ---分页查询种子赛道赛事年份:pageNo、pageSize")
public ResponseVO getSeedTrackMatchPage(@RequestBody SelectListPageDTO selectListPageDTO) {
return ResponseData.generateCreatedResponse(0, matchDictService.getSeedTrackMatchPage(selectListPageDTO));
}
@PostMapping(value = "/getSeedTrackMatchPageCity")
@ApiOperation("院校端 ---分页查询种子赛道赛事年份:pageNo、pageSize")
public ResponseVO getSeedTrackMatchPageCity(@RequestBody SelectListPageDTO selectListPageDTO) {
return ResponseData.generateCreatedResponse(0, matchDictService.getSeedTrackMatchPageCity(selectListPageDTO));
}
@PostMapping(value = "/createMainTrackMatch")
@LoginRequired({Platform.center})
@ApiOperation("中心端 ---创建主赛道赛事年份:matchName/名称、matchDate/年份、startTime/报名起始时间、endTime/报名结束时间、" +
......@@ -119,6 +103,7 @@ public class MatchDictController {
}
@PostMapping(value = "/createSeedTrackMatch")
@LoginRequired({Platform.center})
@ApiOperation("中心端 ---创建种子赛道赛事年份:matchName/名称、matchDate/年份、startTime/报名起始时间、endTime/报名结束时间、" +
"schedule:[{ scheduleTime/时间安排、explains/说明 }]")
public ResponseVO createSeedTrackMatch(@RequestBody MatchDictDTO matchDictDTO) {
......@@ -128,36 +113,16 @@ public class MatchDictController {
}
@PostMapping(value = "/createVocationalMatch")
@ApiOperation("中心端 ---创建职教赛道赛事年份:matchName/名称、matchDate/年份、startTime/报名起始时间、endTime/报名结束时间、" +
@ApiOperation("####中心端 ---创建职教赛道赛事年份:matchName/名称、matchDate/年份、startTime/报名起始时间、endTime/报名结束时间、" +
"schedule:[{ scheduleTime/时间安排、explains/说明 }]")
public ResponseVO createVocationalMatch(@RequestBody MatchDictDTO matchDictDTO) {
matchDictDTO.setMatchType(ProjectType.VOCATIONAL);
matchDictService.createMatch(matchDictDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/createHonglvMatch")
@ApiOperation("中心端 ---创建职教赛道赛事年份:matchName/名称、matchDate/年份、startTime/报名起始时间、endTime/报名结束时间、" +
"schedule:[{ scheduleTime/时间安排、explains/说明 }]")
public ResponseVO createHonglvMatch(@RequestBody MatchDictDTO matchDictDTO) {
matchDictDTO.setMatchType(ProjectType.HONGLV);
matchDictService.createMatch(matchDictDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/createInternationalMatch")
@LoginRequired({Platform.center})
@ApiOperation("中心端 ---创建职教赛道赛事年份:matchName/名称、matchDate/年份、startTime/报名起始时间、endTime/报名结束时间、" +
"schedule:[{ scheduleTime/时间安排、explains/说明 }]")
public ResponseVO createInternationalMatch(@RequestBody MatchDictDTO matchDictDTO) {
matchDictDTO.setMatchType(ProjectType.INTERNATIONAL);
matchDictService.createMatch(matchDictDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/updateMatch")
@ApiOperation("中心端 ---编辑赛事年份:id/ID、matchName/名称、matchDate/年份、startTime/报名起始时间、endTime/报名结束时间、status/状态(1:启动,0:暂停)" +
@LoginRequired({Platform.center})
@ApiOperation("[立信]中心端 ---编辑赛事年份:id/ID、matchName/名称、matchDate/年份、startTime/报名起始时间、endTime/报名结束时间、status/状态(1:启动,0:暂停)" +
"schedule:[{ id/时间安排ID、scheduleTime/时间安排、explains/说明 }]")
public ResponseVO updateMatch(@RequestBody MatchDictDTO matchDictDTO) {
matchDictService.updateMatch(matchDictDTO);
......@@ -166,7 +131,7 @@ public class MatchDictController {
@PostMapping(value = "/delete")
@LoginRequired({Platform.center})
@ApiOperation("中心端 ---删除赛事年份:id/ID")
@ApiOperation("[立信]中心端 ---删除赛事年份:id/ID")
public ResponseVO delete(@RequestBody MatchDictDO matchDictDO) {
matchDictService.removeById(matchDictDO.getId());
return ResponseData.generateCreatedResponse(0);
......@@ -185,62 +150,25 @@ public class MatchDictController {
@LoginRequired({Platform.center, Platform.school, Platform.student, Platform.review})
@ApiOperation("中心端/学生端/院校端/审批端 ---查询全部种子赛道赛事年份")
public ResponseVO getSeedTrackMatchAll() {
return ResponseData.generateCreatedResponse(0, matchDictService.getSeedTrackMatchAll());
return ResponseData.generateCreatedResponse(0, matchDictService.list(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getMatchType, ProjectType.SEED_TRACK)));
}
@PostMapping(value = "/getVocationalMatchAll")
@LoginRequired({Platform.center, Platform.school, Platform.student, Platform.review})
@ApiOperation("中心端/学生端/院校端/审批端 ---查询全部职教赛道赛事年份")
@ApiOperation("[立信]中心端/学生端/院校端/审批端 ---查询全部职教赛道赛事年份")
public ResponseVO getVocationalMatchAll() {
return ResponseData.generateCreatedResponse(0, matchDictService.getVocationalMatchAll());
}
@PostMapping(value = "/getHonglvMatchAll")
@LoginRequired({Platform.center, Platform.school, Platform.student, Platform.review})
@ApiOperation("中心端/学生端/院校端/审批端 ---查询全部职教赛道赛事年份")
public ResponseVO getHonglvMatchAll() {
return ResponseData.generateCreatedResponse(0, matchDictService.getHonglvMatchAll());
}
@PostMapping(value = "/getInternationalMatchAll")
@LoginRequired({Platform.center, Platform.school, Platform.student, Platform.review})
@ApiOperation("中心端/学生端/院校端/审批端 ---查询全部职教赛道赛事年份")
public ResponseVO getInternationalMatchAll() {
return ResponseData.generateCreatedResponse(0, matchDictService.list(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getMatchType, ProjectType.INTERNATIONAL)));
return ResponseData.generateCreatedResponse(0, matchDictService.list(null));
}
/* 职教管理端 */
@PostMapping(value = "/getVocationalPage")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 ---分页查询职教赛道赛事年份:pageNo、pageSize")
@ApiOperation("[立信]中心端/院校端 ---分页查询职教赛道赛事年份:pageNo、pageSize")
public ResponseVO getVocationalPage(@RequestBody SelectListPageDTO selectListPageDTO) {
return ResponseData.generateCreatedResponse(0, matchDictService.getVocationalPage(selectListPageDTO));
}
/* 职教管理端 */
@PostMapping(value = "/getHonglvPage")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 ---分页查询职教赛道赛事年份:pageNo、pageSize")
public ResponseVO getHonglvPage(@RequestBody SelectListPageDTO selectListPageDTO) {
return ResponseData.generateCreatedResponse(0, matchDictService.getHonglvPage(selectListPageDTO));
}
/* 职教管理端 */
@PostMapping(value = "/getVocationalPageCity")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 ---分页查询职教赛道赛事年份:pageNo、pageSize")
public ResponseVO getVocationalPageCity(@RequestBody SelectListPageDTO selectListPageDTO) {
return ResponseData.generateCreatedResponse(0, matchDictService.getVocationalPageCity(selectListPageDTO));
}
/* 职教管理端 */
@PostMapping(value = "/getInternationalPage")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 ---分页查询职教赛道赛事年份:pageNo、pageSize")
public ResponseVO getInternationalPage(@RequestBody SelectListPageDTO selectListPageDTO) {
return ResponseData.generateCreatedResponse(0, matchDictService.getInternationalPage(selectListPageDTO));
}
}
\ No newline at end of file
......@@ -45,31 +45,27 @@ public class MatchScheduleController {
@LoginRequired({Platform.student})
@ApiOperation("学生端 ---种子赛道查看时间安排:matchId/赛事年份ID")
public ResponseVO getMatchSchedule(@RequestBody MatchScheduleDO matchScheduleDO) {
return ResponseData.generateCreatedResponse(0, matchScheduleService.getMatchSchedule(matchScheduleDO));
MatchDictDO matchDictDO = matchDictService.getOne(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getId, matchScheduleDO.getMatchId())
.eq(MatchDictDO::getMatchType, ProjectType.SEED_TRACK)
.eq(MatchDictDO::getStatus, 1));
List<MatchScheduleDO> list = new ArrayList<>();
if (matchDictDO != null) {
list = matchScheduleService.list(new QueryWrapper<MatchScheduleDO>()
.lambda()
.eq(MatchScheduleDO::getMatchId, matchDictDO.getId()));
}
return ResponseData.generateCreatedResponse(0, list);
}
@PostMapping(value = "getVocationalMatchSchedule")
@LoginRequired({Platform.student})
@ApiOperation("学生端 ---职教赛道查看时间安排:matchId/赛事年份ID")
public ResponseVO getVocationalMatchSchedule(@RequestBody MatchScheduleDO matchScheduleDO) {
return ResponseData.generateCreatedResponse(0, matchScheduleService.getVocationalMatchSchedule(matchScheduleDO));
}
@PostMapping(value = "getHonglvMatchSchedule")
@LoginRequired({Platform.student})
@ApiOperation("学生端 ---职教赛道查看时间安排:matchId/赛事年份ID")
public ResponseVO getHonglvMatchSchedule(@RequestBody MatchScheduleDO matchScheduleDO) {
return ResponseData.generateCreatedResponse(0, matchScheduleService.getHonglvMatchSchedule(matchScheduleDO));
}
@PostMapping(value = "getInternationalMatchSchedule")
@LoginRequired({Platform.student})
@ApiOperation("学生端 ---职教赛道查看时间安排:matchId/赛事年份ID")
public ResponseVO getInternationalMatchSchedule(@RequestBody MatchScheduleDO matchScheduleDO) {
MatchDictDO matchDictDO = matchDictService.getOne(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getId, matchScheduleDO.getMatchId())
.eq(MatchDictDO::getMatchType, ProjectType.INTERNATIONAL)
.eq(MatchDictDO::getStatus, 1));
List<MatchScheduleDO> list = new ArrayList<>();
if (matchDictDO != null) {
......
package com.zhongzhi.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zhongzhi.common.configure.DbContextHolder;
import com.zhongzhi.common.constant.DBTypeEnum;
import com.zhongzhi.common.constant.Platform;
import com.zhongzhi.common.utils.DateFormatUtil;
import com.zhongzhi.common.utils.Localstorage;
......@@ -45,11 +43,8 @@ public class MessageController {
private MessageService messageService;
@PostMapping(value = "/getMessage")
@ApiOperation("查询通知")
@ApiOperation("[立信]查询通知")
public ResponseVO getMessage() {
DbContextHolder.setDbType(DBTypeEnum.db2);
List<MessageVO> messages = new ArrayList();
List<MessageDO> list = messageService.list(new QueryWrapper<MessageDO>()
......@@ -66,38 +61,37 @@ public class MessageController {
@PostMapping(value = "/getMessageById")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 根据ID查询详情:id/ID")
@ApiOperation("[立信]中心端 --- 根据ID查询详情:id/ID")
public ResponseVO getMessageById(@RequestBody MessageDO messageDO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
return ResponseData.generateCreatedResponse(0, messageService.getById(messageDO.getId()));
}
@PostMapping(value = "/getMessagePage")
@ApiOperation("中心端 ---分页查询通知: pageNo/当前页数, pageSize/每页显示条数")
@LoginRequired({Platform.center})
@ApiOperation("[立信]中心端 ---分页查询通知: pageNo/当前页数, pageSize/每页显示条数")
public ResponseVO getMessagePage(@RequestBody MessagePageDTO messagePageDTO) {
return ResponseData.generateCreatedResponse(0, messageService.getMessagePage(messagePageDTO));
}
@PostMapping(value = "/createMessage")
@LoginRequired({Platform.center,Platform.school})
@ApiOperation("中心端 ---创建通知: title/标题, content/内容, attachmentUrl/附件地址, releaseTime/发布时间, attachmentName/附件名称, attachmentType/附件类型")
@LoginRequired({Platform.center})
@ApiOperation("[立信]中心端 ---创建通知: title/标题, content/内容, attachmentUrl/附件地址, releaseTime/发布时间, attachmentName/附件名称, attachmentType/附件类型")
public ResponseVO createMessage(@RequestBody MessageDO messageDO) {
messageService.createMessage(messageDO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/updateMessage")
@LoginRequired({Platform.center,Platform.school})
@ApiOperation("中心端 ---编辑通知: id/ID, title/标题, content/内容, attachmentUrl/附件地址, attachmentName/附件名称, attachmentType/附件类型")
@LoginRequired({Platform.center})
@ApiOperation("[立信]中心端 ---编辑通知: id/ID, title/标题, content/内容, attachmentUrl/附件地址, attachmentName/附件名称, attachmentType/附件类型")
public ResponseVO updateMessage(@RequestBody MessageDO messageDO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
messageService.updateById(messageDO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/delete")
@LoginRequired({Platform.center,Platform.school})
@ApiOperation("中心端 ---删除通知: id/ID, ")
@LoginRequired({Platform.center})
@ApiOperation("[立信]中心端 ---删除通知: id/ID, ")
public ResponseVO delete(@RequestBody MessageDO messageDO) {
messageService.removeById(messageDO.getId());
return ResponseData.generateCreatedResponse(0);
......
......@@ -181,6 +181,7 @@ public class OssController {
// 完成分片上传。
CompleteMultipartUploadResult completeMultipartUploadResult = ossClient.completeMultipartUpload(completeMultipartUploadRequest);
uploadFileVO.setUrl(completeMultipartUploadResult.getLocation().replace("http","https"));
uploadFileVO.setRequestId(completeMultipartUploadResult.getRequestId());
System.out.println(completeMultipartUploadResult.getLocation());
} catch (OSSException oe) {
System.out.println("Caught an OSSException, which means your request made it to OSS, "
......@@ -189,11 +190,13 @@ public class OssController {
System.out.println("Error Code:" + oe.getErrorCode());
System.out.println("Request ID:" + oe.getRequestId());
System.out.println("Host ID:" + oe.getHostId());
oe.printStackTrace();
} catch (ClientException ce) {
System.out.println("Caught an ClientException, which means the client encountered "
+ "a serious internal problem while trying to communicate with OSS, "
+ "such as not being able to access the network.");
System.out.println("Error Message:" + ce.getMessage());
ce.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
......
package com.zhongzhi.controller;
import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.service.PermissionsService;
import com.zhongzhi.vo.ResponseVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
......@@ -17,4 +23,14 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping("/permissions")
public class PermissionsController {
@Autowired
private PermissionsService permissionsService;
@PostMapping("allPermissions")
@ApiOperation("[立信]所有权限")
public ResponseVO allPermissions(){
return ResponseData.generateCreatedResponse(0,permissionsService.allPermissions());
}
}
......@@ -36,17 +36,17 @@ public class ProjectController {
private ProjectService projectService;
@PostMapping(value = "/getProjectDetail")
@ApiOperation("学生端(高职赛道、种子赛道、国际合作通用) ---项目详情: id/项目ID")
@ApiOperation("####学生端(高职赛道、种子赛道通用) ---项目详情: id/项目ID")
public ResponseVO getProjectDetail(@RequestBody ProjectDO projectDO) {
return ResponseData.generateCreatedResponse(0, projectService.getProjectById(projectDO.getId()));
}
@PostMapping(value = "/getMainTrackProject")
@LoginRequired(Platform.student)
@ApiOperation("学生端 ---主赛道项目分页查询: matchId/赛事年份ID, pageNo/当前页数, pageSize/每页显示条数")
public ResponseVO getMainTrackProject(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getMainTrackProject(projectListPageDTO));
}
// @PostMapping(value = "/getMainTrackProject")
// @LoginRequired(Platform.student)
// @ApiOperation("学生端 ---主赛道项目分页查询: matchId/赛事年份ID, pageNo/当前页数, pageSize/每页显示条数")
// public ResponseVO getMainTrackProject(@RequestBody ProjectListPageDTO projectListPageDTO) {
// return ResponseData.generateCreatedResponse(0, projectService.getMainTrackProject(projectListPageDTO));
// }
@PostMapping(value = "/getMainTrackProjectById")
@LoginRequired(Platform.student)
......@@ -84,7 +84,7 @@ public class ProjectController {
public ResponseVO createProjectMember(@RequestBody CreateProjectMemberDTO createProjectMemberDTO) {
createProjectMemberDTO.setProjectGroup(ProjectType.MAIN_TRACK);
createProjectMemberDTO.setProjectType(ProjectType.MAIN_TRACK);
projectService.createProjectMember(createProjectMemberDTO,null);
projectService.createProjectMember(createProjectMemberDTO);
return ResponseData.generateCreatedResponse(0);
}
......@@ -104,12 +104,12 @@ public class ProjectController {
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/getSeedTrackProject")
@LoginRequired(Platform.student)
@ApiOperation("学生端 ---种子赛道项目分页查询: matchId/年份ID, pageNo/当前页数, pageSize/每页显示条数")
public ResponseVO getSeedTrackProject(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getSeedTrackProject(projectListPageDTO));
}
// @PostMapping(value = "/getSeedTrackProject")
// @LoginRequired(Platform.student)
// @ApiOperation("学生端 ---种子赛道项目分页查询: matchId/年份ID, pageNo/当前页数, pageSize/每页显示条数")
// public ResponseVO getSeedTrackProject(@RequestBody ProjectListPageDTO projectListPageDTO) {
// return ResponseData.generateCreatedResponse(0, projectService.getSeedTrackProject(projectListPageDTO));
// }
@PostMapping(value = "/createSeedTrackProject")
@LoginRequired(Platform.student)
......@@ -117,14 +117,8 @@ public class ProjectController {
"scientificPrinciple/科学设计、applicationProspect/应用前景、roadShowForm/路演形式、restriction/创意实施或实验所受条件的限制" +
"、materials/项目材料:[{ materialsType/项目计划书类型、materialsSize/项目计划书大小、materialsName/项目计划书名称、materialsUrl/项目计划书地址 }]")
public ResponseVO createSeedTrackProject(@RequestBody CreateSeedTrackProjectDTO createSeedTrackProjectDTO) {
return ResponseData.generateCreatedResponse(0,projectService.createSeedTrackProject(createSeedTrackProjectDTO));
}
@PostMapping("judgeThemeDone")
@LoginRequired((Platform.student))
@ApiOperation("学生端 学生报过了哪些主题")
public ResponseVO judgeThemeDone(@RequestBody CreateSeedTrackProjectDTO createSeedTrackProjectDTO){
return ResponseData.generateCreatedResponse(0,projectService.judgeThemeDone(createSeedTrackProjectDTO));
projectService.createSeedTrackProject(createSeedTrackProjectDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/getTechnologyProjectById")
......@@ -137,8 +131,8 @@ public class ProjectController {
@PostMapping(value = "/getCulturalProjectById")
@LoginRequired(Platform.student)
@ApiOperation("学生端 ---根据ID查询红色文创项目")
public ResponseVO getCulturalProjectById(@RequestBody ProjectDO projectDO) {
return ResponseData.generateCreatedResponse(0, projectService.getCulturalProjectById(projectDO));
public ResponseVO getCulturalProjectById() {
return ResponseData.generateCreatedResponse(0, projectService.getCulturalProjectById());
}
@PostMapping(value = "/uploadTechnologyProjectAttachment")
......@@ -146,7 +140,7 @@ public class ProjectController {
@ApiOperation("学生端 --- 上传科技创新项目加盖公章的附件: printAttachment/附件地址, printAttachmentType/附件类型, printAttachmentName/附件名称")
public ResponseVO uploadTechnologyProjectAttachment(@RequestBody PrintAttachmentDTO printAttachmentDTO) {
printAttachmentDTO.setProjectGroup(ProjectType.TECHNOLOGY_INNOVATION_GROUP);
projectService.uploadPrintAttachment(printAttachmentDTO,ProjectType.TECHNOLOGY_INNOVATION_GROUP);
projectService.uploadPrintAttachment(printAttachmentDTO);
return ResponseData.generateCreatedResponse(0);
}
......@@ -158,23 +152,23 @@ public class ProjectController {
public ResponseVO createTechnologyProjectMember(@RequestBody CreateProjectMemberDTO createProjectMemberDTO) {
createProjectMemberDTO.setProjectGroup(ProjectType.TECHNOLOGY_INNOVATION_GROUP);
createProjectMemberDTO.setProjectType(ProjectType.SEED_TRACK);
projectService.createProjectMember(createProjectMemberDTO,ProjectType.TECHNOLOGY_INNOVATION_GROUP);
projectService.createProjectMember(createProjectMemberDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/getTechnologyProjectMember")
@LoginRequired(Platform.student)
@ApiOperation("学生端 ---查询科技创新项目团队信息")
public ResponseVO getTechnologyProjectMember() {
return ResponseData.generateCreatedResponse(0, projectService.getProjectMember(ProjectType.TECHNOLOGY_INNOVATION_GROUP,null,ProjectType.TECHNOLOGY_INNOVATION_GROUP));
}
// @PostMapping(value = "/getTechnologyProjectMember")
// @LoginRequired(Platform.student)
// @ApiOperation("学生端 ---查询科技创新项目团队信息")
// public ResponseVO getTechnologyProjectMember() {
// return ResponseData.generateCreatedResponse(0, projectService.getProjectMember(ProjectType.TECHNOLOGY_INNOVATION_GROUP));
// }
@PostMapping(value = "/uploadCulturalProjectAttachment")
@LoginRequired(Platform.student)
@ApiOperation("学生端 --- 上传红色文创项目加盖公章的附件: printAttachment/附件地址, printAttachmentType/附件类型, printAttachmentName/附件名称")
public ResponseVO uploadCulturalProjectAttachment(@RequestBody PrintAttachmentDTO printAttachmentDTO) {
printAttachmentDTO.setProjectGroup(ProjectType.CULTURAL_CREATIVE_GROUP);
projectService.uploadPrintAttachment(printAttachmentDTO,ProjectType.CULTURAL_CREATIVE_GROUP);
projectService.uploadPrintAttachment(printAttachmentDTO);
return ResponseData.generateCreatedResponse(0);
}
......@@ -186,16 +180,16 @@ public class ProjectController {
public ResponseVO createCulturalProjectMember(@RequestBody CreateProjectMemberDTO createProjectMemberDTO) {
createProjectMemberDTO.setProjectGroup(ProjectType.CULTURAL_CREATIVE_GROUP);
createProjectMemberDTO.setProjectType(ProjectType.SEED_TRACK);
projectService.createProjectMember(createProjectMemberDTO,ProjectType.CULTURAL_CREATIVE_GROUP);
projectService.createProjectMember(createProjectMemberDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/getCulturalProjectMember")
@LoginRequired(Platform.student)
@ApiOperation("学生端 ---查询红色文创项目团队信息")
public ResponseVO getCulturalProjectMember(@RequestBody ProjectDO projectDO) {
return ResponseData.generateCreatedResponse(0, projectService.getProjectMember(ProjectType.CULTURAL_CREATIVE_GROUP,projectDO.getThemeName(),"文化创意"));
}
// @PostMapping(value = "/getCulturalProjectMember")
// @LoginRequired(Platform.student)
// @ApiOperation("学生端 ---查询红色文创项目团队信息")
// public ResponseVO getCulturalProjectMember() {
// return ResponseData.generateCreatedResponse(0, projectService.getProjectMember(ProjectType.CULTURAL_CREATIVE_GROUP));
// }
@PostMapping(value = "/getMainTrackProjectPage")
@LoginRequired(Platform.school)
......@@ -220,41 +214,34 @@ public class ProjectController {
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/getSeedTrackProjectList")
@LoginRequired(Platform.school)
@ApiOperation("院校端 --- 分页查询种子赛道全部项目:matchId/赛事ID,projectGroup/项目组别(科技创新、红色文创)、projectSchedule/项目进度(全部项目传空字符串、校内赛、复赛、决赛), " +
"projectStatus/项目状态, itemField/领域, name/搜名称, pageNo/当前页数 、pageSize/每页显示条数")
public ResponseVO getSeedTrackProjectList(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getSeedTrackProjectList(projectListPageDTO));
}
@PostMapping(value = "/getSeedTrackProjectListCity")
@LoginRequired(Platform.school)
@ApiOperation("院校端 --- 分页查询种子赛道全部项目:matchId/赛事ID,projectGroup/项目组别(科技创新、红色文创)、projectSchedule/项目进度(全部项目传空字符串、校内赛、复赛、决赛), " +
"projectStatus/项目状态, itemField/领域, name/搜名称, pageNo/当前页数 、pageSize/每页显示条数")
public ResponseVO getSeedTrackProjectListCity(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getSeedTrackProjectListCity(projectListPageDTO));
}
// @PostMapping(value = "/getSeedTrackProjectList")
// @LoginRequired(Platform.school)
// @ApiOperation("院校端 --- 分页查询种子赛道全部项目:matchId/赛事ID,projectGroup/项目组别(科技创新、红色文创)、projectSchedule/项目进度(全部项目传空字符串、校内赛、复赛、决赛), " +
// "projectStatus/项目状态, itemField/领域, name/搜名称, pageNo/当前页数 、pageSize/每页显示条数")
// public ResponseVO getSeedTrackProjectList(@RequestBody ProjectListPageDTO projectListPageDTO) {
// return ResponseData.generateCreatedResponse(0, projectService.getSeedTrackProjectList(projectListPageDTO));
// }
@PostMapping(value = "/getSeedTrackProjectPage")
@ApiOperation("中心端 --- 分页查询种子赛道全部项目:matchId/赛事ID,projectGroup/项目组别(科技创新、红色文创)、projectSchedule/项目进度(全部项目传空字符串、校内赛、复赛、决赛), " +
"projectStatus/项目状态, itemField/领域, name/搜名称, pageNo/当前页数 、pageSize/每页显示条数 projectProgress")
public ResponseVO getSeedTrackProjectPage(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getSeedTrackProjectPage(projectListPageDTO));
}
// @PostMapping(value = "/getSeedTrackProjectPage")
// @LoginRequired(Platform.center)
// @ApiOperation("中心端 --- 分页查询种子赛道全部项目:matchId/赛事ID,projectGroup/项目组别(科技创新、红色文创)、projectSchedule/项目进度(全部项目传空字符串、校内赛、复赛、决赛), " +
// "projectStatus/项目状态, itemField/领域, name/搜名称, pageNo/当前页数 、pageSize/每页显示条数 projectProgress")
// public ResponseVO getSeedTrackProjectPage(@RequestBody ProjectListPageDTO projectListPageDTO) {
// return ResponseData.generateCreatedResponse(0, projectService.getSeedTrackProjectPage(projectListPageDTO));
// }
@PostMapping(value = "/downloadTechnologyPDF")
@LoginRequired({Platform.student})
@ApiOperation("学生端 --- 种子赛道科技创新申请表下载")
public void downloadTechnologyPDF() {
projectService.downloadPDF(ProjectType.TECHNOLOGY_INNOVATION_GROUP,null,ProjectType.TECHNOLOGY_INNOVATION_GROUP);
projectService.downloadPDF(ProjectType.TECHNOLOGY_INNOVATION_GROUP);
}
@PostMapping(value = "/downloadCulturalPDF")
@LoginRequired({Platform.student})
@ApiOperation("学生端 --- 种子赛道红色文创申请表下载 themeName")
public void downloadCulturalPDF(@RequestBody DownloadCulturalPDFDTO downloadCulturalPDFDTO) {
projectService.downloadPDF(ProjectType.CULTURAL_CREATIVE_GROUP,downloadCulturalPDFDTO.getThemeName(),ProjectType.CULTURAL_CREATIVE_GROUP);
@ApiOperation("学生端 --- 种子赛道红色文创申请表下载")
public void downloadCulturalPDF() {
projectService.downloadPDF(ProjectType.CULTURAL_CREATIVE_GROUP);
}
@PostMapping(value = "/getSeedTrackProjectDetail")
......@@ -264,13 +251,6 @@ public class ProjectController {
return ResponseData.generateCreatedResponse(0, projectService.getSeedTrackProjectDetail(projectDO.getId()));
}
@PostMapping(value = "/getSeedTrackProjectDetailCity")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 --- 种子赛道项目详情:id/项目ID")
public ResponseVO getSeedTrackProjectDetailCity(@RequestBody ProjectDO projectDO) {
return ResponseData.generateCreatedResponse(0, projectService.getSeedTrackProjectDetailCity(projectDO.getId()));
}
@PostMapping(value = "/weedOut")
@LoginRequired({Platform.center, Platform.school})
@ApiOperation("院校端 --- 不予提交:id/项目ID")
......@@ -289,8 +269,8 @@ public class ProjectController {
@PostMapping(value = "/pass")
@LoginRequired({Platform.center, Platform.school})
@ApiOperation("中心端/院校端 --- (校内赛/初赛/复赛/决赛)通过:id/项目ID、" +
"projectStatus/1:市级复赛通过, 2:市级优胜奖,3/6:市级银奖,4:市级铜奖,5:市级金奖")
@ApiOperation("[立信]中心端/院校端 --- (校内赛/初赛/复赛/决赛)通过:id/项目ID、" +
"projectStatus/1:市级复赛通过, 2:市级优胜奖,3/6:市级银奖,4:市级铜奖,5:市级金奖 7 未通过")
public ResponseVO pass(@RequestBody ApproveDTO approveDTO) {
projectService.pass(approveDTO);
return ResponseData.generateCreatedResponse(0);
......@@ -298,15 +278,15 @@ public class ProjectController {
@PostMapping(value = "/batchPass")
@LoginRequired({Platform.center, Platform.school})
@ApiOperation("中心端/院校端 --- 批量(校内赛/初赛/复赛/决赛)通过:ids/项目ID、" +
"projectStatus/1:市级复赛通过, 2:市级优胜奖,3/6:市级银奖,4:市级铜奖,5:市级金奖")
@ApiOperation("[立信]中心端/院校端 --- 批量(校内赛/初赛/复赛/决赛)通过:ids/项目ID、" +
"projectStatus/1:市级复赛通过, 2:市级优胜奖,3/6:市级银奖,4:市级铜奖,5:市级金奖 7 未通过")
public ResponseVO batchPass(@RequestBody ApproveDTO approveDTO) {
projectService.batchPass(approveDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/getReviewList")
// @LoginRequired({Platform.center})
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 评审列表:projectGroup/组别(科技创新、红色文创、主赛道)、projectName/搜索项目或院校、 projectStatus/项目状态(市级复赛、市级决赛)、projectReview/评审分配状态(已分配/未分配)、" +
"pageNo/当前页数、pageSize/每页显示条数")
public ResponseVO getReviewList(@RequestBody ReviewListDTO reviewListDTO) {
......@@ -314,13 +294,14 @@ public class ProjectController {
}
@PostMapping(value = "/getProjectReviewNum")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 评审列表项目数量统计:matchId/赛事年份ID、projectProgress/组别(科技创新、文化创意), projectStatus/项目进度(市级复赛、市级决赛)")
public ResponseVO getProjectReviewNum(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getProjectReviewNum(reviewListDTO));
}
@PostMapping(value = "/getProjectReviewAssignNum")
@LoginRequired({Platform.school})
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 评审分配项目数量统计:matchId/赛事年份ID、projectGroup/组别(科技创新、红色文创), projectStatus/项目进度(市级复赛、市级决赛)")
public ResponseVO getProjectReviewAssignNum(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getProjectReviewAssignNum(reviewListDTO));
......@@ -333,13 +314,6 @@ public class ProjectController {
return ResponseData.generateCreatedResponse(0, projectService.getReviewProjectNum(reviewListDTO));
}
@PostMapping(value = "/getReviewProjectNumCity")
@LoginRequired({Platform.review})
@ApiOperation("评审端 --- 评审项目数量统计:matchId/赛事年份ID、projectGroup/组别(科技创新、红色文创), projectStatus/项目状态(市级复赛、市级决赛)")
public ResponseVO getReviewProjectNumCity(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getReviewProjectNumCity(reviewListDTO));
}
@PostMapping(value = "/getExportProjectListField")
@LoginRequired({Platform.center, Platform.school})
@ApiOperation("中心端 --- 种子赛道项目字段")
......@@ -355,13 +329,15 @@ public class ProjectController {
}
@PostMapping(value = "/exportProjectList")
@ApiOperation("中心端 --- 批量导出种子赛道项目:matchId/赛事ID")
@LoginRequired({Platform.center})
@ApiOperation("####中心端 --- 批量导出种子赛道项目:matchId/赛事ID")
public void exportProjectList(@RequestBody ProjectCollegeListDTO projectCollegeListDTO) {
projectService.exportProjectList(projectCollegeListDTO);
}
@PostMapping(value = "/exportProjectAll")
@ApiOperation("中心端 --- 导出全部种子赛道项目:matchId/赛事ID, projectSchedule/项目进度,projectGroup/项目组别")
@LoginRequired({Platform.center})
@ApiOperation("####中心端 --- 导出全部种子赛道项目:matchId/赛事ID, projectSchedule/项目进度,projectGroup/项目组别")
public void exportProjectAll(@RequestBody ProjectCollegeListDTO projectCollegeListDTO) {
projectService.exportProjectAll(projectCollegeListDTO);
}
......@@ -373,7 +349,6 @@ public class ProjectController {
projectService.exportProjectAllProgress(projectCollegeListDTO);
}
@PostMapping(value = "/getExportProjectField")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 评审项目字段")
......@@ -383,14 +358,14 @@ public class ProjectController {
@PostMapping(value = "/exportProject")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 评审项目导出:matchId/赛事ID")
@ApiOperation("####中心端 --- 评审项目导出:matchId/赛事ID userId")
public ResponseVO exportProject(@RequestBody ReviewListDTO reviewListDTO) {
projectService.exportProjectReview(reviewListDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/exportProjectNew")
// @LoginRequired({Platform.school})
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 评审项目导出:matchId/赛事ID")
public ResponseVO exportProjectNew(@RequestBody ReviewListDTO reviewListDTO) {
projectService.exportProjectNew(reviewListDTO);
......@@ -398,8 +373,8 @@ public class ProjectController {
}
@PostMapping(value = "/exportProjectById")
@LoginRequired({Platform.school})
@ApiOperation("中心端 --- 评审项目根据ID导出:id/ID")
@LoginRequired({Platform.center})
@ApiOperation("####中心端 --- 评审项目根据ID导出:id/ID")
public ResponseVO exportProjectById(@RequestBody ReviewListDTO reviewListDTO) {
projectService.exportProjectById(reviewListDTO);
return ResponseData.generateCreatedResponse(0);
......@@ -412,13 +387,6 @@ public class ProjectController {
return ResponseData.generateCreatedResponse(0, projectService.getProjectReviewPage(projectReviewPageDTO));
}
@PostMapping(value = "/getProjectReviewPageCity")
@LoginRequired({Platform.review})
@ApiOperation("评审端 ---评审项目分页查询:matchId/赛事年份ID、projectSchedule/项目进度(复赛、决赛)、status/状态(待评审, 已评审)、projectGroup/项目组别、projectName/搜索名称、pageNo/当前页数、pageSize/每页显示条数")
public ResponseVO getProjectReviewPageCity(@RequestBody ProjectReviewPageDTO projectReviewPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getProjectReviewPageCity(projectReviewPageDTO));
}
@PostMapping(value = "/setScore")
@LoginRequired({Platform.review})
@ApiOperation("评审端 ---批量预评分:reviewScore[{ id/项目ID、score/分数 }] +" +
......@@ -428,15 +396,6 @@ public class ProjectController {
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/setScoreCity")
@LoginRequired({Platform.review})
@ApiOperation("评审端 ---批量预评分:reviewScore[{ id/项目ID、score/分数 }] +" +
" --- 单个预评分:id/项目ID、score/分数")
public ResponseVO setScoreCity(@RequestBody ProjectReviewScoreDTO projectReviewScoreDTO) {
projectService.setScoreCity(projectReviewScoreDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/submitted")
@LoginRequired({Platform.review})
@ApiOperation("评审端 ---批量提交:ids:[项目ID]" +
......@@ -446,15 +405,6 @@ public class ProjectController {
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/submittedCity")
@LoginRequired({Platform.review})
@ApiOperation("评审端 ---批量提交:ids:[项目ID]" +
" --- 提交评分:id/项目ID ")
public ResponseVO submittedCity(@RequestBody ProjectReviewScoreDTO projectReviewScoreDTO) {
projectService.submittedCity(projectReviewScoreDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "getCollegeDataOverview")
@LoginRequired({Platform.school})
@ApiOperation("院校端 --- 种子赛道数据概览")
......@@ -470,12 +420,19 @@ public class ProjectController {
// }
@PostMapping(value = "getDataOverview")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 数据概览")
// @LoginRequired({Platform.center})
@ApiOperation("####中心端 --- 数据概览 matchId")
public ResponseVO getDataOverview(@RequestBody DataOverviewDTO dataOverviewDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalDataOverview(dataOverviewDTO));
}
@PostMapping("getDateList")
@ApiOperation("中心端---概览列表 matchId")
public ResponseVO getDateList(@RequestBody DataOverviewDTO dataOverviewDTO){
return ResponseData.generateCreatedResponse(0,projectService.getDateList(dataOverviewDTO));
}
// @PostMapping(value = "getSeedTrackDataOverview")
// @LoginRequired({Platform.center})
// @ApiOperation("中心端 --- 种子赛道数据概览")
......@@ -513,174 +470,62 @@ public class ProjectController {
return ResponseData.generateCreatedResponse(0, projectService.getSeedTrackProjectNum(seedTrackProjectNumDTO));
}
@PostMapping(value = "getSeedTrackProjectNumCity")
@LoginRequired({Platform.center, Platform.school})
@ApiOperation("中心端/院校端 --- 项目数量: matchId/赛事ID、projectGroup/项目组别")
public ResponseVO getSeedTrackProjectNumCity(@RequestBody SeedTrackProjectNumDTO seedTrackProjectNumDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getSeedTrackProjectNumCity(seedTrackProjectNumDTO));
}
/* -- 职教接口(学生端) -- */
@PostMapping(value = "createVocationalProject")
@LoginRequired({ Platform.student })
@ApiOperation("学生端(职教)--创建职教项目:项目logo/logoUri、项目名称/projectName、所属领域/itemField、项目概述/projectIntro、国家级重大、重点科研项目的科研成果转化项目/projectTransform、" +
"学校科技成果转化/resultTransfer、参赛申报人为科技成果的完成人或所有人/competitionOwner、参赛申报人为科技成果的第一完成人或所有人/competitionFirst、师生共创/bothInvention、组别/projectProgress、项目进展/projectStage" +
"公司名称/companyName、法人姓名/legalPersonName、法人职务/position、注册资金/registerFund、注册时间/registerDate、注册省份/registerProvince、注册地址/registerAddress、统一社会信用代码/unifyCode、财务报表地址/financialStatement、是否获得投资/investment、" +
"ownership(股权结构): [{ shareholderStatus/股东身份、shareholderName/股东名称、shareholdingRatio/持股比例 }]" +
"隐私设置/privacySetting(保密,公开)、materialsType/项目计划书类型、materialsSize/项目计划书大小、materialsName/项目计划书名称、materialsUrl/项目计划书地址、项目PPT地址/projectPptUrl、项目TTP类型/projectPptType、项目PPT名称/projectPptName" +
"patent(获得专利): [{专利国别/country、公开号/publicationNumber、专利标题/patentTitle、专利类型/patentType、专利号/patentNumber、专利申请人/patentApplicants、获得时间/issuedTime、到期时间/expirationTime、发明人/inventor、其他发明人/otherInventors}]"+
"paper(论文发表): [{论文名称/paperTitle、发表期刊/publishedJournals、DOI号/doi、是否有共同/common、第一作者/firstAuthor、其他作者/otherAuthor}]"+
"award(奖项): [{奖项名称/awardTitle、获奖项目名称/awardProjectTitle、level/级别、获奖人/prizewinner、获奖时间/winningTime}]"+
"copyright(软件著作): [{软件名称/dynacomm、著作权人/copyrightOwner、权利获取方式/rightAcquisitionMethod、开发完成日期/developmentDate、开发发表日期/publishedDate、权利范围/interestField、登记号/registerNumber}]"+
"works(作品著作): [{作品名称/worksName、作者/author、创作完成日期/completionDate、首次发表日期/firstPublicationDate、作品类别/worksType、登记号/registerNumber}]" +
"trademark(商标): [{国际分类号/classificationNumber、商标名称/tradeName、注册人/registeredPerson、注册时间/registeredDate、有效日期/effectiveDate、商标编号/trademarkNumber}]" +
"vodUrl")
@ApiOperation("####学生端--创建项目:项目名称/projectName、项目概述/projectIntro、参赛赛道/projectTrack、单元赛道/unitTrack、组别/projectGroup" +
"公司名称/companyName、注册资金/registerFund、注册时间/registerDate、注册地址/registerAddress、营业执照/businessLicense" +
"项目计划书 projectAttachment projectAttachmentName projectAttachmentType" +
"答辩PPT projectPptUrl projectPptType projectPptName"+
"身份证明书/identityCertificate 承诺书 commitmentLetter participationCertificate 参赛证明书")
public ResponseVO createVocationalProject(@RequestBody CreateVocationalProjectDTO createVocationalProjectDTO) {
projectService.createVocationalProject(createVocationalProjectDTO);
return ResponseData.generateCreatedResponse(0);
}
/* -- 职教接口(学生端) -- */
@PostMapping(value = "createHonglvProject")
@LoginRequired({ Platform.student })
@ApiOperation("学生端(职教)--创建职教项目:项目logo/logoUri、项目名称/projectName、所属领域/itemField、项目概述/projectIntro、国家级重大、重点科研项目的科研成果转化项目/projectTransform、" +
"学校科技成果转化/resultTransfer、参赛申报人为科技成果的完成人或所有人/competitionOwner、参赛申报人为科技成果的第一完成人或所有人/competitionFirst、师生共创/bothInvention、组别/projectProgress、项目进展/projectStage" +
"公司名称/companyName、法人姓名/legalPersonName、法人职务/position、注册资金/registerFund、注册时间/registerDate、注册省份/registerProvince、注册地址/registerAddress、统一社会信用代码/unifyCode、财务报表地址/financialStatement、是否获得投资/investment、" +
"ownership(股权结构): [{ shareholderStatus/股东身份、shareholderName/股东名称、shareholdingRatio/持股比例 }]" +
"隐私设置/privacySetting(保密,公开)、materialsType/项目计划书类型、materialsSize/项目计划书大小、materialsName/项目计划书名称、materialsUrl/项目计划书地址、项目PPT地址/projectPptUrl、项目TTP类型/projectPptType、项目PPT名称/projectPptName" +
"patent(获得专利): [{专利国别/country、公开号/publicationNumber、专利标题/patentTitle、专利类型/patentType、专利号/patentNumber、专利申请人/patentApplicants、获得时间/issuedTime、到期时间/expirationTime、发明人/inventor、其他发明人/otherInventors}]"+
"paper(论文发表): [{论文名称/paperTitle、发表期刊/publishedJournals、DOI号/doi、是否有共同/common、第一作者/firstAuthor、其他作者/otherAuthor}]"+
"award(奖项): [{奖项名称/awardTitle、获奖项目名称/awardProjectTitle、level/级别、获奖人/prizewinner、获奖时间/winningTime}]"+
"copyright(软件著作): [{软件名称/dynacomm、著作权人/copyrightOwner、权利获取方式/rightAcquisitionMethod、开发完成日期/developmentDate、开发发表日期/publishedDate、权利范围/interestField、登记号/registerNumber}]"+
"works(作品著作): [{作品名称/worksName、作者/author、创作完成日期/completionDate、首次发表日期/firstPublicationDate、作品类别/worksType、登记号/registerNumber}]" +
"trademark(商标): [{国际分类号/classificationNumber、商标名称/tradeName、注册人/registeredPerson、注册时间/registeredDate、有效日期/effectiveDate、商标编号/trademarkNumber}]" +
"vodUrl")
public ResponseVO createHonglvProject(@RequestBody CreateVocationalProjectDTO createVocationalProjectDTO) {
projectService.createHonglvProject(createVocationalProjectDTO);
return ResponseData.generateCreatedResponse(0);
}
/* -- 国际合作(学生端) -- */
@PostMapping(value = "createInternationalProject")
@LoginRequired({ Platform.student })
@ApiOperation("学生端(职教)--创建职教项目:项目logo/logoUri、项目名称/projectName、所属领域/itemField、项目概述/projectIntro、国家级重大、重点科研项目的科研成果转化项目/projectTransform、" +
"学校科技成果转化/resultTransfer、参赛申报人为科技成果的完成人或所有人/competitionOwner、参赛申报人为科技成果的第一完成人或所有人/competitionFirst、师生共创/bothInvention、组别/projectProgress、项目进展/projectStage" +
"公司名称/companyName、法人姓名/legalPersonName、法人职务/position、注册资金/registerFund、注册时间/registerDate、注册省份/registerProvince、注册地址/registerAddress、统一社会信用代码/unifyCode、财务报表地址/financialStatement、是否获得投资/investment、" +
"ownership(股权结构): [{ shareholderStatus/股东身份、shareholderName/股东名称、shareholdingRatio/持股比例 }]" +
"隐私设置/privacySetting(保密,公开)、materialsType/项目计划书类型、materialsSize/项目计划书大小、materialsName/项目计划书名称、materialsUrl/项目计划书地址、项目PPT地址/projectPptUrl、项目TTP类型/projectPptType、项目PPT名称/projectPptName" +
"patent(获得专利): [{专利国别/country、公开号/publicationNumber、专利标题/patentTitle、专利类型/patentType、专利号/patentNumber、专利申请人/patentApplicants、获得时间/issuedTime、到期时间/expirationTime、发明人/inventor、其他发明人/otherInventors}]"+
"paper(论文发表): [{论文名称/paperTitle、发表期刊/publishedJournals、DOI号/doi、是否有共同/common、第一作者/firstAuthor、其他作者/otherAuthor}]"+
"award(奖项): [{奖项名称/awardTitle、获奖项目名称/awardProjectTitle、level/级别、获奖人/prizewinner、获奖时间/winningTime}]"+
"copyright(软件著作): [{软件名称/dynacomm、著作权人/copyrightOwner、权利获取方式/rightAcquisitionMethod、开发完成日期/developmentDate、开发发表日期/publishedDate、权利范围/interestField、登记号/registerNumber}]"+
"works(作品著作): [{作品名称/worksName、作者/author、创作完成日期/completionDate、首次发表日期/firstPublicationDate、作品类别/worksType、登记号/registerNumber}]" +
"trademark(商标): [{国际分类号/classificationNumber、商标名称/tradeName、注册人/registeredPerson、注册时间/registeredDate、有效日期/effectiveDate、商标编号/trademarkNumber}]" +
"vodUrl")
public ResponseVO createInternationalProject(@RequestBody CreateVocationalProjectDTO createVocationalProjectDTO) {
projectService.createInternationalProject(createVocationalProjectDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "updateVocationalProject")
@LoginRequired({ Platform.student })
@ApiOperation("学生端(职教)--修改职教项目:id/项目ID、项目logo/logoUri、所属领域/itemField、项目概述/projectIntro、国家级重大、重点科研项目的科研成果转化项目/projectTransform、" +
"学校科技成果转化/resultTransfer、参赛申报人为科技成果的完成人或所有人/competitionOwner、参赛申报人为科技成果的第一完成人或所有人/competitionFirst、师生共创/bothInvention、组别/projectProgress、项目进展/projectStage" +
"公司名称/companyName、法人姓名/legalPersonName、法人职务/position、注册资金/registerFund、注册时间/registerDate、注册省份/registerProvince、注册地址/registerAddress、统一社会信用代码/unifyCode、财务报表地址/financialStatement、是否获得投资/investment、" +
"ownership(股权结构): [{ shareholderStatus/股东身份、shareholderName/股东名称、shareholdingRatio/持股比例 }]" +
"隐私设置/privacySetting(保密,公开)、materialsType/项目计划书类型、materialsSize/项目计划书大小、materialsName/项目计划书名称、materialsUrl/项目计划书地址、项目PPT地址/projectPptUrl、项目TTP类型/projectPptType、项目PPT名称/projectPptName" +
"patent(获得专利): [{专利国别/country、公开号/publicationNumber、专利标题/patentTitle、专利类型/patentType、专利号/patentNumber、专利申请人/patentApplicants、获得时间/issuedTime、到期时间/expirationTime、发明人/inventor、其他发明人/otherInventors}]"+
"paper(论文发表): [{论文名称/paperTitle、发表期刊/publishedJournals、DOI号/doi、是否有共同/common、第一作者/firstAuthor、其他作者/otherAuthor}]"+
"award(奖项): [{奖项名称/awardTitle、获奖项目名称/awardProjectTitle、level/级别、获奖人/prizewinner、获奖时间/winningTime}]"+
"copyright(软件著作): [{软件名称/dynacomm、著作权人/copyrightOwner、权利获取方式/rightAcquisitionMethod、开发完成日期/developmentDate、开发发表日期/publishedDate、权利范围/interestField、登记号/registerNumber}]"+
"works(作品著作): [{作品名称/worksName、作者/author、创作完成日期/completionDate、首次发表日期/firstPublicationDate、作品类别/worksType、登记号/registerNumber}]" +
"trademark(商标): [{国际分类号/classificationNumber、商标名称/tradeName、注册人/registeredPerson、注册时间/registeredDate、有效日期/effectiveDate、商标编号/trademarkNumber}]")
@ApiOperation("学生端(职教)--修改职教项目:id/项目ID、 createVocationalProject的字段, projectSchedule 项目阶段 ")
public ResponseVO updateVocationalProject(@RequestBody CreateVocationalProjectDTO createVocationalProjectDTO) {
projectService.updateVocationalProject(createVocationalProjectDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "updateInternationalProject")
@LoginRequired({ Platform.student })
@ApiOperation("学生端(职教)--修改职教项目:id/项目ID、项目logo/logoUri、所属领域/itemField、项目概述/projectIntro、国家级重大、重点科研项目的科研成果转化项目/projectTransform、" +
"学校科技成果转化/resultTransfer、参赛申报人为科技成果的完成人或所有人/competitionOwner、参赛申报人为科技成果的第一完成人或所有人/competitionFirst、师生共创/bothInvention、组别/projectProgress、项目进展/projectStage" +
"公司名称/companyName、法人姓名/legalPersonName、法人职务/position、注册资金/registerFund、注册时间/registerDate、注册省份/registerProvince、注册地址/registerAddress、统一社会信用代码/unifyCode、财务报表地址/financialStatement、是否获得投资/investment、" +
"ownership(股权结构): [{ shareholderStatus/股东身份、shareholderName/股东名称、shareholdingRatio/持股比例 }]" +
"隐私设置/privacySetting(保密,公开)、materialsType/项目计划书类型、materialsSize/项目计划书大小、materialsName/项目计划书名称、materialsUrl/项目计划书地址、项目PPT地址/projectPptUrl、项目TTP类型/projectPptType、项目PPT名称/projectPptName" +
"patent(获得专利): [{专利国别/country、公开号/publicationNumber、专利标题/patentTitle、专利类型/patentType、专利号/patentNumber、专利申请人/patentApplicants、获得时间/issuedTime、到期时间/expirationTime、发明人/inventor、其他发明人/otherInventors}]"+
"paper(论文发表): [{论文名称/paperTitle、发表期刊/publishedJournals、DOI号/doi、是否有共同/common、第一作者/firstAuthor、其他作者/otherAuthor}]"+
"award(奖项): [{奖项名称/awardTitle、获奖项目名称/awardProjectTitle、level/级别、获奖人/prizewinner、获奖时间/winningTime}]"+
"copyright(软件著作): [{软件名称/dynacomm、著作权人/copyrightOwner、权利获取方式/rightAcquisitionMethod、开发完成日期/developmentDate、开发发表日期/publishedDate、权利范围/interestField、登记号/registerNumber}]"+
"works(作品著作): [{作品名称/worksName、作者/author、创作完成日期/completionDate、首次发表日期/firstPublicationDate、作品类别/worksType、登记号/registerNumber}]" +
"trademark(商标): [{国际分类号/classificationNumber、商标名称/tradeName、注册人/registeredPerson、注册时间/registeredDate、有效日期/effectiveDate、商标编号/trademarkNumber}]")
public ResponseVO updateInternationalProject(@RequestBody CreateVocationalProjectDTO createVocationalProjectDTO) {
projectService.updateInternationalProject(createVocationalProjectDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "getVocationalProject")
@LoginRequired(Platform.student)
@ApiOperation("学生端 ---职教赛道项目分页查询: matchId/赛事届数ID ,pageNo/当前页数, pageSize/每页显示条数")
@ApiOperation("[立信]学生端 ---职教赛道项目分页查询: matchId/赛事届数ID ,pageNo/当前页数, pageSize/每页显示条数")
public ResponseVO getVocationalProject(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProject(projectListPageDTO));
}
@PostMapping(value = "getHonglvProject")
@LoginRequired(Platform.student)
@ApiOperation("学生端 ---职教赛道项目分页查询: matchId/赛事届数ID ,pageNo/当前页数, pageSize/每页显示条数")
public ResponseVO getHonglvProject(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getHonglvProject(projectListPageDTO));
}
@PostMapping(value = "getInternationalProject")
@LoginRequired(Platform.student)
@ApiOperation("学生端 ---职教赛道项目分页查询: matchId/赛事届数ID ,pageNo/当前页数, pageSize/每页显示条数")
public ResponseVO getInternationalProject(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getInternationalProject(projectListPageDTO));
}
@PostMapping(value = "getVocationalProjectById")
@LoginRequired(Platform.student)
@ApiOperation("学生端(职教)--根据ID查询高职赛道项目信息")
@ApiOperation("[立信]学生端(职教)--根据ID查询高职赛道项目信息")
public ResponseVO getVocationalProjectById() {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectById());
}
@PostMapping(value = "getHonglvProjectById")
@LoginRequired(Platform.student)
@ApiOperation("学生端(职教)--根据ID查询高职赛道项目信息")
public ResponseVO getHonglvProjectById() {
return ResponseData.generateCreatedResponse(0, projectService.getHonglvProjectById());
}
@PostMapping(value = "getInternationalProjectById")
@LoginRequired(Platform.student)
@ApiOperation("学生端(国际合作)--根据ID查询高职赛道项目信息")
public ResponseVO getInternationalProjectById() {
return ResponseData.generateCreatedResponse(0, projectService.getInternationalProjectById());
}
@PostMapping(value = "createVocationalMember")
@LoginRequired(Platform.student)
@ApiOperation("学生端(职教) ---保存职教赛道团队信息:name/姓名、school/就读学校、grade/年级、major/就读专业、sex/性别、studentNo/学籍号、email/邮箱 fiveYears" +
"teamMember/团队成员:[{ teamName/姓名、school/就读学校、grade/年级、major/就读专业、sex/性别、studentNo/学籍号 teamTelephone 手机号 }]" +
@ApiOperation("####学生端(职教) ---保存职教赛道团队信息:name/姓名、school/就读学校、grade/年级、major/就读专业、sex/性别、studentNo/学籍号、email/邮箱 " +
"teamMember/团队成员:[{ teamName/姓名、school/就读学校、grade/年级、major/就读专业、sex/性别、studentNo/学籍号}]" +
"mentor/指导老师:[{ teacherName/姓名、 company/工作单位、positionTitle/职称、position/职务、telephone/手机号 idCard}]")
public ResponseVO createVocationalMember(@RequestBody CreateProjectMemberDTO createProjectMemberDTO) {
projectService.createVocationalMember(createProjectMemberDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "createHonglvMember")
@PostMapping("confirm")
@LoginRequired(Platform.student)
@ApiOperation("学生端(职教) ---保存职教赛道团队信息:name/姓名、school/就读学校、grade/年级、major/就读专业、sex/性别、studentNo/学籍号、email/邮箱 fiveYears" +
"teamMember/团队成员:[{ teamName/姓名、school/就读学校、grade/年级、major/就读专业、sex/性别、studentNo/学籍号 teamTelephone 手机号 }]" +
"mentor/指导老师:[{ teacherName/姓名、 company/工作单位、positionTitle/职称、position/职务、telephone/手机号 idCard}]")
public ResponseVO createHonglvMember(@RequestBody CreateProjectMemberDTO createProjectMemberDTO) {
projectService.createHonglvMember(createProjectMemberDTO);
@ApiOperation("id 项目id")
public ResponseVO confirm(@RequestBody ProjectDO projectDO){
projectService.confirm(projectDO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "updateVocationalMember")
@LoginRequired(Platform.student)
@ApiOperation("学生端(职教) ---保存职教赛道团队信息:id/项目ID、name/姓名、school/就读学校、grade/年级、major/就读专业、sex/性别、studentNo/学籍号、email/邮箱" +
@ApiOperation("####学生端(职教) ---保存职教赛道团队信息:id/项目ID、name/姓名、school/就读学校、grade/年级、major/就读专业、sex/性别、studentNo/学籍号、email/邮箱" +
"teamMember/团队成员:[{ teamName/姓名、school/就读学校、grade/年级、major/就读专业、sex/性别、studentNo/学籍号 }]" +
"mentor/指导老师:[{ teacherName/姓名、 company/工作单位、positionTitle/职称、position/职务、telephone/手机号}]")
public ResponseVO updateVocationalMember(@RequestBody CreateProjectMemberDTO createProjectMemberDTO) {
......@@ -688,73 +533,23 @@ public class ProjectController {
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "createInternationalMember")
@LoginRequired(Platform.student)
@ApiOperation("学生端(职教) ---保存职教赛道团队信息:name/姓名、school/就读学校、grade/年级、major/就读专业、sex/性别、studentNo/学籍号、email/邮箱 fiveYears" +
"teamMember/团队成员:[{ teamName/姓名、school/就读学校、grade/年级、major/就读专业、sex/性别、studentNo/学籍号 teamTelephone 手机号 }]" +
"mentor/指导老师:[{ teacherName/姓名、 company/工作单位、positionTitle/职称、position/职务、telephone/手机号 idCard}]")
public ResponseVO createInternationalMember(@RequestBody CreateProjectMemberDTO createProjectMemberDTO) {
projectService.createInternationalMember(createProjectMemberDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "updateInternationalMember")
@LoginRequired(Platform.student)
@ApiOperation("学生端(职教) ---保存职教赛道团队信息:id/项目ID、name/姓名、school/就读学校、grade/年级、major/就读专业、sex/性别、studentNo/学籍号、email/邮箱" +
"teamMember/团队成员:[{ teamName/姓名、school/就读学校、grade/年级、major/就读专业、sex/性别、studentNo/学籍号 }]" +
"mentor/指导老师:[{ teacherName/姓名、 company/工作单位、positionTitle/职称、position/职务、telephone/手机号}]")
public ResponseVO updateInternationalMember(@RequestBody CreateProjectMemberDTO createProjectMemberDTO) {
projectService.updateInternationalMember(createProjectMemberDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "getVocationalProjectMember")
@LoginRequired(Platform.student)
@ApiOperation("学生端(职教) ---查询职教项目团队信息")
@ApiOperation("####学生端(职教) ---查询职教项目团队信息")
public ResponseVO getVocationalProjectMember() {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectMember(ProjectType.VOCATIONAL,null));
}
@PostMapping(value = "getHonglvProjectMember")
@LoginRequired(Platform.student)
@ApiOperation("学生端(职教) ---查询职教项目团队信息")
public ResponseVO getHonglvProjectMember() {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectMember(ProjectType.HONGLV,null));
}
@PostMapping(value = "getInternationalProjectMember")
@LoginRequired(Platform.student)
@ApiOperation("学生端(国际合作) ---查询国际合作项目团队信息")
public ResponseVO getInternationalProjectMember() {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectMember(ProjectType.INTERNATIONAL,null));
return ResponseData.generateCreatedResponse(0, projectService.getProjectMember());
}
/* -- 管理端 -- */
@PostMapping(value = "/getVocationalProjectPage")
@ApiOperation("中心端 --- 分页查询职教赛道项目管理:matchId/赛事ID,projectGroup/项目组别(高职、中职)、projectSchedule/项目进度(全部项目传空字符串、校内赛、市级初赛、市级复赛、市级决赛), " +
@ApiOperation("[立信]中心端 --- 分页查询职教赛道项目管理:matchId/赛事ID,projectGroup/项目组别、赛道 projectTrack、projectSchedule/项目进度(全部项目传空字符串、校内赛、市级初赛、市级复赛、市级决赛), " +
"projectStatus/项目状态, itemField/领域, name/搜名称, pageNo/当前页数 、pageSize/每页显示条数")
@LoginRequired({Platform.center,Platform.school,Platform.review})
public ResponseVO getVocationalProjectPage(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectPage(projectListPageDTO));
}
/* -- 管理端 -- */
@PostMapping(value = "/getVocationalProjectPageCity")
@ApiOperation("中心端 --- 分页查询职教赛道项目管理:matchId/赛事ID,projectGroup/项目组别(高职、中职)、projectSchedule/项目进度(全部项目传空字符串、校内赛、市级初赛、市级复赛、市级决赛), " +
"projectStatus/项目状态, itemField/领域, name/搜名称, pageNo/当前页数 、pageSize/每页显示条数")
public ResponseVO getVocationalProjectPageCity(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectPageCity(projectListPageDTO));
}
/* -- 管理端 -- */
@PostMapping(value = "/getInternationalProjectPage")
@ApiOperation("中心端 --- 分页查询职教赛道项目管理:matchId/赛事ID,projectGroup/项目组别(高职、中职)、projectSchedule/项目进度(全部项目传空字符串、校内赛、市级初赛、市级复赛、市级决赛), " +
"projectStatus/项目状态, itemField/领域, name/搜名称, pageNo/当前页数 、pageSize/每页显示条数")
public ResponseVO getInternationalProjectPage(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getInternationalProjectPage(projectListPageDTO));
}
@PostMapping(value = "updateAllEditStatus")
@LoginRequired(Platform.center)
@ApiOperation("中心端 --- 更新所有编辑状态:matchId/赛事ID、projectGroup/项目组别、projectSchedule/项目进度、editStatus/状态(0:关闭,1:开启)")
public ResponseVO updateAllEditStatus(@RequestBody EditStatusDTO editStatusDTO) {
projectService.updateAllEditStatus(editStatusDTO);
......@@ -762,7 +557,6 @@ public class ProjectController {
}
@PostMapping(value = "batchUpdateEditStatus")
@LoginRequired(Platform.center)
@ApiOperation("中心端 --- 批量更新编辑状态:ids/项目ID(数组)、editStatus/状态(0:关闭,1:开启)")
public ResponseVO batchUpdateEditStatus(@RequestBody EditStatusDTO editStatusDTO) {
projectService.batchUpdateEditStatus(editStatusDTO);
......@@ -770,7 +564,6 @@ public class ProjectController {
}
@PostMapping(value = "updateEditStatus")
@LoginRequired(Platform.center)
@ApiOperation("中心端 --- 更新编辑状态:id/项目ID、editStatus/状态(0:关闭,1:开启)")
public ResponseVO updateEditStatus(@RequestBody EditStatusDTO editStatusDTO) {
projectService.updateEditStatus(editStatusDTO);
......@@ -778,208 +571,82 @@ public class ProjectController {
}
@PostMapping(value = "/getVocationalReviewList")
@ApiOperation("中心端 --- 职教评审列表:projectGroup/组别、projectName/搜索项目或院校、 projectStatus/项目状态(市级初赛、市级复赛、市级决赛)、projectReview/评审分配状态(已分配/未分配)、" +
@ApiOperation("[立信]中心端 --- 职教评审列表:projectGroup/组别、projectName/搜索项目或院校、 projectSchedule/项目状态(市级初赛、市级复赛、市级决赛)、projectReview/评审分配状态(已分配/未分配)、" +
"pageNo/当前页数、pageSize/每页显示条数")
public ResponseVO getVocationalReviewList(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalReviewList(reviewListDTO));
}
@PostMapping(value = "/getHonglvReviewList")
@ApiOperation("中心端 --- 职教评审列表:projectGroup/组别、projectName/搜索项目或院校、 projectStatus/项目状态(市级初赛、市级复赛、市级决赛)、projectReview/评审分配状态(已分配/未分配)、" +
"pageNo/当前页数、pageSize/每页显示条数")
public ResponseVO getHonglvReviewList(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getHonglvReviewList(reviewListDTO));
}
@PostMapping(value = "/getInternationalReviewList")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 职教评审列表:projectGroup/组别、projectName/搜索项目或院校、 projectStatus/项目状态(市级初赛、市级复赛、市级决赛)、projectReview/评审分配状态(已分配/未分配)、" +
"pageNo/当前页数、pageSize/每页显示条数")
public ResponseVO getInternationalReviewList(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalReviewList(reviewListDTO));
}
@PostMapping(value = "/getVocationalProjectDetail")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 --- 职教赛道项目详情:id/项目ID")
@ApiOperation("####中心端/院校端 --- 职教赛道项目详情:id/项目ID")
@LoginRequired({Platform.center,Platform.school,Platform.review})
public ResponseVO getVocationalProjectDetail(@RequestBody ProjectDO projectDO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectDetail(projectDO.getId()));
}
@PostMapping(value = "/getVocationalProjectDetailCity")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 --- 职教赛道项目详情:id/项目ID")
public ResponseVO getVocationalProjectDetailCity(@RequestBody ProjectDO projectDO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectDetailCity(projectDO.getId()));
}
@PostMapping(value = "/getInternationalProjectDetail")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 --- 职教赛道项目详情:id/项目ID")
public ResponseVO getInternationalProjectDetail(@RequestBody ProjectDO projectDO) {
return ResponseData.generateCreatedResponse(0, projectService.getInternationalProjectDetail(projectDO.getId()));
}
/* -- 院校端 -- */
@PostMapping(value = "/getVocationalProjectList")
@LoginRequired(Platform.school)
@ApiOperation("院校端 --- 分页查询职教赛道项目:matchId/赛事ID,projectGroup/项目组别、projectSchedule/项目进度(全部项目传空字符串、校内赛、初赛、复赛、决赛), " +
"projectStatus/项目状态, itemField/领域, name/搜名称, pageNo/当前页数 、pageSize/每页显示条数")
@LoginRequired({Platform.center,Platform.school})
public ResponseVO getVocationalProjectList(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectList(projectListPageDTO));
}
/* -- 院校端 -- */
@PostMapping(value = "/getInternationalProjectList")
@LoginRequired(Platform.school)
@ApiOperation("院校端 --- 分页查询职教赛道项目:matchId/赛事ID,projectGroup/项目组别、projectSchedule/项目进度(全部项目传空字符串、校内赛、初赛、复赛、决赛), " +
"projectStatus/项目状态, itemField/领域, name/搜名称, pageNo/当前页数 、pageSize/每页显示条数")
public ResponseVO getInternationalProjectList(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getInternationalProjectList(projectListPageDTO));
}
@PostMapping(value = "getReviewVocationalNum")
@LoginRequired(Platform.review)
@ApiOperation("评审端 --- (职教)项目数量: matchId/赛事ID、projectGroup/项目组别、 projectSchedule/赛事状态 projectJudgeId")
public ResponseVO getReviewVocationalNum(@RequestBody ReviewVocationalNumDTO reviewVocationalNumDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getReviewVocationalNum(reviewVocationalNumDTO));
}
@PostMapping(value = "getReviewInternationalNum")
@LoginRequired(Platform.review)
@ApiOperation("评审端 --- (职教)项目数量: matchId/赛事ID、projectGroup/项目组别、 projectSchedule/赛事状态 projectJudgeId")
public ResponseVO getReviewInternationalNum(@RequestBody ReviewVocationalNumDTO reviewVocationalNumDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getReviewInternationalNum(reviewVocationalNumDTO));
}
/* -- 评审端 -- */
@PostMapping(value = "/getVocationalProjectReviewPage")
@LoginRequired({Platform.review})
@ApiOperation("评审端 ---职教评审项目分页查询:matchId/赛事年份ID、projectSchedule/项目进度(初赛、复赛、决赛)、status/状态(待评审, 已评审)、projectGroup/项目组别、projectName/搜索名称、pageNo/当前页数、pageSize/每页显示条数")
@LoginRequired({Platform.center,Platform.school,Platform.review})
public ResponseVO getVocationalProjectReviewPage(@RequestBody ProjectReviewPageDTO projectReviewPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectReviewPage(projectReviewPageDTO));
}
/* -- 评审端 -- */
@PostMapping(value = "/getInternationalProjectReviewPage")
@LoginRequired({Platform.review})
@ApiOperation("评审端 ---职教评审项目分页查询:matchId/赛事年份ID、projectSchedule/项目进度(初赛、复赛、决赛)、status/状态(待评审, 已评审)、projectGroup/项目组别、projectName/搜索名称、pageNo/当前页数、pageSize/每页显示条数")
public ResponseVO getInternationalProjectReviewPage(@RequestBody ProjectReviewPageDTO projectReviewPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getInternationalProjectReviewPage(projectReviewPageDTO));
}
@PostMapping(value = "getVocationalProjectNum")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 --- (职教)项目管理数量: matchId/赛事ID、projectGroup/项目组别")
@LoginRequired({Platform.school, Platform.center, Platform.student})
@ApiOperation("[立信]中心端/院校端 --- (职教)项目管理数量: matchId/赛事ID、projectGroup/项目组别")
public ResponseVO getVocationalProjectNum(@RequestBody SeedTrackProjectNumDTO seedTrackProjectNumDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectNum(seedTrackProjectNumDTO));
}
@PostMapping(value = "getVocationalProjectNumCity")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 --- (职教)项目管理数量: matchId/赛事ID、projectGroup/项目组别")
public ResponseVO getVocationalProjectNumCity(@RequestBody SeedTrackProjectNumDTO seedTrackProjectNumDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectNumCity(seedTrackProjectNumDTO));
}
@PostMapping(value = "getInternationalProjectNum")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 --- (职教)项目管理数量: matchId/赛事ID、projectGroup/项目组别")
public ResponseVO getInternationalProjectNum(@RequestBody SeedTrackProjectNumDTO seedTrackProjectNumDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getInternationalProjectNum(seedTrackProjectNumDTO));
}
@PostMapping(value = "/getVocationalReviewNum")
@ApiOperation("中心端 --- 职教评审列表(已评审 + 待评审)项目数量统计:matchId/赛事年份ID、projectGroup/组别(高职、中职), projectStatus/项目进度(校级申请项目、市级初赛项目、市级复赛项目、市级 决赛项目)")
@ApiOperation("[立信]中心端 --- 职教评审列表(已评审 + 待评审)项目数量统计:matchId/赛事年份ID、, projectStatus/项目进度(校级申请项目、市级初赛项目、市级复赛项目、市级 决赛项目)")
public ResponseVO getVocationalReviewNum(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalReviewNum(reviewListDTO));
}
@PostMapping(value = "/getHonglvReviewNum")
@ApiOperation("中心端 --- 职教评审列表(已评审 + 待评审)项目数量统计:matchId/赛事年份ID、projectGroup/组别(高职、中职), projectStatus/项目进度(校级申请项目、市级初赛项目、市级复赛项目、市级 决赛项目)")
public ResponseVO getHonglvReviewNum(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getHonglvReviewNum(reviewListDTO));
}
@PostMapping(value = "/getInternationalReviewNum")
@ApiOperation("中心端 --- 职教评审列表(已评审 + 待评审)项目数量统计:matchId/赛事年份ID、projectGroup/组别(高职、中职), projectStatus/项目进度(校级申请项目、市级初赛项目、市级复赛项目、市级 决赛项目)")
public ResponseVO getInternationalReviewNum(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getInternationalReviewNum(reviewListDTO));
}
@PostMapping(value = "/getVocationalAssignNum")
@ApiOperation("中心端 --- 职教评审分配(已分配 + 未分配)项目数量统计:matchId/赛事年份ID、projectGroup/组别(高职、中职), projectStatus/项目进度(校级申请项目、市级初赛项目、市级复赛项目、市级 决赛项目)")
public ResponseVO getVocationalAssignNum(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalAssignNum(reviewListDTO));
}
@PostMapping(value = "/getHonglvAssignNum")
@ApiOperation("中心端 --- 职教评审分配(已分配 + 未分配)项目数量统计:matchId/赛事年份ID、projectGroup/组别(高职、中职), projectStatus/项目进度(校级申请项目、市级初赛项目、市级复赛项目、市级 决赛项目)")
public ResponseVO getHonglvAssignNum(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getHonglvAssignNum(reviewListDTO));
}
@PostMapping(value = "/getInternationalAssignNum")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 职教评审分配(已分配 + 未分配)项目数量统计:matchId/赛事年份ID、projectGroup/组别(高职、中职), projectStatus/项目进度(校级申请项目、市级初赛项目、市级复赛项目、市级 决赛项目)")
public ResponseVO getInternationalAssignNum(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getInternationalAssignNum(reviewListDTO));
}
@PostMapping(value = "importVocationalProject")
@ApiOperation("中心端/院校端 --- 导出高职项目赛事: projectGroup/项目组别")
@LoginRequired({ Platform.center, Platform.school })
public void importVocationalProject(@RequestBody ImportVocationalProjectDTO importVocationalProjectDTO) {
projectService.importVocationalProject(importVocationalProjectDTO);
}
// @PostMapping(value = "importVocationalProject")
// @ApiOperation("中心端/院校端 --- 导出高职项目赛事: projectGroup/项目组别")
// @LoginRequired({ Platform.center, Platform.school })
// public void importVocationalProject(@RequestBody ImportVocationalProjectDTO importVocationalProjectDTO) {
// projectService.importVocationalProject(importVocationalProjectDTO);
// }
@PostMapping(value = "importProjectByGroup")
@ApiOperation("中心端/院校端 ---excel 数据预览导出市级初赛/市级复赛项目: projectGroup/项目组别")
@LoginRequired({ Platform.center, Platform.school })
public void importProjectByGroup(@RequestBody ImportVocationalProjectDTO importVocationalProjectDTO) {
projectService.importProjectByGroup(importVocationalProjectDTO);
}
@PostMapping("exportProjectByGroup")
@ApiOperation("中心端/院校端 ---pdf 数据预览导出市级初赛/市级复赛项目: projectGroup/项目组别 matchId")
// @LoginRequired({ Platform.center, Platform.school })
public void exportProjectByGroup(@RequestBody ImportVocationalProjectDTO importVocationalProjectDTO) {
projectService.exportProjectByGroup(importVocationalProjectDTO);
}
@PostMapping("exportInternationalByGroup")
@ApiOperation("中心端/院校端 ---pdf 数据预览导出市级初赛/市级复赛项目: projectGroup/项目组别 matchId")
// @LoginRequired({ Platform.center, Platform.school })
public void exportInternationalByGroup(@RequestBody ImportVocationalProjectDTO importVocationalProjectDTO) {
projectService.exportInternationalByGroup(importVocationalProjectDTO);
}
@PostMapping("attendCount")
@ApiOperation("这一届参加的个数 matchId ")
@LoginRequired({ Platform.student})
public ResponseVO attendCount(@RequestBody AttendCountDTO attendCountDTO){
return ResponseData.generateCreatedResponse(0, projectService.attendCount(attendCountDTO));
}
/* -- 管理端 -- */
@PostMapping(value = "/getHonglvProjectPage")
@ApiOperation("中心端 --- 分页查询职教赛道项目管理:matchId/赛事ID,projectGroup/项目组别(高职、中职)、projectSchedule/项目进度(全部项目传空字符串、校内赛、市级初赛、市级复赛、市级决赛), " +
"projectStatus/项目状态, itemField/领域, name/搜名称, pageNo/当前页数 、pageSize/每页显示条数")
public ResponseVO getHonglvProjectPage(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getHonglvProjectPage(projectListPageDTO));
}
@PostMapping(value = "getHonglvProjectNum")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 --- (职教)项目管理数量: matchId/赛事ID、projectGroup/项目组别")
public ResponseVO getHonglvProjectNum(@RequestBody SeedTrackProjectNumDTO seedTrackProjectNumDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getHonglvProjectNum(seedTrackProjectNumDTO));
}
@PostMapping(value = "/getHonglvProjectDetail")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 --- 职教赛道项目详情:id/项目ID")
public ResponseVO getHonglvProjectDetail(@RequestBody ProjectDO projectDO) {
return ResponseData.generateCreatedResponse(0, projectService.getHonglvProjectDetail(projectDO.getId()));
}
}
\ No newline at end of file
......@@ -34,63 +34,67 @@ public class ProjectJudgeController {
private ProjectJudgeService projectJudgeService;
@PostMapping(value = "/login")
@ApiOperation("评审端 --- 登录:telephone/手机号、code/验证码")
@ApiOperation("评审端 --- 登录:accountName password")
public ResponseVO login(@RequestBody LoginDTO loginDTO) {
return ResponseData.generateCreatedResponse(0, projectJudgeService.login(loginDTO));
}
@PostMapping(value = "/getProjectJudgePage")
@ApiOperation("中心端 ---评委列表:username/姓名、status/状态、pageNo/当前页数、 pageSize/每页显示条数")
@LoginRequired({Platform.center})
@ApiOperation("[立信]中心端 ---评委列表:username/姓名、status/状态、pageNo/当前页数、 pageSize/每页显示条数")
public ResponseVO getProjectJudgePage(@RequestBody ProjectJudgePageDTO projectJudgePageDTO) {
return ResponseData.generateCreatedResponse(0, projectJudgeService.getProjectJudgePage(projectJudgePageDTO));
}
@PostMapping(value = "/createProjectJudge")
@LoginRequired({Platform.school})
@ApiOperation("中心端 ---添加评委:username/姓名、telephone/手机号、 position/职位、unit/单位")
@LoginRequired({Platform.center})
public ResponseVO createProjectJudge(@RequestBody ProjectJudgeDO projectJudgeDO) {
projectJudgeService.createProjectJudge(projectJudgeDO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/updateProjectJudge")
@ApiOperation("中心端 ---编辑评委:id/ID、username/姓名、telephone/手机号、 position/职位、unit/单位, status/状态(1:启用,0:禁用)")
@LoginRequired({Platform.center})
@ApiOperation("[立信]中心端 ---编辑评委:id/ID、username/姓名、telephone/手机号、 position/职位、unit/单位, status/状态(1:启用,0:禁用)")
public ResponseVO updateProjectJudge(@RequestBody ProjectJudgeDO projectJudgeDO) {
projectJudgeService.updateProjectJudge(projectJudgeDO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/delete")
@ApiOperation("中心端 ---删除评委:id/ID")
@LoginRequired({Platform.center})
@ApiOperation("[立信]中心端 ---删除评委:id/ID")
public ResponseVO delete(@RequestBody ProjectJudgeDO projectJudgeDO) {
projectJudgeService.removeJudge(projectJudgeDO);
projectJudgeService.removeById(projectJudgeDO.getId());
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/projectJudgesAssigned")
@LoginRequired({Platform.center})
@ApiOperation("中心端 ---已分配项目评委列表: matchId/赛事ID、projectGroup/组别、projectSchedule/进度")
public ResponseVO projectJudgesAssigned(@RequestBody ProjectJudgePageDTO projectJudgePageDTO) {
return ResponseData.generateCreatedResponse(0, projectJudgeService.projectJudgesAssigned(projectJudgePageDTO));
}
@PostMapping(value = "/downloadJudgeTemplate")
@ApiOperation("中心端 ---下载导入评委模板")
@LoginRequired({Platform.center})
@ApiOperation("####中心端 ---下载导入评委模板")
public ResponseVO downloadJudgeTemplate() {
projectJudgeService.downloadTemplate();
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/importJudge")
@LoginRequired({Platform.school})
@ApiOperation("中心端 ---导入评委:file/文件(数据格式:Form-Data)")
@LoginRequired({Platform.center})
@ApiOperation("####中心端 ---导入评委:file/文件(数据格式:Form-Data)")
public ResponseVO importJudge(MultipartFile file) {
projectJudgeService.importJudge(file);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/exportProjectJudge")
@ApiOperation("中心端 ---导出评委")
@LoginRequired({Platform.school})
@LoginRequired({Platform.center})
@ApiOperation("####中心端 ---导出评委")
public void exportProjectJudge() {
projectJudgeService.exportProjectJudge();
}
......
......@@ -35,6 +35,7 @@ public class ProjectReviewController {
private ProjectReviewService projectReviewService;
@PostMapping(value = "/setReview")
@LoginRequired({Platform.center})
@ApiOperation("中心端 ---分配评审:[{projectId}]/项目ID、[{judgeId}]/评委ID、smsMessage/是否发送短信通知(0:不发送,1:发送)")
public ResponseVO setReview(@RequestBody SetReviewDTO setReviewDTO) {
projectReviewService.setReview(setReviewDTO);
......@@ -42,6 +43,7 @@ public class ProjectReviewController {
}
@PostMapping(value = "/sendNotice")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 发送通知评审:id/评委ID, matchId/赛事ID")
public ResponseVO sendNotice(@RequestBody SendNoticeVO sendNoticeVO) {
projectReviewService.sendNotice(sendNoticeVO);
......@@ -49,6 +51,7 @@ public class ProjectReviewController {
}
@PostMapping(value = "/cancelReview")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 撤销分配:projectId/项目ID、[{judgeId}]/评委ID、smsMessage/是否发送短信通知(0:不发送,1:发送)")
public ResponseVO cancelReview(@RequestBody CancelReviewDTO cancelReviewVO) {
projectReviewService.cancelReview(cancelReviewVO);
......@@ -56,6 +59,7 @@ public class ProjectReviewController {
}
@PostMapping(value = "/getProjectReview")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 已分配项目评审员:projectId/项目ID")
public ResponseVO getProjectReview(@RequestBody ProjectReviewDTO projectReviewDTO) {
return ResponseData.generateCreatedResponse(0, projectReviewService.getProjectReview(projectReviewDTO));
......
......@@ -32,21 +32,12 @@ public class ProjectReviewPeriodController {
private ProjectReviewPeriodService projectReviewPeriodService;
@PostMapping(value = "/getProjectReviewPeriod")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端(种子赛道、职教赛道) --- 查询评审时间:matchId/赛事年份ID、projectGroup/项目组别(科技创新组、红色文创组、高职、中职)、projectSchedule/项目进度(市级初赛、市级复赛、市级决赛)")
@ApiOperation("[立信]中心端(种子赛道、职教赛道) --- 查询评审时间:matchId/赛事年份ID、projectGroup/项目组别(科技创新组、红色文创组、高职、中职)、projectSchedule/项目进度(市级初赛、市级复赛、市级决赛)")
public ResponseVO getProjectReviewPeriod(@RequestBody ProjectReviewPeriodDTO projectReviewPeriodDTO) {
return ResponseData.generateCreatedResponse(0, projectReviewPeriodService.getProjectReviewPeriod(projectReviewPeriodDTO));
}
@PostMapping(value = "/getProjectReviewPeriodCity")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端(种子赛道、职教赛道) --- 查询评审时间:matchId/赛事年份ID、projectGroup/项目组别(科技创新组、红色文创组、高职、中职)、projectSchedule/项目进度(市级初赛、市级复赛、市级决赛)")
public ResponseVO getProjectReviewPeriodCity(@RequestBody ProjectReviewPeriodDTO projectReviewPeriodDTO) {
return ResponseData.generateCreatedResponse(0, projectReviewPeriodService.getProjectReviewPeriodCity(projectReviewPeriodDTO));
}
@PostMapping(value = "/updateProjectReviewPeriod")
@LoginRequired(Platform.center)
@ApiOperation("中心端 --- 修改评审时间:id/ID、matchId/赛事ID、projectGroup/项目组别、projectSchedule/项目进度、startTime/开始时间、endTime/结束时间")
public ResponseVO updateProjectReviewPeriod(@RequestBody ProjectReviewPeriodDO projectReviewPeriodDO) {
projectReviewPeriodService.updateProjectReviewPeriod(projectReviewPeriodDO);
......
package com.zhongzhi.controller;
import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.service.ProjectTrackService;
import com.zhongzhi.vo.ResponseVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 赛道字典表 前端控制器
* </p>
* @author DengMin
* @since 2025-03-28
*/
@RestController
@RequestMapping("/projectTrack")
@Api(tags = "赛道")
public class ProjectTrackController {
@Autowired
private ProjectTrackService projectTrackService;
@PostMapping("allTracks")
@ApiOperation("[立信]查询所有赛道 ")
public ResponseVO allTracks(){
return ResponseData.generateCreatedResponse(0,projectTrackService.list());
}
}
......@@ -32,29 +32,29 @@ public class SmsCodeController {
private SmsCodeService smsCodeService;
@PostMapping(value = "/sendRegisterCode")
@ApiOperation("学生端 ---注册验证码:telephone/手机号")
public ResponseVO sendRegisterCode(@RequestBody SmsCodeDO smsCodeDO)throws Exception {
@ApiOperation("[立信]学生端 ---注册验证码:telephone/手机号")
public ResponseVO sendRegisterCode(@RequestBody SmsCodeDO smsCodeDO) {
smsCodeService.sendRegisterCode(smsCodeDO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/sendStudentLoginCode")
@ApiOperation("学生端 ---登陆验证码:telephone/手机号")
public ResponseVO sendStudentLoginCode(@RequestBody SmsCodeDO smsCodeDO)throws Exception {
@ApiOperation("[立信]学生端 ---登陆验证码:telephone/手机号")
public ResponseVO sendStudentLoginCode(@RequestBody SmsCodeDO smsCodeDO) {
smsCodeService.sendStudentLoginCode(smsCodeDO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/sendAdministerLoginCode")
@ApiOperation("中心端 --- 中心端登陆验证码:telephone/手机号")
public ResponseVO sendAdministerLoginCode(@RequestBody AdministerDO administerDO) throws Exception{
public ResponseVO sendAdministerLoginCode(@RequestBody AdministerDO administerDO) {
smsCodeService.sendAdministerLoginCode(administerDO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/sendJudgeLoginCode")
@ApiOperation("评审端 ---登陆验证码:telephone/手机号")
public ResponseVO sendJudgeLoginCode(@RequestBody SmsCodeDO smsCodeDO) throws Exception{
public ResponseVO sendJudgeLoginCode(@RequestBody SmsCodeDO smsCodeDO) {
smsCodeService.sendJudgeLoginCode(smsCodeDO);
return ResponseData.generateCreatedResponse(0);
}
......
......@@ -35,7 +35,7 @@ public class SmsNoticeController {
@PostMapping(value = "batchSend")
@LoginRequired({Platform.center})
@ApiOperation("管理端 -- 批量发送短信:matchId/赛事年份ID、projectGroup/组别、projectSchedule/阶段、projectStatus/状态、name/搜索名称")
@ApiOperation("####管理端 -- 批量发送短信:matchId/赛事年份ID、projectGroup/组别、projectSchedule/阶段、projectStatus/状态、name/搜索名称")
public ResponseVO batchSend(@RequestBody SmsNoticeDTO smsNoticeDTO) {
smsNoticeService.batchSend(smsNoticeDTO);
return ResponseData.generateCreatedResponse(0);
......@@ -43,7 +43,7 @@ public class SmsNoticeController {
@PostMapping(value = "send")
@LoginRequired({Platform.center})
@ApiOperation("管理端 -- 发送短信:ids/项目ID(数组)")
@ApiOperation("####管理端 -- 发送短信:ids/项目ID(数组)")
public ResponseVO send(@RequestBody SmsNoticeDTO smsNoticeDTO) {
smsNoticeService.send(smsNoticeDTO);
return ResponseData.generateCreatedResponse(0);
......@@ -51,7 +51,7 @@ public class SmsNoticeController {
@PostMapping(value = "getListByPage")
@LoginRequired({Platform.center})
@ApiOperation("管理端 -- 发送短信记录:date/日期、name/搜索名称、pageNo、pageSize")
@ApiOperation("####管理端 -- 发送短信记录:date/日期、name/搜索名称、pageNo、pageSize")
public ResponseVO getListByPage(@RequestBody SmsNoticePageDTO smsNoticePageDTO) {
return ResponseData.generateCreatedResponse(0, smsNoticeService.getListByPage(smsNoticePageDTO));
}
......
......@@ -33,14 +33,14 @@ public class StudentController {
private StudentService studentService;
@PostMapping(value = "/register")
@ApiOperation("注册:name/真实姓名, idCard/身份证, telephone/手机号, code/验证码, " +
"education/学历层次, school/就读院校, major/就读专业, enrollmentDate/入学年份, graduateDate/毕业年份 sex")
@ApiOperation("[立信]注册:name/真实姓名, idCard/身份证, telephone/手机号, code/验证码, " +
"education/学历层次, school/就读院校, major/就读专业, enrollmentDate/入学年份, graduateDate/毕业年份")
public ResponseVO register(@RequestBody RegisterDTO registerDTO) {
return ResponseData.generateCreatedResponse(0, studentService.register(registerDTO));
}
@PostMapping(value = "/login")
@ApiOperation("登陆:telephone/手机号, code/验证码")
@ApiOperation("####登陆:telephone/手机号, code/验证码")
public ResponseVO login(@RequestBody LoginDTO loginDTO) {
return ResponseData.generateCreatedResponse(0, studentService.login(loginDTO));
}
......@@ -52,5 +52,4 @@ public class StudentController {
studentService.updateStudentInfo(studentDO);
return ResponseData.generateCreatedResponse(0);
}
}
......@@ -31,7 +31,7 @@ public class YearDictController {
private YearDictService yearDictService;
@PostMapping("queryYears")
@ApiOperation("查询年份")
@ApiOperation("####查询年份")
public ResponseVO queryYears(){
return ResponseData.generateCreatedResponse(0,yearDictService.queryYears());
}
......
package com.zhongzhi.dao;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zhongzhi.model.AdministerDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhongzhi.vo.administer.GetAdministerPageVO;
import org.springframework.stereotype.Repository;
/**
......@@ -15,4 +17,8 @@ import org.springframework.stereotype.Repository;
@Repository
public interface AdministerDAO extends BaseMapper<AdministerDO> {
IPage<GetAdministerPageVO> getAdministerPage(IPage iPage, String listItem, String username);
void updateAdminister(AdministerDO administerDO);
}
package com.zhongzhi.dao;
import com.zhongzhi.model.DrawLotsJudgeNumDO;
import com.zhongzhi.model.AdministerTrackMappingDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhongzhi.model.ProjectTrackDO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author DengMin
* @since 2025-07-10
*/
* <p>
* 赛道管理员映射表 Mapper 接口
* </p>
*
* @author DengMin
* @since 2025-03-28
*/
@Repository
public interface DrawLotsJudgeNumMapper extends BaseMapper<DrawLotsJudgeNumDO> {
public interface AdministerTrackMappingDAO extends BaseMapper<AdministerTrackMappingDO> {
List<ProjectTrackDO> administerTracks(Long userId);
}
}
......@@ -2,6 +2,7 @@ package com.zhongzhi.dao;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhongzhi.dto.college.ExportCollegeDTO;
import com.zhongzhi.model.CollegesDictDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhongzhi.vo.college.AwardedListVO;
......@@ -28,8 +29,6 @@ public interface CollegesDictDAO extends BaseMapper<CollegesDictDO> {
List<AwardedListVO> getAwardedListAll();
List<GetCollegeInfoVO> getCollegeInfo(String name,String education,Long sceneId);
List<GetCollegeInfoVO> getSceneCollegeInfo(String name,String education,Long sceneId);
List<GetCollegeInfoVO> getCollegeInfo(String name);
}
package com.zhongzhi.dao;
import com.zhongzhi.model.DrawLotGroupDictDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhongzhi.vo.drawlots.GroupJudgesVO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@Repository
public interface DrawLotGroupDictMapper extends BaseMapper<DrawLotGroupDictDO> {
/**
* 组别下的成员
*/
List<GroupJudgesVO> groupJudges(Long groupId, String roleType);
/**
* 查看组别下的编号
*/
List<Integer> groupNums(Long groupId);
}
package com.zhongzhi.dao;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zhongzhi.model.DrawLotGroupDictDO;
import com.zhongzhi.model.DrawLotsGroupItemsDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhongzhi.vo.drawlots.AllGroupItemsVO;
import com.zhongzhi.vo.drawlots.CollegeProjectsVO;
import com.zhongzhi.vo.drawlots.GroupProjectInfoVO;
import com.zhongzhi.vo.drawlots.MatchProjectsVO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@Repository
public interface DrawLotsGroupItemsMapper extends BaseMapper<DrawLotsGroupItemsDO> {
IPage<AllGroupItemsVO> allGroupItems(IPage page,Long sceneId, String projectName,String college);
/**
* 某赛道 没有被选的项目
*/
List<MatchProjectsVO> matchProjects(Long matchId, String projectSchedule);
/**
* 还没有坑位的项目
*/
IPage<CollegeProjectsVO> collegeProjects(IPage iPage,Long sceneId, String college, String projectSchedule, String projectProgress);
/**
* 还没有满的坑位
*/
List<DrawLotGroupDictDO> noFullGroup(Long sceneId,String college,Integer count);
/**
* 查看该组别下的项目
*/
List<GroupProjectInfoVO> groupProjectInfo(Long groupId);
/**
* 某组别已经存在的编码
*/
List<Integer> existNum(Long groupId);
/**
* 某现场某院校组别最小的数量
*/
Integer sceneCollege(Long sceneId,String college);
}
package com.zhongzhi.dao;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zhongzhi.model.DrawLotGroupDictDO;
import com.zhongzhi.model.DrawLotsGroupJudgesDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhongzhi.vo.drawlots.*;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* <p>
* 赛组评委表 Mapper 接口
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@Repository
public interface DrawLotsGroupJudgesMapper extends BaseMapper<DrawLotsGroupJudgesDO> {
IPage<MatchJudgesVO> matchJudges(IPage page,Long sceneId, String userName, String expectorType, String roleType);
/**
* 选择评委
*/
IPage<SelectJudgesVO> selectJudges(IPage page,Long sceneId,String userName);
/**
* 某组别已经存在的编码
*/
List<Integer> allNum(Long groupId);
/**
* 某组别已经随机到的编码
*/
List<Integer> existNum(Long groupId);
/**
* 当前组的组长
*/
Integer currentGroupLeaderCnt(Long groupId);
/**
* 评委信息
*/
List<DrawJudgeInfoVO> drawJudgeInfo(Long groupId);
/**
* 没有组长的组
*/
List<DrawLotGroupDictDO> noLeaderGroup(Long sceneId);
/**
* 某个类别(行业专家,教育专家)没有满的组员
*/
List<DrawLotGroupDictDO> noMemberGroup(Long sceneId,String teachType);
LoginVO login(String name);
List<ScoreScreenVO> judgeScoreScreen(Long groupId, Integer groupNum);
JudgeFullInfoVO judgeInfo(Long groupId,Integer groupNum);
}
package com.zhongzhi.dao;
import com.zhongzhi.model.DrawLotsScenesDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhongzhi.vo.project.AllMatchScenesVO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@Repository
public interface DrawLotsScenesMapper extends BaseMapper<DrawLotsScenesDO> {
/**
* 某赛道所有现场
*/
List<AllMatchScenesVO> allMatchScenes(Long matchId, String openStatus);
}
package com.zhongzhi.dao;
import com.zhongzhi.model.DrawLotsGroupItemsDO;
import com.zhongzhi.model.DrawLotsScoresDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhongzhi.vo.drawlots.*;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author DengMin
* @since 2025-07-04
*/
@Repository
public interface DrawLotsScoresMapper extends BaseMapper<DrawLotsScoresDO> {
/**
* 评分--项目列表
*/
List<GroupScoresVO> groupScores(Long sceneId,String projectName,Long groupId);
/**
* 评分--列表里每个角色的评分详情
*/
List<GroupJudgeScoresVO> groupJudgeScores(Long groupId, Long projectId);
/**
* 某评委的评分列表
*/
List<QueryItemsVO> queryItems(Long judgeId);
/**
* 排序
*/
List<GroupRankVO> groupRank(Long groupId);
/**
* 最初前4
*/
List<RankListVO> beforeHand4Project(Long groupId);
/**
* 前4
*/
List<DrawLotsGroupItemsDO> hand4Project(Long groupId);
/**
* 负责人
*/
String groupLeader(Long groupId);
/**
* 最终排位结果
*/
List<RankListVO> rank(Long sceneId,Long groupId,String projectName);
}
......@@ -21,19 +21,7 @@ import java.util.List;
@Repository
public interface MatchDictDAO extends BaseMapper<MatchDictDO> {
IPage<MatchDictVO> getSeedTrackMatchPage(Page page, String matchType);
IPage<MatchDictVO> getSeedTrackMatchPage(Page page);
List<MatchDictDO> getList(@Param("projectType") String projectType, @Param("projectGroup") String projectGroup);
/**
* 职教
*/
MatchDictDO getVocationalCurrentMatch(Long memberId,String progress);
/**
* 种子
* @return
*/
MatchDictDO getSeedCurrentMatch(Long memberId,String progress);
}
......@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhongzhi.model.ProjectDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhongzhi.vo.project.*;
import com.zhongzhi.vo.student.JudgeThemeDoneVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
......@@ -22,21 +21,19 @@ import java.util.List;
@Repository
public interface ProjectDAO extends BaseMapper<ProjectDO> {
IPage<ProjectPageVO> getListPage(Page page, Long matchId, Long proposerId, String projectType);
IPage<ProjectPageVO> getListPage(Page page, Long matchId, Long proposerId);
IPage<MainTrackProjectPageVO> getMainTrackProjectPage(Page page, Long matchId, String projectGroup, @Param("type") String type, @Param("projectType") String projectType,
String projectSchedule,
String projectStatus, String itemField, @Param("name") String name);
IPage<SeedTrackProjectPageVO> getSeedTrackProjectPage(Page page, Long matchId, String projectGroup, @Param("type") String type, @Param("projectType") String projectType,
IPage<SeedTrackProjectPageVO> getSeedTrackProjectPage(Page page, Long matchId, String projectGroup,String projectTrack, @Param("type") String type,
@Param("school") String school, String projectSchedule,
String projectStatus, String itemField, @Param("name") String name,@Param("projectProgress") String projectProgress,@Param("themeName")String themeName);
String projectStatus, String itemField, @Param("name") String name,@Param("projectProgress") String projectProgress,Long userId,String college,String projectType,String xueyuan);
IPage<SeedTrackProjectPageVO> getSeedTrackProjectPageCity(Page page, Long matchId, String projectGroup, @Param("type") String type, @Param("projectType") String projectType,
@Param("school") String school, String projectSchedule,
String projectStatus, String itemField, @Param("name") String name,@Param("projectProgress") String projectProgress,@Param("themeName")String themeName);
IPage<ReviewListVO> getReviewList(Page page, String projectName, String projectGroup, String schoolReview, Long matchId, String projectStatus, String schoolAssigned,String projectProgress);
IPage<ReviewListVO> getReviewList(Page page, String projectName, String projectGroup, String projectReview, Long matchId, String projectSchedule,
String projectAssigned,String projectProgress,String projectTrack,Long userId,String college,
String xueyuan,String projectType);
IPage<ProjectPageVO> getProjectReviewPage(Page page, Long judgeId, Long matchId, String projectName, String projectSchedule, String projectReview, String projectGroup,String projectProgress);
......@@ -44,7 +41,7 @@ public interface ProjectDAO extends BaseMapper<ProjectDO> {
List<ProjectDO> getProjectByCollege(Long matchId, @Param("name") String name, String projectProgress);
List<ProjectDO> getSeedTrackProjectList(Long matchId, String projectGroup, @Param("name") String name,@Param("projectProgress")String projectProgress);
List<ProjectDO> getSeedTrackProjectList(Long matchId, String projectGroup, @Param("name") String name,@Param("projectProgress")String projectProgress,Long userId,String college);
List<ProjectDO> selectListByCollege(String projectType, String projectGroup, @Param("name") String name);
......@@ -58,11 +55,19 @@ public interface ProjectDAO extends BaseMapper<ProjectDO> {
List<ProjectDO> projects(Long matchId,Long collegeId,String college);
Integer attendCount(Long userId,String matchDate);
Integer collegeNum();
List<ProjectDO> getVocationalReviewNum(Long userId,Long matchId,String college);
List<ProjectDO> getVocationalAssignNum(Long userId,Long matchId,String college);
List<ProjectDO> exportProjectReview(Long userId,Long matchId,String projectSchedule,String college);
List<GetDataDListVO> getDateList(Long matchId);
List<JudgeThemeDoneVO> judgeThemeDone(Long studentId, Long matchId);
List<Long> collegeProjects(String xueyuan,String major,Long matchId);
ProjectDO existProject(Long studentId,Long matchId,String projectGroup,String themeName,String projectStatus,String progress);
Integer projectMembers(Long project,String type);
ProjectDO existVocationalProject(Long studentId,Long matchId,String projectGroup,String themeName,String projectStatus);
ProjectProgressCntVO projectProgressCnt(List<Long> projectIds);
}
......@@ -19,7 +19,7 @@ import org.springframework.stereotype.Repository;
@Repository
public interface ProjectJudgeDAO extends BaseMapper<ProjectJudgeDO> {
IPage<ProjectJudgePageVO> getProjectJudgePage(Page page, String username, Integer status);
IPage<ProjectJudgePageVO> getProjectJudgePage(Page page, String username, Integer status,String projectTrack);
IPage<ProjectJudgePageVO> projectJudgesAssigned(Page page, @Param("matchId") Long matchId, @Param("projectGroup") String projectGroup, @Param("projectSchedule") String projectSchedule);
}
package com.zhongzhi.dao;
import com.zhongzhi.model.MatchCollegeCountDO;
import com.zhongzhi.model.ProjectTrackDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
/**
* <p>
* Mapper 接口
* </p>
*
* @author DengMin
* @since 2025-06-10
*/
@Repository
public interface MatchCollegeCountDAO extends BaseMapper<MatchCollegeCountDO> {
* <p>
* 赛道字典表 Mapper 接口
* </p>
*
* @author DengMin
* @since 2025-03-28
*/
public interface ProjectTrackDAO extends BaseMapper<ProjectTrackDO> {
}
}
package com.zhongzhi.dto.project;
package com.zhongzhi.dto.administer;
import lombok.Data;
@Data
public class AttendCountDTO {
public class AdministerTracksDTO {
private Long userId;
private String matchDate;
private Long matchId;
}
package com.zhongzhi.dto.administer;
import com.zhongzhi.model.AdministerDO;
import lombok.Data;
import java.util.List;
@Data
public class CreateAdministerDTO extends AdministerDO {
private List<Long> trackIds;
private List<Long> permissionIds;
}
......@@ -8,4 +8,9 @@ public class LoginDTO {
private String telephone;
private String code;
private String accountName;
private String password;
}
......@@ -11,7 +11,4 @@ public class GetCollegesListDTO {
private String name;
private String education;
private Long sceneId;
}
package com.zhongzhi.dto.drawlots;
import lombok.Data;
import java.util.List;
@Data
public class AddJudgeDTO {
private List<Long> judgeIds;
private Long sceneId;
/**
* 专家类型
*/
private String expectorType;
/**
* 角色类型
*/
private String roleType;
private List<Long> ids;
private Long groupId;
}
package com.zhongzhi.dto.drawlots;
import lombok.Data;
import java.util.List;
@Data
public class AddProjectToSceneDTO {
private List<Long> projectIds;
private Long sceneId;
}
package com.zhongzhi.dto.drawlots;
import lombok.Data;
@Data
public class AllGroupItemsDTO {
private Long sceneId;
private String projectName;
private String college;
private Integer pageSize;
private Integer pageNum;
}
package com.zhongzhi.dto.drawlots;
import lombok.Data;
@Data
public class CollegeProjectsDTO {
private Long matchId;
private Long sceneId;
private String college;
private Integer pageSize;
private Integer pageNum;
private String projectProgress;
private String projectSchedule;
}
package com.zhongzhi.dto.drawlots;
import lombok.Data;
@Data
public class DrawLoginDTO {
private String name;
}
package com.zhongzhi.dto.drawlots;
import lombok.Data;
@Data
public class GroupScoresDTO {
private Long sceneId;
private String projectName;
private Long groupId;
}
package com.zhongzhi.dto.drawlots;
import lombok.Data;
import java.util.List;
@Data
public class JudgeScoreScreenDTO {
private Long groupId;
private List<Integer> groupNums;
}
package com.zhongzhi.dto.drawlots;
import lombok.Data;
@Data
public class MatchProjectsDTO {
private Long matchId;
private Long sceneId;
private String projectSchedule;
}
package com.zhongzhi.dto.judge;
import lombok.Data;
@Data
public class MatchJudgesDTO {
private Long sceneId;
private Long matchId;
private String userName;
private String expectorType;
private String roleType;
private Integer pageSize;
private Integer pageNum;
}
......@@ -9,6 +9,8 @@ public class ProjectJudgePageDTO {
private String projectGroup;
private String projectTrack;
private String projectSchedule;
private String username;
......
package com.zhongzhi.dto.match;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.zhongzhi.model.MatchScheduleDO;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
import java.util.List;
......@@ -24,11 +26,13 @@ public class MatchDictDTO {
/**
* 报名开始时间
*/
@JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss", timezone = "GMT+8")
private Date startTime;
/**
* 报名结束时间
*/
@JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss", timezone = "GMT+8")
private Date endTime;
/**
......
......@@ -9,8 +9,6 @@ public class CreateProjectMemberDTO {
private Long id;
private String themeName;
/**
* 姓名
*/
......@@ -31,10 +29,6 @@ public class CreateProjectMemberDTO {
*/
private String idCard;
/**
* 证件类型
*/
private String idCardType;
/**
* 就读专业
......@@ -61,8 +55,6 @@ public class CreateProjectMemberDTO {
*/
private String email;
private String studyCountry;
/**
* 团队成员
*/
......@@ -85,6 +77,4 @@ public class CreateProjectMemberDTO {
private String fiveYears;
private String nation;
}
......@@ -36,6 +36,4 @@ public class MentorDTO {
* 身份证号
*/
private String idCard;
private String nation;
}
......@@ -38,11 +38,6 @@ public class TeamMemberDTO {
private String idCard;
/**
* 证件类型
*/
private String idCardType;
/**
* 学籍号
*/
private String studentNo;
......@@ -51,12 +46,4 @@ public class TeamMemberDTO {
* 手机号
*/
private String teamTelephone;
private String email;
private String contractMethod;
private String nation;
private String studyCountry;
}
......@@ -133,11 +133,8 @@ public class CreateMainTrackProjectDTO {
*/
private String materialsName;
/**
* 地址
*/
private String materialsUrl;
private String languageType;
}
......@@ -8,8 +8,6 @@ import java.util.List;
@Data
public class CreateSeedTrackProjectDTO {
private String themeName;
private String projectName;
/**
......
......@@ -6,156 +6,11 @@ import lombok.Data;
import java.util.List;
@Data
public class CreateVocationalProjectDTO {
public class CreateVocationalProjectDTO extends ProjectDO {
private Long id;
/**
* 所属领域
*/
private String itemField;
/**
* 项目LOGO
*/
private String logoUri;
/**
* 项目名称
*/
private String projectName;
/**
* 项目概述
*/
private String projectIntro;
/**
* 国家级重大、重点科研项目的科研成果转化项目
*/
private String projectTransform;
/**
* 学校科技成果转化
*/
private String resultTransfer;
/**
* 参赛申报人为科技成果的完成人或所有人
*/
private String competitionOwner;
/**
* 参赛申报人为科技成果的第一完成人或所有人
*/
private String competitionFirst;
/**
* 师生共创
*/
private String bothInvention;
/**
* 项目进展
*/
private String projectProgress;
/**
* 隐私设置
*/
private String privacySetting;
/**
* 类型
*/
private String materialsType;
/**
* 大小
*/
private String materialsSize;
/**
* 名称
*/
private String materialsName;
private String languageType;
/**
* 地址
*/
private String materialsUrl;
/**
* 项目PPT地址
*/
private String projectPptUrl;
/**
* 项目PPT类型
*/
private String projectPptType;
private String projectPptTypeEn;
private String projectStage;
// 公司信息
/**
* 公司名称
*/
private String companyName;
/**
* 法人姓名
*/
private String legalPersonName;
/**
* 职务
*/
private String position;
/**
* 注册资金
*/
private String registerFund;
/**
* 注册时间
*/
private String registerDate;
/**
* 注册省份
*/
private String registerProvince;
/**
* 注册地址
*/
private String registerAddress;
/**
* 统一社会信用代码
*/
private String unifyCode;
/**
* 财务报表
*/
private String financialStatement;
/**
* 项目是否获得投资
*/
private String investment;
private String vodUrl;
/**
* 股权结构
*/
private List<ProjectOwnershipStructureDO> ownership;
......@@ -189,20 +44,4 @@ public class CreateVocationalProjectDTO {
* 商标
*/
private List<ProjectTrademarkDO> trademark;
private String projectPptUrlEn;
private String projectPptNameEn;
private String projectNameEn;
/**
* 项目PPT名称
*/
private String projectPptName;
private List<ProjectMaterialsDO> projectMaterialsEn;
private List<ProjectMaterialsDO> projectMaterialsCn;
}
......@@ -8,4 +8,6 @@ public class DataOverviewDTO {
private String projectGroup;
private String projectType;
private Long matchId;
}
package com.zhongzhi.dto.project;
import lombok.Data;
@Data
public class DownloadCulturalPDFDTO {
private String themeName;
}
......@@ -6,44 +6,48 @@ import lombok.Data;
@Data
public class ExportProjectDTO {
@ExcelColumn(col = 1, value = "序号")
private String id;
@ExcelColumn(col = 2, value = "届数")
@ExcelColumn(col = 1, value = "届数")
private String matchName;
@ExcelColumn(col = 3, value = "项目名称")
@ExcelColumn(col = 2, value = "项目名称")
private String projectName;
@ExcelColumn(col = 3, value = "项目简介")
private String projectIntro;
@ExcelColumn(col = 4, value = "组别")
private String projectProgress;
private String projectGroup;
@ExcelColumn(col = 5, value = "项目类型")
private String projectType;
@ExcelColumn(col = 6, value = "所属行业")
private String classification;
@ExcelColumn(col = 5, value = "负责人")
@ExcelColumn(col = 7, value = "负责人")
private String name;
@ExcelColumn(col = 6, value = "院校")
// @ExcelColumn(col = 8, value = "院校")
private String college;
@ExcelColumn(col = 7, value = "学籍号")
private String studentNo;
@ExcelColumn(col = 8, value = "学院")
private String xueyuan;
@ExcelColumn(col = 8, value = "专业")
@ExcelColumn(col = 9, value = "专业")
private String major;
@ExcelColumn(col = 9, value = "手机号")
@ExcelColumn(col = 10, value = "手机号")
private String telephone;
@ExcelColumn(col = 10, value = "团队成员")
@ExcelColumn(col = 11, value = "团队成员")
private String teamMembers;
@ExcelColumn(col = 11, value = "指导老师")
@ExcelColumn(col = 12, value = "指导老师")
private String teachers;
@ExcelColumn(col = 12, value = "项目阶段")
@ExcelColumn(col = 13, value = "项目阶段")
private String projectSchedule;
@ExcelColumn(col = 13, value = "项目状态")
@ExcelColumn(col = 14, value = "项目状态")
private String projectStatus;
}
......@@ -12,6 +12,4 @@ public class PrintAttachmentDTO {
private String printAttachmentName;
private String projectGroup;
private String themeName;
}
......@@ -15,5 +15,7 @@ public class ProjectCollegeListDTO {
private Long matchId;
private Long userId;
private String projectProgress;
}
......@@ -11,9 +11,13 @@ public class ProjectListPageDTO {
private String projectGroup;
private String projectType;
private String projectTrack;
private String itemField;
private String name;
private String projectName;
private Long matchId;
......@@ -23,5 +27,7 @@ public class ProjectListPageDTO {
private Integer pageSize;
private String themeName;
private Long userId;
private String xueyuan;
}
......@@ -30,7 +30,16 @@ public class ReviewListDTO {
private String projectAssigned;
private String projectTrack;
private String projectSchedule;
private String projectProgress;
private Long userId;
private String xueyuan;
private String projectType;
}
......@@ -12,4 +12,6 @@ public class ReviewVocationalNumDTO {
private String projectStatus;
private Long projectJudgeId;
private String projectSchedule;
}
......@@ -10,4 +10,6 @@ public class SeedTrackProjectNumDTO {
private String projectGroup;
private String projectProgress;
private Long userId;
}
......@@ -7,5 +7,5 @@ public class LoginDTO {
private String telephone;
private String code;
private String verifyCode;
}
......@@ -9,8 +9,6 @@ public class RegisterDTO {
private String idCard;
private String idCardType;
private String telephone;
private String education;
......@@ -25,7 +23,5 @@ public class RegisterDTO {
private String code;
private String sex;
private String className;
private String xueyuan;
}
......@@ -50,4 +50,6 @@ public class AdministerDO extends BaseModel {
* 角色
*/
private String role;
private String college;
}
package com.zhongzhi.model;
import com.zhongzhi.model.base.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.zhongzhi.model.base.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* 赛道管理员映射表
* </p>
*
* @author DengMin
* @since 2025-06-10
* @since 2025-03-28
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("match_college_count")
public class MatchCollegeCountDO extends BaseModel {
@TableName("administer_track_mapping")
public class AdministerTrackMappingDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
@TableId(value = "id", type = IdType.AUTO)
private Long id;
private Long matchId;
private String collegeName;
private Integer applyCnt;
private Long administerId;
private String themeName;
private Long trackId;
private String projectProgress;
}
package com.zhongzhi.model;
import com.zhongzhi.model.base.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("draw_lot_group_dict")
public class DrawLotGroupDictDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
private Long sceneId;
/**
* 赛组名称
*/
private String groupName;
/**
* 赛位数量
*/
private Integer projectCnt;
/**
* 行业专家数量
*/
private Integer fieldCnt;
/**
* 教学专家数量
*/
private Integer teachCnt;
}
package com.zhongzhi.model;
import com.zhongzhi.model.base.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("draw_lots_group_items")
public class DrawLotsGroupItemsDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 现场id
*/
private Long sceneId;
/**
* 项目id
*/
private Long projectId;
/**
* 赛组id
*/
private Long groupId;
/**
* 编号
*/
private Integer groupNum;
/**
* 分数
*/
private String totalScore;
/**
* 排序
*/
private Integer orderNo;
}
package com.zhongzhi.model;
import com.zhongzhi.model.base.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
* 赛组评委表
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("draw_lots_group_judges")
public class DrawLotsGroupJudgesDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 赛事id
*/
private Long matchId;
private Long sceneId;
/**
* 组别id
*/
private Long groupId;
/**
* 编号
*/
private Integer groupNum;
/**
* 专家类型
*/
private String expectorType;
/**
* 评委id
*/
private Long judgeId;
/**
* 角色类型
*/
private String roleType;
}
package com.zhongzhi.model;
import com.zhongzhi.model.base.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("draw_lots_scenes")
public class DrawLotsScenesDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 赛事id
*/
private Long matchId;
private String sceneName;
private String sceneDate;
private String openStatus;
/**
* 排位赛刷新状态
*/
private String rankStatus;
}
package com.zhongzhi.model;
import com.zhongzhi.model.base.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author DengMin
* @since 2025-07-04
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("draw_lots_scores")
public class DrawLotsScoresDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
private Long sceneId;
private Long judgeId;
private Long projectId;
private String score;
private Long groupId;
private String submitStatus;
}
package com.zhongzhi.model;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.deser.std.DateDeserializers;
import com.zhongzhi.model.base.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
......@@ -41,11 +44,15 @@ public class MatchDictDO extends BaseModel {
/**
* 报名开始时间
*/
@JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss", timezone = "GMT+8")
@JsonDeserialize(using = DateDeserializers.DateDeserializer.class)
private Date startTime;
/**
* 报名结束时间
*/
@JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss", timezone = "GMT+8")
@JsonDeserialize(using = DateDeserializers.DateDeserializer.class)
private Date endTime;
/**
......
......@@ -34,174 +34,113 @@ public class ProjectDO extends BaseModel {
private Long proposerId;
/**
* 主题名称
*/
private String themeName;
/**
* 所属领域
*/
private String itemField;
/**
* 项目LOGO
*/
private String logoUri;
/**
* 项目名称
*/
private String projectName;
/**
* 项目计划名称英文名
*/
private String projectNameEn;
/**
* 组别
*/
private String projectGroup;
/**
* 赛事年份
*/
private Long matchId;
/**
* 申报项目时所在院校
*/
private String college;
/**
* 类别
*/
private String classification;
/**
* 所在地址
*/
private String address;
/**
* 项目概述
*/
private String projectIntro;
/**
* 设计背景
* 参赛赛道
*/
private String projectCreativity;
private String projectTrack;
/**
* 科学设计
* 组别
*/
private String scientificPrinciple;
private String projectGroup;
/**
* 应用前景
* 成果转化
*/
private String applicationProspect;
private String resultTransfer;
/**
* 路演形式
* 赛事年份
*/
private String roadShowForm;
private Long matchId;
/**
* 创意实施或实验所受条件的限制
* 公司名称
*/
private String restriction;
private String companyName;
/**
* 国家级重大、重点科研项目的科研成果转化项目
* 注册时间
*/
private String projectTransform;
private String registerDate;
/**
* 学校科技成果转化
* 注册地址
*/
private String resultTransfer;
private String registerAddress;
/**
* 参赛申报人为科技成果的完成人或所有人
* 注册资金
*/
private String competitionOwner;
private String registerFund;
/**
* 参赛申报人为科技成果的第一完成人或所有人
* 营业执照
*/
private String competitionFirst;
private String businessLicense;
/**
* 师生共创
*/
private String bothInvention;
private String projectAttachment;
/**
* 项目进展
*/
private String projectProgress;
private String projectAttachmentName;
/**
* 项目阶段
*/
private String projectStage;
private String projectAttachmentType;
/**
* 公司名称
*/
private String companyName;
private String competitionFirst;
/**
* 法人身份
*/
private String legalPersonStatus;
private String vodUrl;
/**
* 法人姓名
*/
private String legalPersonName;
private String logoUri;
/**
* 职务
* 项目PPT
*/
private String position;
private String projectPptUrl;
/**
* 注册资金
* 项目PPT类型
*/
private String registerFund;
private String projectPptType;
/**
* 注册时间
* 项目PPT名称
*/
private String registerDate;
private String projectPptName;
private String identityCertificate;
/**
* 注册省份
* 所属行业
*/
private String registerProvince;
private String classification;
/**
* 注册地址
* 承诺书
*/
private String registerAddress;
private String commitmentLetter;
/**
* 统一社会信用代码
* 参赛证明书
*/
private String unifyCode;
private String participationCertificate;
/**
* 财务报表
* 项目进展
*/
private String financialStatement;
private String projectProgress;
/**
* 隐私设置
* 项目阶段
*/
private String privacySetting;
private String projectStage;
/**
* 项目状态
......@@ -219,45 +158,6 @@ public class ProjectDO extends BaseModel {
private String projectType;
/**
* 上传加盖公章的附件
*/
private String printAttachment;
/**
* 上传加盖公章的附件类型
*/
private String printAttachmentType;
/**
* 上传加盖公章的附件名称
*/
private String printAttachmentName;
/**
* 项目是否获得投资
*/
private String investment;
/**
* 项目PPT
*/
private String projectPptUrl;
/**
* 项目PPT类型
*/
private String projectPptType;
private String projectPptTypeEn;
/**
* 项目PPT名称
*/
private String projectPptName;
private String projectPptNameEn;
/**
* 评审状态
*/
private String projectReview;
......@@ -267,16 +167,10 @@ public class ProjectDO extends BaseModel {
*/
private String projectAssigned;
// private String schoolReview;
//
// private String schoolAssigned;
private Integer editStatus;
private String vodUrl;
private Integer orderNo;
private String aboveProvinceReward;
private String projectPptUrlEn;
private String rewardUrl;
}
......@@ -33,6 +33,10 @@ public class ProjectJudgeDO extends BaseModel {
*/
private String username;
private String accountName;
private String password;
/**
* 手机号
*/
......@@ -70,4 +74,5 @@ public class ProjectJudgeDO extends BaseModel {
private Integer passwordFree;
}
......@@ -30,8 +30,6 @@ public class ProjectMaterialsDO extends BaseModel {
*/
private Long projectId;
private String languageType;
/**
* 类型
*/
......
......@@ -50,11 +50,6 @@ public class ProjectMemberDO extends BaseModel {
*/
private String idCard;
/**
* 证件类型
*/
private String idCardType;
/**
* 就读专业
......@@ -86,8 +81,6 @@ public class ProjectMemberDO extends BaseModel {
*/
private String position;
private String contractMethod;
/**
* 手机号
*/
......@@ -105,7 +98,5 @@ public class ProjectMemberDO extends BaseModel {
private String fiveYears;
private String nation;
private String studyCountry;
}
......@@ -9,25 +9,23 @@ package com.zhongzhi.model;
/**
* <p>
*
* 赛道字典表
* </p>
*
* @author DengMin
* @since 2025-07-10
* @since 2025-03-28
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("draw_lots_judge_num")
public class DrawLotsJudgeNumDO extends BaseModel {
@TableName("project_track")
public class ProjectTrackDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
private Long groupId;
private Integer groupNum;
private String projectTrack;
}
......@@ -33,26 +33,17 @@ public class StudentDO extends BaseModel {
*/
private String name;
private String className;
/**
* 头像
*/
private String avatar;
private String sex;
/**
* 身份证号
*/
private String idCard;
/**
* 证件类型
*/
private String idCardType;
/**
* 手机号
*/
private String telephone;
......@@ -68,6 +59,11 @@ public class StudentDO extends BaseModel {
private String college;
/**
* 就读学院
*/
private String xueyuan;
/**
* 就读专业
*/
private String major;
......@@ -82,5 +78,4 @@ public class StudentDO extends BaseModel {
*/
private String graduateDate;
}
......@@ -20,4 +20,6 @@ public interface AdministerService extends IService<AdministerDO> {
AdministerVO login(LoginDTO loginDTO);
IPage getAdministerPage(AdministerPageDTO administerPageDTO);
void updateAdminister(AdministerDO administerDO);
}
package com.zhongzhi.service;
import com.zhongzhi.model.MatchCollegeCountDO;
import com.zhongzhi.dto.administer.AdministerTracksDTO;
import com.zhongzhi.model.AdministerTrackMappingDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhongzhi.model.ProjectTrackDO;
import java.util.List;
/**
* <p>
* 服务类
* 赛道管理员映射表 服务类
* </p>
*
* @author DengMin
* @since 2025-06-10
* @since 2025-03-28
*/
public interface MatchCollegeCountService extends IService<MatchCollegeCountDO> {
public interface AdministerTrackMappingService extends IService<AdministerTrackMappingDO> {
List<ProjectTrackDO> administerTracks(AdministerTracksDTO administerTracksDTO);
}
}
......@@ -22,8 +22,6 @@ public interface CollegesDictService extends IService<CollegesDictDO> {
List<GetCollegeInfoVO> getCollegeInfo(GetCollegesListDTO getCollegesListDTO);
List<GetCollegeInfoVO> getSceneCollegeInfo(GetCollegesListDTO getCollegesListDTO);
CollegesVO login(LoginDTO loginDTO);
IPage getCollegesPage(CollegesPageDTO collegesPageDTO);
......
package com.zhongzhi.service;
import com.zhongzhi.model.DrawLotGroupDictDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhongzhi.vo.drawlots.AllGroupsVO;
import com.zhongzhi.vo.drawlots.SceneGroupsVO;
import java.util.List;
/**
* <p>
* 服务类
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
public interface DrawLotGroupDictService extends IService<DrawLotGroupDictDO> {
List<AllGroupsVO> allGroups(DrawLotGroupDictDO drawLotGroupDictDO);
String addGroup(DrawLotGroupDictDO drawLotGroupDictDO);
String updateGroup(DrawLotGroupDictDO drawLotGroupDictDO);
String deleteGroup(DrawLotGroupDictDO drawLotGroupDictDO);
List<SceneGroupsVO> sceneGroups(DrawLotGroupDictDO drawLotGroupDictDO);
}
package com.zhongzhi.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zhongzhi.dto.drawlots.AddProjectToSceneDTO;
import com.zhongzhi.dto.drawlots.AllGroupItemsDTO;
import com.zhongzhi.dto.drawlots.CollegeProjectsDTO;
import com.zhongzhi.dto.drawlots.MatchProjectsDTO;
import com.zhongzhi.model.DrawLotsGroupItemsDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhongzhi.vo.drawlots.*;
import org.apache.commons.lang3.StringUtils;
import java.util.List;
/**
* <p>
* 服务类
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
public interface DrawLotsGroupItemsService extends IService<DrawLotsGroupItemsDO> {
IPage<AllGroupItemsVO> allGroupItems(AllGroupItemsDTO allGroupItemsDTO);
String deleteGroupItem(DrawLotsGroupItemsDO drawLotsGroupItemsDO);
List<MatchProjectsVO> matchProjects(MatchProjectsDTO matchProjectsDTO);
IPage<CollegeProjectsVO> collegeProjects(CollegeProjectsDTO collegeProjectsDTO);
DrawlotsVO drawlots(DrawLotsGroupItemsDO drawLotsGroupItemsDO);
List<GroupProjectScreenVO> groupProjectScreen(DrawLotsGroupItemsDO drawLotsGroupItemsDO);
String addProjectToScene(AddProjectToSceneDTO addProjectToSceneDTO);
}
package com.zhongzhi.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zhongzhi.dto.drawlots.AddJudgeDTO;
import com.zhongzhi.dto.drawlots.DrawLoginDTO;
import com.zhongzhi.dto.drawlots.JudgeScoreScreenDTO;
import com.zhongzhi.dto.judge.MatchJudgesDTO;
import com.zhongzhi.model.DrawLotGroupDictDO;
import com.zhongzhi.model.DrawLotsGroupItemsDO;
import com.zhongzhi.model.DrawLotsGroupJudgesDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhongzhi.model.DrawLotsJudgeNumDO;
import com.zhongzhi.vo.drawlots.*;
import com.zhongzhi.vo.judge.JudgeInfoVO;
import java.util.List;
/**
* <p>
* 赛组评委表 服务类
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
public interface DrawLotsGroupJudgesService extends IService<DrawLotsGroupJudgesDO> {
IPage<MatchJudgesVO> matchJudges(MatchJudgesDTO matchJudgesDTO);
IPage<SelectJudgesVO> selectJudges(MatchJudgesDTO matchJudgesDTO);
String removeJudge(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO);
String updateJudge(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO);
String addJudge(AddJudgeDTO addJudgeDTO);
List<DrawLotsGroupJudgesDO> selectNoDrawLotsJudge(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO);
String assignJudge(AddJudgeDTO addJudgeDTO);
DrawlotsVO drawlots(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO);
List<JudgeScreenVO> judgeScreen(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO);
LoginVO login(DrawLoginDTO drawLoginDTO);
List<JudgeScoreScreenVO> judgeScoreScreen(JudgeScoreScreenDTO judgeScoreScreenDTO);
LeaderFullVO leaderFull(DrawLotGroupDictDO drawLotGroupDictDO);
JudgeFullInfoVO judgeInfo(DrawLotsJudgeNumDO drawLotsJudgeNumDO);
}
package com.zhongzhi.service;
import com.zhongzhi.model.DrawLotsScenesDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhongzhi.vo.project.AllMatchScenesVO;
import java.util.List;
/**
* <p>
* 服务类
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
public interface DrawLotsScenesService extends IService<DrawLotsScenesDO> {
List<AllMatchScenesVO> allMatchScenes(DrawLotsScenesDO drawLotsScenesDO);
String addMatchScene(DrawLotsScenesDO drawLotsScenesDO);
String updateMatchScene(DrawLotsScenesDO drawLotsScenesDO);
String deleteMatchScene(DrawLotsScenesDO drawLotsScenesDO);
}
package com.zhongzhi.service;
import com.zhongzhi.dto.drawlots.GroupScoresDTO;
import com.zhongzhi.model.DrawLotGroupDictDO;
import com.zhongzhi.model.DrawLotsGroupItemsDO;
import com.zhongzhi.model.DrawLotsGroupJudgesDO;
import com.zhongzhi.model.DrawLotsScoresDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhongzhi.vo.drawlots.*;
import java.util.List;
/**
* <p>
* 服务类
* </p>
*
* @author DengMin
* @since 2025-07-04
*/
public interface DrawLotsScoresService extends IService<DrawLotsScoresDO> {
List<GroupScoresVO> groupScores(GroupScoresDTO groupScoresDTO);
String submit(DrawLotsScoresDO drawLotsScoresDO);
List<QueryItemsVO> queryItems(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO);
List<GroupRankVO> groupRank(DrawLotsGroupItemsDO drawLotsGroupItemsDO);
List<RankListVO> rankList(DrawLotGroupDictDO drawLotGroupDictDO);
List<RankListVO> rank(RankVO rankVO);
// List<RankListVO> rankItems(RankVO rankVO);
}
......@@ -3,8 +3,6 @@ package com.zhongzhi.service;
import com.zhongzhi.model.MajorDictDO;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* <p>
* 专业字典表 服务类
......@@ -15,6 +13,4 @@ import java.util.List;
*/
public interface MajorDictService extends IService<MajorDictDO> {
List<MajorDictDO> getMajorList(MajorDictDO majorDictDO);
}
......@@ -18,8 +18,6 @@ import java.util.List;
*/
public interface MatchDictService extends IService<MatchDictDO> {
List<MatchDictDO> getAllMatch();
MatchDictDO getMainTrackMatch();
MatchDictDO getSeedTrackMatch();
......@@ -28,33 +26,17 @@ public interface MatchDictService extends IService<MatchDictDO> {
IPage getSeedTrackMatchPage(SelectListPageDTO selectListPageDTO);
IPage getSeedTrackMatchPageCity(SelectListPageDTO selectListPageDTO);
void createMatch(MatchDictDTO matchDictDTO);
void createHonglvMatch(MatchDictDTO matchDictDTO);
List<MatchDictDO> getMatch();
List<MatchDictDO> getList(String projectType, String projectGroup);
IPage getVocationalPage(SelectListPageDTO selectListPageDTO);
IPage getHonglvPage(SelectListPageDTO selectListPageDTO);
IPage getVocationalPageCity(SelectListPageDTO selectListPageDTO);
IPage getInternationalPage(SelectListPageDTO selectListPageDTO);
MatchDictDO getVocationalMatch();
void updateMatchDate(MatchDictDO matchDictDO);
MatchDictDO getMatch(MatchDictDO matchDictDO);
List<MatchDictDO> getSeedTrackMatchAll();
List<MatchDictDO> getVocationalMatchAll();
List<MatchDictDO> getHonglvMatchAll();
}
......@@ -3,8 +3,6 @@ package com.zhongzhi.service;
import com.zhongzhi.model.MatchScheduleDO;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* <p>
* 时间安排 服务类
......@@ -15,10 +13,4 @@ import java.util.List;
*/
public interface MatchScheduleService extends IService<MatchScheduleDO> {
List<MatchScheduleDO> getMatchSchedule(MatchScheduleDO matchScheduleDO);
List<MatchScheduleDO> getVocationalMatchSchedule(MatchScheduleDO matchScheduleDO);
List<MatchScheduleDO> getHonglvMatchSchedule(MatchScheduleDO matchScheduleDO);
}
......@@ -17,4 +17,7 @@ import java.util.List;
public interface PermissionsService extends IService<PermissionsDO> {
List<PermissionVO> getPermissionById(Long id);
List<PermissionVO> allPermissions();
}
......@@ -25,8 +25,6 @@ public interface ProjectJudgeService extends IService<ProjectJudgeDO> {
void updateProjectJudge(ProjectJudgeDO projectJudgeDO);
void removeJudge(ProjectJudgeDO projectJudgeDO);
JudgeInfoVO login(LoginDTO loginDTO);
IPage<ProjectJudgePageVO> projectJudgesAssigned(ProjectJudgePageDTO projectJudgePageDTO);
......
......@@ -17,7 +17,5 @@ public interface ProjectReviewPeriodService extends IService<ProjectReviewPeriod
ProjectReviewPeriodVO getProjectReviewPeriod(ProjectReviewPeriodDTO projectReviewPeriodDTO);
ProjectReviewPeriodVO getProjectReviewPeriodCity(ProjectReviewPeriodDTO projectReviewPeriodDTO);
void updateProjectReviewPeriod(ProjectReviewPeriodDO projectReviewPeriodDO);
}
......@@ -31,7 +31,7 @@ public interface ProjectReviewService extends IService<ProjectReviewDO> {
void sendNotice(SendNoticeVO sendNoticeVO);
Integer selectCountByMatchId(Long judgeId, Long matchId);
Integer selectCount(Long judgeId, Long matchId);
Integer selectNotReviewCount(Long judgeId, Long matchId);
}
package com.zhongzhi.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.dto.member.CreateProjectMemberDTO;
import com.zhongzhi.dto.project.*;
import com.zhongzhi.dto.review.ProjectReviewPageDTO;
import com.zhongzhi.dto.review.ProjectReviewScoreDTO;
import com.zhongzhi.dto.review.SubmittedDTO;
import com.zhongzhi.model.ProjectDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhongzhi.vo.ExcelFieldVO;
import com.zhongzhi.vo.member.ProjectMemberVO;
import com.zhongzhi.vo.project.*;
import com.zhongzhi.vo.student.JudgeThemeDoneVO;
import java.util.List;
......@@ -26,17 +23,17 @@ import java.util.List;
*/
public interface ProjectService extends IService<ProjectDO> {
IPage getMainTrackProject(ProjectListPageDTO projectListPageDTO);
// IPage getMainTrackProject(ProjectListPageDTO projectListPageDTO);
void createMainTrackProject(CreateMainTrackProjectDTO createMainTrackProjectDTO);
void createProjectMember(CreateProjectMemberDTO createProjectMemberDTO,String progress);
void createProjectMember(CreateProjectMemberDTO createProjectMemberDTO);
void withdrawn(ProjectDO projectDO);
IPage getSeedTrackProject(ProjectListPageDTO projectListPageDTO);
// IPage getSeedTrackProject(ProjectListPageDTO projectListPageDTO);
ProjectDO createSeedTrackProject(CreateSeedTrackProjectDTO createSeedTrackProjectDTO);
void createSeedTrackProject(CreateSeedTrackProjectDTO createSeedTrackProjectDTO);
ProjectInfoVO getMainTrackProjectById();
......@@ -44,24 +41,20 @@ public interface ProjectService extends IService<ProjectDO> {
ProjectInfoVO getSeedTrackProjectById();
ProjectInfoVO getCulturalProjectById(ProjectDO projectDO);
ProjectInfoVO getCulturalProjectById();
IPage getMainTrackProjectPage(ProjectListPageDTO projectListPageDTO);
MainTrackProjectDetailVO getMainTrackProjectDetail(Long id);
IPage getSeedTrackProjectPage(ProjectListPageDTO projectListPageDTO);
// IPage getSeedTrackProjectPage(ProjectListPageDTO projectListPageDTO);
IPage getSeedTrackProjectList(ProjectListPageDTO projectListPageDTO);
// IPage getSeedTrackProjectList(ProjectListPageDTO projectListPageDTO);
IPage getSeedTrackProjectListCity(ProjectListPageDTO projectListPageDTO);
void downloadPDF(String projectGroup,String themeName,String progress);
void downloadPDF(String projectGroup);
SeedTrackProjectDetailVO getSeedTrackProjectDetail(Long id);
SeedTrackProjectDetailVO getSeedTrackProjectDetailCity(Long id);
void pass(ApproveDTO approveDTO);
void batchPass(ApproveDTO approveDTO);
......@@ -72,7 +65,7 @@ public interface ProjectService extends IService<ProjectDO> {
void exportProjectList(ProjectCollegeListDTO projectCollegeListDTO);
void uploadPrintAttachment(PrintAttachmentDTO printAttachmentDTO,String progress);
void uploadPrintAttachment(PrintAttachmentDTO printAttachmentDTO);
IPage getReviewList(ReviewListDTO reviewListDTO);
......@@ -86,19 +79,11 @@ public interface ProjectService extends IService<ProjectDO> {
IPage getProjectReviewPage(ProjectReviewPageDTO projectReviewPageDTO);
IPage getProjectReviewPageCity(ProjectReviewPageDTO projectReviewPageDTO);
void setScore(ProjectReviewScoreDTO projectReviewScoreDTO);
void setScoreCity(ProjectReviewScoreDTO projectReviewScoreDTO);
void submitted(ProjectReviewScoreDTO projectReviewScoreDTO);
void submittedCity(ProjectReviewScoreDTO projectReviewScoreDTO);
ProjectMemberVO getProjectMember(String projectGroup,String themeName,String progress);
ProjectMemberVO getVocationalProjectMember(String projectGroup,String themeName);
ProjectMemberVO getProjectMember();
ProjectDataOverview getCollegeDataOverview(DataOverviewDTO dataOverviewDTO);
......@@ -112,8 +97,6 @@ public interface ProjectService extends IService<ProjectDO> {
ProjectNumVO getReviewProjectNum(ReviewListDTO reviewListDTO);
ProjectNumVO getReviewProjectNumCity(ReviewListDTO reviewListDTO);
void exportCollegeProject(CollegeProjectDTO collegeProjectDTO);
void getProjectByStudentId(StudentProjectDTO studentProjectDTO);
......@@ -122,8 +105,6 @@ public interface ProjectService extends IService<ProjectDO> {
SeedTrackProjectNumVO getSeedTrackProjectNum(SeedTrackProjectNumDTO seedTrackProjectNumDTO);
SeedTrackProjectNumVO getSeedTrackProjectNumCity(SeedTrackProjectNumDTO seedTrackProjectNumDTO);
void exportProjectCollegeList(ProjectCollegeListDTO projectCollegeListDTO);
List<ProjectDO> getList(Long matchId, String name, String projectGroup);
......@@ -136,88 +117,42 @@ public interface ProjectService extends IService<ProjectDO> {
void createVocationalProject(CreateVocationalProjectDTO createVocationalProjectDTO);
void createHonglvProject(CreateVocationalProjectDTO createVocationalProjectDTO);
void createInternationalProject(CreateVocationalProjectDTO createVocationalProjectDTO);
void updateVocationalProject(CreateVocationalProjectDTO createVocationalProjectDTO);
void updateInternationalProject(CreateVocationalProjectDTO createVocationalProjectDTO);
VocationalProjectInfoVO getVocationalProjectById();
VocationalProjectInfoVO getHonglvProjectById();
VocationalProjectInfoVO getInternationalProjectById();
void createVocationalMember(CreateProjectMemberDTO createProjectMemberDTO);
void createHonglvMember(CreateProjectMemberDTO createProjectMemberDTO);
void confirm(ProjectDO projectDO);
void updateVocationalMember(CreateProjectMemberDTO createProjectMemberDTO);
void createInternationalMember(CreateProjectMemberDTO createProjectMemberDTO);
void updateInternationalMember(CreateProjectMemberDTO createProjectMemberDTO);
ProjectDataOverview getVocationalDataOverview(DataOverviewDTO dataOverviewDTO);
IPage getVocationalProject(ProjectListPageDTO projectListPageDTO);
IPage getHonglvProject(ProjectListPageDTO projectListPageDTO);
List<GetDataDListVO> getDateList(DataOverviewDTO dataOverviewDTO);
IPage getInternationalProject(ProjectListPageDTO projectListPageDTO);
IPage getVocationalProject(ProjectListPageDTO projectListPageDTO);
IPage getVocationalReviewList(ReviewListDTO reviewListDTO);
IPage getHonglvReviewList(ReviewListDTO reviewListDTO);
SeedTrackProjectDetailVO getVocationalProjectDetail(Long id);
SeedTrackProjectDetailVO getHonglvProjectDetail(Long id);
SeedTrackProjectDetailVO getVocationalProjectDetailCity(Long id);
SeedTrackProjectDetailVO getInternationalProjectDetail(Long id);
IPage getVocationalProjectPage(ProjectListPageDTO projectListPageDTO);
IPage getHonglvProjectPage(ProjectListPageDTO projectListPageDTO);
IPage getVocationalProjectPageCity(ProjectListPageDTO projectListPageDTO);
IPage getInternationalProjectPage(ProjectListPageDTO projectListPageDTO);
IPage getVocationalProjectList(ProjectListPageDTO projectListPageDTO);
IPage getInternationalProjectList(ProjectListPageDTO projectListPageDTO);
IPage getVocationalProjectReviewPage(ProjectReviewPageDTO projectReviewPageDTO);
IPage getInternationalProjectReviewPage(ProjectReviewPageDTO projectReviewPageDTO);
void importVocationalProject(ImportVocationalProjectDTO importVocationalProjectDTO);
// void importVocationalProject(ImportVocationalProjectDTO importVocationalProjectDTO);
VocationalNumVO getVocationalProjectNum(SeedTrackProjectNumDTO seedTrackProjectNumDTO);
VocationalNumVO getHonglvProjectNum(SeedTrackProjectNumDTO seedTrackProjectNumDTO);
VocationalNumVO getVocationalProjectNumCity(SeedTrackProjectNumDTO seedTrackProjectNumDTO);
VocationalNumVO getInternationalProjectNum(SeedTrackProjectNumDTO seedTrackProjectNumDTO);
VocationalReviewNumVO getVocationalReviewNum(ReviewListDTO reviewListDTO);
VocationalReviewNumVO getHonglvReviewNum(ReviewListDTO reviewListDTO);
VocationalReviewNumVO getInternationalReviewNum(ReviewListDTO reviewListDTO);
void exportProjectById(ReviewListDTO reviewListDTO);
VocationalProjectNum getReviewVocationalNum(ReviewVocationalNumDTO reviewVocationalNumDTO);
VocationalProjectNum getReviewInternationalNum(ReviewVocationalNumDTO reviewVocationalNumDTO);
void batchUpdateEditStatus(EditStatusDTO editStatusDTO);
void updateEditStatus(EditStatusDTO editStatusDTO);
......@@ -226,19 +161,9 @@ public interface ProjectService extends IService<ProjectDO> {
ProjectAssignNumVO getVocationalAssignNum(ReviewListDTO reviewListDTO);
ProjectAssignNumVO getHonglvAssignNum(ReviewListDTO reviewListDTO);
ProjectAssignNumVO getInternationalAssignNum(ReviewListDTO reviewListDTO);
void importProjectByGroup(ImportVocationalProjectDTO importVocationalProjectDTO);
void exportProjectByGroup(ImportVocationalProjectDTO importVocationalProjectDTO);
void exportInternationalByGroup(ImportVocationalProjectDTO importVocationalProjectDTO);
String attendCount(AttendCountDTO attendCountDTO);
List<JudgeThemeDoneVO> judgeThemeDone(CreateSeedTrackProjectDTO createSeedTrackProjectDTO);
// ProjectDataOverview getCollegeVocationalDataOverview();
}
package com.zhongzhi.service;
import com.zhongzhi.model.DrawLotsJudgeNumDO;
import com.zhongzhi.model.ProjectTrackDO;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* 赛道字典表 服务类
* </p>
*
* @author DengMin
* @since 2025-07-10
* @since 2025-03-28
*/
public interface DrawLotsJudgeNumService extends IService<DrawLotsJudgeNumDO> {
public interface ProjectTrackService extends IService<ProjectTrackDO> {
}
......@@ -14,13 +14,13 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface SmsCodeService extends IService<SmsCodeDO> {
void sendRegisterCode(SmsCodeDO smsCodeDO)throws Exception;
void sendRegisterCode(SmsCodeDO smsCodeDO);
void sendStudentLoginCode(SmsCodeDO smsCodeDO) throws Exception;
void sendStudentLoginCode(SmsCodeDO smsCodeDO);
SmsCodeDO getOneByTelePhone(String telephone, String type, String platform);
void sendAdministerLoginCode(AdministerDO administerDO) throws Exception;
void sendAdministerLoginCode(AdministerDO administerDO);
void sendJudgeLoginCode(SmsCodeDO smsCodeDO)throws Exception ;
void sendJudgeLoginCode(SmsCodeDO smsCodeDO);
}
......@@ -7,16 +7,18 @@ import com.zhongzhi.common.constant.Platform;
import com.zhongzhi.common.constant.SmsCode;
import com.zhongzhi.common.exception.HttpException;
import com.zhongzhi.common.utils.JwtUtil;
import com.zhongzhi.dao.AdministerPermissionDAO;
import com.zhongzhi.dao.AdministerTrackMappingDAO;
import com.zhongzhi.dto.administer.AdministerPageDTO;
import com.zhongzhi.dto.administer.LoginDTO;
import com.zhongzhi.model.AdministerDO;
import com.zhongzhi.model.*;
import com.zhongzhi.dao.AdministerDAO;
import com.zhongzhi.model.SmsCodeDO;
import com.zhongzhi.service.AdministerService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhongzhi.service.PermissionsService;
import com.zhongzhi.service.SmsCodeService;
import com.zhongzhi.vo.administer.AdministerVO;
import com.zhongzhi.vo.administer.GetAdministerPageVO;
import com.zhongzhi.vo.permission.PermissionVO;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -42,6 +44,12 @@ public class AdministerServiceImpl extends ServiceImpl<AdministerDAO, Administer
@Autowired
private PermissionsService permissionsService;
@Autowired
private AdministerTrackMappingDAO administerTrackMappingDAO;
@Autowired
private AdministerPermissionDAO administerPermissionDAO;
@Override
public AdministerVO login(LoginDTO loginDTO) {
AdministerVO administerVO = new AdministerVO();
......@@ -66,6 +74,7 @@ public class AdministerServiceImpl extends ServiceImpl<AdministerDAO, Administer
BeanUtils.copyProperties(administerDO, administerVO);
String token = JwtUtil.generateToken(administerDO.getId(), Platform.center);
administerVO.setToken(token);
administerVO.setId(administerDO.getId());
List<PermissionVO> list = permissionsService.getPermissionById(administerDO.getId());
List<PermissionVO> treeList = new ArrayList();
......@@ -92,9 +101,41 @@ public class AdministerServiceImpl extends ServiceImpl<AdministerDAO, Administer
@Override
public IPage getAdministerPage(AdministerPageDTO administerPageDTO) {
Page page = new Page(administerPageDTO.getPageNo(), administerPageDTO.getPageSize());
return this.baseMapper.selectPage(page, new QueryWrapper<AdministerDO>()
.lambda()
.eq(AdministerDO::getRole, administerPageDTO.getListItem())
.like(AdministerDO::getUsername, administerPageDTO.getUsername()));
IPage<GetAdministerPageVO> page1 = this.baseMapper.getAdministerPage(page,administerPageDTO.getListItem(),administerPageDTO.getUsername());
List<GetAdministerPageVO> records = page1.getRecords();
for (GetAdministerPageVO getAdministerPageVO : records){
List<AdministerTrackMappingDO> administerTrackMappingDOS = administerTrackMappingDAO.selectList(new QueryWrapper<AdministerTrackMappingDO>()
.lambda()
.eq(AdministerTrackMappingDO::getAdministerId,getAdministerPageVO.getId()));
getAdministerPageVO.setAdministerTrackMappingDOS(administerTrackMappingDOS);
List<PermissionVO> list = permissionsService.getPermissionById(getAdministerPageVO.getId());
List<PermissionVO> treeList = new ArrayList();
list.forEach(permissions -> {
if (permissions.getParentId() == null) {
treeList.add(permissions);
}
list.forEach(p -> {
if (p.getParentId() != null) {
if (p.getParentId().equals(permissions.getId())) {
if (permissions.getChildNodeList() == null) {
permissions.setChildNodeList(new ArrayList<>());
}
permissions.getChildNodeList().add(p);
}
}
});
});
getAdministerPageVO.setAdministerPermissionDOS(treeList);
}
return page1;
}
@Override
public void updateAdminister(AdministerDO administerDO){
this.baseMapper.updateAdminister(administerDO);
}
}
package com.zhongzhi.service.impl;
import com.zhongzhi.dto.administer.AdministerTracksDTO;
import com.zhongzhi.model.AdministerTrackMappingDO;
import com.zhongzhi.dao.AdministerTrackMappingDAO;
import com.zhongzhi.model.ProjectTrackDO;
import com.zhongzhi.service.AdministerTrackMappingService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* <p>
* 赛道管理员映射表 服务实现类
* </p>
*
* @author DengMin
* @since 2025-03-28
*/
@Service
public class AdministerTrackMappingServiceImpl extends ServiceImpl<AdministerTrackMappingDAO, AdministerTrackMappingDO> implements AdministerTrackMappingService {
@Override
public List<ProjectTrackDO> administerTracks(AdministerTracksDTO administerTracksDTO){
return this.baseMapper.administerTracks(administerTracksDTO.getUserId());
}
}
......@@ -4,8 +4,6 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhongzhi.common.configure.DbContextHolder;
import com.zhongzhi.common.constant.DBTypeEnum;
import com.zhongzhi.common.constant.Platform;
import com.zhongzhi.common.constant.ProjectSchedule;
import com.zhongzhi.common.constant.ProjectStatus;
......@@ -13,9 +11,12 @@ import com.zhongzhi.common.exception.HttpException;
import com.zhongzhi.common.utils.*;
import com.zhongzhi.dao.*;
import com.zhongzhi.dto.college.*;
import com.zhongzhi.dto.projectJudge.ImportJudge;
import com.zhongzhi.model.*;
import com.zhongzhi.service.CollegesDictService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhongzhi.service.ProjectScheduleRecordService;
import com.zhongzhi.service.ProjectService;
import com.zhongzhi.vo.ExcelFieldVO;
import com.zhongzhi.vo.college.*;
import org.apache.commons.lang3.StringUtils;
......@@ -41,6 +42,9 @@ import java.util.*;
public class CollegesDictServiceImpl extends ServiceImpl<CollegesDictDAO, CollegesDictDO> implements CollegesDictService {
@Autowired
private ProjectService projectService;
@Autowired
private MatchCollegePdfMapper matchCollegePdfMapper;
@Autowired
......@@ -62,25 +66,15 @@ public class CollegesDictServiceImpl extends ServiceImpl<CollegesDictDAO, Colleg
private CollegesDictDAO collegesDictDAO;
public List<GetCollegeInfoVO> getCollegeInfo(GetCollegesListDTO getCollegesListDTO){
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.getCollegeInfo(getCollegesListDTO.getName(),getCollegesListDTO.getEducation(),getCollegesListDTO.getSceneId());
}
public List<GetCollegeInfoVO> getSceneCollegeInfo(GetCollegesListDTO getCollegesListDTO){
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.getSceneCollegeInfo(getCollegesListDTO.getName(),getCollegesListDTO.getEducation(),getCollegesListDTO.getSceneId());
return this.baseMapper.getCollegeInfo(getCollegesListDTO.getName());
}
@Override
@Transactional(rollbackFor = Exception.class)
public CollegesVO login(LoginDTO loginDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
CollegesVO collegesVO = new CollegesVO();
CollegesDictDO collegesDict = this.baseMapper.selectOne(new QueryWrapper<CollegesDictDO>().lambda()
.eq(CollegesDictDO::getAccount, loginDTO.getAccount())
.eq(CollegesDictDO::getName,"上海电子信息职业技术学院"));
.eq(CollegesDictDO::getAccount, loginDTO.getAccount()));
if (collegesDict == null) {
throw new HttpException(10060);
}
......@@ -107,7 +101,6 @@ public class CollegesDictServiceImpl extends ServiceImpl<CollegesDictDAO, Colleg
@Override
public IPage getCollegesPage(CollegesPageDTO collegesPageDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
Page page = new Page(collegesPageDTO.getPageNo(), collegesPageDTO.getPageSize());
IPage<CollegePageVO> iPage = this.baseMapper.listPage(page, collegesPageDTO.getName());
return iPage;
......@@ -115,8 +108,6 @@ public class CollegesDictServiceImpl extends ServiceImpl<CollegesDictDAO, Colleg
@Override
public void createColleges(CollegesDictDO collegesDictDO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
CollegesDictDO collegesDict = this.baseMapper.selectOne(new QueryWrapper<CollegesDictDO>().lambda()
.eq(CollegesDictDO::getAccount, collegesDictDO.getAccount()));
if (collegesDict != null) {
......@@ -210,7 +201,7 @@ public class CollegesDictServiceImpl extends ServiceImpl<CollegesDictDAO, Colleg
IPage<AwardedListVO> iPage = this.baseMapper.getAwardedList(new Page<>(awardedListDTO.getPageNo(), awardedListDTO.getPageSize()),
awardedListDTO.getName());
for (AwardedListVO record : iPage.getRecords()) {
List<ProjectDO> list = projectDAO.getList(awardedListDTO.getMatchId(), record.getName(), awardedListDTO.getProjectGroup());
List<ProjectDO> list = projectService.getList(awardedListDTO.getMatchId(), record.getName(), awardedListDTO.getProjectGroup());
if (list != null && list.size() > 0) {
Integer schoolCompetitionNum = 0;
Integer rematchNum = 0;
......@@ -272,7 +263,7 @@ public class CollegesDictServiceImpl extends ServiceImpl<CollegesDictDAO, Colleg
List<AwardedListVO> listAll = this.baseMapper.getAwardedListAll();
for (AwardedListVO awardedListVO : listAll) {
List<ProjectDO> list = projectDAO.getList(awardedListDTO.getMatchId(), awardedListVO.getName(), awardedListDTO.getProjectGroup());
List<ProjectDO> list = projectService.getList(awardedListDTO.getMatchId(), awardedListVO.getName(), awardedListDTO.getProjectGroup());
Integer schoolCompetitionNum = 0;
Integer rematchNum = 0;
Integer finalNum = 0;
......
package com.zhongzhi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zhongzhi.common.constant.RoleType;
import com.zhongzhi.common.exception.HttpException;
import com.zhongzhi.common.utils.ConstantUtils;
import com.zhongzhi.dao.DrawLotsGroupItemsMapper;
import com.zhongzhi.dao.DrawLotsGroupJudgesMapper;
import com.zhongzhi.model.DrawLotGroupDictDO;
import com.zhongzhi.dao.DrawLotGroupDictMapper;
import com.zhongzhi.model.DrawLotsGroupItemsDO;
import com.zhongzhi.model.DrawLotsGroupJudgesDO;
import com.zhongzhi.service.DrawLotGroupDictService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhongzhi.vo.drawlots.AllGroupsVO;
import com.zhongzhi.vo.drawlots.GroupJudgesVO;
import com.zhongzhi.vo.drawlots.SceneGroupsVO;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
/**
* <p>
* 服务实现类
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@Service
public class DrawLotGroupDictServiceImpl extends ServiceImpl<DrawLotGroupDictMapper, DrawLotGroupDictDO> implements DrawLotGroupDictService {
@Autowired
private DrawLotsGroupJudgesMapper drawLotsGroupJudgesMapper;
@Autowired
private DrawLotsGroupItemsMapper drawLotsGroupItemsMapper;
@Override
public List<AllGroupsVO> allGroups(DrawLotGroupDictDO drawLotGroupDictDO) {
List<AllGroupsVO> result = new ArrayList<>();
List<DrawLotGroupDictDO> drawLotGroupDictDOS = this.baseMapper.selectList(new QueryWrapper<DrawLotGroupDictDO>()
.lambda()
.eq(DrawLotGroupDictDO::getSceneId, drawLotGroupDictDO.getSceneId()));
for (DrawLotGroupDictDO dlgd : drawLotGroupDictDOS){
AllGroupsVO allGroupsVO = new AllGroupsVO();
BeanUtils.copyProperties(dlgd,allGroupsVO);
//组长
List<GroupJudgesVO> leader = this.baseMapper.groupJudges(dlgd.getId(), RoleType.TEAMLEADER);
allGroupsVO.setLeader(leader);
//成员
List<GroupJudgesVO> member = this.baseMapper.groupJudges(dlgd.getId(), RoleType.TEAMMEMBER);
allGroupsVO.setMember(member);
result.add(allGroupsVO);
}
return result;
}
@Override
@Transactional(rollbackFor = Exception.class)
public String addGroup(DrawLotGroupDictDO drawLotGroupDictDO) {
int count = this.baseMapper.selectCount(new QueryWrapper<DrawLotGroupDictDO>()
.lambda()
.eq(DrawLotGroupDictDO::getSceneId, drawLotGroupDictDO.getSceneId())
.eq(DrawLotGroupDictDO::getGroupName, drawLotGroupDictDO.getGroupName()));
if (count > 0) {
throw new HttpException(10035);
}
this.baseMapper.insert(drawLotGroupDictDO);
return ConstantUtils.ADD_SUCCESS;
}
@Override
@Transactional(rollbackFor = Exception.class)
public String updateGroup(DrawLotGroupDictDO drawLotGroupDictDO) {
int count = this.baseMapper.selectCount(new QueryWrapper<DrawLotGroupDictDO>()
.lambda()
.eq(DrawLotGroupDictDO::getSceneId, drawLotGroupDictDO.getSceneId())
.eq(DrawLotGroupDictDO::getGroupName, drawLotGroupDictDO.getGroupName())
.ne(DrawLotGroupDictDO::getId, drawLotGroupDictDO.getId()));
if (count > 0) {
throw new HttpException(10035);
}
this.baseMapper.updateById(drawLotGroupDictDO);
return ConstantUtils.SUCCESS_UPDATE;
}
@Override
@Transactional(rollbackFor = Exception.class)
public String deleteGroup(DrawLotGroupDictDO drawLotGroupDictDO) {
//删除专家
drawLotsGroupJudgesMapper.delete(new QueryWrapper<DrawLotsGroupJudgesDO>()
.lambda()
.eq(DrawLotsGroupJudgesDO::getGroupId,drawLotGroupDictDO.getId()));
//删除组别
drawLotsGroupItemsMapper.delete(new QueryWrapper<DrawLotsGroupItemsDO>()
.lambda()
.eq(DrawLotsGroupItemsDO::getGroupId,drawLotGroupDictDO.getId()));
this.baseMapper.deleteById(drawLotGroupDictDO.getId());
return ConstantUtils.DELETE_SUCCESS;
}
@Override
public List<SceneGroupsVO> sceneGroups(DrawLotGroupDictDO drawLotGroupDictDO) {
List<SceneGroupsVO> result = new ArrayList<>();
List<DrawLotGroupDictDO> drawLotGroupDictDOS = this.baseMapper.selectList(new QueryWrapper<DrawLotGroupDictDO>()
.lambda()
.eq(DrawLotGroupDictDO::getSceneId,drawLotGroupDictDO.getSceneId())
.orderByAsc(DrawLotGroupDictDO::getId));
for (DrawLotGroupDictDO drawLotGroupDictDO1 : drawLotGroupDictDOS){
SceneGroupsVO sceneGroupsVO = new SceneGroupsVO();
sceneGroupsVO.setGroupId(drawLotGroupDictDO1.getId());
sceneGroupsVO.setGroupName(drawLotGroupDictDO1.getGroupName());
//编号
List<Integer> integer = this.baseMapper.groupNums(drawLotGroupDictDO1.getId());
sceneGroupsVO.setGroupNums(integer);
result.add(sceneGroupsVO);
}
return result;
}
}
package com.zhongzhi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhongzhi.common.exception.HttpException;
import com.zhongzhi.common.utils.ConstantUtils;
import com.zhongzhi.dao.DrawLotGroupDictMapper;
import com.zhongzhi.dao.DrawLotsGroupItemsMapper;
import com.zhongzhi.dao.ProjectDAO;
import com.zhongzhi.dto.drawlots.AddProjectToSceneDTO;
import com.zhongzhi.dto.drawlots.AllGroupItemsDTO;
import com.zhongzhi.dto.drawlots.CollegeProjectsDTO;
import com.zhongzhi.dto.drawlots.MatchProjectsDTO;
import com.zhongzhi.model.DrawLotGroupDictDO;
import com.zhongzhi.model.DrawLotsGroupItemsDO;
import com.zhongzhi.model.ProjectDO;
import com.zhongzhi.service.DrawLotsGroupItemsService;
import com.zhongzhi.vo.drawlots.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
/**
* <p>
* 服务实现类
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@Service
public class DrawLotsGroupItemsServiceImpl extends ServiceImpl<DrawLotsGroupItemsMapper, DrawLotsGroupItemsDO> implements DrawLotsGroupItemsService {
@Autowired
private DrawLotGroupDictMapper drawLotGroupDictMapper;
@Autowired
private ProjectDAO projectDAO;
@Override
public IPage<AllGroupItemsVO> allGroupItems(AllGroupItemsDTO allGroupItemsDTO) {
Page page = new Page(allGroupItemsDTO.getPageNum(), allGroupItemsDTO.getPageSize());
return this.baseMapper.allGroupItems(page,allGroupItemsDTO.getSceneId(), allGroupItemsDTO.getProjectName(), allGroupItemsDTO.getCollege());
}
@Override
public String deleteGroupItem(DrawLotsGroupItemsDO drawLotsGroupItemsDO) {
this.baseMapper.deleteById(drawLotsGroupItemsDO.getId());
return ConstantUtils.DELETE_SUCCESS;
}
@Override
public List<MatchProjectsVO> matchProjects(MatchProjectsDTO matchProjectsDTO) {
return this.baseMapper.matchProjects(matchProjectsDTO.getMatchId(), matchProjectsDTO.getProjectSchedule());
}
@Override
public IPage<CollegeProjectsVO> collegeProjects(CollegeProjectsDTO collegeProjectsDTO) {
Page page = new Page(collegeProjectsDTO.getPageNum(), collegeProjectsDTO.getPageSize());
return this.baseMapper.collegeProjects(page, collegeProjectsDTO.getSceneId(), collegeProjectsDTO.getCollege(), collegeProjectsDTO.getProjectSchedule(), collegeProjectsDTO.getProjectProgress());
}
@Override
@Transactional(rollbackFor = Exception.class)
public DrawlotsVO drawlots(DrawLotsGroupItemsDO drawLotsGroupItemsDO) {
DrawlotsVO drawlotsVO = new DrawlotsVO();
//判断是否已经抽过了
DrawLotsGroupItemsDO dlgid = this.baseMapper.selectById(drawLotsGroupItemsDO.getProjectId());
ProjectDO projectDO = projectDAO.selectById(dlgid.getProjectId());
if (null != dlgid.getGroupId()){
throw new HttpException(10037);
}
//开始抽签
Integer integer = this.baseMapper.sceneCollege(drawLotsGroupItemsDO.getSceneId(),projectDO.getCollege());
//找到还剩余的坑位--组别
List<DrawLotGroupDictDO> drawLotGroupDictDOS = this.baseMapper.noFullGroup(drawLotsGroupItemsDO.getSceneId(),projectDO.getCollege(),integer);
if (drawLotGroupDictDOS.size() == 0) {
throw new HttpException(10036);
}
//随机一个组别
DrawLotGroupDictDO drawLotGroupDictDO = drawLotGroupDictDOS.get(new Random().nextInt(drawLotGroupDictDOS.size()));
List<Integer> array = new ArrayList<>();
for (int i = 1 ; i <= drawLotGroupDictDO.getProjectCnt() ; i++){
array.add(i);
}
//这个组别已经随机到的num
List<Integer> exists = this.baseMapper.existNum(drawLotGroupDictDO.getId());
List<Integer> unselectedElements = findUnselectedElements(array, exists);
DrawLotGroupDictDO groupDictDO = drawLotGroupDictMapper.selectById(drawLotGroupDictDO.getId());
drawlotsVO.setGroupName(groupDictDO.getGroupName());
drawlotsVO.setGroupNum(unselectedElements.get(new Random().nextInt(unselectedElements.size())));
DrawLotsGroupItemsDO drawLotsGroupItemsDO1 = this.baseMapper.selectById(drawLotsGroupItemsDO.getProjectId());
drawLotsGroupItemsDO1.setGroupId(drawLotGroupDictDO.getId());
drawLotsGroupItemsDO1.setGroupNum(drawlotsVO.getGroupNum());
this.baseMapper.updateById(drawLotsGroupItemsDO1);
return drawlotsVO;
}
@Override
public List<GroupProjectScreenVO> groupProjectScreen(DrawLotsGroupItemsDO drawLotsGroupItemsDO) {
List<GroupProjectScreenVO> groupProjectScreenVOS = new ArrayList<>();
// 查每个组别
List<DrawLotGroupDictDO> drawLotGroupDictDOS = drawLotGroupDictMapper.selectList(new QueryWrapper<DrawLotGroupDictDO>()
.lambda()
.eq(DrawLotGroupDictDO::getSceneId, drawLotsGroupItemsDO.getSceneId())
.orderByAsc(DrawLotGroupDictDO::getId));
for (DrawLotGroupDictDO dlgd : drawLotGroupDictDOS) {
GroupProjectScreenVO groupProjectScreenVO = new GroupProjectScreenVO();
groupProjectScreenVO.setId(dlgd.getId());
groupProjectScreenVO.setGroupName(dlgd.getGroupName());
//组别下的每个项目
List<GroupProjectInfoVO> groupProjectInfoVOS = this.baseMapper.groupProjectInfo(dlgd.getId());
groupProjectScreenVO.setGroupProjectInfoVOS(groupProjectInfoVOS);
groupProjectScreenVOS.add(groupProjectScreenVO);
}
return groupProjectScreenVOS;
}
@Override
public String addProjectToScene(AddProjectToSceneDTO addProjectToSceneDTO) {
List<Long> ids = addProjectToSceneDTO.getProjectIds();
for (Long id : ids) {
DrawLotsGroupItemsDO drawLotsGroupItemsDO = new DrawLotsGroupItemsDO();
drawLotsGroupItemsDO.setProjectId(id);
drawLotsGroupItemsDO.setSceneId(addProjectToSceneDTO.getSceneId());
this.baseMapper.insert(drawLotsGroupItemsDO);
}
return ConstantUtils.ADD_SUCCESS;
}
public static <T> List<T> findUnselectedElements(List<T> array, List<T> selected) {
// 使用集合来记录已选择的元素,提升查找效率
Set<T> selectedSet = new HashSet<>(selected);
// 存储未被选中的元素
List<T> result = new ArrayList<>();
// 遍历数组,找出未被选中的元素
for (T element : array) {
if (!selectedSet.contains(element)) {
result.add(element);
}
}
return result;
}
}
package com.zhongzhi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhongzhi.common.constant.RoleType;
import com.zhongzhi.common.exception.HttpException;
import com.zhongzhi.common.utils.ConstantUtils;
import com.zhongzhi.dao.DrawLotGroupDictMapper;
import com.zhongzhi.dao.DrawLotsGroupItemsMapper;
import com.zhongzhi.dto.drawlots.AddJudgeDTO;
import com.zhongzhi.dto.drawlots.DrawLoginDTO;
import com.zhongzhi.dto.drawlots.JudgeScoreScreenDTO;
import com.zhongzhi.dto.judge.MatchJudgesDTO;
import com.zhongzhi.model.*;
import com.zhongzhi.dao.DrawLotsGroupJudgesMapper;
import com.zhongzhi.service.DrawLotsGroupJudgesService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhongzhi.vo.drawlots.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import static com.zhongzhi.service.impl.DrawLotsGroupItemsServiceImpl.findUnselectedElements;
/**
* <p>
* 赛组评委表 服务实现类
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@Service
public class DrawLotsGroupJudgesServiceImpl extends ServiceImpl<DrawLotsGroupJudgesMapper, DrawLotsGroupJudgesDO> implements DrawLotsGroupJudgesService {
@Autowired
private DrawLotsGroupItemsMapper drawLotsGroupItemsMapper;
@Autowired
private DrawLotGroupDictMapper drawLotGroupDictMapper;
@Override
public IPage<MatchJudgesVO> matchJudges(MatchJudgesDTO matchJudgesDTO) {
Page page = new Page(matchJudgesDTO.getPageNum(), matchJudgesDTO.getPageSize());
return this.baseMapper.matchJudges(page, matchJudgesDTO.getSceneId(), matchJudgesDTO.getUserName(), matchJudgesDTO.getExpectorType(), matchJudgesDTO.getRoleType());
}
@Override
public IPage<SelectJudgesVO> selectJudges(MatchJudgesDTO matchJudgesDTO) {
Page page = new Page(matchJudgesDTO.getPageNum(), matchJudgesDTO.getPageSize());
return this.baseMapper.selectJudges(page, matchJudgesDTO.getSceneId(), matchJudgesDTO.getUserName());
}
@Override
public String removeJudge(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO) {
this.baseMapper.deleteById(drawLotsGroupJudgesDO.getId());
return ConstantUtils.DELETE_SUCCESS;
}
@Override
public String updateJudge(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO) {
this.baseMapper.updateById(drawLotsGroupJudgesDO);
return ConstantUtils.SUCCESS_UPDATE;
}
@Override
public String addJudge(AddJudgeDTO addJudgeDTO) {
List<Long> judgeIds = addJudgeDTO.getJudgeIds();
for (Long judgeId : judgeIds) {
DrawLotsGroupJudgesDO drawLotsGroupJudgesDO = new DrawLotsGroupJudgesDO();
drawLotsGroupJudgesDO.setJudgeId(judgeId);
drawLotsGroupJudgesDO.setSceneId(addJudgeDTO.getSceneId());
this.baseMapper.insert(drawLotsGroupJudgesDO);
}
return ConstantUtils.ADD_SUCCESS;
}
@Override
public List<DrawLotsGroupJudgesDO> selectNoDrawLotsJudge(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO) {
return this.baseMapper.selectList(new QueryWrapper<DrawLotsGroupJudgesDO>()
.lambda()
.eq(DrawLotsGroupJudgesDO::getSceneId, drawLotsGroupJudgesDO.getSceneId())
.eq(DrawLotsGroupJudgesDO::getRoleType, drawLotsGroupJudgesDO.getRoleType())
.isNull(DrawLotsGroupJudgesDO::getGroupId));
}
@Override
public String assignJudge(AddJudgeDTO addJudgeDTO) {
List<Long> ids = addJudgeDTO.getIds();
for (Long id : ids) {
DrawLotsGroupJudgesDO drawLotsGroupJudgesDO = this.baseMapper.selectById(id);
drawLotsGroupJudgesDO.setGroupId(addJudgeDTO.getGroupId());
drawLotsGroupJudgesDO.setExpectorType(addJudgeDTO.getExpectorType());
drawLotsGroupJudgesDO.setRoleType(addJudgeDTO.getRoleType());
this.baseMapper.updateById(drawLotsGroupJudgesDO);
}
return ConstantUtils.SUCCESS_UPDATE;
}
@Override
@Transactional(rollbackFor = Exception.class)
public DrawlotsVO drawlots(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO) {
DrawlotsVO drawlotsVO = new DrawlotsVO();
//判断是否已经抽过了
int count = this.baseMapper.selectCount(new QueryWrapper<DrawLotsGroupJudgesDO>()
.lambda()
.eq(DrawLotsGroupJudgesDO::getSceneId, drawLotsGroupJudgesDO.getSceneId())
.eq(DrawLotsGroupJudgesDO::getJudgeId, drawLotsGroupJudgesDO.getJudgeId())
.isNotNull(DrawLotsGroupJudgesDO::getGroupId));
if (count > 0) {
throw new HttpException(10038);
}
//当前老师是什么角色
DrawLotsGroupJudgesDO judge = this.baseMapper.selectOne(new QueryWrapper<DrawLotsGroupJudgesDO>()
.lambda()
.eq(DrawLotsGroupJudgesDO::getSceneId,drawLotsGroupJudgesDO.getSceneId())
.eq(DrawLotsGroupJudgesDO::getJudgeId,drawLotsGroupJudgesDO.getJudgeId()));
List<DrawLotGroupDictDO> drawLotGroupDictDOS = new ArrayList<>();
//判断是组长抽还是组员抽
if (RoleType.TEAMLEADER.equals(judge.getRoleType())) {
//返回还没有组长的组
drawLotGroupDictDOS = this.baseMapper.noLeaderGroup(drawLotsGroupJudgesDO.getSceneId());
} else {
//返回专家类型还没有满员的组 expectorType
drawLotGroupDictDOS = this.baseMapper.noMemberGroup(drawLotsGroupJudgesDO.getSceneId(), judge.getExpectorType());
}
if (drawLotGroupDictDOS.size() == 0) {
throw new HttpException(10036);
}
//随机一个组别
DrawLotGroupDictDO drawLotGroupDictDO = drawLotGroupDictDOS.get(new Random().nextInt(drawLotGroupDictDOS.size()));
//这个组别所有的编号
List<Integer> allNum = this.baseMapper.allNum(drawLotGroupDictDO.getId());
//这个组已经随机的编号
List<Integer> exists = this.baseMapper.existNum(drawLotGroupDictDO.getId());
List<Integer> unselectedElements = findUnselectedElements(allNum, exists);
judge.setGroupNum(unselectedElements.get(new Random().nextInt(unselectedElements.size())));
judge.setGroupId(drawLotGroupDictDO.getId());
this.baseMapper.updateById(judge);
drawlotsVO.setGroupName(drawLotGroupDictDO.getGroupName());
drawlotsVO.setGroupNum(judge.getGroupNum());
drawlotsVO.setExpectorType(judge.getExpectorType());
drawlotsVO.setRoleType(judge.getRoleType());
return drawlotsVO;
}
@Override
public List<JudgeScreenVO> judgeScreen(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO) {
List<JudgeScreenVO> judgeScreenVOS = new ArrayList<>();
// 查每个组别
List<DrawLotGroupDictDO> drawLotGroupDictDOS = drawLotGroupDictMapper.selectList(new QueryWrapper<DrawLotGroupDictDO>()
.lambda()
.eq(DrawLotGroupDictDO::getSceneId, drawLotsGroupJudgesDO.getSceneId())
.orderByAsc(DrawLotGroupDictDO::getId));
for (DrawLotGroupDictDO dlgd : drawLotGroupDictDOS) {
JudgeScreenVO judgeScreenVO = new JudgeScreenVO();
judgeScreenVO.setId(dlgd.getId());
judgeScreenVO.setGroupName(dlgd.getGroupName());
//组别下的评委
List<DrawJudgeInfoVO> drawJudgeInfoVOS = this.baseMapper.drawJudgeInfo(dlgd.getId());
judgeScreenVO.setGroupProjectInfoVOS(drawJudgeInfoVOS);
judgeScreenVOS.add(judgeScreenVO);
}
return judgeScreenVOS;
}
@Override
public LoginVO login(DrawLoginDTO drawLoginDTO) {
return this.baseMapper.login(drawLoginDTO.getName());
}
@Override
public List<JudgeScoreScreenVO> judgeScoreScreen(JudgeScoreScreenDTO judgeScoreScreenDTO) {
List<JudgeScoreScreenVO> result = new ArrayList<>();
//项目编号
List<Integer> integers = judgeScoreScreenDTO.getGroupNums();
DrawLotGroupDictDO drawLotGroupDictDO = drawLotGroupDictMapper.selectById(judgeScoreScreenDTO.getGroupId());
for (Integer integer : integers) {
JudgeScoreScreenVO judgeScoreScreenVO = new JudgeScoreScreenVO();
judgeScoreScreenVO.setGroupName(drawLotGroupDictDO.getGroupName());
judgeScoreScreenVO.setGroupNum(integer);
List<ScoreScreenVO> scoreScreenVOS = this.baseMapper.judgeScoreScreen(judgeScoreScreenDTO.getGroupId(), integer);
judgeScoreScreenVO.setScoreScreenVOS(scoreScreenVOS);
DrawLotsGroupItemsDO drawLotsGroupItemsDO = drawLotsGroupItemsMapper.selectOne(new QueryWrapper<DrawLotsGroupItemsDO>()
.lambda()
.eq(DrawLotsGroupItemsDO::getGroupId, judgeScoreScreenDTO.getGroupId())
.eq(DrawLotsGroupItemsDO::getGroupNum, integer));
judgeScoreScreenVO.setTotalScore(drawLotsGroupItemsDO.getTotalScore());
result.add(judgeScoreScreenVO);
}
return result;
}
@Override
public LeaderFullVO leaderFull(DrawLotGroupDictDO drawLotGroupDictDO) {
LeaderFullVO leaderFullVO = new LeaderFullVO();
//判断组长有没有抽齐
int cnt = this.baseMapper.selectCount(new QueryWrapper<DrawLotsGroupJudgesDO>()
.lambda()
.eq(DrawLotsGroupJudgesDO::getSceneId, drawLotGroupDictDO.getSceneId())
.eq(DrawLotsGroupJudgesDO::getRoleType, RoleType.TEAMLEADER)
.isNull(DrawLotsGroupJudgesDO::getGroupId));
if (cnt > 0) {
leaderFullVO.setFullFlag(false);
}else {
leaderFullVO.setFullFlag(true);
}
return leaderFullVO;
}
@Override
public JudgeFullInfoVO judgeInfo(DrawLotsJudgeNumDO drawLotsJudgeNumDO) {
return this.baseMapper.judgeInfo(drawLotsJudgeNumDO.getGroupId(),drawLotsJudgeNumDO.getGroupNum());
}
}
package com.zhongzhi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zhongzhi.common.constant.OpenStatus;
import com.zhongzhi.common.exception.HttpException;
import com.zhongzhi.common.utils.ConstantUtils;
import com.zhongzhi.dao.DrawLotGroupDictMapper;
import com.zhongzhi.dao.DrawLotsGroupItemsMapper;
import com.zhongzhi.model.DrawLotGroupDictDO;
import com.zhongzhi.model.DrawLotsGroupItemsDO;
import com.zhongzhi.model.DrawLotsScenesDO;
import com.zhongzhi.dao.DrawLotsScenesMapper;
import com.zhongzhi.service.DrawLotsScenesService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhongzhi.vo.project.AllMatchScenesVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* <p>
* 服务实现类
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@Service
public class DrawLotsScenesServiceImpl extends ServiceImpl<DrawLotsScenesMapper, DrawLotsScenesDO> implements DrawLotsScenesService {
@Autowired
private DrawLotGroupDictMapper drawLotGroupDictMapper;
@Autowired
private DrawLotsGroupItemsMapper drawLotsGroupItemsMapper;
@Override
public List<AllMatchScenesVO> allMatchScenes(DrawLotsScenesDO drawLotsScenesDO) {
List<AllMatchScenesVO> allMatchScenesVOS = this.baseMapper.allMatchScenes(drawLotsScenesDO.getMatchId(), drawLotsScenesDO.getOpenStatus());
for (AllMatchScenesVO allMatchScenesVO : allMatchScenesVOS){
//小组项目数量
int projectCnt = drawLotsGroupItemsMapper.selectCount(new QueryWrapper<DrawLotsGroupItemsDO>()
.lambda()
.eq(DrawLotsGroupItemsDO::getSceneId,allMatchScenesVO.getId()));
allMatchScenesVO.setProjectCnt(projectCnt);
//赛组数量
int groupCnt = drawLotGroupDictMapper.selectCount(new QueryWrapper<DrawLotGroupDictDO>()
.lambda()
.eq(DrawLotGroupDictDO::getSceneId,allMatchScenesVO.getId()));
allMatchScenesVO.setGroupCnt(groupCnt);
//评委数量
allMatchScenesVO.setJudgeCnt(0);
//排位项目数量
allMatchScenesVO.setRankCnt(0);
}
return allMatchScenesVOS;
}
@Override
public String addMatchScene(DrawLotsScenesDO drawLotsScenesDO) {
int count = this.baseMapper.selectCount(new QueryWrapper<DrawLotsScenesDO>()
.lambda()
.eq(DrawLotsScenesDO::getSceneName,drawLotsScenesDO.getSceneName())
.eq(DrawLotsScenesDO::getMatchId, drawLotsScenesDO.getMatchId()));
if (count > 0) {
throw new HttpException(10034);
}
drawLotsScenesDO.setOpenStatus(OpenStatus.TODO);
drawLotsScenesDO.setRankStatus("未排位");
this.baseMapper.insert(drawLotsScenesDO);
return ConstantUtils.ADD_SUCCESS;
}
@Override
public String updateMatchScene(DrawLotsScenesDO drawLotsScenesDO) {
int count = this.baseMapper.selectCount(new QueryWrapper<DrawLotsScenesDO>()
.lambda()
.ne(DrawLotsScenesDO::getMatchId, drawLotsScenesDO.getMatchId())
.ne(DrawLotsScenesDO::getId, drawLotsScenesDO.getId()));
if (count > 0) {
throw new HttpException(10034);
}
this.baseMapper.updateById(drawLotsScenesDO);
return ConstantUtils.SUCCESS_UPDATE;
}
@Override
public String deleteMatchScene(DrawLotsScenesDO drawLotsScenesDO) {
this.baseMapper.deleteById(drawLotsScenesDO.getId());
return ConstantUtils.DELETE_SUCCESS;
}
}
package com.zhongzhi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zhongzhi.common.constant.RoleType;
import com.zhongzhi.common.constant.SubmitStatus;
import com.zhongzhi.common.utils.ConstantUtils;
import com.zhongzhi.dao.DrawLotGroupDictMapper;
import com.zhongzhi.dao.DrawLotsGroupItemsMapper;
import com.zhongzhi.dao.DrawLotsScenesMapper;
import com.zhongzhi.dto.drawlots.GroupScoresDTO;
import com.zhongzhi.model.*;
import com.zhongzhi.dao.DrawLotsScoresMapper;
import com.zhongzhi.service.DrawLotsScoresService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhongzhi.vo.drawlots.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/**
* <p>
* 服务实现类
* </p>
*
* @author DengMin
* @since 2025-07-04
*/
@Service
public class DrawLotsScoresServiceImpl extends ServiceImpl<DrawLotsScoresMapper, DrawLotsScoresDO> implements DrawLotsScoresService {
@Autowired
private DrawLotsGroupItemsMapper drawLotsGroupItemsMapper;
@Autowired
private DrawLotGroupDictMapper drawLotGroupDictMapper;
@Autowired
private DrawLotsScenesMapper drawLotsScenesMapper;
@Override
public List<GroupScoresVO> groupScores(GroupScoresDTO groupScoresDTO) {
List<GroupScoresVO> groupScoresVOS = this.baseMapper.groupScores(groupScoresDTO.getSceneId(), groupScoresDTO.getProjectName(), groupScoresDTO.getGroupId());
for (GroupScoresVO groupScoresVO : groupScoresVOS) {
//负责人
String leader = "";
List<GroupJudgeScoresVO> groupJudgeScoresVOS = this.baseMapper.groupJudgeScores( groupScoresVO.getGroupId(), groupScoresVO.getId());
for (GroupJudgeScoresVO groupJudgeScoresVO : groupJudgeScoresVOS) {
if (RoleType.TEAMLEADER.equals(groupJudgeScoresVO.getRoleType())) {
leader = groupJudgeScoresVO.getUsername();
}
}
//负责人
groupScoresVO.setLeader(leader);
//评分明细
groupScoresVO.setGroupJudgeScoresVOS(groupJudgeScoresVOS);
DrawLotsGroupItemsDO drawLotsGroupItemsDO = drawLotsGroupItemsMapper.selectOne(new QueryWrapper<DrawLotsGroupItemsDO>()
.lambda()
.eq(DrawLotsGroupItemsDO::getSceneId, groupScoresDTO.getSceneId())
.eq(DrawLotsGroupItemsDO::getGroupId, groupScoresVO.getGroupId())
.eq(DrawLotsGroupItemsDO::getProjectId, groupScoresVO.getId()));
//总分==平均分 小数保留两位
if (null != drawLotsGroupItemsDO){
groupScoresVO.setTotalScore(drawLotsGroupItemsDO.getTotalScore());
}
}
return groupScoresVOS;
}
@Override
@Transactional(rollbackFor = Exception.class)
public String submit(DrawLotsScoresDO drawLotsScoresDO) {
//判断之前有没有存过,有的话更新,没的话新增
DrawLotsScoresDO dlsd = this.baseMapper.selectOne(new QueryWrapper<DrawLotsScoresDO>()
.lambda()
.eq(DrawLotsScoresDO::getSceneId, drawLotsScoresDO.getSceneId())
.eq(DrawLotsScoresDO::getGroupId, drawLotsScoresDO.getGroupId())
.eq(DrawLotsScoresDO::getJudgeId, drawLotsScoresDO.getJudgeId())
.eq(DrawLotsScoresDO::getProjectId, drawLotsScoresDO.getProjectId()));
if (null == dlsd) {
//之前没有评过
this.baseMapper.insert(drawLotsScoresDO);
} else {
dlsd.setSubmitStatus(drawLotsScoresDO.getSubmitStatus());
dlsd.setScore(drawLotsScoresDO.getScore());
this.baseMapper.updateById(dlsd);
}
if (SubmitStatus.DONE.equals(drawLotsScoresDO.getSubmitStatus())) {
//已提交的话,算平均分
//个数
int count = 0;
//总分
BigDecimal total = BigDecimal.ZERO;
List<GroupJudgeScoresVO> groupJudgeScoresVOS = this.baseMapper.groupJudgeScores(drawLotsScoresDO.getGroupId(), drawLotsScoresDO.getProjectId());
for (GroupJudgeScoresVO groupJudgeScoresVO : groupJudgeScoresVOS) {
if (null != groupJudgeScoresVO.getScore()) {
count++;
total = total.add(new BigDecimal(groupJudgeScoresVO.getScore()));
}
}
DrawLotsGroupItemsDO drawLotsGroupItemsDO = drawLotsGroupItemsMapper.selectOne(new QueryWrapper<DrawLotsGroupItemsDO>()
.lambda()
.eq(DrawLotsGroupItemsDO::getSceneId, drawLotsScoresDO.getSceneId())
.eq(DrawLotsGroupItemsDO::getGroupId, drawLotsScoresDO.getGroupId())
.eq(DrawLotsGroupItemsDO::getProjectId, drawLotsScoresDO.getProjectId()));
//总分==平均分 小数保留两位
drawLotsGroupItemsDO.setTotalScore(total.divide(new BigDecimal(count), 2, RoundingMode.HALF_UP).toString());
drawLotsGroupItemsMapper.updateById(drawLotsGroupItemsDO);
}
return ConstantUtils.ADD_SUCCESS;
}
@Override
public List<QueryItemsVO> queryItems(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO) {
return this.baseMapper.queryItems(drawLotsGroupJudgesDO.getJudgeId());
}
@Override
public List<GroupRankVO> groupRank(DrawLotsGroupItemsDO drawLotsGroupItemsDO) {
return this.baseMapper.groupRank(drawLotsGroupItemsDO.getGroupId());
}
@Override
public List<RankListVO> rankList(DrawLotGroupDictDO drawLotGroupDictDO1) {
// List<RankListVO> result = new ArrayList<>();
//
// //查询所有组别
// List<DrawLotGroupDictDO> drawLotGroupDictDOS = drawLotGroupDictMapper.selectList(new QueryWrapper<DrawLotGroupDictDO>()
// .lambda()
// .eq(DrawLotGroupDictDO::getSceneId,drawLotGroupDictDO1.getSceneId())
// .orderByAsc(DrawLotGroupDictDO::getId));
//
//
// for (DrawLotGroupDictDO drawLotGroupDictDO : drawLotGroupDictDOS) {
// //每个组别取前四个
// List<RankListVO> rankListVOS = this.baseMapper.beforeHand4Project(drawLotGroupDictDO.getId());
// for (RankListVO rankListVO : rankListVOS){
// rankListVO.setLeader( this.baseMapper.groupLeader(drawLotGroupDictDO.getId()));
// }
// result.addAll(rankListVOS);
// }
return this.baseMapper.rank(drawLotGroupDictDO1.getSceneId(), null, null);
}
@Override
@Transactional(rollbackFor = Exception.class)
public List<RankListVO> rank(RankVO rankVO) {
DrawLotsScenesDO drawLotsScenesDO = drawLotsScenesMapper.selectById(rankVO.getSceneId());
if (!"已排位".equals(drawLotsScenesDO.getRankStatus())){
List<DrawLotsGroupItemsDO> drawLotsGroupItemsDOS = new ArrayList<>();
//查询所有组别
List<DrawLotGroupDictDO> drawLotGroupDictDOS = drawLotGroupDictMapper.selectList(new QueryWrapper<DrawLotGroupDictDO>()
.lambda()
.eq(DrawLotGroupDictDO::getSceneId,rankVO.getSceneId())
.orderByAsc(DrawLotGroupDictDO::getId));
for (DrawLotGroupDictDO drawLotGroupDictDO : drawLotGroupDictDOS) {
//每个组别取前四个
List<DrawLotsGroupItemsDO> rankListVOS = this.baseMapper.hand4Project(drawLotGroupDictDO.getId());
drawLotsGroupItemsDOS.addAll(rankListVOS);
}
Collections.shuffle(drawLotsGroupItemsDOS);
int count = 1 ;
for (DrawLotsGroupItemsDO drawLotsGroupItemsDO : drawLotsGroupItemsDOS){
drawLotsGroupItemsDO.setOrderNo(count++);
drawLotsGroupItemsMapper.updateById(drawLotsGroupItemsDO);
}
drawLotsScenesDO.setRankStatus("已排位");
drawLotsScenesMapper.updateById(drawLotsScenesDO); //返回排位后的顺序
}
List<RankListVO> rank = this.baseMapper.rank(rankVO.getSceneId(), rankVO.getGroupId(), rankVO.getProjectName());
return rank;
}
// @Override
// public List<RankListVO> rankItems(RankVO rankVO) {
// return this.baseMapper.rank(rankVO.getSceneId(), rankVO.getGroupId(), rankVO.getProjectName());
// }
}
package com.zhongzhi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zhongzhi.common.configure.DbContextHolder;
import com.zhongzhi.common.constant.DBTypeEnum;
import com.zhongzhi.model.MajorDictDO;
import com.zhongzhi.dao.MajorDictDAO;
import com.zhongzhi.service.MajorDictService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* <p>
* 专业字典表 服务实现类
......@@ -23,16 +17,4 @@ import java.util.List;
@Service
public class MajorDictServiceImpl extends ServiceImpl<MajorDictDAO, MajorDictDO> implements MajorDictService {
@Override
public List<MajorDictDO> getMajorList(MajorDictDO majorDictDO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.selectList(new QueryWrapper<MajorDictDO>()
.lambda()
.eq(StringUtils.isNotBlank(majorDictDO.getEducation()),MajorDictDO::getEducation,majorDictDO.getEducation())
.eq(StringUtils.isNotBlank(majorDictDO.getCode()),MajorDictDO::getCode,majorDictDO.getCode())
.like(StringUtils.isNotBlank(majorDictDO.getMajor()),MajorDictDO::getMajor,majorDictDO.getMajor()));
}
}
package com.zhongzhi.service.impl;
import com.zhongzhi.model.MatchCollegeCountDO;
import com.zhongzhi.dao.MatchCollegeCountDAO;
import com.zhongzhi.service.MatchCollegeCountService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author DengMin
* @since 2025-06-10
*/
@Service
public class MatchCollegeCountServiceImpl extends ServiceImpl<MatchCollegeCountDAO, MatchCollegeCountDO> implements MatchCollegeCountService {
}
......@@ -10,6 +10,7 @@ import com.zhongzhi.model.CollegesDictDO;
import com.zhongzhi.model.MatchCollegePdfDO;
import com.zhongzhi.model.MatchDictDO;
import com.zhongzhi.service.MatchCollegePdfService;
import com.zhongzhi.vo.project.QueryPdfStatusVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......
......@@ -3,11 +3,8 @@ package com.zhongzhi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhongzhi.common.configure.DbContextHolder;
import com.zhongzhi.common.constant.DBTypeEnum;
import com.zhongzhi.common.constant.ProjectType;
import com.zhongzhi.common.utils.DateFormatUtil;
import com.zhongzhi.dao.MatchScheduleDAO;
import com.zhongzhi.dto.match.MatchDictDTO;
import com.zhongzhi.dto.match.SelectListPageDTO;
import com.zhongzhi.model.MatchDictDO;
......@@ -15,6 +12,7 @@ import com.zhongzhi.dao.MatchDictDAO;
import com.zhongzhi.model.MatchScheduleDO;
import com.zhongzhi.service.MatchDictService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhongzhi.service.MatchScheduleService;
import com.zhongzhi.vo.match.MatchDictVO;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -35,24 +33,10 @@ import java.util.List;
public class MatchDictServiceImpl extends ServiceImpl<MatchDictDAO, MatchDictDO> implements MatchDictService {
@Autowired
private MatchScheduleDAO matchScheduleDAO;
@Override
public List<MatchDictDO> getAllMatch() {
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.selectList(new QueryWrapper<MatchDictDO>()
.lambda()
.orderByDesc(MatchDictDO::getStatus));
}
private MatchScheduleService matchScheduleService;
@Override
public MatchDictDO getMainTrackMatch() {
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.selectOne(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getMatchType, ProjectType.MAIN_TRACK)
......@@ -61,9 +45,6 @@ public class MatchDictServiceImpl extends ServiceImpl<MatchDictDAO, MatchDictDO>
@Override
public MatchDictDO getSeedTrackMatch() {
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.selectOne(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getMatchType, ProjectType.SEED_TRACK)
......@@ -72,9 +53,6 @@ public class MatchDictServiceImpl extends ServiceImpl<MatchDictDAO, MatchDictDO>
@Override
public void updateMatch(MatchDictDTO matchDictDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
MatchDictDO matchDict = this.baseMapper.selectById(matchDictDTO.getId());
MatchDictDO match = this.baseMapper.selectOne(new QueryWrapper<MatchDictDO>()
.lambda()
......@@ -92,7 +70,7 @@ public class MatchDictServiceImpl extends ServiceImpl<MatchDictDAO, MatchDictDO>
this.baseMapper.updateById(matchDictDO);
if (matchDictDTO.getSchedule() != null && matchDictDTO.getSchedule().size() > 0) {
List<MatchScheduleDO> list = matchScheduleDAO.selectList(new QueryWrapper<MatchScheduleDO>()
List<MatchScheduleDO> list = matchScheduleService.list(new QueryWrapper<MatchScheduleDO>()
.lambda()
.eq(MatchScheduleDO::getMatchId, matchDictDTO.getId()));
if (list.size() > 0) {
......@@ -101,7 +79,7 @@ public class MatchDictServiceImpl extends ServiceImpl<MatchDictDAO, MatchDictDO>
ms.getExplains().equals(matchScheduleDO.getExplains())).findAny().isPresent()) {
continue;
} else {
matchScheduleDAO.deleteById(matchScheduleDO.getId());
matchScheduleService.removeById(matchScheduleDO.getId());
}
}
}
......@@ -109,18 +87,18 @@ public class MatchDictServiceImpl extends ServiceImpl<MatchDictDAO, MatchDictDO>
for (MatchScheduleDO matchScheduleDO : matchDictDTO.getSchedule()) {
if (list.stream().filter(ms -> ms.getExplains().equals(matchScheduleDO.getExplains()) &&
DateFormatUtil.format(ms.getScheduleTime(), DateFormatUtil.FMT_sdf_yMd).equals(DateFormatUtil.format(matchScheduleDO.getScheduleTime(), DateFormatUtil.FMT_sdf_yMd))).findAny().isPresent()) {
MatchScheduleDO matchSchedule = matchScheduleDAO.selectOne(new QueryWrapper<MatchScheduleDO>()
MatchScheduleDO matchSchedule = matchScheduleService.getOne(new QueryWrapper<MatchScheduleDO>()
.lambda()
.eq(MatchScheduleDO::getMatchId, matchScheduleDO.getMatchId())
.eq(MatchScheduleDO::getExplains, matchScheduleDO.getExplains())
.eq(MatchScheduleDO::getScheduleTime, DateFormatUtil.format(matchScheduleDO.getScheduleTime(), DateFormatUtil.FMT_sdf_yMd)));
if (matchSchedule != null) {
matchScheduleDO.setId(matchSchedule.getId());
matchScheduleDAO.updateById(matchScheduleDO);
matchScheduleService.updateById(matchScheduleDO);
}
} else {
matchScheduleDO.setMatchId(matchDictDTO.getId());
matchScheduleDAO.insert(matchScheduleDO);
matchScheduleService.save(matchScheduleDO);
}
}
}
......@@ -128,29 +106,10 @@ public class MatchDictServiceImpl extends ServiceImpl<MatchDictDAO, MatchDictDO>
@Override
public IPage<MatchDictVO> getSeedTrackMatchPage(SelectListPageDTO selectListPageDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
Page page = new Page(selectListPageDTO.getPageNo(), selectListPageDTO.getPageSize());
IPage<MatchDictVO> iPage = this.baseMapper.getSeedTrackMatchPage(page, ProjectType.SEED_TRACK);
IPage<MatchDictVO> iPage = this.baseMapper.getSeedTrackMatchPage(page);
for (MatchDictVO record : iPage.getRecords()) {
List<MatchScheduleDO> list = matchScheduleDAO.selectList(new QueryWrapper<MatchScheduleDO>()
.lambda()
.eq(MatchScheduleDO::getMatchId, record.getId()));
record.setSchedule(list);
}
return iPage;
}
@Override
public IPage<MatchDictVO> getSeedTrackMatchPageCity(SelectListPageDTO selectListPageDTO) {
DbContextHolder.setDbType(DBTypeEnum.db1);
Page page = new Page(selectListPageDTO.getPageNo(), selectListPageDTO.getPageSize());
IPage<MatchDictVO> iPage = this.baseMapper.getSeedTrackMatchPage(page, ProjectType.SEED_TRACK);
for (MatchDictVO record : iPage.getRecords()) {
List<MatchScheduleDO> list = matchScheduleDAO.selectList(new QueryWrapper<MatchScheduleDO>()
List<MatchScheduleDO> list = matchScheduleService.list(new QueryWrapper<MatchScheduleDO>()
.lambda()
.eq(MatchScheduleDO::getMatchId, record.getId()));
record.setSchedule(list);
......@@ -161,48 +120,13 @@ public class MatchDictServiceImpl extends ServiceImpl<MatchDictDAO, MatchDictDO>
@Override
@Transactional(rollbackFor = Exception.class)
public void createMatch(MatchDictDTO matchDictDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
MatchDictDO matchDictDO = new MatchDictDO();
BeanUtils.copyProperties(matchDictDTO, matchDictDO);
this.baseMapper.insert(matchDictDO);
if (matchDictDTO.getSchedule().size() > 0) {
for (MatchScheduleDO matchScheduleDO : matchDictDTO.getSchedule()) {
MatchScheduleDO matchSchedule = new MatchScheduleDO();
BeanUtils.copyProperties(matchScheduleDO, matchSchedule);
matchSchedule.setMatchId(matchDictDO.getId());
matchScheduleDAO.insert(matchSchedule);
}
}
}
@Override
@Transactional(rollbackFor = Exception.class)
public void createHonglvMatch(MatchDictDTO matchDictDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
MatchDictDO matchDictDO = new MatchDictDO();
BeanUtils.copyProperties(matchDictDTO, matchDictDO);
this.baseMapper.insert(matchDictDO);
if (matchDictDTO.getSchedule().size() > 0) {
for (MatchScheduleDO matchScheduleDO : matchDictDTO.getSchedule()) {
MatchScheduleDO matchSchedule = new MatchScheduleDO();
BeanUtils.copyProperties(matchScheduleDO, matchSchedule);
matchSchedule.setMatchId(matchDictDO.getId());
matchScheduleDAO.insert(matchSchedule);
}
}
}
@Override
public List<MatchDictDO> getMatch() {
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.selectList(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getStatus, 1));
......@@ -210,124 +134,34 @@ public class MatchDictServiceImpl extends ServiceImpl<MatchDictDAO, MatchDictDO>
@Override
public MatchDictDO getVocationalMatch() {
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.selectOne(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getStatus, 1)
.eq(MatchDictDO::getMatchType, ProjectType.VOCATIONAL));
.eq(MatchDictDO::getStatus, 1));
}
public void updateMatchDate(MatchDictDO matchDictDO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
this.baseMapper.updateById(matchDictDO);
}
public MatchDictDO getMatch(MatchDictDO matchDictDO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.selectById(matchDictDO.getId());
}
@Override
public List<MatchDictDO> getSeedTrackMatchAll() {
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.selectList(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getMatchType, ProjectType.SEED_TRACK));
}
@Override
public List<MatchDictDO> getVocationalMatchAll() {
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.selectList(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getMatchType, ProjectType.VOCATIONAL));
}
@Override
public List<MatchDictDO> getHonglvMatchAll() {
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.selectList(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getMatchType, ProjectType.HONGLV));
}
@Override
public List<MatchDictDO> getList(String projectType, String projectGroup) {
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.getList(projectType, projectGroup);
}
@Override
public IPage getVocationalPage(SelectListPageDTO selectListPageDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
Page page = new Page(selectListPageDTO.getPageNo(), selectListPageDTO.getPageSize());
IPage<MatchDictVO> iPage = this.baseMapper.getSeedTrackMatchPage(page, ProjectType.VOCATIONAL);
for (MatchDictVO record : iPage.getRecords()) {
List<MatchScheduleDO> list = matchScheduleDAO.selectList(new QueryWrapper<MatchScheduleDO>()
.lambda()
.eq(MatchScheduleDO::getMatchId, record.getId()));
record.setSchedule(list);
}
return iPage;
}
@Override
public IPage getHonglvPage(SelectListPageDTO selectListPageDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
Page page = new Page(selectListPageDTO.getPageNo(), selectListPageDTO.getPageSize());
IPage<MatchDictVO> iPage = this.baseMapper.getSeedTrackMatchPage(page, ProjectType.HONGLV);
for (MatchDictVO record : iPage.getRecords()) {
List<MatchScheduleDO> list = matchScheduleDAO.selectList(new QueryWrapper<MatchScheduleDO>()
.lambda()
.eq(MatchScheduleDO::getMatchId, record.getId()));
record.setSchedule(list);
}
return iPage;
}
@Override
public IPage getVocationalPageCity(SelectListPageDTO selectListPageDTO) {
DbContextHolder.setDbType(DBTypeEnum.db1);
Page page = new Page(selectListPageDTO.getPageNo(), selectListPageDTO.getPageSize());
IPage<MatchDictVO> iPage = this.baseMapper.getSeedTrackMatchPage(page, ProjectType.VOCATIONAL);
for (MatchDictVO record : iPage.getRecords()) {
List<MatchScheduleDO> list = matchScheduleDAO.selectList(new QueryWrapper<MatchScheduleDO>()
.lambda()
.eq(MatchScheduleDO::getMatchId, record.getId()));
record.setSchedule(list);
}
return iPage;
}
@Override
public IPage getInternationalPage(SelectListPageDTO selectListPageDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
Page page = new Page(selectListPageDTO.getPageNo(), selectListPageDTO.getPageSize());
IPage<MatchDictVO> iPage = this.baseMapper.getSeedTrackMatchPage(page, ProjectType.INTERNATIONAL);
for (MatchDictVO record : iPage.getRecords()) {
List<MatchScheduleDO> list = matchScheduleDAO.selectList(new QueryWrapper<MatchScheduleDO>()
.lambda()
.eq(MatchScheduleDO::getMatchId, record.getId()));
record.setSchedule(list);
}
IPage<MatchDictVO> iPage = this.baseMapper.getSeedTrackMatchPage(page);
// for (MatchDictVO record : iPage.getRecords()) {
// List<MatchScheduleDO> list = matchScheduleService.list(new QueryWrapper<MatchScheduleDO>()
// .lambda()
// .eq(MatchScheduleDO::getMatchId, record.getId()));
// record.setSchedule(list);
// }
return iPage;
}
}
\ No newline at end of file
package com.zhongzhi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zhongzhi.common.constant.ProjectType;
import com.zhongzhi.dao.MatchDictDAO;
import com.zhongzhi.model.MatchDictDO;
import com.zhongzhi.model.MatchScheduleDO;
import com.zhongzhi.dao.MatchScheduleDAO;
import com.zhongzhi.service.MatchScheduleService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* <p>
* 时间安排 服务实现类
......@@ -25,63 +17,4 @@ import java.util.List;
@Service
public class MatchScheduleServiceImpl extends ServiceImpl<MatchScheduleDAO, MatchScheduleDO> implements MatchScheduleService {
@Autowired
private MatchDictDAO matchDictDAO;
@Override
public List<MatchScheduleDO> getMatchSchedule(MatchScheduleDO matchScheduleDO) {
MatchDictDO matchDictDO = matchDictDAO.selectOne(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getId, matchScheduleDO.getMatchId())
.eq(MatchDictDO::getMatchType, ProjectType.SEED_TRACK)
.eq(MatchDictDO::getStatus, 1));
List<MatchScheduleDO> list = new ArrayList<>();
if (matchDictDO != null) {
list = this.baseMapper.selectList(new QueryWrapper<MatchScheduleDO>()
.lambda()
.eq(MatchScheduleDO::getMatchId, matchDictDO.getId()));
}
return list;
}
@Override
public List<MatchScheduleDO> getVocationalMatchSchedule(MatchScheduleDO matchScheduleDO) {
MatchDictDO matchDictDO = matchDictDAO.selectOne(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getId, matchScheduleDO.getMatchId())
.eq(MatchDictDO::getMatchType, ProjectType.VOCATIONAL)
.eq(MatchDictDO::getStatus, 1));
List<MatchScheduleDO> list = new ArrayList<>();
if (matchDictDO != null) {
list = this.baseMapper.selectList(new QueryWrapper<MatchScheduleDO>()
.lambda()
.eq(MatchScheduleDO::getMatchId, matchDictDO.getId()));
}
return list;
}
@Override
public List<MatchScheduleDO> getHonglvMatchSchedule(MatchScheduleDO matchScheduleDO) {
MatchDictDO matchDictDO = matchDictDAO.selectOne(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getId, matchScheduleDO.getMatchId())
.eq(MatchDictDO::getMatchType, ProjectType.HONGLV)
.eq(MatchDictDO::getStatus, 1));
List<MatchScheduleDO> list = new ArrayList<>();
if (matchDictDO != null) {
list = this.baseMapper.selectList(new QueryWrapper<MatchScheduleDO>()
.lambda()
.eq(MatchScheduleDO::getMatchId, matchDictDO.getId()));
}
return list;
}
}
......@@ -3,17 +3,17 @@ package com.zhongzhi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhongzhi.common.configure.DbContextHolder;
import com.zhongzhi.common.constant.Code;
import com.zhongzhi.common.constant.DBTypeEnum;
import com.zhongzhi.common.exception.HttpException;
import com.zhongzhi.common.utils.Localstorage;
import com.zhongzhi.dto.message.MessagePageDTO;
import com.zhongzhi.model.AdministerDO;
import com.zhongzhi.model.MessageDO;
import com.zhongzhi.dao.MessageDAO;
import com.zhongzhi.service.AdministerService;
import com.zhongzhi.service.MessageService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
......@@ -29,23 +29,17 @@ public class MessageServiceImpl extends ServiceImpl<MessageDAO, MessageDO> imple
@Override
public void createMessage(MessageDO messageDO) {
AdministerDO administerDO = (AdministerDO) Localstorage.getUser();
if (administerDO == null) {
throw new HttpException(Code.TOKEN_EXPIRED.getCode(), Code.TOKEN_EXPIRED.getMessage());
}
DbContextHolder.setDbType(DBTypeEnum.db2);
// AdministerDO administerDO = (AdministerDO) Localstorage.getUser();
// if (administerDO == null) {
// throw new HttpException(Code.TOKEN_EXPIRED.getCode(), Code.TOKEN_EXPIRED.getMessage());
// }
//
// messageDO.setUsername(administerDO.getUsername());
messageDO.setUsername(administerDO.getUsername());
this.baseMapper.insert(messageDO);
}
@Override
public IPage<MessageDO> getMessagePage(MessagePageDTO messagePageDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
IPage<MessageDO> iPage = this.baseMapper.selectPage(new Page(messagePageDTO.getPageNo(), messagePageDTO.getPageSize()),
new QueryWrapper<MessageDO>()
.lambda()
......
......@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhongzhi.vo.permission.PermissionVO;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -24,4 +25,28 @@ public class PermissionsServiceImpl extends ServiceImpl<PermissionsDAO, Permissi
public List<PermissionVO> getPermissionById(Long id) {
return this.baseMapper.getPermissionById(id);
}
@Override
public List<PermissionVO> allPermissions(){
List<PermissionVO> list = this.getPermissionById(null);
List<PermissionVO> treeList = new ArrayList();
list.forEach(permissions -> {
if (permissions.getParentId() == null) {
treeList.add(permissions);
}
list.forEach(p -> {
if (p.getParentId() != null) {
if (p.getParentId().equals(permissions.getId())) {
if (permissions.getChildNodeList() == null) {
permissions.setChildNodeList(new ArrayList<>());
}
permissions.getChildNodeList().add(p);
}
}
});
});
return treeList;
}
}
......@@ -4,22 +4,21 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhongzhi.common.configure.DbContextHolder;
import com.zhongzhi.common.constant.DBTypeEnum;
import com.zhongzhi.common.constant.SmsCode;
import com.zhongzhi.common.exception.HttpException;
import com.zhongzhi.common.utils.ExcelUtil;
import com.zhongzhi.common.utils.JwtUtil;
import com.zhongzhi.common.utils.Localstorage;
import com.zhongzhi.dao.ProjectReviewDAO;
import com.zhongzhi.dao.SmsCodeDAO;
import com.zhongzhi.dto.administer.LoginDTO;
import com.zhongzhi.dto.judge.ProjectJudgePageDTO;
import com.zhongzhi.dto.projectJudge.ImportJudge;
import com.zhongzhi.model.*;
import com.zhongzhi.model.ProjectJudgeDO;
import com.zhongzhi.dao.ProjectJudgeDAO;
import com.zhongzhi.service.*;
import com.zhongzhi.model.ProjectReviewDO;
import com.zhongzhi.model.SmsCodeDO;
import com.zhongzhi.service.ProjectJudgeService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhongzhi.service.ProjectReviewService;
import com.zhongzhi.service.SmsCodeService;
import com.zhongzhi.vo.ExcelFieldVO;
import com.zhongzhi.vo.judge.JudgeInfoVO;
import com.zhongzhi.vo.judge.ProjectJudgePageVO;
......@@ -44,52 +43,37 @@ import java.util.Map;
public class ProjectJudgeServiceImpl extends ServiceImpl<ProjectJudgeDAO, ProjectJudgeDO> implements ProjectJudgeService {
@Autowired
private ProjectReviewDAO projectReviewDAO;
private ProjectReviewService projectReviewService;
@Autowired
private SmsCodeDAO smsCodeDAO;
private SmsCodeService smsCodeService;
@Override
public IPage<ProjectJudgePageVO> getProjectJudgePage(ProjectJudgePageDTO projectJudgePageDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
IPage<ProjectJudgePageVO> iPage = this.baseMapper.getProjectJudgePage(new Page(projectJudgePageDTO.getPageNo(), projectJudgePageDTO.getPageSize()), projectJudgePageDTO.getUsername(), projectJudgePageDTO.getStatus());
IPage<ProjectJudgePageVO> iPage = this.baseMapper.getProjectJudgePage(new Page(projectJudgePageDTO.getPageNo(), projectJudgePageDTO.getPageSize()), projectJudgePageDTO.getUsername(), projectJudgePageDTO.getStatus(),projectJudgePageDTO.getProjectTrack());
for (ProjectJudgePageVO record : iPage.getRecords()) {
Integer count = this.baseMapper.selectCount(new QueryWrapper<ProjectJudgeDO>()
Integer count = projectReviewService.count(new QueryWrapper<ProjectReviewDO>()
.lambda()
.eq(ProjectJudgeDO::getId, record.getId()));
.eq(ProjectReviewDO::getJudgeId, record.getId()));
record.setAssignedQuantity(count);
}
return iPage;
}
@Override
public void removeJudge(ProjectJudgeDO projectJudgeDO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
this.baseMapper.deleteById(projectJudgeDO.getId());
}
@Override
public void createProjectJudge(ProjectJudgeDO projectJudgeDO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
ProjectJudgeDO projectJudge = this.baseMapper.selectOne(new QueryWrapper<ProjectJudgeDO>()
.lambda()
.eq(ProjectJudgeDO::getTelephone, projectJudgeDO.getTelephone()));
if (projectJudge != null) {
throw new HttpException(10020);
}
this.baseMapper.insert(projectJudgeDO);
}
@Override
public void updateProjectJudge(ProjectJudgeDO projectJudgeDO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
ProjectJudgeDO projectJudge = this.baseMapper.selectById(projectJudgeDO.getId());
if (projectJudge != null) {
if (projectJudge.getTelephone().equals(projectJudgeDO.getTelephone())) {
......@@ -109,39 +93,42 @@ public class ProjectJudgeServiceImpl extends ServiceImpl<ProjectJudgeDAO, Projec
@Override
public JudgeInfoVO login(LoginDTO loginDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
JudgeInfoVO judgeInfoVO = new JudgeInfoVO();
ProjectJudgeDO projectJudgeDO = this.baseMapper.selectOne(new QueryWrapper<ProjectJudgeDO>()
.lambda()
.eq(ProjectJudgeDO::getTelephone, loginDTO.getTelephone()));
.eq(ProjectJudgeDO::getAccountName, loginDTO.getAccountName()));
if (null != projectJudgeDO){
if (null != projectJudgeDO.getPasswordFree() && projectJudgeDO.getPasswordFree() != 1){
SmsCodeDO smsCodeDO = smsCodeDAO.getOneByTelePhone(loginDTO.getTelephone(), SmsCode.login, SmsCode.review);
if (smsCodeDO == null) {
throw new HttpException(10025);
}
if (!smsCodeDO.getCode().equals(loginDTO.getCode())) {
throw new HttpException(10021);
}
smsCodeDAO.deleteById(smsCodeDO.getId());
if (projectJudgeDO == null) {
throw new HttpException(10024);
}
if (projectJudgeDO.getStatus() == 0) {
throw new HttpException(10024);
ProjectJudgeDO projectJudgeDO1 = this.baseMapper.selectOne(new QueryWrapper<ProjectJudgeDO>()
.lambda()
.eq(ProjectJudgeDO::getAccountName,loginDTO.getAccountName())
.eq(ProjectJudgeDO::getPassword,loginDTO.getPassword()));
// SmsCodeDO smsCodeDO = smsCodeService.getOneByTelePhone(loginDTO.getTelephone(), SmsCode.login, SmsCode.review);
// if (smsCodeDO == null) {
// throw new HttpException(10025);
// }
//
// if (!smsCodeDO.getCode().equals(loginDTO.getCode())) {
// throw new HttpException(10021);
// }
//
// smsCodeService.removeById(smsCodeDO.getId());
//
if (projectJudgeDO1 == null) {
throw new HttpException(10026);
}
//
// if (projectJudgeDO.getStatus() == 0) {
// throw new HttpException(10024);
// }
}
}
String token = JwtUtil.generateToken(projectJudgeDO.getId(), SmsCode.review);
judgeInfoVO.setTelephone(projectJudgeDO.getTelephone());
judgeInfoVO.setPosition(projectJudgeDO.getPosition());
......@@ -153,16 +140,13 @@ public class ProjectJudgeServiceImpl extends ServiceImpl<ProjectJudgeDAO, Projec
@Override
public IPage<ProjectJudgePageVO> projectJudgesAssigned(ProjectJudgePageDTO projectJudgePageDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
IPage<ProjectJudgePageVO> iPage = this.baseMapper.projectJudgesAssigned(new Page(projectJudgePageDTO.getPageNo(), projectJudgePageDTO.getPageSize()),
projectJudgePageDTO.getMatchId(), projectJudgePageDTO.getProjectGroup(), projectJudgePageDTO.getProjectSchedule());
if (iPage.getRecords() != null && iPage.getRecords().size() > 0) {
for (ProjectJudgePageVO record : iPage.getRecords()) {
Integer count = projectReviewDAO.selectCountByMatchId(record.getId(), projectJudgePageDTO.getMatchId());
Integer count = projectReviewService.selectCount(record.getId(), projectJudgePageDTO.getMatchId());
record.setAssignedQuantity(count);
Integer notReviewNum = projectReviewDAO.selectNotReviewCount(record.getId(), projectJudgePageDTO.getMatchId());
Integer notReviewNum = projectReviewService.selectNotReviewCount(record.getId(), projectJudgePageDTO.getMatchId());
record.setNotReviewedNum(notReviewNum);
}
}
......@@ -171,9 +155,6 @@ public class ProjectJudgeServiceImpl extends ServiceImpl<ProjectJudgeDAO, Projec
@Override
public void importJudge(MultipartFile file) {
DbContextHolder.setDbType(DBTypeEnum.db2);
List<ImportJudge> list = ExcelUtil.readExcel(ImportJudge.class, file);
if (list != null) {
for (ImportJudge importJudge : list) {
......@@ -192,9 +173,6 @@ public class ProjectJudgeServiceImpl extends ServiceImpl<ProjectJudgeDAO, Projec
@Override
public void exportProjectJudge() {
DbContextHolder.setDbType(DBTypeEnum.db2);
List<ExcelFieldVO> field = ExcelUtil.getField(ImportJudge.class);
List<ProjectJudgeDO> list = this.baseMapper.selectList(new QueryWrapper<>());
List<Map> data = new ArrayList<>();
......@@ -205,4 +183,5 @@ public class ProjectJudgeServiceImpl extends ServiceImpl<ProjectJudgeDAO, Projec
}
ExcelUtil.writeExcel(field, data);
}
}
package com.zhongzhi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zhongzhi.common.configure.DbContextHolder;
import com.zhongzhi.common.constant.DBTypeEnum;
import com.zhongzhi.common.utils.DateFormatUtil;
import com.zhongzhi.dto.period.ProjectReviewPeriodDTO;
import com.zhongzhi.model.ProjectReviewPeriodDO;
......@@ -25,28 +23,6 @@ public class ProjectReviewPeriodServiceImpl extends ServiceImpl<ProjectReviewPer
@Override
public ProjectReviewPeriodVO getProjectReviewPeriod(ProjectReviewPeriodDTO projectReviewPeriodDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
ProjectReviewPeriodVO projectReviewPeriodVO = new ProjectReviewPeriodVO();
ProjectReviewPeriodDO projectReviewPeriodDO = this.baseMapper.selectOne(new QueryWrapper<ProjectReviewPeriodDO>()
.lambda()
.eq(ProjectReviewPeriodDO::getMatchId, projectReviewPeriodDTO.getMatchId())
.eq(ProjectReviewPeriodDO::getProjectSchedule, projectReviewPeriodDTO.getProjectSchedule()));
if (projectReviewPeriodDO != null) {
projectReviewPeriodVO.setId(projectReviewPeriodDO.getId());
projectReviewPeriodVO.setStartTime(DateFormatUtil.format(projectReviewPeriodDO.getStartTime(), DateFormatUtil.FMT_sdf14_L));
projectReviewPeriodVO.setEndTime(DateFormatUtil.format(projectReviewPeriodDO.getEndTime(), DateFormatUtil.FMT_sdf14_L));
}
return projectReviewPeriodVO;
}
@Override
public ProjectReviewPeriodVO getProjectReviewPeriodCity(ProjectReviewPeriodDTO projectReviewPeriodDTO) {
DbContextHolder.setDbType(DBTypeEnum.db1);
ProjectReviewPeriodVO projectReviewPeriodVO = new ProjectReviewPeriodVO();
ProjectReviewPeriodDO projectReviewPeriodDO = this.baseMapper.selectOne(new QueryWrapper<ProjectReviewPeriodDO>()
.lambda()
......@@ -63,14 +39,10 @@ public class ProjectReviewPeriodServiceImpl extends ServiceImpl<ProjectReviewPer
@Override
public void updateProjectReviewPeriod(ProjectReviewPeriodDO projectReviewPeriodDO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
ProjectReviewPeriodDO projectReviewPeriod = this.baseMapper.selectOne(new QueryWrapper<ProjectReviewPeriodDO>()
.lambda()
.eq(ProjectReviewPeriodDO::getMatchId, projectReviewPeriodDO.getMatchId())
.eq(ProjectReviewPeriodDO::getProjectSchedule, projectReviewPeriodDO.getProjectSchedule())
.eq(ProjectReviewPeriodDO::getProjectGroup, projectReviewPeriodDO.getProjectGroup()));
.eq(ProjectReviewPeriodDO::getProjectSchedule, projectReviewPeriodDO.getProjectSchedule()));
if (projectReviewPeriod != null) {
projectReviewPeriodDO.setId(projectReviewPeriod.getId());
this.baseMapper.updateById(projectReviewPeriodDO);
......
......@@ -2,15 +2,17 @@ package com.zhongzhi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zhongzhi.common.constant.ProjectReview;
import com.zhongzhi.common.constant.ProjectType;
import com.zhongzhi.common.constant.SMSTemplate;
import com.zhongzhi.common.exception.HttpException;
import com.zhongzhi.common.utils.AliyunSmsUtil;
import com.zhongzhi.common.utils.DateFormatUtil;
import com.zhongzhi.dao.*;
import com.zhongzhi.dao.ProjectDAO;
import com.zhongzhi.dto.review.CancelReviewDTO;
import com.zhongzhi.dto.review.ProjectReviewDTO;
import com.zhongzhi.dto.review.SetReviewDTO;
import com.zhongzhi.model.*;
import com.zhongzhi.dao.ProjectReviewDAO;
import com.zhongzhi.service.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhongzhi.vo.judge.ProjectReviewVO;
......@@ -20,6 +22,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
......@@ -34,16 +37,16 @@ import java.util.List;
public class ProjectReviewServiceImpl extends ServiceImpl<ProjectReviewDAO, ProjectReviewDO> implements ProjectReviewService {
@Autowired
private ProjectDAO projectDAO;
private ProjectService projectService;
@Autowired
private ProjectJudgeDAO projectJudgeDAO;
private ProjectJudgeService projectJudgeService;
@Autowired
private MatchDictDAO matchDictDAO;
private MatchDictService matchDictService;
@Autowired
private ProjectReviewPeriodMapper projectReviewPeriodMapper;
private ProjectReviewPeriodService projectReviewPeriodService;
@Autowired
private AliyunSmsUtil aliyunSmsUtil;
......@@ -51,8 +54,6 @@ public class ProjectReviewServiceImpl extends ServiceImpl<ProjectReviewDAO, Proj
@Override
@Transactional(rollbackFor = Exception.class)
public void setReview(SetReviewDTO setReviewDTO) {
if (setReviewDTO.getProjectId().size() == 0) {
throw new HttpException(10047);
}
......@@ -61,14 +62,26 @@ public class ProjectReviewServiceImpl extends ServiceImpl<ProjectReviewDAO, Proj
throw new HttpException(10048);
}
// Date startTime = null;
// Date endTime = null;
for (Long judgeId : setReviewDTO.getJudgeId()) {
ProjectJudgeDO projectJudgeDO = projectJudgeDAO.selectById(judgeId);
ProjectJudgeDO projectJudgeDO = projectJudgeService.getById(judgeId);
if (projectJudgeDO != null) {
for (Long projectId : setReviewDTO.getProjectId()) {
ProjectDO projectDO = projectDAO.selectById(projectId);
MatchDictDO matchDictDO = matchDictDAO.selectById(projectDO.getMatchId());
if ("种子赛道".equals(matchDictDO.getMatchType())){
ProjectDO projectDO = projectService.getById(projectId);
MatchDictDO matchDictDO = matchDictService.getById(projectDO.getMatchId());
if ("种子赛道".equals(matchDictDO.getMatchType())) {
if (projectDO != null) {
ProjectReviewPeriodDO projectReviewPeriodDO = projectReviewPeriodService.getOne(new QueryWrapper<ProjectReviewPeriodDO>()
.lambda()
.eq(ProjectReviewPeriodDO::getMatchId, projectDO.getMatchId())
.eq(ProjectReviewPeriodDO::getProjectSchedule, projectDO.getProjectSchedule()));
// startTime = projectReviewPeriodDO.getStartTime();
// endTime = projectReviewPeriodDO.getEndTime();
if (projectReviewPeriodDO == null) {
throw new HttpException(10076);
}
if (projectDO.getProjectAssigned().equals(ProjectReview.UNASSIGNED)) {
ProjectDO project = new ProjectDO();
......@@ -77,17 +90,17 @@ public class ProjectReviewServiceImpl extends ServiceImpl<ProjectReviewDAO, Proj
if (projectDO.getProjectReview().equals(ProjectReview.SUBMITTED)) {
project.setProjectReview(ProjectReview.TO_REVIEWED);
}
projectDAO.updateById(project);
projectService.updateById(project);
}
// ProjectReviewDO projectReview = this.baseMapper.selectOne(new QueryWrapper<ProjectReviewDO>()
// .lambda()
// .eq(ProjectReviewDO::getProjectId, projectId)
// .eq(ProjectReviewDO::getJudgeId, judgeId)
// .eq(ProjectReviewDO::getProjectSchedule, projectDO.getProjectSchedule()));
// if (projectReview != null) {
// throw new HttpException(10053);
// }
ProjectReviewDO projectReview = this.baseMapper.selectOne(new QueryWrapper<ProjectReviewDO>()
.lambda()
.eq(ProjectReviewDO::getProjectId, projectId)
.eq(ProjectReviewDO::getJudgeId, judgeId)
.eq(ProjectReviewDO::getProjectSchedule, projectDO.getProjectSchedule()));
if (projectReview != null) {
throw new HttpException(10053);
}
ProjectReviewDO projectReviewDO = new ProjectReviewDO();
projectReviewDO.setProjectId(projectId);
......@@ -98,6 +111,16 @@ public class ProjectReviewServiceImpl extends ServiceImpl<ProjectReviewDAO, Proj
}
}
else {
if (projectDO != null) {
ProjectReviewPeriodDO projectReviewPeriodDO = projectReviewPeriodService.getOne(new QueryWrapper<ProjectReviewPeriodDO>()
.lambda()
.eq(ProjectReviewPeriodDO::getMatchId, projectDO.getMatchId())
.eq(ProjectReviewPeriodDO::getProjectSchedule, projectDO.getProjectSchedule()));
// startTime = projectReviewPeriodDO.getStartTime();
// endTime = projectReviewPeriodDO.getEndTime();
if (projectReviewPeriodDO == null) {
throw new HttpException(10076);
}
if (projectDO.getProjectAssigned().equals(ProjectReview.UNASSIGNED)) {
ProjectDO project = new ProjectDO();
......@@ -106,17 +129,17 @@ public class ProjectReviewServiceImpl extends ServiceImpl<ProjectReviewDAO, Proj
if (projectDO.getProjectReview().equals(ProjectReview.SUBMITTED)) {
project.setProjectReview(ProjectReview.TO_REVIEWED);
}
projectDAO.updateById(project);
projectService.updateById(project);
}
// ProjectReviewDO projectReview = this.baseMapper.selectOne(new QueryWrapper<ProjectReviewDO>()
// .lambda()
// .eq(ProjectReviewDO::getProjectId, projectId)
// .eq(ProjectReviewDO::getJudgeId, judgeId)
// .eq(ProjectReviewDO::getProjectSchedule, projectDO.getProjectSchedule()));
// if (projectReview != null) {
// throw new HttpException(10053);
// }
ProjectReviewDO projectReview = this.baseMapper.selectOne(new QueryWrapper<ProjectReviewDO>()
.lambda()
.eq(ProjectReviewDO::getProjectId, projectId)
.eq(ProjectReviewDO::getJudgeId, judgeId)
.eq(ProjectReviewDO::getProjectSchedule, projectDO.getProjectSchedule()));
if (projectReview != null) {
throw new HttpException(10053);
}
ProjectReviewDO projectReviewDO = new ProjectReviewDO();
projectReviewDO.setProjectId(projectId);
......@@ -126,7 +149,7 @@ public class ProjectReviewServiceImpl extends ServiceImpl<ProjectReviewDAO, Proj
this.baseMapper.insert(projectReviewDO);
}
}
}
}
// if (setReviewDTO.getSmsMessage() == 1) {
......@@ -138,38 +161,39 @@ public class ProjectReviewServiceImpl extends ServiceImpl<ProjectReviewDAO, Proj
// String msg = "";
// if (matchDictDO != null) {
//// msg = matchDictDO.getMatchName() +","+count+","+ DateFormatUtil.format(startTime,DateFormatUtil.FMT_sdf14_L)+"~"+DateFormatUtil.format(endTime,DateFormatUtil.FMT_sdf14_L);
// msg = matchDictDO.getMatchName() +","+count;
// msg = matchDictDO.getMatchName() + "," + count;
// }
//
//// aliyunSmsUtil.sendTemplateMsg(msg, projectJudgeDO.getTelephone(), SMSTemplate.REVIEW_INVITATION_OLD);
// aliyunSmsUtil.sendTemplateMsg(msg, projectJudgeDO.getTelephone(), SMSTemplate.REVIEW_INVITATION_OLD);
// }
}
}
}
@Override
public void sendNotice(SendNoticeVO sendNoticeVO) {
MatchDictDO matchDictDO = matchDictDAO.selectById(sendNoticeVO.getMatchId());
MatchDictDO matchDictDO = matchDictService.getById(sendNoticeVO.getMatchId());
if (matchDictDO != null) {
for (Long id : sendNoticeVO.getId()) {
ProjectJudgeDO projectJudgeDO = projectJudgeDAO.selectById(id);
ProjectJudgeDO projectJudgeDO = projectJudgeService.getById(id);
if (projectJudgeDO != null) {
int count = this.baseMapper.selectCount(new QueryWrapper<ProjectReviewDO>()
.lambda()
.eq(ProjectReviewDO::getReviewStatus, ProjectReview.ASSIGNED)
.eq(ProjectReviewDO::getJudgeId, id));
List<ProjectReviewPeriodDO> list = projectReviewPeriodMapper.selectList(new QueryWrapper<ProjectReviewPeriodDO>()
List<ProjectReviewPeriodDO> list = projectReviewPeriodService.list(new QueryWrapper<ProjectReviewPeriodDO>()
.lambda()
.eq(ProjectReviewPeriodDO::getMatchId, matchDictDO.getId()));
StringBuffer stringBuffer = new StringBuffer();
for (int i = 0 ; i < list.size() ; i++) {
stringBuffer.append(list.get(i).getProjectGroup()+":"+DateFormatUtil.format(list.get(i).getStartTime(),DateFormatUtil.FMT_sdf14_L)+"~"+DateFormatUtil.format(list.get(i).getEndTime(),DateFormatUtil.FMT_sdf14_L));
if (i != list.size()){
for (int i = 0; i < list.size(); i++) {
stringBuffer.append(list.get(i).getProjectGroup() + ":" + DateFormatUtil.format(list.get(i).getStartTime(), DateFormatUtil.FMT_sdf14_L) + "~" + DateFormatUtil.format(list.get(i).getEndTime(), DateFormatUtil.FMT_sdf14_L));
if (i != list.size()) {
stringBuffer.append(";");
}
}
String msg = matchDictDO.getMatchName() +"," + count+","+stringBuffer.toString();
String msg = matchDictDO.getMatchName() + "," + count + "," + stringBuffer.toString();
aliyunSmsUtil.sendTemplateMsgP(msg, projectJudgeDO.getTelephone(), SMSTemplate.REVIEW_INVITATION_NEW);
}
}
......@@ -177,7 +201,7 @@ public class ProjectReviewServiceImpl extends ServiceImpl<ProjectReviewDAO, Proj
}
@Override
public Integer selectCountByMatchId(Long judgeId, Long matchId) {
public Integer selectCount(Long judgeId, Long matchId) {
return this.baseMapper.selectCountByMatchId(judgeId, matchId);
}
......@@ -203,21 +227,20 @@ public class ProjectReviewServiceImpl extends ServiceImpl<ProjectReviewDAO, Proj
}
for (Long judgeId : cancelReviewDTO.getJudgeId()) {
ProjectJudgeDO projectJudgeDO = projectJudgeDAO.selectById(judgeId);
ProjectJudgeDO projectJudgeDO = projectJudgeService.getById(judgeId);
if (projectJudgeDO == null) {
throw new HttpException(10070);
}
ProjectDO projectDO = projectDAO.selectById(cancelReviewDTO.getProjectId());
ProjectDO projectDO = projectService.getById(cancelReviewDTO.getProjectId());
if (projectDO != null) {
// ProjectReviewPeriodDO projectReviewPeriodDO = projectReviewPeriodService.getOne(new QueryWrapper<ProjectReviewPeriodDO>()
// .lambda()
// .eq(ProjectReviewPeriodDO::getMatchId, projectDO.getMatchId())
// .eq(ProjectReviewPeriodDO::getProjectGroup, projectDO.getProjectGroup())
// .eq(ProjectReviewPeriodDO::getProjectSchedule, projectDO.getProjectSchedule()));
// if (projectReviewPeriodDO.getStartTime().before(new Date())) {
// throw new HttpException(10075);
// }
ProjectReviewPeriodDO projectReviewPeriodDO = projectReviewPeriodService.getOne(new QueryWrapper<ProjectReviewPeriodDO>()
.lambda()
.eq(ProjectReviewPeriodDO::getMatchId, projectDO.getMatchId())
.eq(ProjectReviewPeriodDO::getProjectSchedule, projectDO.getProjectSchedule()));
if (projectReviewPeriodDO.getStartTime().before(new Date())) {
throw new HttpException(10075);
}
if (projectDO != null) {
Integer count = this.baseMapper.selectCount(new QueryWrapper<ProjectReviewDO>()
......@@ -231,14 +254,14 @@ public class ProjectReviewServiceImpl extends ServiceImpl<ProjectReviewDAO, Proj
ProjectDO project = new ProjectDO();
project.setId(projectDO.getId());
project.setProjectAssigned(ProjectReview.UNASSIGNED);
projectDAO.updateById(project);
projectService.updateById(project);
}
ProjectReviewDO projectReview = this.baseMapper.selectOne((new QueryWrapper<ProjectReviewDO>()
ProjectReviewDO projectReview = this.baseMapper.selectOne(new QueryWrapper<ProjectReviewDO>()
.lambda()
.eq(ProjectReviewDO::getProjectId, projectDO.getId())
.eq(ProjectReviewDO::getJudgeId, judgeId)
.eq(ProjectReviewDO::getProjectSchedule, projectDO.getProjectSchedule())));
.eq(ProjectReviewDO::getProjectSchedule, projectDO.getProjectSchedule()));
if (projectReview == null) {
throw new HttpException(10071);
}
......@@ -250,10 +273,7 @@ public class ProjectReviewServiceImpl extends ServiceImpl<ProjectReviewDAO, Proj
this.baseMapper.deleteById(projectReview.getId());
}
// try {
// aliyunSmsUtil.sendTemplateMsg(projectDO.getProjectName(), projectJudgeDO.getTelephone(), SMSTemplate.CANCEL_REVIEW);
// }catch (Exception e){
// }
aliyunSmsUtil.sendTemplateMsg(projectDO.getProjectName(), projectJudgeDO.getTelephone(), SMSTemplate.CANCEL_REVIEW);
}
}
}
......@@ -262,14 +282,14 @@ public class ProjectReviewServiceImpl extends ServiceImpl<ProjectReviewDAO, Proj
public List<ProjectJudgeDO> getProjectReview(ProjectReviewDTO projectReviewDTO) {
List<ProjectJudgeDO> data = new ArrayList<>();
ProjectDO projectDO = projectDAO.selectById(projectReviewDTO.getProjectId());
ProjectDO projectDO = projectService.getById(projectReviewDTO.getProjectId());
if (projectDO != null) {
List<ProjectReviewDO> list = this.baseMapper.selectList(new QueryWrapper<ProjectReviewDO>()
.lambda()
.eq(ProjectReviewDO::getProjectSchedule, projectDO.getProjectSchedule())
.eq(ProjectReviewDO::getProjectId, projectReviewDTO.getProjectId()));
for (ProjectReviewDO projectReviewDO : list) {
ProjectJudgeDO projectJudgeDO = projectJudgeDAO.selectById(projectReviewDO.getJudgeId());
ProjectJudgeDO projectJudgeDO = projectJudgeService.getById(projectReviewDO.getJudgeId());
if (projectJudgeDO != null) {
data.add(projectJudgeDO);
}
......
This diff could not be displayed because it is too large.
package com.zhongzhi.service.impl;
import com.zhongzhi.model.DrawLotsJudgeNumDO;
import com.zhongzhi.dao.DrawLotsJudgeNumMapper;
import com.zhongzhi.service.DrawLotsJudgeNumService;
import com.zhongzhi.model.ProjectTrackDO;
import com.zhongzhi.dao.ProjectTrackDAO;
import com.zhongzhi.service.ProjectTrackService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* 赛道字典表 服务实现类
* </p>
*
* @author DengMin
* @since 2025-07-10
* @since 2025-03-28
*/
@Service
public class DrawLotsJudgeNumServiceImpl extends ServiceImpl<DrawLotsJudgeNumMapper, DrawLotsJudgeNumDO> implements DrawLotsJudgeNumService {
public class ProjectTrackServiceImpl extends ServiceImpl<ProjectTrackDAO, ProjectTrackDO> implements ProjectTrackService {
}
package com.zhongzhi.service.impl;
import com.aliyuncs.dysmsapi.model.v20170525.SendSmsResponse;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zhongzhi.common.configure.DbContextHolder;
import com.zhongzhi.common.constant.DBTypeEnum;
import com.zhongzhi.common.constant.SmsCode;
import com.zhongzhi.common.exception.HttpException;
import com.zhongzhi.common.utils.AliyunSmsUtil;
import com.zhongzhi.common.utils.RandomUtil;
import com.zhongzhi.common.utils.SMSSendUtils;
import com.zhongzhi.dao.ProjectJudgeDAO;
import com.zhongzhi.model.*;
import com.zhongzhi.model.AdministerDO;
import com.zhongzhi.model.CollegesDictDO;
import com.zhongzhi.model.ProjectJudgeDO;
import com.zhongzhi.model.SmsCodeDO;
import com.zhongzhi.dao.SmsCodeDAO;
import com.zhongzhi.service.*;
import com.zhongzhi.model.StudentDO;
import com.zhongzhi.service.AdministerService;
import com.zhongzhi.service.CollegesDictService;
import com.zhongzhi.service.ProjectJudgeService;
import com.zhongzhi.service.SmsCodeService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.http.HttpResponse;
import com.zhongzhi.service.StudentService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.LinkedList;
/**
* <p>
* 短信验证码 服务实现类
......@@ -40,16 +42,13 @@ public class SmsCodeServiceImpl extends ServiceImpl<SmsCodeDAO, SmsCodeDO> imple
private AdministerService administerService;
@Autowired
private ProjectJudgeDAO projectJudgeDAO;
private ProjectJudgeService projectJudgeService;
@Autowired
private CollegesDictService collegesDictService;
@Override
public void sendRegisterCode(SmsCodeDO smsCodeDO) throws Exception{
DbContextHolder.setDbType(DBTypeEnum.db2);
public void sendRegisterCode(SmsCodeDO smsCodeDO) {
StudentDO studentDO = studentService.getOne(new QueryWrapper<StudentDO>()
.lambda()
.eq(StudentDO::getTelephone, smsCodeDO.getTelephone()));
......@@ -58,11 +57,8 @@ public class SmsCodeServiceImpl extends ServiceImpl<SmsCodeDAO, SmsCodeDO> imple
}
int code = RandomUtil.getCode();
// SendSmsResponse sendSmsResponse = aliyunSmsUtil.send(smsCodeDO.getTelephone(), code);
LinkedList<String> a = new LinkedList<>();
a.add(code+"");
HttpResponse send = SMSSendUtils.send("1008072673404706816", a, smsCodeDO.getTelephone());
if (send != null) {
SendSmsResponse sendSmsResponse = aliyunSmsUtil.send(smsCodeDO.getTelephone(), code);
if (sendSmsResponse != null && sendSmsResponse.getCode().equals("OK")) {
SmsCodeDO smsCode = this.baseMapper.selectOne(new QueryWrapper<SmsCodeDO>()
.lambda()
.eq(SmsCodeDO::getTelephone, smsCodeDO.getTelephone()));
......@@ -80,10 +76,7 @@ public class SmsCodeServiceImpl extends ServiceImpl<SmsCodeDAO, SmsCodeDO> imple
}
@Override
public void sendStudentLoginCode(SmsCodeDO smsCodeDO) throws Exception {
DbContextHolder.setDbType(DBTypeEnum.db2);
public void sendStudentLoginCode(SmsCodeDO smsCodeDO) {
StudentDO studentDO = studentService.getOne(new QueryWrapper<StudentDO>()
.lambda()
.eq(StudentDO::getTelephone, smsCodeDO.getTelephone()));
......@@ -91,19 +84,16 @@ public class SmsCodeServiceImpl extends ServiceImpl<SmsCodeDAO, SmsCodeDO> imple
throw new HttpException(10024);
}
CollegesDictDO collegesDictDO = collegesDictService.getOne(new QueryWrapper<CollegesDictDO>()
.lambda()
.eq(CollegesDictDO::getName, studentDO.getCollege()));
if (collegesDictDO.getLoginStatus() == 0) {
throw new HttpException(10067);
}
// CollegesDictDO collegesDictDO = collegesDictService.getOne(new QueryWrapper<CollegesDictDO>()
// .lambda()
// .eq(CollegesDictDO::getName, studentDO.getCollege()));
// if (collegesDictDO.getLoginStatus() == 0) {
// throw new HttpException(10067);
// }
int code = RandomUtil.getCode();
// SendSmsResponse sendSmsResponse = aliyunSmsUtil.send(smsCodeDO.getTelephone(), code);
LinkedList<String> a = new LinkedList<>();
a.add(code+"");
HttpResponse send = SMSSendUtils.send("1008072673404706816", a, smsCodeDO.getTelephone());
if (send != null ) {
SendSmsResponse sendSmsResponse = aliyunSmsUtil.send(smsCodeDO.getTelephone(), code);
if (sendSmsResponse != null && sendSmsResponse.getCode().equals("OK")) {
SmsCodeDO smsCode = this.baseMapper.selectOne(new QueryWrapper<SmsCodeDO>()
.lambda()
.eq(SmsCodeDO::getTelephone, smsCodeDO.getTelephone()));
......@@ -122,17 +112,11 @@ public class SmsCodeServiceImpl extends ServiceImpl<SmsCodeDAO, SmsCodeDO> imple
@Override
public SmsCodeDO getOneByTelePhone(String telephone, String type, String platform) {
DbContextHolder.setDbType(DBTypeEnum.db2);
return this.baseMapper.getOneByTelePhone(telephone, type, platform);
}
@Override
public void sendAdministerLoginCode(AdministerDO administerDO) throws Exception {
DbContextHolder.setDbType(DBTypeEnum.db2);
public void sendAdministerLoginCode(AdministerDO administerDO) {
AdministerDO administer = administerService.getOne(new QueryWrapper<AdministerDO>()
.lambda()
.eq(AdministerDO::getTelephone, administerDO.getTelephone()));
......@@ -141,11 +125,8 @@ public class SmsCodeServiceImpl extends ServiceImpl<SmsCodeDAO, SmsCodeDO> imple
}
int code = RandomUtil.getCode();
// SendSmsResponse sendSmsResponse = aliyunSmsUtil.send(administerDO.getTelephone(), code);
LinkedList<String> a = new LinkedList<>();
a.add(code+"");
HttpResponse send = SMSSendUtils.send("1008072673404706816", a, administer.getTelephone());
if (send != null) {
SendSmsResponse sendSmsResponse = aliyunSmsUtil.send(administerDO.getTelephone(), code);
if (sendSmsResponse != null && sendSmsResponse.getCode().equals("OK")) {
SmsCodeDO smsCode = this.baseMapper.selectOne(new QueryWrapper<SmsCodeDO>()
.lambda()
.eq(SmsCodeDO::getTelephone, administerDO.getTelephone()));
......@@ -165,11 +146,9 @@ public class SmsCodeServiceImpl extends ServiceImpl<SmsCodeDAO, SmsCodeDO> imple
}
@Override
public void sendJudgeLoginCode(SmsCodeDO smsCodeDO) throws Exception{
DbContextHolder.setDbType(DBTypeEnum.db2);
public void sendJudgeLoginCode(SmsCodeDO smsCodeDO) {
ProjectJudgeDO projectJudgeDO = projectJudgeDAO.selectOne(new QueryWrapper<ProjectJudgeDO>()
ProjectJudgeDO projectJudgeDO = projectJudgeService.getOne(new QueryWrapper<ProjectJudgeDO>()
.lambda()
.eq(ProjectJudgeDO::getTelephone, smsCodeDO.getTelephone()));
if (projectJudgeDO == null) {
......@@ -178,11 +157,8 @@ public class SmsCodeServiceImpl extends ServiceImpl<SmsCodeDAO, SmsCodeDO> imple
if (projectJudgeDO.getPasswordFree() == null || projectJudgeDO.getPasswordFree() != 1) {
int code = RandomUtil.getCode();
// SendSmsResponse sendSmsResponse = aliyunSmsUtil.send(smsCodeDO.getTelephone(), code);
LinkedList<String> a = new LinkedList<>();
a.add(code+"");
HttpResponse send = SMSSendUtils.send("1008072673404706816", a, smsCodeDO.getTelephone());
if (send != null) {
SendSmsResponse sendSmsResponse = aliyunSmsUtil.send(smsCodeDO.getTelephone(), code);
if (sendSmsResponse != null && sendSmsResponse.getCode().equals("OK")) {
SmsCodeDO smsCode = this.baseMapper.selectOne(new QueryWrapper<SmsCodeDO>()
.lambda()
.eq(SmsCodeDO::getTelephone, smsCodeDO.getTelephone()));
......
......@@ -2,6 +2,7 @@ package com.zhongzhi.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhongzhi.common.constant.SMSTemplate;
import com.zhongzhi.common.utils.AliyunSmsUtil;
import com.zhongzhi.dao.ProjectDAO;
import com.zhongzhi.dao.StudentDAO;
......@@ -47,7 +48,7 @@ public class SmsNoticeServiceImpl extends ServiceImpl<SmsNoticeMapper, SmsNotice
if (list.size() > 0) {
for (SeedTrackProjectPageVO projectDO : list) {
String msg = projectDO.getProjectSchedule() + "," + projectDO.getProjectStatus();
// aliyunSmsUtil.sendTemplateMsg(msg, projectDO.getTelephone(), SMSTemplate.PROJECT_PROGRESS);
aliyunSmsUtil.sendTemplateMsg(msg, projectDO.getTelephone(), SMSTemplate.PROJECT_PROGRESS);
SmsNoticeDO smsNoticeDO = new SmsNoticeDO();
smsNoticeDO.setProjectId(projectDO.getId());
......@@ -68,7 +69,7 @@ public class SmsNoticeServiceImpl extends ServiceImpl<SmsNoticeMapper, SmsNotice
if (projectDO != null) {
StudentDO studentDO = studentDAO.selectById(projectDO.getProposerId());
String msg = projectDO.getProjectSchedule() + "," + projectDO.getProjectStatus();
// aliyunSmsUtil.sendTemplateMsg(msg, studentDO.getTelephone(), SMSTemplate.PROJECT_PROGRESS);
aliyunSmsUtil.sendTemplateMsg(msg, studentDO.getTelephone(), SMSTemplate.PROJECT_PROGRESS);
SmsNoticeDO smsNoticeDO = new SmsNoticeDO();
smsNoticeDO.setProjectId(projectDO.getId());
......
package com.zhongzhi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zhongzhi.common.configure.DbContextHolder;
import com.zhongzhi.common.constant.Code;
import com.zhongzhi.common.constant.DBTypeEnum;
import com.zhongzhi.common.constant.SmsCode;
import com.zhongzhi.common.exception.HttpException;
import com.zhongzhi.common.utils.JwtUtil;
import com.zhongzhi.common.utils.Localstorage;
import com.zhongzhi.dao.CollegesDictDAO;
import com.zhongzhi.dao.SmsCodeDAO;
import com.zhongzhi.dto.student.LoginDTO;
import com.zhongzhi.dto.student.RegisterDTO;
import com.zhongzhi.model.CollegesDictDO;
import com.zhongzhi.model.SmsCodeDO;
import com.zhongzhi.model.StudentDO;
import com.zhongzhi.dao.StudentDAO;
import com.zhongzhi.service.CollegesDictService;
import com.zhongzhi.service.SmsCodeService;
import com.zhongzhi.service.StudentService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhongzhi.vo.student.StudentInfoVO;
......@@ -35,18 +33,15 @@ import org.springframework.stereotype.Service;
public class StudentServiceImpl extends ServiceImpl<StudentDAO, StudentDO> implements StudentService {
@Autowired
private SmsCodeDAO smsCodeDAO;
private SmsCodeService smsCodeService;
@Autowired
private CollegesDictDAO collegesDictDAO;
private CollegesDictService collegesDictService;
@Override
public StudentInfoVO register(RegisterDTO registerDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
StudentInfoVO studentInfoVO = new StudentInfoVO();
SmsCodeDO smsCodeDO = smsCodeDAO.getOneByTelePhone(registerDTO.getTelephone(), SmsCode.register, SmsCode.student);
SmsCodeDO smsCodeDO = smsCodeService.getOneByTelePhone(registerDTO.getTelephone(), SmsCode.register, SmsCode.student);
if (smsCodeDO == null) {
throw new HttpException(10025);
}
......@@ -55,7 +50,7 @@ public class StudentServiceImpl extends ServiceImpl<StudentDAO, StudentDO> imple
throw new HttpException(10021);
}
smsCodeDAO.deleteById(smsCodeDO.getId());
smsCodeService.removeById(smsCodeDO.getId());
if (!registerDTO.getTelephone().equals(smsCodeDO.getTelephone())) {
throw new HttpException(10022);
......@@ -77,37 +72,29 @@ public class StudentServiceImpl extends ServiceImpl<StudentDAO, StudentDO> imple
StudentDO student = new StudentDO();
BeanUtils.copyProperties(registerDTO, student);
student.setCollege("上海电子信息职业技术学院");
student.setEducation("高职");
student.setClassName(registerDTO.getClassName());
student.setCollege("上海立信会计金融学院");
this.baseMapper.insert(student);
String token = JwtUtil.generateToken(student.getId(), SmsCode.student);
BeanUtils.copyProperties(registerDTO, studentInfoVO);
studentInfoVO.setCollege(student.getCollege());
studentInfoVO.setEducation(student.getEducation());
studentInfoVO.setCollege(registerDTO.getSchool());
studentInfoVO.setToken(token);
studentInfoVO.setClassName(student.getClassName());
studentInfoVO.setSex(student.getSex());
return studentInfoVO;
}
@Override
public StudentInfoVO login(LoginDTO loginDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
StudentInfoVO studentInfoVO = new StudentInfoVO();
SmsCodeDO smsCodeDO = smsCodeDAO.getOneByTelePhone(loginDTO.getTelephone(), SmsCode.login, SmsCode.student);
SmsCodeDO smsCodeDO = smsCodeService.getOneByTelePhone(loginDTO.getTelephone(), SmsCode.login, SmsCode.student);
if (smsCodeDO == null) {
throw new HttpException(10025);
}
if (!smsCodeDO.getCode().equals(loginDTO.getCode())) {
if (!smsCodeDO.getCode().equals(loginDTO.getVerifyCode())) {
throw new HttpException(10021);
}
smsCodeDAO.deleteById(smsCodeDO.getId());
smsCodeService.removeById(smsCodeDO.getId());
StudentDO studentDO = this.baseMapper.selectOne(new QueryWrapper<StudentDO>()
.lambda()
......@@ -116,12 +103,12 @@ public class StudentServiceImpl extends ServiceImpl<StudentDAO, StudentDO> imple
throw new HttpException(10024);
}
CollegesDictDO collegesDictDO = collegesDictDAO.selectOne(new QueryWrapper<CollegesDictDO>()
.lambda()
.eq(CollegesDictDO::getName, studentDO.getCollege()));
if(collegesDictDO.getLoginStatus() == 0) {
throw new HttpException(10067);
}
// CollegesDictDO collegesDictDO = collegesDictService.getOne(new QueryWrapper<CollegesDictDO>()
// .lambda()
// .eq(CollegesDictDO::getName, studentDO.getCollege()));
// if(collegesDictDO.getLoginStatus() == 0) {
// throw new HttpException(10067);
// }
String token = JwtUtil.generateToken(studentDO.getId(), SmsCode.student);
BeanUtils.copyProperties(studentDO, studentInfoVO);
......@@ -131,9 +118,6 @@ public class StudentServiceImpl extends ServiceImpl<StudentDAO, StudentDO> imple
@Override
public void updateStudentInfo(StudentDO studentDO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
StudentDO student = (StudentDO) Localstorage.getUser();
if (studentDO == null) {
throw new HttpException(Code.TOKEN_EXPIRED.getCode(), Code.TOKEN_EXPIRED.getMessage());
......
......@@ -23,7 +23,6 @@ public class YearDictServiceImpl extends ServiceImpl<YearDictDAO, YearDictDO> im
public List<YearDictDO> queryYears() {
return this.baseMapper.selectList(null);
}
......@@ -42,7 +41,6 @@ public class YearDictServiceImpl extends ServiceImpl<YearDictDAO, YearDictDO> im
}
public void addYear(YearDictDO yearDictDO) {
int count = this.baseMapper.selectCount(new QueryWrapper<YearDictDO>()
.lambda()
.eq(YearDictDO::getYear,yearDictDO.getYear()));
......
......@@ -8,6 +8,8 @@ import java.util.List;
@Data
public class AdministerVO {
private Long id;
private String token;
private String username;
......
package com.zhongzhi.vo.administer;
import com.zhongzhi.model.AdministerDO;
import com.zhongzhi.model.AdministerPermissionDO;
import com.zhongzhi.model.AdministerTrackMappingDO;
import com.zhongzhi.vo.permission.PermissionVO;
import lombok.Data;
import java.util.List;
@Data
public class GetAdministerPageVO extends AdministerDO {
private List<AdministerTrackMappingDO> administerTrackMappingDOS;
private List<PermissionVO> administerPermissionDOS;
}
......@@ -11,5 +11,4 @@ public class GetCollegeInfoVO {
private String code;
private Integer cnt;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class AllGroupItemsVO {
private Long id;
private String projectName;
private String college;
private String groupName;
private String name;
}
package com.zhongzhi.vo.drawlots;
import com.zhongzhi.model.DrawLotGroupDictDO;
import lombok.Data;
import java.util.List;
@Data
public class AllGroupsVO extends DrawLotGroupDictDO {
private List<GroupJudgesVO> leader;
private List<GroupJudgesVO> member;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class CollegeProjectsVO {
private Long id;
private String projectName;
private String college;
private String projectProgress;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class DrawJudgeInfoVO {
private String roleType;
private String expectorType;
private String username;
private Integer groupNum;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class DrawlotsVO {
private Integer groupNum;
private String groupName;
private String expectorType;
private String roleType;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class GroupJudgeScoresVO {
private Long id;
private String username;
private String expectorType;
private String roleType;
private String score;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class GroupJudgesVO {
private Long id;
private String expectorType;
private String username;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class GroupProjectInfoVO {
private Long id;
private String groupName;
private Integer groupNum;
private String projectName;
private String college;
}
package com.zhongzhi.vo.drawlots;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import java.util.List;
@Data
public class GroupProjectScreenVO {
private Long id;
private Long sceneId;
/**
* 赛组名称
*/
private String groupName;
private List<GroupProjectInfoVO> groupProjectInfoVOS;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class GroupRankVO {
private Long id;
private String projectName;
private String college;
private String groupName;
private Integer groupNum;
private String totalScore;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Data
public class GroupScoresVO {
private Long id;
private String projectName;
private String college;
private Long groupId;
private String groupNum;
private String groupName;
private String leader;
private String totalScore;
private List<GroupJudgeScoresVO> groupJudgeScoresVOS;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class JudgeFullInfoVO {
private Long sceneId;
private Long judgeId;
private String username;
private Integer groupNum;
private String groupName;
private String expectorType;
private String roleType;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
import java.util.List;
@Data
public class JudgeScoreScreenVO {
private String groupName;
private Integer groupNum;
private String totalScore;
private List<ScoreScreenVO> scoreScreenVOS;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
import java.util.List;
@Data
public class JudgeScreenVO {
private Long id;
private Long sceneId;
/**
* 赛组名称
*/
private String groupName;
private List<DrawJudgeInfoVO> groupProjectInfoVOS;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class LeaderFullVO {
private Boolean fullFlag;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class LoginVO {
private Long judgeId;
private String expectorType;
private String roleType;
private String name;
private String groupName;
private Long groupId;
private Integer groupNum;
private Long sceneId;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class MatchJudgesVO {
private Long id;
private String username;
private String expectorType;
private String roleType;
private String groupName;
private String telephone;
private String unit;
private String position;
private Long mappingId;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class MatchProjectsVO {
private String id;
private String projectName;
private String college;
private String name;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class QueryItemsVO {
private Long id;
private String groupName;
private Integer groupNum;
private String projectName;
private String submitStatus;
private String score;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class RankListVO {
private Long id;
private String projectName;
private String college;
private Integer orderNo;
private String leader;
private String groupName;
private Integer groupNum;
}
package com.zhongzhi.vo.drawlots;
import com.zhongzhi.model.DrawLotsGroupItemsDO;
import lombok.Data;
import java.util.List;
@Data
public class RankVO {
// private List<DrawLotsGroupItemsDO> rankListVOS;
private Long sceneId;
private Long groupId;
private String projectName;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
import java.util.List;
@Data
public class SceneGroupsVO {
private Long groupId;
private String groupName;
private List<Integer> groupNums;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class ScoreScreenVO {
private Long judgeId;
private String score;
private String submitStatus;
}
package com.zhongzhi.vo.drawlots;
import lombok.Data;
@Data
public class SelectJudgesVO {
private Long id;
private String username;
private String unit;
private String position;
private String telephone;
}
......@@ -56,4 +56,8 @@ public class ProjectJudgePageVO {
* 待评审数量
*/
private Integer notReviewedNum;
private String accountName;
private String password;
}
......@@ -15,9 +15,9 @@ public class MatchDictVO {
private String matchDate;
private Date startTime;
private String startTime;
private Date endTime;
private String endTime;
private Integer status;
......
......@@ -11,6 +11,8 @@ public class ProjectMemberVO {
private Long id;
private Long projectId;
/**
* 姓名
*/
......@@ -60,9 +62,4 @@ public class ProjectMemberVO {
private Integer editStatus;
private String fiveYears;
private String nation;
private String studyCountry;
}
......@@ -7,4 +7,6 @@ public class UploadFileVO {
private String url;
private String requestId;
}
package com.zhongzhi.vo.project;
import com.zhongzhi.model.DrawLotsScenesDO;
import lombok.Data;
@Data
public class AllMatchScenesVO extends DrawLotsScenesDO {
/**
* 小组项目数量
*/
private Integer projectCnt;
private Integer groupCnt;
private Integer judgeCnt;
private Integer rankCnt;
}
package com.zhongzhi.vo.project;
import lombok.Data;
@Data
public class GetDataDListVO {
private String xueyuan;
private String major;
private Integer projectCnt;
private Integer studentCnt;
private Integer memberCnt;
private Integer guideCnt;
private Integer chuangyiCnt;
private Integer chuchangzu;
private Integer chengzhangzu;
private Integer wenkelei;
private Integer yikelei;
private Integer nongkelei;
private Integer gongkelei;
private Integer rengonglei;
}
......@@ -5,27 +5,27 @@ import lombok.Data;
@Data
public class ProjectAssignNumVO {
// /**
// * 中职复赛项目数量
// */
// private Long vocRematchNum;
// /**
// * 中职决赛项目数量
// */
// private Long vocFinalNum;
/**
* 中职复赛项目数量
*/
private Long vocRematchNum;
/**
* 中职决赛项目数量
*/
private Long vocFinalNum;
/**
* 高职复赛项目数量
* 复赛项目数量
*/
private Long secRematchNum;
/**
* 高职决赛项目数量
* 决赛项目数量
*/
private Long secFinalNum;
/**
* 高职初赛项目数量
* 初赛项目数量
*/
// private Long secPreliminaryNUm;
private Long secPreliminaryNUm;
/**
* 已分配
......@@ -36,6 +36,4 @@ public class ProjectAssignNumVO {
* 未分配
*/
private Long unassignedNum;
private Long xiaojiNum;
}
......@@ -5,73 +5,28 @@ import lombok.Data;
@Data
public class ProjectDataOverview {
/*
注册人数
*/
private Integer registeredNum;
private Integer projectCnt;
/*
已提交项目的院校数量
*/
private Integer matchNum;
private Integer studentCnt;
/*
全部项目数量
*/
private Integer projectNum;
private Integer memberCnt;
/*
校级项目申请数量
*/
private Integer schoolProjectNum;
private Integer guideCnt;
/*
初赛项目数量
*/
private Integer preliminaryProjectNum;
private Integer chuangyiCnt;
/*
复赛项目数量
*/
private Integer rematchProjectNum;
private Integer chuchangzu;
/*
复赛项目比例
*/
private Double rematchProportion;
private Integer chengzhangzu;
/*
决赛项目数量
*/
private Integer finalProjectNum;
private Integer wenkelei;
/*
决赛项目比例
*/
private Double finalProportion;
private Integer yikelei;
/*
市级复赛铜奖
*/
private Integer rematchBronzeAwardNum;
private Integer nongkelei;
/*
市级复赛银奖
*/
private Integer rematchSilverAwardNum;
private Integer gongkelei;
/*
市级复赛金奖
*/
private Integer rematchWinningAwardNum;
private Integer rengonglei;
/*
市级决赛银奖
*/
private Integer finalsSilverAwardNum;
/*
市级决赛金奖
*/
private Integer finalsGoldAwardNum;
}
......@@ -200,6 +200,4 @@ public class ProjectInfoVO {
* 填写进度
*/
private Integer fillInProgress;
private String themeName;
}
......@@ -16,11 +16,20 @@ public class ProjectJudgeVO {
private String leader;
@ExcelColumn(col = 4, value = "组别")
private String projectProgress;
private String projectGroup;
@ExcelColumn(col = 5, value = "院校")
private String college;
@ExcelColumn(col = 5, value = "项目类型")
private String projectType;
@ExcelColumn(col = 6, value = "阶段")
// @ExcelColumn(col = 6, value = "单元赛道")
// private String unitTrack;
@ExcelColumn(col = 6, value = "学院")
private String xueyuan;
@ExcelColumn(col = 7, value = "专业")
private String major;
@ExcelColumn(col = 8, value = "阶段")
private String projectSchedule;
}
......@@ -12,8 +12,6 @@ public class ProjectPageVO {
private Long proposerId;
private String themeName;
private Long matchId;
private String matchName;
......@@ -24,8 +22,18 @@ public class ProjectPageVO {
private String projectGroup;
private String projectTrack;
private String projectType;
private String school;
private String college;
private String major;
private String telephone;
private String name;
private Double score;
......
package com.zhongzhi.vo.project;
import lombok.Data;
@Data
public class ProjectProgressCntVO {
private Integer chuangyiCnt;
private Integer chuchangzu;
private Integer chengzhangzu;
private Integer wenkelei;
private Integer yikelei;
private Integer nongkelei;
private Integer gongkelei;
private Integer rengonglei;
}
......@@ -11,14 +11,22 @@ public class ReviewListVO {
private String name;
private String className;
private String projectName;
private String projectGroup;
private String college;
private String school;
private String major;
private String telephone;
private String projectTrack;
private String unitTrack;
private String projectSchedule;
private String reviewResult;
......@@ -26,4 +34,8 @@ public class ReviewListVO {
private String projectAssigned;
private String projectProgress;
private String xueyuan;
private String projectType;
}
......@@ -11,6 +11,7 @@ import com.zhongzhi.model.ProjectWorksDO;
import com.zhongzhi.vo.member.ProjectMemberVO;
import com.zhongzhi.vo.review.FinalsReviewVO;
import com.zhongzhi.vo.review.ReMatchReviewVO;
import com.zhongzhi.vo.review.SchoolReviewVO;
import lombok.Data;
import java.util.List;
......@@ -20,8 +21,6 @@ public class SeedTrackProjectDetailVO extends ProjectMemberVO {
private Long id;
private String themeName;
/**
* 申请人ID
*/
......@@ -42,14 +41,6 @@ public class SeedTrackProjectDetailVO extends ProjectMemberVO {
*/
private String projectName;
private String projectNameEn;
private String nation;
private String idCardType;
private String studyCountry;
/**
* 组别
*/
......@@ -146,19 +137,24 @@ public class SeedTrackProjectDetailVO extends ProjectMemberVO {
private String companyName;
/**
* 法人身份
* 参赛赛道
*/
private String legalPersonStatus;
private String projectTrack;
/**
* 法人姓名
* 单元赛道
*/
private String legalPersonName;
private String unitTrack;
/**
* 职务
* 注册时间
*/
private String position;
private String registerDate;
/**
* 注册地址
*/
private String registerAddress;
/**
* 注册资金
......@@ -166,19 +162,62 @@ public class SeedTrackProjectDetailVO extends ProjectMemberVO {
private String registerFund;
/**
* 注册时间
* 营业执照
*/
private String registerDate;
private String businessLicense;
private String projectAttachment;
private String projectAttachmentName;
private String projectAttachmentType;
/**
* 注册省份
* 项目PPT
*/
private String registerProvince;
private String projectPptUrl;
/**
* 注册地址
* 项目PPT类型
*/
private String registerAddress;
private String projectPptType;
/**
* 项目PPT名称
*/
private String projectPptName;
private String identityCertificate;
/**
* 承诺书
*/
private String commitmentLetter;
/**
* 参赛证明书
*/
private String participationCertificate;
/**
* 法人身份
*/
private String legalPersonStatus;
/**
* 法人姓名
*/
private String legalPersonName;
/**
* 职务
*/
private String position;
/**
* 注册省份
*/
private String registerProvince;
/**
* 统一社会信用代码
......@@ -230,27 +269,6 @@ public class SeedTrackProjectDetailVO extends ProjectMemberVO {
*/
private String investment;
/**
* 项目PPT
*/
private String projectPptUrl;
private String projectPptUrlEn;
/**
* 项目PPT类型
*/
private String projectPptType;
private String projectPptTypeEn;
/**
* 项目PPT名称
*/
private String projectPptName;
private String projectPptNameEn;
private String email;
private String reviewStatus;
......@@ -262,9 +280,12 @@ public class SeedTrackProjectDetailVO extends ProjectMemberVO {
/**
* 项目材料
*/
private List<ProjectMaterialsDO> materialsCn;
private List<ProjectMaterialsDO> materials;
private List<ProjectMaterialsDO> materialsEn;
/**
* 复赛评分
*/
private List<SchoolReviewVO> schools;
/**
* 复赛评分
......@@ -314,4 +335,8 @@ public class SeedTrackProjectDetailVO extends ProjectMemberVO {
private Integer editStatus;
private String vodUrl;
private String aboveProvinceReward;
private String rewardUrl;
}
......@@ -10,24 +10,26 @@ public class SeedTrackProjectPageVO {
private Long id;
private String themeName;
private String projectName;
private String projectGroup;
private String college;
private String className;
private String xueyuan;
private String name;
private String major;
private String projectTrack;
private String telephone;
private String projectStatus;
private String projectType;
private String applicationTime;
private String projectSchedule;
......@@ -68,6 +70,5 @@ public class SeedTrackProjectPageVO {
*/
private String projectPptName;
private String projectPptNameEn;
private Integer editStatus;
}
......@@ -11,17 +11,8 @@ public class VocationalNumVO {
private Integer schoolProjectNum;
/**
* 复赛
*/
private Integer rematchNum;
/**
* 报名阶段
*/
private Integer registerNum;
/**
* 决赛
*/
private Integer finalNum;
}
......@@ -5,251 +5,7 @@ import lombok.Data;
import java.util.List;
@Data
public class VocationalProjectInfoVO {
private Long id;
/**
* 所属领域
*/
private String itemField;
/**
* 项目LOGO
*/
private String logoUri;
/**
* 项目名称
*/
private String projectName;
/**
* 组别
*/
private String projectGroup;
/**
* 赛事年份
*/
private Long matchId;
/**
* 类别
*/
private String classification;
/**
* 所在地址
*/
private String address;
/**
* 项目概述
*/
private String projectIntro;
/**
* 设计背景
*/
private String projectCreativity;
/**
* 科学设计
*/
private String scientificPrinciple;
/**
* 应用前景
*/
private String applicationProspect;
/**
* 路演形式
*/
private String roadShowForm;
/**
* 创意实施或实验所受条件的限制
*/
private String restriction;
/**
* 国家级重大、重点科研项目的科研成果转化项目
*/
private String projectTransform;
/**
* 学校科技成果转化
*/
private String resultTransfer;
/**
* 参赛申报人为科技成果的完成人或所有人
*/
private String competitionOwner;
/**
* 参赛申报人为科技成果的第一完成人或所有人
*/
private String competitionFirst;
/**
* 师生共创
*/
private String bothInvention;
/**
* 项目进展
*/
private String projectProgress;
/**
* 项目阶段
*/
private String projectStage;
/**
* 公司名称
*/
private String companyName;
/**
* 法人身份
*/
private String legalPersonStatus;
/**
* 法人姓名
*/
private String legalPersonName;
/**
* 职务
*/
private String position;
/**
* 注册资金
*/
private String registerFund;
/**
* 注册时间
*/
private String registerDate;
/**
* 注册省份
*/
private String registerProvince;
/**
* 注册地址
*/
private String registerAddress;
/**
* 统一社会信用代码
*/
private String unifyCode;
/**
* 财务报表
*/
private String financialStatement;
/**
* 隐私设置
*/
private String privacySetting;
/**
* 项目状态
*/
private String projectStatus;
/**
* 项目进度
*/
private String projectSchedule;
/**
* 项目类型
*/
private String projectType;
/**
* 上传加盖公章的附件
*/
private String printAttachment;
/**
* 上传加盖公章的附件类型
*/
private String printAttachmentType;
/**
* 上传加盖公章的附件名称
*/
private String printAttachmentName;
/**
* 项目是否获得投资
*/
private String investment;
/**
* 项目PPT
*/
private String projectPptUrl;
/**
* 项目PPT类型
*/
private String projectPptType;
private String projectPptTypeEn;
/**
* 项目PPT名称
*/
private String projectPptName;
private String projectPptNameEn;
/**
* 项目材料名称
*/
private String materialsName;
/**
* 项目材料名称
*/
private String materialsNameEn;
/**
* 项目材料大小
*/
private String materialsSize;
/**
* 项目材料类型
*/
private String materialsType;
/**
* 视频地址
*/
private String vodUrl;
/**
* 项目材料地址
*/
private String materialsUrl;
private String materialsEnUrl;
private String languageType;
public class VocationalProjectInfoVO extends ProjectDO {
private List<ProjectOwnershipStructureDO> Ownership;
......@@ -266,15 +22,4 @@ public class VocationalProjectInfoVO {
private List<ProjectTrademarkDO> Trademark;
private Integer editStatus;
/**
* 项目计划名称英文名
*/
private String projectNameEn;
private String projectPptUrlEn;
private List<ProjectMaterialsDO> projectMaterialsCn;
private List<ProjectMaterialsDO> projectMaterialsEn;
}
......@@ -6,32 +6,21 @@ import lombok.Data;
public class VocationalProjectNum {
/**
* 中职复赛项目数量
* 赛项目数量
*/
private Long vocRematchNum;
private Long secPreliminaryNUm;
/**
* 中职决赛项目数量
*/
private Long vocFinalNum;
/**
* 高职复赛项目数量
* 复赛项目数量
*/
private Long secRematchNum;
/**
* 高职决赛项目数量
* 决赛项目数量
*/
private Long secFinalNum;
/**
* 高职初赛项目数量
*/
// private Long secPreliminaryNUm;
/**
* 已评审项目数量
*/
private Long reviewedNum;
/**
* 待评审项目数量
*/
......
......@@ -26,6 +26,4 @@ public class VocationalProjectVO {
@ExcelColumn(col = 7, value = "指导老师")
private String mentor;
private String studyCountry;
}
......@@ -5,31 +5,30 @@ import lombok.Data;
@Data
public class VocationalReviewNumVO {
// /**
// * 中职复赛项目数量
// */
// private Long vocRematchNum;
// /**
// * 中职决赛项目数量
// */
// private Long vocFinalNum;
/**
* 中职复赛项目数量
*/
private Long vocRematchNum;
/**
* 中职决赛项目数量
* 初赛项目数量
*/
private Long vocFinalNum;
private Long secPreliminaryNUm;
/**
* 高职复赛项目数量
* 复赛项目数量
*/
private Long secRematchNum;
/**
* 高职决赛项目数量
* 决赛项目数量
*/
private Long secFinalNum;
/**
* 高职初赛项目数量
*/
private Long secPreliminaryNUm;
private Long review;
private Long notReview;
private Integer xiaojiNum;
}
......@@ -26,4 +26,6 @@ public class SchoolReviewVO {
* 评审时间
*/
private String schoolTime;
private String schoolJudgeName;
}
package com.zhongzhi.vo.student;
import lombok.Data;
@Data
public class JudgeThemeDoneVO {
private String themeName;
}
......@@ -15,8 +15,6 @@ public class StudentInfoVO {
private String education;
private String sex;
/**
* 就读院校
*/
......@@ -37,5 +35,5 @@ public class StudentInfoVO {
*/
private String graduateDate;
private String className;
private String xueyuan;
}
# 本地环境配置
# 端口号
server.port=23508
spring.datasource.dynamic.strict=false
spring.datasource.dynamic.primary=master
spring.datasource.dynamic.hikari.min-idle=5
spring.datasource.dynamic.hikari.max-pool-size=20
spring.datasource.dynamic.hikari.connection-timeout=30000
spring.datasource.dynamic.hikari.idle-timeout=600000
# db1 中职库
spring.datasource.dynamic.datasource.db1.url=jdbc:mysql://116.62.57.92:3306/zhongzhi?connectTimeout=3000&socketTimeout=6000
spring.datasource.dynamic.datasource.db1.username=devloper
spring.datasource.dynamic.datasource.db1.password=dev@1553$
spring.datasource.dynamic.datasource.db1.driver-class-name=com.mysql.cj.jdbc.Driver
# db2 校内数据库
spring.datasource.dynamic.datasource.db2.url=jdbc:mysql://116.62.57.92:3306/electron?connectTimeout=3000&socketTimeout=6000
spring.datasource.dynamic.datasource.db2.username=devloper
spring.datasource.dynamic.datasource.db2.password=dev@1553$
spring.datasource.dynamic.datasource.db2.driver-class-name=com.mysql.cj.jdbc.Driver
server.port=23511
# 数据源配置
# 数据源配置
spring.datasource.url=jdbc:mysql://116.62.57.92:3306/lixin?autoReconnect=true&useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=devloper
spring.datasource.password=dev@1553$
spring.datasource.druid.initialSize=5
spring.datasource.druid.minIdle=5
spring.datasource.druid.maxActive=20
spring.datasource.druid.maxWait=60000
spring.datasource.druid.timeBetweenEvictionRunsMillis=60000
spring.datasource.druid.minEvictableIdleTimeMillis=300000
spring.datasource.druid.validationQuery=SELECT 1 FROM DUAL
spring.datasource.druid.testWhileIdle=true
spring.datasource.druid.testOnBorrow=false
spring.datasource.druid.testOnReturn=false
spring.datasource.druid.poolPreparedStatements=true
spring.datasource.druid.maxPoolPreparedStatementPerConnectionSize=20
spring.datasource.druid.useGlobalDataSourceStat=true
# 控制台日志打印
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
\ No newline at end of file
# 生产环境配置
# 端口号
server.port=23508
# db1
spring.datasource.dynamic.datasource.db1.url=jdbc:mysql://rm-uf69w46mo6agw0ahao.mysql.rds.aliyuncs.com:3306/zhongzhi?characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
spring.datasource.dynamic.datasource.db1.username=ykadmin
spring.datasource.dynamic.datasource.db1.password=youkedb608@good
spring.datasource.dynamic.datasource.db1.driver-class-name=com.mysql.cj.jdbc.Driver
# db2
spring.datasource.dynamic.datasource.db2.url=jdbc:mysql://rm-uf69w46mo6agw0ahao.mysql.rds.aliyuncs.com:3306/electron?characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
spring.datasource.dynamic.datasource.db2.username=ykadmin
spring.datasource.dynamic.datasource.db2.password=youkedb608@good
spring.datasource.dynamic.datasource.db2.driver-class-name=com.mysql.cj.jdbc.Driver
server.port=23511
server.tomcat.connection-timeout=600000
# 数据源配置
spring.datasource.url=jdbc:mysql://rm-uf69w46mo6agw0ahao.mysql.rds.aliyuncs.com:3306/lixin?characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=ykadmin_new
spring.datasource.password=youkedb608@good
spring.datasource.druid.initialSize=5
spring.datasource.druid.minIdle=5
spring.datasource.druid.maxActive=20
spring.datasource.druid.maxWait=600000
spring.datasource.druid.timeBetweenEvictionRunsMillis=600000
spring.datasource.druid.minEvictableIdleTimeMillis=300000
spring.datasource.druid.validationQuery=SELECT 1 FROM DUAL
spring.datasource.druid.testWhileIdle=true
spring.datasource.druid.testOnBorrow=false
spring.datasource.druid.testOnReturn=false
spring.datasource.druid.poolPreparedStatements=true
spring.datasource.druid.maxPoolPreparedStatementPerConnectionSize=20
spring.datasource.druid.useGlobalDataSourceStat=true
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
\ No newline at end of file
# 环境配置
spring.profiles.active=dev
spring.profiles.active=prod
# 文件编码 UTF8
spring.mandatory-file-encoding=UTF-8
spring.jackson.time-zone=GMT+8
......@@ -22,10 +22,6 @@ mybatis-plus.global-config.db-config.logic-delete-value=NOW()
mybatis-plus.global-config.db-config.logic-not-delete-value=NULL
#日志配置
logging.config=classpath:logback-spring.xml
logging.level.org.apache.ibatis=DEBUG
logging.level.com.zaxxer.hikari=DEBUG
logging.level.org.springframework.jdbc=DEBUG
logging.pattern.console="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n"
# 阿里云短信
sms.product=Dysmsapi
sms.domain=dysmsapi.aliyuncs.com
......
......@@ -8,7 +8,7 @@ c.code-message[10021]=验证码不正确
c.code-message[10022]=输入的手机号和接收验证码手机号不一致
c.code-message[10023]=该身份证号已注册
c.code-message[10024]=手机号未注册
c.code-message[10026]=请稍后再试
c.code-message[10026]=密码错误
# 项目
c.code-message[10040]=项目已申请
c.code-message[10041]=项目负责人已存在
......@@ -39,7 +39,7 @@ c.code-message[10075]=评审已开始,不能撤回评委
c.code-message[10076]=请先设置评审起始时间
c.code-message[10077]=提交失败,有信息尚未填写
c.code-message[10078]=撤回失败,当前时间不在大赛时间段内
c.code-message[10079]=指导老师手机号不能重复
c.code-message[10079]=项目中有重复成员
# 院校
c.code-message[10060]=账户不存在
c.code-message[10061]=密码错误
......@@ -49,21 +49,10 @@ c.code-message[10064]=学校代码已存在
c.code-message[10065]=项目未分配评审
c.code-message[10066]=上传文件为空
c.code-message[10067]=系统已暂停登录功能
c.code-message[10068]=负责人、成员中有相同身份信息或手机号码
c.code-message[10068]=成员不能是负责人
c.code-message[10018]=不在大赛时间范围内
c.code-message[10069]=该成员已存在
c.code-message[10019]=最多只能添加1位学校领队
c.code-message[10029]=最多只能添加9位观摩人员
c.code-message[10029]=最多只能添加2位观摩人员
c.code-message[10030]=车牌号已存在
c.code-message[10031]=不在申报时间范围内
c.code-message[10032]=作为项目负责人只能选择一个赛道参赛
c.code-message[10033]=上报数量达到限制
c.code-message[10034]=该现场已存在
c.code-message[10035]=该组别已存在
c.code-message[10036]=已满员
c.code-message[10037]=该项目已抽签
c.code-message[10038]=该评委已抽签
c.code-message[10039]=该排位赛已排序
c.code-message[10080]=该现场组长未抽齐
c.code-message[10081]=您已申报过该主题
\ No newline at end of file
c.code-message[10031]=不在申报时间范围内
\ No newline at end of file
......@@ -2,21 +2,26 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhongzhi.dao.AdministerDAO">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.zhongzhi.model.AdministerDO">
<id column="id" property="id"/>
<result column="telephone" property="telephone"/>
<result column="username" property="username"/>
<result column="avatar" property="avatar"/>
<result column="role" property="role"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
<result column="delete_time" property="deleteTime"/>
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, telephone, username, avatar, role, create_time, update_time, delete_time
</sql>
<select id="getAdministerPage" resultType="com.zhongzhi.vo.administer.GetAdministerPageVO">
SELECT
*
FROM
administer t
WHERE
t.delete_time IS NULL
AND t.role = #{listItem}
<if test="username != null and username != ''">
AND t.username LIKE concat('%', #{username}, '%')
</if>
</select>
<update id="updateAdminister">
update administer t
set t.telephone = #{telephone},
t.username = #{username},
t.avatar = #{avatar},
t.role = #{role},
t.college = #{college}
where id = #{id}
</update>
</mapper>
<?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.zhongzhi.dao.DrawLotsScenesMapper">
<mapper namespace="com.zhongzhi.dao.AdministerTrackMappingDAO">
<select id="allMatchScenes" resultType="com.zhongzhi.vo.project.AllMatchScenesVO">
SELECT
*
FROM
draw_lots_scenes t
WHERE
t.delete_time IS NULL
AND t.match_id = #{matchId}
<if test="openStatus != null and openStatus != ''">
AND t.open_status = #{openStatus}
</if>
</select>
<select id="administerTracks" parameterType="long" resultType="com.zhongzhi.model.ProjectTrackDO">
SELECT
t2.*
FROM
administer_track_mapping t
left join project_track t2 on t.track_id = t2.id
WHERE
t.delete_time IS NULL
and t2.delete_time is null
AND t.administer_id = #{userId}
</select>
</mapper>
......@@ -62,47 +62,16 @@
<select id="getCollegeInfo" resultType="com.zhongzhi.vo.college.GetCollegeInfoVO">
SELECT
t4.id,
t4.`code`,
t4.`name`
t.id,
t.NAME,
t.CODE
FROM
colleges_dict t4
colleges_dict t
WHERE
t4.delete_time IS NULL
t.delete_time IS NULL
<if test="name != null and name != ''">
AND t4.`name` LIKE concat('%',#{name} ,'%')
AND t.`name` LIKE concat('%',#{name} ,'%')
</if>
<if test="education != null and education != ''">
and t4.education = #{education}
</if>
ORDER BY t4.id
</select>
<select id="getSceneCollegeInfo" resultType="com.zhongzhi.vo.college.GetCollegeInfoVO">
SELECT
t4.id,
t4.`code`,
t4.`name`,
count(1) as cnt
FROM
draw_lots_group_items t1
LEFT JOIN project t2 ON t1.project_id = t2.id
LEFT JOIN draw_lots_scenes t3 ON t1.scene_id = t3.id AND t2.match_id = t3.match_id
LEFT JOIN colleges_dict t4 ON t2.college = t4.`name`
WHERE
t1.delete_time IS NULL
AND t2.delete_time IS NULL
AND t3.delete_time IS NULL
AND t4.delete_time IS NULL
AND t3.id = #{sceneId}
<if test="name != null and name != ''">
AND t4.`name` LIKE concat('%',#{name} ,'%')
</if>
<if test="education != null and education != ''">
and t4.education = #{education}
</if>
GROUP BY t4.id
ORDER BY cnt DESC
</select>
</mapper>
<?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.zhongzhi.dao.DrawLotGroupDictMapper">
<select id="groupJudges" resultType="com.zhongzhi.vo.drawlots.GroupJudgesVO">
SELECT
t2.id,
t.expector_type,
t2.username
FROM
draw_lots_group_judges t
LEFT JOIN project_judge t2 ON t.judge_id = t2.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
<if test="roleType != null and roleType != ''">
AND t.role_type = #{roleType}
</if>
and t.group_id = #{groupId}
</select>
<select id="groupNums" resultType="java.lang.Integer">
SELECT
t.group_num
FROM
draw_lots_group_items t
WHERE
t.delete_time IS NULL
AND t.group_num IS NOT NULL
AND t.group_id = #{groupId}
order by group_num
</select>
</mapper>
<?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.zhongzhi.dao.DrawLotsGroupItemsMapper">
<select id="allGroupItems" resultType="com.zhongzhi.vo.drawlots.AllGroupItemsVO">
SELECT
t.id,
t2.project_name,
t3.college,
t4.group_name,
t3.`name`
FROM
draw_lots_group_items t
LEFT JOIN project t2 ON t.project_id = t2.id
LEFT JOIN student t3 ON t2.proposer_id = t3.id
left join draw_lot_group_dict t4 on t.group_id = t4.id
WHERE
t.delete_time IS NULL
AND t.scene_id = #{sceneId}
<if test="projectName != null and projectName != ''">
AND (t2.project_name LIKE concat('%', #{projectName}, '%')
OR t2.college LIKE concat('%', #{projectName}, '%'))
</if>
<if test="college != null and college != ''">
and t2.college = #{college}
</if>
</select>
<select id="matchProjects" resultType="com.zhongzhi.vo.drawlots.MatchProjectsVO">
SELECT
t.id,
t.project_name,
t.college,
t3.name
FROM
project t
LEFT JOIN student t3 ON t.proposer_id = t3.id
WHERE
t.delete_time IS NULL
and t3.delete_date is null
AND t.match_id = #{matchId}
<if test="projectSchedule != null and projectSchedule != ''">
and t.project_schedule = #{projectSchedule}
</if>
AND t.id NOT IN (
SELECT
t2.project_id
FROM
draw_lots_group_items t2
WHERE
t2.delete_time IS NULL
)
</select>
<select id="collegeProjects" resultType="com.zhongzhi.vo.drawlots.CollegeProjectsVO">
SELECT
t2.id,
t2.project_name,
t2.college,
t2.project_progress
FROM
project t2
LEFT JOIN draw_lots_scenes t3 ON t2.match_id = t3.match_id
WHERE
t2.delete_time IS NULL
and t3.delete_time IS NULL
AND t3.id = #{sceneId}
<if test="college != null and college != ''">
AND (t2.college LIKE concat('%', #{projectName}, '%') or t2.project_name LIKE concat('%', #{projectName}, '%') )
</if>
and t2.project_schedule not in ('报名阶段','校级申请项目')
<if test="projectSchedule != null and projectSchedule != ''">
and t2.project_schedule = #{projectSchedule}
</if>
<if test="projectProgress != null and projectProgress != ''">
and t2.project_progress = #{projectProgress}
</if>
AND t2.id not in (select project_id from draw_lots_group_items t where t.delete_time is null and t.scene_id = #{sceneId})
</select>
<select id="noFullGroup" resultType="com.zhongzhi.model.DrawLotGroupDictDO">
select * from (SELECT
t1.id,
t1.scene_id,
t1.project_cnt,
t1.group_name,
t2.college,
ifnull( t3.cnt, 0 ) cnt
FROM
draw_lot_group_dict t1
LEFT JOIN (
SELECT DISTINCT
t1.scene_id,
t2.college
FROM
draw_lots_group_items t1
LEFT JOIN project t2 ON t1.project_id = t2.id
WHERE
t1.scene_id = #{sceneId}
AND t1.delete_time IS NULL
) t2 ON t1.scene_id = t2.scene_id
LEFT JOIN (
SELECT
t1.scene_id,
t1.group_id,
t2.college,
count( 1 ) cnt
FROM
draw_lots_group_items t1
LEFT JOIN project t2 ON t1.project_id = t2.id
WHERE
t1.delete_time IS NULL
AND t1.scene_id = #{sceneId}
AND t1.group_id IS NOT NULL
GROUP BY
t1.scene_id,
t1.group_id,
t2.college
) t3 ON t1.scene_id = t3.scene_id
AND t1.id = t3.group_id
AND t2.college = t3.college
WHERE
t1.scene_id = #{sceneId}
AND t1.delete_time IS NULL
AND t2.college = #{college}
AND t1.id IN (
SELECT
t3.id
FROM
(
SELECT
t1.scene_id,
t1.id,
t1.project_cnt,
IFNULL( t2.cnt, 0 ) cnt
FROM
(
SELECT
t.scene_id,
t.id,
t.project_cnt
FROM
draw_lot_group_dict t
WHERE
t.delete_time IS NULL
AND t.scene_id = #{sceneId}
) t1
LEFT JOIN (
SELECT
t.scene_id,
t.group_id,
count( 1 ) cnt
FROM
draw_lots_group_items t
WHERE
t.delete_time IS NULL
AND t.scene_id = #{sceneId}
GROUP BY
t.scene_id,
t.group_id
) t2 ON t1.scene_id = t2.scene_id
AND t1.id = t2.group_id
) t3
WHERE
t3.project_cnt - t3.cnt > 0
)
) t where t.cnt = #{count}
</select>
<select id="groupProjectInfo" resultType="com.zhongzhi.vo.drawlots.GroupProjectInfoVO">
SELECT
t.id,
t2.group_name,
t.group_num,
t3.project_name,
t3.college
FROM
draw_lots_group_items t
LEFT JOIN draw_lot_group_dict t2 ON t.group_id = t2.id
LEFT JOIN project t3 ON t.project_id = t3.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
AND t3.delete_time IS NULL
AND t.group_id = #{groupId}
order by t.group_num
</select>
<select id="existNum" resultType="java.lang.Integer">
SELECT
t.group_num
FROM
draw_lots_group_items t
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
AND t.group_num IS NOT NULL
</select>
<select id="sceneCollege" resultType="java.lang.Integer">
select min(cnt) from (SELECT
t.id,
ifnull( t2.cnt, 0 ) cnt
FROM
draw_lot_group_dict t
LEFT JOIN (
SELECT
t.group_id,
count( t.project_id ) AS cnt
FROM
draw_lots_group_items t
LEFT JOIN project t2 ON t.project_id = t2.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
AND t.scene_id = #{sceneId}
and t2.college = #{college}
GROUP BY
t.group_id
) t2 ON t.id = t2.group_id
WHERE
t.delete_time IS NULL
and t.scene_id = #{sceneId}) t2
</select>
</mapper>
<?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.zhongzhi.dao.DrawLotsGroupJudgesMapper">
<select id="matchJudges" resultType="com.zhongzhi.vo.drawlots.MatchJudgesVO">
SELECT
t2.id,
t.id mapping_id,
t2.username,
t.expector_type,
t.role_type,
t3.group_name,
t2.telephone,
t2.unit,
t2.position
FROM
draw_lots_group_judges t
LEFT JOIN project_judge t2 ON t.judge_id = t2.id
LEFT JOIN draw_lot_group_dict t3 ON t.group_id = t3.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
and t3.delete_time is null
and t.scene_id = #{sceneId}
<if test="userName != null and userName != ''">
and (t2.username like concat('%', #{userName}, '%') or t2.telephone like concat('%', #{userName}, '%') )
</if>
<if test="expectorType != null and expectorType != ''">
and t.expector_type = #{expectorType}
</if>
<if test="roleType != null and roleType != ''">
and t.role_type = #{roleType}
</if>
</select>
<select id="selectJudges" resultType="com.zhongzhi.vo.drawlots.SelectJudgesVO">
SELECT
t2.id,
t2.username,
t2.unit,
t2.position,
t2.telephone
FROM
project_judge t2
WHERE
t2.delete_time IS NULL
<if test="userName != null and userName != ''">
and (t2.username like concat('%', #{userName}, '%') or t2.telephone like concat('%', #{userName}, '%') )
</if>
and t2.id not in (
select judge_id from
draw_lots_group_judges t
where t.delete_time is null
AND t.scene_id = #{sceneId}
)
</select>
<select id="allNum" resultType="java.lang.Integer">
SELECT
t.group_num
FROM
draw_lots_judge_num t
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
</select>
<select id="drawJudgeInfo" resultType="com.zhongzhi.vo.drawlots.DrawJudgeInfoVO">
SELECT
t.role_type,
t.expector_type,
t3.username,
t2.group_num
FROM
draw_lots_judge_num t2
left join draw_lots_group_judges t on t2.group_id = t.group_id and t2.group_num = t.group_num
LEFT JOIN project_judge t3 ON t.judge_id = t3.id
WHERE
t.delete_time IS NULL
AND t2.group_id = #{groupId}
order by t2.group_num
</select>
<select id="currentGroupLeaderCnt" resultType="java.lang.Integer">
SELECT
count( 1 )
FROM
draw_lots_group_judges t
WHERE
t.delete_time IS NULL
AND t.role_type = '组长'
AND t.group_id = #{groupId}
</select>
<select id="noLeaderGroup" resultType="com.zhongzhi.model.DrawLotGroupDictDO">
SELECT
*
FROM
draw_lot_group_dict t
WHERE
t.scene_id = #{sceneId}
AND t.id NOT IN (
SELECT
t.group_id
FROM
draw_lots_group_judges t
WHERE
t.scene_id = #{sceneId}
AND t.role_type = '组长'
and t.group_id is not null
)
</select>
<select id="noMemberGroup" resultType="com.zhongzhi.model.DrawLotGroupDictDO">
SELECT
*
FROM
(
SELECT
t.id,
t.group_name,
ifnull( t2.cnt, 0 ) cnt,
t.teach_cnt,
t.field_cnt
FROM
draw_lot_group_dict t
LEFT JOIN (
SELECT
t.scene_id,
t.group_id,
count( 1 ) cnt
FROM
draw_lots_group_judges t
WHERE
t.delete_time IS NULL
AND t.scene_id = #{sceneId}
AND t.expector_type = #{teachType}
GROUP BY
t.scene_id,
t.group_id,
t.expector_type
) t2 ON t.id = t2.group_id
where t.scene_id = #{sceneId}
) t
WHERE
1 = 1
<if test="teachType == '教育专家'">
AND t.teach_cnt > t.cnt
</if>
<if test="teachType == '行业专家'">
AND t.field_cnt > t.cnt
</if>
</select>
<select id="login" resultType="com.zhongzhi.vo.drawlots.LoginVO">
SELECT
*
FROM
(
SELECT
concat( t2.group_name, '', t.group_num ) NAME,
t2.group_name,
t.group_id,
t.group_num,
t2.scene_id
FROM
draw_lots_judge_num t
LEFT JOIN draw_lot_group_dict t2 ON t.group_id = t2.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
) t
WHERE
t.NAME = #{name}
</select>
<select id="judgeScoreScreen" resultType="com.zhongzhi.vo.drawlots.ScoreScreenVO">
SELECT
t.judge_id,
t2.score,
t2.submit_status
FROM
draw_lots_group_judges t
LEFT JOIN (
SELECT
t.judge_id,
t.score,
t.submit_status
FROM
draw_lots_scores t
LEFT JOIN draw_lots_group_items t2 ON t.scene_id = t2.scene_id
AND t.group_id = t2.group_id
AND t.project_id = t2.project_id
LEFT JOIN draw_lot_group_dict t3 ON t.group_id = t3.id
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
AND t2.group_num = #{groupNum}
and t.submit_status in ('已提交','弃权')
ORDER BY
t2.group_num
) t2 ON t.judge_id = t2.judge_id
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
</select>
<select id="existNum" resultType="java.lang.Integer">
SELECT
t.group_num
FROM
draw_lots_group_judges t
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
</select>
<select id="judgeInfo" resultType="com.zhongzhi.vo.drawlots.JudgeFullInfoVO">
SELECT
t.judge_id,
t2.username,
t.group_num,
t3.group_name,
t.expector_type,
t.role_type
FROM
draw_lots_group_judges t
LEFT JOIN project_judge t2 ON t.judge_id = t2.id
LEFT JOIN draw_lot_group_dict t3 ON t.group_id = t3.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
AND t.group_num = #{groupNum}
AND t.group_id = #{groupId}
</select>
</mapper>
<?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.zhongzhi.dao.DrawLotsJudgeNumMapper">
</mapper>
<?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.zhongzhi.dao.DrawLotsScoresMapper">
<select id="groupScores" resultType="com.zhongzhi.vo.drawlots.GroupScoresVO">
SELECT
t2.id,
t2.project_name,
t2.college,
t3.id as groupId,
t.group_num,
t3.group_name
FROM
draw_lots_group_items t
LEFT JOIN project t2 ON t.project_id = t2.id
left join draw_lot_group_dict t3 on t.group_id = t3.id
WHERE
t.delete_time IS NULL
<if test="projectName != null and projectName != ''">
AND t2.project_name like concat('%', #{projectName}, '%')
</if>
and t.scene_id = #{sceneId}
<if test="groupId != null and groupId != ''">
and t.group_id = #{groupId}
</if>
</select>
<select id="groupJudgeScores" resultType="com.zhongzhi.vo.drawlots.GroupJudgeScoresVO">
SELECT
t2.id,
t2.username,
t3.expector_type,
t3.role_type,
t.score
FROM
draw_lots_scores t
left join project_judge t2 on t.judge_id = t2.id
left join draw_lots_group_judges t3 on t.scene_id = t3.scene_id and t.judge_id = t3.judge_id
WHERE
t.submit_status in ('已提交','弃权')
and t.group_id = #{groupId}
and t.project_id = #{projectId}
</select>
<select id="queryItems" resultType="com.zhongzhi.vo.drawlots.QueryItemsVO">
SELECT
t4.id,
t2.group_name,
t3.group_num,
t4.project_name,
t5.submit_status,
t5.score
FROM
draw_lots_group_judges t
LEFT JOIN draw_lot_group_dict t2 ON t.group_id = t2.id
LEFT JOIN draw_lots_group_items t3 ON t.group_id = t3.group_id
LEFT JOIN project t4 ON t3.project_id = t4.id
LEFT JOIN draw_lots_scores t5 ON t.judge_id = t5.judge_id
AND t.group_id = t5.group_id and t3.project_id = t5.project_id
WHERE
t.delete_time IS NULL
AND t.judge_id = #{judgeId}
order by t3.group_num
</select>
<select id="groupRank" resultType="com.zhongzhi.vo.drawlots.GroupRankVO">
SELECT
t.id,
t2.project_name,
t2.college,
t3.group_name,
t.group_num,
t.total_score
FROM
draw_lots_group_items t
LEFT JOIN project t2 ON t.project_id = t2.id
LEFT JOIN draw_lot_group_dict t3 ON t.group_id = t3.id
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
ORDER BY
t.total_score desc
</select>
<select id="hand4Project" resultType="com.zhongzhi.model.DrawLotsGroupItemsDO">
SELECT
t.id,
t2.project_name,
t2.college,
t3.group_name,
t.order_no,
t.group_num
FROM
draw_lots_group_items t
LEFT JOIN project t2 ON t.project_id = t2.id
left join draw_lot_group_dict t3 on t.group_id = t3.id
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
ORDER BY
t.total_score desc
LIMIT 4
</select>
<select id="beforeHand4Project" resultType="com.zhongzhi.vo.drawlots.RankListVO">
SELECT
t.id,
t2.project_name,
t2.college,
t3.group_name,
t.order_no,
t.group_num
FROM
draw_lots_group_items t
LEFT JOIN project t2 ON t.project_id = t2.id
left join draw_lot_group_dict t3 on t.group_id = t3.id
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
ORDER BY
t.total_score
LIMIT 4
</select>
<select id="groupLeader" resultType="java.lang.String">
SELECT
t2.username
FROM
draw_lots_group_judges t
left join project_judge t2 on t.judge_id = t2.id
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
and t.role_type = '组长'
</select>
<select id="rank" resultType="com.zhongzhi.vo.drawlots.RankListVO">
SELECT
t.id,
t3.project_name,
t3.college,
t2.group_name,
t.group_num,
t.order_no,
t5.username leader
FROM
draw_lots_group_items t
LEFT JOIN draw_lot_group_dict t2 ON t.group_id = t2.id
LEFT JOIN project t3 ON t.project_id = t3.id
LEFT JOIN draw_lots_group_judges t4 ON t.group_id = t4.group_id
AND t4.role_type = '组长'
LEFT JOIN project_judge t5 ON t4.judge_id = t5.id
WHERE
t.delete_time IS NULL
AND t.scene_id = #{sceneId}
<if test="groupId != null and groupId != ''">
AND t.group_id = #{groupId}
</if>
<if test="projectName != null and projectName != ''">
AND t.project_name LIKE like concat('%', #{projectName}, '%')
</if>
order by t.order_no
</select>
</mapper>
......@@ -26,8 +26,7 @@
select
*
from match_dict
where match_type = #{matchType}
and delete_time is null
where delete_time is null
</select>
<select id="getList" resultType="com.zhongzhi.model.MatchDictDO">
......@@ -52,30 +51,4 @@
c.id
</select>
<select id="getVocationalCurrentMatch" resultType="com.zhongzhi.model.MatchDictDO">
SELECT
distinct t2.*
FROM
project t
LEFT JOIN match_dict t2 ON t.match_id = t2.id
where t.delete_time is null
and t2.delete_time is null
and t2.`status` = 1
and t.proposer_id = #{memberId}
and t.project_type = #{progress}
</select>
<select id="getSeedCurrentMatch" resultType="com.zhongzhi.model.MatchDictDO">
SELECT
distinct t2.*
FROM
project t
LEFT JOIN match_dict t2 ON t.match_id = t2.id
where t.delete_time is null
and t2.delete_time is null
and t2.`status` = 1
and t.proposer_id = #{memberId}
and t.project_progress = #{progress}
</select>
</mapper>
......@@ -18,13 +18,17 @@
</sql>
<select id="getPermissionById" resultType="com.zhongzhi.vo.permission.PermissionVO">
select
p.*
from permissions p
left join administer_permission ap on ap.permission_id = p.id
where ap.administer_id = #{id}
and p.delete_time is null
and p.delete_time is null
SELECT distinct
t2.*
FROM
administer_permission t
left join permissions t2 on t.permission_id = t2.id
WHERE
t.delete_time IS NULL
and t2.delete_time is null
<if test="id != null and id != ''">
and t.administer_id = #{id}
</if>
</select>
</mapper>
......@@ -2,68 +2,6 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhongzhi.dao.ProjectDAO">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.zhongzhi.model.ProjectDO">
<id column="id" property="id"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
<result column="delete_time" property="deleteTime"/>
<result column="proposer_id" property="proposerId"/>
<result column="item_field" property="itemField"/>
<result column="logo_uri" property="logoUri"/>
<result column="project_name" property="projectName"/>
<result column="project_group" property="projectGroup"/>
<result column="match_id" property="matchId"/>
<result column="college" property="college" />
<result column="classification" property="classification"/>
<result column="address" property="address"/>
<result column="project_intro" property="projectIntro"/>
<result column="project_creativity" property="projectCreativity"/>
<result column="scientific_principle" property="scientificPrinciple"/>
<result column="application_prospect" property="applicationProspect"/>
<result column="road_show_form" property="roadShowForm"/>
<result column="restriction" property="restriction"/>
<result column="project_transform" property="projectTransform"/>
<result column="result_transfer" property="resultTransfer"/>
<result column="competition_owner" property="competitionOwner"/>
<result column="competition_first" property="competitionFirst"/>
<result column="both_invention" property="bothInvention"/>
<result column="project_progress" property="projectProgress"/>
<result column="project_stage" property="projectStage"/>
<result column="company_name" property="companyName"/>
<result column="legal_person_status" property="legalPersonStatus"/>
<result column="legal_person_name" property="legalPersonName"/>
<result column="position" property="position"/>
<result column="register_fund" property="registerFund"/>
<result column="register_date" property="registerDate"/>
<result column="register_province" property="registerProvince"/>
<result column="register_address" property="registerAddress"/>
<result column="unify_code" property="unifyCode"/>
<result column="print_attachment" property="printAttachment"/>
<result column="print_attachment_type" property="printAttachmentType"/>
<result column="print_attachment_name" property="printAttachmentName"/>
<result column="privacy_setting" property="privacySetting"/>
<result column="project_status" property="projectStatus"/>
<result column="project_schedule" property="projectSchedule"/>
<result column="project_type" property="projectType"/>
<result column="project_review" property="projectReview"/>
<result column="project_assigned" property="projectAssigned"/>
<result column="financial_statement" property="financialStatement"/>
<result column="edit_status" property="editStatus"/>
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
create_time,
update_time,
id, proposer_id, item_field, logo_uri, project_name, project_group, match_id,college ,classification, address,
project_intro, project_creativity, scientific_principle, application_prospect, road_show_form, restriction,
project_transform, result_transfer, competition_owner, competition_first, both_invention, project_progress,
company_name, legal_person_status, legal_person_name, position, register_fund, register_date, register_province,
register_address, unify_code, privacy_setting, project_status, project_schedule, project_type, delelte_time
,print_attachment, print_attachment_type, print_attachment_name, project_review, project_assigned,edit_status
</sql>
<select id="getListPage" resultType="com.zhongzhi.vo.project.ProjectPageVO">
select
p.id,
......@@ -73,17 +11,18 @@
p.project_schedule,
p.project_status,
p.project_progress,
p.college,
p.edit_status,
s.name,
p.theme_name
p.project_group,
s.college,
p.project_track,
p.project_type
from project p
left join student s on s.id = p.proposer_id
<where>
<if test="matchId != null and matchId != ''">
and match_id = #{matchId}
</if>
and p.project_type = #{projectType}
and proposer_id = #{proposerId}
and s.delete_time is null
and p.delete_time is null
......@@ -121,70 +60,30 @@
<select id="getSeedTrackProjectPage" resultType="com.zhongzhi.vo.project.SeedTrackProjectPageVO">
select
p.*,
p.college,
s.college,
s.name,
s.major,
s.telephone,
s.xueyuan,
DATE_FORMAT(p.create_time, '%Y-%m-%d') as applicationTime,
s.class_name
p.project_track
from project p
left join student s ON s.id = p.proposer_id
<where>
and p.match_id = #{matchId}
and p.project_type = #{projectType}
and p.project_status != '填写中'
and p.college = '上海电子信息职业技术学院'
<if test="themeName != null and themeName != ''">
and p.theme_name like concat('%', #{themeName}, '%')
</if>
<if test="projectGroup != null and projectGroup != '' and projectGroup !='中职/高职'">
<if test="projectGroup != null and projectGroup != ''">
and p.project_group = #{projectGroup}
</if>
<if test="projectSchedule != null and projectSchedule != ''">
and p.project_schedule = #{projectSchedule}
</if>
<if test="projectStatus != null and projectStatus != ''">
<if test="projectStatus == '已评审'">
and p.project_status != '待评审'
</if>
<if test="projectStatus != '已评审'">
and p.project_status = #{projectStatus}
</if>
</if>
<if test="itemField != null and itemField != ''">
and p.item_field = #{itemField}
</if>
<if test="projectProgress != null and projectProgress != ''">
and p.project_progress = #{projectProgress}
<if test="projectType != null and projectType != ''">
and p.project_type = #{projectType}
</if>
<if test="name != null and name != ''">
and (p.project_name like concat('%',#{name},'%') or p.college like concat('%',#{name},'%'))
<if test="xueyuan != null and xueyuan != ''">
and s.xueyuan = #{xueyuan}
</if>
and p.delete_time is null
and s.delete_time is null
</where>
</select>
<select id="getSeedTrackProjectPageCity" resultType="com.zhongzhi.vo.project.SeedTrackProjectPageVO">
select
p.*,
p.college,
s.name,
s.major,
s.telephone,
DATE_FORMAT(p.create_time, '%Y-%m-%d') as applicationTime
from project p
left join student s ON s.id = p.proposer_id
<where>
and p.match_id = #{matchId}
and p.project_type = #{projectType}
and p.project_status != '填写中'
and p.college = '上海电子信息职业技术学院'
<if test="themeName != null and themeName != ''">
and p.theme_name like concat('%', #{themeName}, '%')
</if>
<if test="projectGroup != null and projectGroup != '' and projectGroup !='中职/高职'">
and p.project_group = #{projectGroup}
<if test="projectTrack != null and projectTrack != ''">
and p.project_track = #{projectTrack}
</if>
<if test="projectSchedule != null and projectSchedule != ''">
and p.project_schedule = #{projectSchedule}
......@@ -204,7 +103,7 @@
and p.project_progress = #{projectProgress}
</if>
<if test="name != null and name != ''">
and (p.project_name like concat('%',#{name},'%') or p.college like concat('%',#{name},'%'))
and (p.project_name like concat('%',#{name},'%'))
</if>
and p.delete_time is null
and s.delete_time is null
......@@ -213,31 +112,45 @@
<select id="getReviewList" resultType="com.zhongzhi.vo.project.ReviewListVO">
select
*
from project
t1.*,
t2.college,
t2.major,
t2.telephone,
t2.xueyuan
from project t1
left join student t2 on t1.proposer_id = t2.id
<where>
<if test="matchId != null and matchId != ''">
and match_id = #{matchId}
and t1.match_id = #{matchId}
</if>
<if test="projectSchedule != null and projectSchedule != ''">
and t1.project_schedule = #{projectSchedule}
</if>
<if test="schoolAssigned != null and schoolAssigned != ''">
and project_assigned = #{schoolAssigned}
<if test="projectReview != null and projectReview != ''">
and t1.project_review = #{projectReview}
</if>
<if test="projectName != null and projectName != ''">
and (project_name like concat('%', #{projectName}, '%') or college like concat('%', #{projectName}, '%'))
and (t1.project_name like concat('%', #{projectName}, '%') or t2.name like concat('%', #{projectName}, '%'))
</if>
<if test="projectGroup != null and projectGroup != ''">
and project_group = #{projectGroup}
and t1.project_group = #{projectGroup}
</if>
<if test="schoolReview != null and schoolReview != ''">
and project_review = #{schoolReview}
<if test="projectAssigned != null and projectAssigned != ''">
and t1.project_assigned = #{projectAssigned}
</if>
<if test="projectProgress != null and projectProgress != ''">
and project_progress = #{projectProgress}
and t1.project_progress = #{projectProgress}
</if>
and project_schedule = '校级申请项目'
and project_status != '填写中'
and college = '上海电子信息职业技术学院'
and delete_time is null
<if test="projectTrack != null and projectTrack != ''">
and t1.project_track like concat('%', #{projectTrack}, '%')
</if>
<if test="projectType != null and projectType != ''">
and t1.project_type like concat('%', #{projectType}, '%')
</if>
<if test="xueyuan != null and xueyuan != ''">
and t2.xueyuan like concat('%', #{xueyuan}, '%')
</if>
and t1.delete_time is null
</where>
</select>
......@@ -247,9 +160,13 @@
pr.review_status as reviewStatus,
pr.review_score as reviewScore,
pr.score as score,
pr.review_opinion
pr.review_opinion,
t.college school,
t.major,
t.telephone
from project p
left join project_school_review pr on pr.project_id = p.id
left join project_review pr on pr.project_id = p.id
left join student t on p.proposer_id = t.id
<where>
<if test="judgeId != null and judgeId != ''">
and pr.judge_id = #{judgeId}
......@@ -274,10 +191,7 @@
</if>
and p.delete_time is null
and pr.delete_time is null
and p.college = '上海电子信息职业技术学院'
and p.project_group = '高职'
</where>
order by p.id
</select>
<select id="getProjectReviewList" resultType="com.zhongzhi.model.ProjectDO">
......@@ -286,16 +200,14 @@
pr.project_schedule as projectSchedule,
pr.review_status as projectReview
from project p
left join project_school_review pr on p.id = pr.project_id
left join project_review pr on p.id = pr.project_id
where
p.match_id = #{matchId}
and pr.judge_id = #{id}
and p.delete_time is null
and pr.delete_time is null
and p.college = '上海电子信息职业技术学院'
and p.project_group = '高职'
<if test="projectProgress != null and projectProgress != '' ">
and p.project_progress = #{projectProgress}
<if test="projectSchedule != null and projectSchedule != '' ">
and p.project_schedule = #{projectSchedule}
</if>
</select>
......@@ -329,7 +241,7 @@
and p.project_group = #{projectGroup}
</if>
<if test="name != null and name != ''">
and p.college = #{name}
and s.college = #{name}
</if>
<if test="projectProgress!= null and projectProgress != ''">
and p.project_progress = #{projectProgress}
......@@ -337,8 +249,6 @@
and p.project_status != '填写中'
and p.delete_time is null
and s.delete_time is null
and p.college = '上海电子信息职业技术学院'
and p.project_group = '高职'
</where>
</select>
......@@ -449,7 +359,6 @@
</when>
</choose>
AND delete_time is null
and college = '上海电子信息职业技术学院'
</where>
</select>
......@@ -476,192 +385,167 @@
)
</select>
<select id="attendCount" resultType="java.lang.Integer">
<select id="collegeNum" resultType="integer">
SELECT
count( t2.id )
count( DISTINCT t2.college )
FROM
project t
LEFT JOIN match_dict t2 ON t.match_id = t2.id
LEFT JOIN student t2 ON t.proposer_id = t2.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
AND t.proposer_id = #{userId}
and t2.match_date = #{matchDate}
</select>
<select id="judgeThemeDone" resultType="com.zhongzhi.vo.student.JudgeThemeDoneVO">
<select id="getVocationalReviewNum" resultType="com.zhongzhi.model.ProjectDO">
SELECT
p.*
FROM
project p
left join student s on p.proposer_id = s.id
WHERE
p.delete_time is null
and p.match_id = #{matchId}
AND p.project_review IN ("待评审","已评审")
</select>
<select id="getVocationalAssignNum" resultType="com.zhongzhi.model.ProjectDO">
SELECT
*
FROM
project p
left join student s on p.proposer_id = s.id
WHERE
p.delete_time is null
and p.match_id = #{matchId}
AND p.project_assigned is not null
</select>
<select id="exportProjectReview" resultType="com.zhongzhi.model.ProjectDO">
SELECT
p.*
FROM
project p
left join student s on p.proposer_id = s.id
WHERE
p.delete_time is null
and p.match_id = #{matchId}
AND p.project_schedule != '填写中'
</select>
<select id="getDateList" resultType="com.zhongzhi.vo.project.GetDataDListVO">
SELECT
t.theme_name
t2.xueyuan,
t2.major,
count( t.id ) projectCnt,
count(
DISTINCT ( t2.id )) studentCnt
FROM
project t
LEFT JOIN student t2 ON t.proposer_id = t2.id
WHERE
t.delete_time IS NULL
AND t.proposer_id = #{studentId}
AND t2.delete_time IS NULL
AND t.match_id = #{matchId}
and project_progress = '文化创意'
GROUP BY
t2.xueyuan,
t2.major
</select>
<select id="existProject" resultType="com.zhongzhi.model.ProjectDO">
<select id="collegeProjects" resultType="java.lang.Long">
SELECT
id,
proposer_id,
theme_name,
item_field,
logo_uri,
project_name,
project_name_en,
project_group,
match_id,
college,
classification,
address,
project_intro,
project_creativity,
scientific_principle,
application_prospect,
road_show_form,
restriction,
project_transform,
result_transfer,
competition_owner,
competition_first,
both_invention,
project_progress,
project_stage,
company_name,
legal_person_status,
legal_person_name,
position,
register_fund,
register_date,
register_province,
register_address,
unify_code,
financial_statement,
privacy_setting,
project_status,
project_schedule,
project_type,
print_attachment,
print_attachment_type,
print_attachment_name,
investment,
project_ppt_url,
project_ppt_type,
project_ppt_type_en,
project_ppt_name,
project_ppt_name_en,
project_review,
project_assigned,
edit_status,
vod_url,
order_no,
project_ppt_url_en,
create_time,
update_time,
delete_time
t.id
FROM
project
project t
LEFT JOIN student t2 ON t.proposer_id = t2.id
WHERE
delete_time IS NULL
<if test="projectGroup != null and projectGroup != ''">
AND project_group = #{projectGroup}
</if>
<if test="studentId != null and studentId != ''">
AND proposer_id = #{studentId}
</if>
<if test="themeName != null and themeName != ''">
AND theme_name = #{themeName}
</if>
<if test="matchId != null and matchId != ''">
AND match_id = #{matchId}
</if>
<if test="projectStatus != null and projectStatus != ''">
and project_status = #{projectStatus}
</if>
<if test="progress != null and progress != ''">
and project_progress = #{progress}
</if>
t.delete_time IS NULL
AND t2.delete_time IS NULL
AND t2.xueyuan = #{xueyuan}
AND t2.major = #{major}
AND t.match_id = #{matchId}
</select>
<select id="existVocationalProject" resultType="com.zhongzhi.model.ProjectDO">
<select id="projectMembers" resultType="java.lang.Integer">
SELECT
id,
proposer_id,
theme_name,
item_field,
logo_uri,
project_name,
project_name_en,
project_group,
match_id,
college,
classification,
address,
project_intro,
project_creativity,
scientific_principle,
application_prospect,
road_show_form,
restriction,
project_transform,
result_transfer,
competition_owner,
competition_first,
both_invention,
project_progress,
project_stage,
company_name,
legal_person_status,
legal_person_name,
position,
register_fund,
register_date,
register_province,
register_address,
unify_code,
financial_statement,
privacy_setting,
project_status,
project_schedule,
project_type,
print_attachment,
print_attachment_type,
print_attachment_name,
investment,
project_ppt_url,
project_ppt_type,
project_ppt_type_en,
project_ppt_name,
project_ppt_name_en,
project_review,
project_assigned,
edit_status,
vod_url,
order_no,
project_ppt_url_en,
create_time,
update_time,
delete_time
count( 1 )
FROM
project
project_member t
WHERE
delete_time IS NULL
<if test="projectGroup != null and projectGroup != ''">
AND project_group = #{projectGroup}
</if>
<if test="studentId != null and studentId != ''">
AND proposer_id = #{studentId}
</if>
<if test="themeName != null and themeName != ''">
AND theme_name = #{themeName}
</if>
<if test="matchId != null and matchId != ''">
AND match_id = #{matchId}
</if>
<if test="projectStatus != null and projectStatus != ''">
and project_status = #{projectStatus}
</if>
t.delete_time IS NULL
AND t.project_id = #{projectId}
AND t.type = #{type}
</select>
<select id="projectProgressCnt" resultType="com.zhongzhi.vo.project.ProjectProgressCntVO">
SELECT
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_group = '创意组' ) chuangyiCnt,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_group = '初创组' ) chuchangzu,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_group = '成长组' ) chengzhangzu,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_track = '新文科类' ) wenkelei,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_track = '新医科类' ) yikelei,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_track = '新农科类' ) nongkelei,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_track = '新工科类' ) gongkelei,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_track = '"人工智能+"' ) rengonglei
FROM
DUAL
</select>
</mapper>
......@@ -35,25 +35,27 @@
and status = #{status}
</if>
and delete_time is null
<if test="projectTrack != null and projectTrack != ''">
and project_track like concat('%', #{projectTrack}, '%')
</if>
</where>
</select>
<select id="projectJudgesAssigned" resultType="com.zhongzhi.vo.judge.ProjectJudgePageVO">
select
pj.*
from project_school_judge pj
left join project_school_review pr on pr.judge_id = pj.id
from project_judge pj
left join project_review pr on pr.judge_id = pj.id
left join project p on p.id = pr.project_id
<where>
<if test="projectGroup != null and projectGroup != ''">
and p.project_progress = #{projectGroup}
and p.project_group = #{projectGroup}
</if>
<if test="projectSchedule != null and projectSchedule != ''">
and p.project_schedule = #{projectSchedule}
</if>
and p.match_id = #{matchId}
and pj.status = 1
and p.college = '上海电子信息职业技术学院'
and p.delete_time is null
and pj.delete_time is null
and pr.delete_time is null
......
......@@ -2,6 +2,30 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhongzhi.dao.ProjectReviewDAO">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.zhongzhi.model.ProjectReviewDO">
<id column="id" property="id"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
<result column="delete_time" property="deleteTime"/>
<result column="project_id" property="projectId"/>
<result column="judge_id" property="judgeId"/>
<result column="review_score" property="reviewScore"/>
<result column="score" property="score"/>
<result column="review_opinion" property="reviewOpinion"/>
<result column="project_schedule" property="projectSchedule"/>
<result column="review_time" property="reviewTime"/>
<result column="review_status" property="reviewStatus"/>
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
create_time,
update_time,
delete_time,
id, project_id, judge_id, review_score, score, review_opinion, project_schedule, review_time, review_status
</sql>
<select id="getList" resultType="com.zhongzhi.vo.judge.ProjectReviewVO">
select
pj.username as judgesName,
......
<?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.zhongzhi.dao.MatchCollegeCountDAO">
<mapper namespace="com.zhongzhi.dao.ProjectTrackDAO">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.zhongzhi.model.MatchCollegeCountDO">
<resultMap id="BaseResultMap" type="com.zhongzhi.model.ProjectTrackDO">
<id column="id" property="id"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
<result column="delete_time" property="deleteTime"/>
<result column="match_id" property="matchId"/>
<result column="college_name" property="collegeName"/>
<result column="apply_cnt" property="applyCnt"/>
<result column="project_track" property="projectTrack"/>
</resultMap>
<!-- 通用查询结果列 -->
......@@ -18,7 +16,7 @@
create_time,
update_time,
delete_time,
id, match_id, college_name, apply_cnt
id, project_track
</sql>
</mapper>
......@@ -6,7 +6,7 @@ setParent=com.zhongzhi
# mapper.xml文件生成路径
mapperPath=/src/main/resources/mapper/
# 数据库地址
url=jdbc:mysql://116.62.57.92:3306/zhongzhi
url=jdbc:mysql://139.224.253.21:3306/gtja?autoReconnect=true&useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
driverName=com.mysql.cj.jdbc.Driver
userName=devloper
password=dev@1553$
\ No newline at end of file
userName=root
password=ykhladmin302
\ No newline at end of file
......@@ -6,35 +6,11 @@
"sourceType": "com.zhongzhi.common.configure.RemoteProperties"
},
{
"name": "mybatis-plus.global-config",
"type": "com.baomidou.mybatisplus.core.config.GlobalConfig",
"sourceType": "com.zhongzhi.common.configure.MybatisPlusConfig",
"sourceMethod": "globalConfig()"
},
{
"name": "mybatis-plus.global-config.db-config",
"type": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig",
"sourceMethod": "getDbConfig()"
},
{
"name": "sms",
"type": "com.zhongzhi.common.configure.AliyunSmsProperties",
"sourceType": "com.zhongzhi.common.configure.AliyunSmsProperties"
},
{
"name": "spring.datasource.dynamic.datasource.db1",
"type": "javax.sql.DataSource",
"sourceType": "com.zhongzhi.common.configure.MybatisPlusConfig",
"sourceMethod": "db1()"
},
{
"name": "spring.datasource.dynamic.datasource.db2",
"type": "javax.sql.DataSource",
"sourceType": "com.zhongzhi.common.configure.MybatisPlusConfig",
"sourceMethod": "db2()"
},
{
"name": "vod",
"type": "com.zhongzhi.common.configure.VODConfig",
"sourceType": "com.zhongzhi.common.configure.VODConfig"
......@@ -47,116 +23,6 @@
"sourceType": "com.zhongzhi.common.configure.RemoteProperties"
},
{
"name": "mybatis-plus.global-config.banner",
"type": "java.lang.Boolean",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig"
},
{
"name": "mybatis-plus.global-config.db-config.capital-mode",
"type": "java.lang.Boolean",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.db-config.column-format",
"type": "java.lang.String",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.db-config.id-type",
"type": "com.baomidou.mybatisplus.annotation.IdType",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.db-config.insert-strategy",
"type": "com.baomidou.mybatisplus.annotation.FieldStrategy",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.db-config.key-generator",
"type": "com.baomidou.mybatisplus.core.incrementer.IKeyGenerator",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.db-config.logic-delete-field",
"type": "java.lang.String",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.db-config.logic-delete-value",
"type": "java.lang.String",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.db-config.logic-not-delete-value",
"type": "java.lang.String",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.db-config.property-format",
"type": "java.lang.String",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.db-config.schema",
"type": "java.lang.String",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.db-config.select-strategy",
"type": "com.baomidou.mybatisplus.annotation.FieldStrategy",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.db-config.table-prefix",
"type": "java.lang.String",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.db-config.table-underline",
"type": "java.lang.Boolean",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.db-config.update-strategy",
"type": "com.baomidou.mybatisplus.annotation.FieldStrategy",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"
},
{
"name": "mybatis-plus.global-config.enable-sql-runner",
"type": "java.lang.Boolean",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig"
},
{
"name": "mybatis-plus.global-config.identifier-generator",
"type": "com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig"
},
{
"name": "mybatis-plus.global-config.mapper-registry-cache",
"type": "java.util.Set<java.lang.String>",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig"
},
{
"name": "mybatis-plus.global-config.meta-object-handler",
"type": "com.baomidou.mybatisplus.core.handlers.MetaObjectHandler",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig"
},
{
"name": "mybatis-plus.global-config.sql-injector",
"type": "com.baomidou.mybatisplus.core.injector.ISqlInjector",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig"
},
{
"name": "mybatis-plus.global-config.sql-session-factory",
"type": "org.apache.ibatis.session.SqlSessionFactory",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig"
},
{
"name": "mybatis-plus.global-config.super-mapper-class",
"type": "java.lang.Class<?>",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig"
},
{
"name": "sms.access-key-id",
"type": "java.lang.String",
"sourceType": "com.zhongzhi.common.configure.AliyunSmsProperties"
......@@ -225,20 +91,6 @@
"name": "vod.secret-key",
"type": "java.lang.String",
"sourceType": "com.zhongzhi.common.configure.VODConfig"
},
{
"name": "mybatis-plus.global-config.datacenter-id",
"type": "java.lang.Long",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig",
"deprecated": true,
"deprecation": {}
},
{
"name": "mybatis-plus.global-config.worker-id",
"type": "java.lang.Long",
"sourceType": "com.baomidou.mybatisplus.core.config.GlobalConfig",
"deprecated": true,
"deprecation": {}
}
],
"hints": []
......
# 本地环境配置
# 端口号
server.port=23508
spring.datasource.dynamic.strict=false
spring.datasource.dynamic.primary=master
spring.datasource.dynamic.hikari.min-idle=5
spring.datasource.dynamic.hikari.max-pool-size=20
spring.datasource.dynamic.hikari.connection-timeout=30000
spring.datasource.dynamic.hikari.idle-timeout=600000
# db1 中职库
spring.datasource.dynamic.datasource.db1.url=jdbc:mysql://116.62.57.92:3306/zhongzhi?connectTimeout=3000&socketTimeout=6000
spring.datasource.dynamic.datasource.db1.username=devloper
spring.datasource.dynamic.datasource.db1.password=dev@1553$
spring.datasource.dynamic.datasource.db1.driver-class-name=com.mysql.cj.jdbc.Driver
# db2 校内数据库
spring.datasource.dynamic.datasource.db2.url=jdbc:mysql://116.62.57.92:3306/electron?connectTimeout=3000&socketTimeout=6000
spring.datasource.dynamic.datasource.db2.username=devloper
spring.datasource.dynamic.datasource.db2.password=dev@1553$
spring.datasource.dynamic.datasource.db2.driver-class-name=com.mysql.cj.jdbc.Driver
server.port=23511
# 数据源配置
# 数据源配置
spring.datasource.url=jdbc:mysql://116.62.57.92:3306/lixin?autoReconnect=true&useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=devloper
spring.datasource.password=dev@1553$
spring.datasource.druid.initialSize=5
spring.datasource.druid.minIdle=5
spring.datasource.druid.maxActive=20
spring.datasource.druid.maxWait=60000
spring.datasource.druid.timeBetweenEvictionRunsMillis=60000
spring.datasource.druid.minEvictableIdleTimeMillis=300000
spring.datasource.druid.validationQuery=SELECT 1 FROM DUAL
spring.datasource.druid.testWhileIdle=true
spring.datasource.druid.testOnBorrow=false
spring.datasource.druid.testOnReturn=false
spring.datasource.druid.poolPreparedStatements=true
spring.datasource.druid.maxPoolPreparedStatementPerConnectionSize=20
spring.datasource.druid.useGlobalDataSourceStat=true
# 控制台日志打印
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
\ No newline at end of file
# 生产环境配置
# 端口号
server.port=23508
# db1
spring.datasource.dynamic.datasource.db1.url=jdbc:mysql://rm-uf69w46mo6agw0ahao.mysql.rds.aliyuncs.com:3306/zhongzhi?characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
spring.datasource.dynamic.datasource.db1.username=ykadmin
spring.datasource.dynamic.datasource.db1.password=youkedb608@good
spring.datasource.dynamic.datasource.db1.driver-class-name=com.mysql.cj.jdbc.Driver
# db2
spring.datasource.dynamic.datasource.db2.url=jdbc:mysql://rm-uf69w46mo6agw0ahao.mysql.rds.aliyuncs.com:3306/electron?characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
spring.datasource.dynamic.datasource.db2.username=ykadmin
spring.datasource.dynamic.datasource.db2.password=youkedb608@good
spring.datasource.dynamic.datasource.db2.driver-class-name=com.mysql.cj.jdbc.Driver
server.port=23511
server.tomcat.connection-timeout=600000
# 数据源配置
spring.datasource.url=jdbc:mysql://rm-uf69w46mo6agw0ahao.mysql.rds.aliyuncs.com:3306/lixin?characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=ykadmin_new
spring.datasource.password=youkedb608@good
spring.datasource.druid.initialSize=5
spring.datasource.druid.minIdle=5
spring.datasource.druid.maxActive=20
spring.datasource.druid.maxWait=600000
spring.datasource.druid.timeBetweenEvictionRunsMillis=600000
spring.datasource.druid.minEvictableIdleTimeMillis=300000
spring.datasource.druid.validationQuery=SELECT 1 FROM DUAL
spring.datasource.druid.testWhileIdle=true
spring.datasource.druid.testOnBorrow=false
spring.datasource.druid.testOnReturn=false
spring.datasource.druid.poolPreparedStatements=true
spring.datasource.druid.maxPoolPreparedStatementPerConnectionSize=20
spring.datasource.druid.useGlobalDataSourceStat=true
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
\ No newline at end of file
# 环境配置
spring.profiles.active=dev
spring.profiles.active=prod
# 文件编码 UTF8
spring.mandatory-file-encoding=UTF-8
spring.jackson.time-zone=GMT+8
......@@ -22,10 +22,6 @@ mybatis-plus.global-config.db-config.logic-delete-value=NOW()
mybatis-plus.global-config.db-config.logic-not-delete-value=NULL
#日志配置
logging.config=classpath:logback-spring.xml
logging.level.org.apache.ibatis=DEBUG
logging.level.com.zaxxer.hikari=DEBUG
logging.level.org.springframework.jdbc=DEBUG
logging.pattern.console="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n"
# 阿里云短信
sms.product=Dysmsapi
sms.domain=dysmsapi.aliyuncs.com
......
......@@ -8,7 +8,7 @@ c.code-message[10021]=验证码不正确
c.code-message[10022]=输入的手机号和接收验证码手机号不一致
c.code-message[10023]=该身份证号已注册
c.code-message[10024]=手机号未注册
c.code-message[10026]=请稍后再试
c.code-message[10026]=密码错误
# 项目
c.code-message[10040]=项目已申请
c.code-message[10041]=项目负责人已存在
......@@ -39,7 +39,7 @@ c.code-message[10075]=评审已开始,不能撤回评委
c.code-message[10076]=请先设置评审起始时间
c.code-message[10077]=提交失败,有信息尚未填写
c.code-message[10078]=撤回失败,当前时间不在大赛时间段内
c.code-message[10079]=指导老师手机号不能重复
c.code-message[10079]=项目中有重复成员
# 院校
c.code-message[10060]=账户不存在
c.code-message[10061]=密码错误
......@@ -49,21 +49,10 @@ c.code-message[10064]=学校代码已存在
c.code-message[10065]=项目未分配评审
c.code-message[10066]=上传文件为空
c.code-message[10067]=系统已暂停登录功能
c.code-message[10068]=负责人、成员中有相同身份信息或手机号码
c.code-message[10068]=成员不能是负责人
c.code-message[10018]=不在大赛时间范围内
c.code-message[10069]=该成员已存在
c.code-message[10019]=最多只能添加1位学校领队
c.code-message[10029]=最多只能添加9位观摩人员
c.code-message[10029]=最多只能添加2位观摩人员
c.code-message[10030]=车牌号已存在
c.code-message[10031]=不在申报时间范围内
c.code-message[10032]=作为项目负责人只能选择一个赛道参赛
c.code-message[10033]=上报数量达到限制
c.code-message[10034]=该现场已存在
c.code-message[10035]=该组别已存在
c.code-message[10036]=已满员
c.code-message[10037]=该项目已抽签
c.code-message[10038]=该评委已抽签
c.code-message[10039]=该排位赛已排序
c.code-message[10080]=该现场组长未抽齐
c.code-message[10081]=您已申报过该主题
\ No newline at end of file
c.code-message[10031]=不在申报时间范围内
\ No newline at end of file
......@@ -2,21 +2,26 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhongzhi.dao.AdministerDAO">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.zhongzhi.model.AdministerDO">
<id column="id" property="id"/>
<result column="telephone" property="telephone"/>
<result column="username" property="username"/>
<result column="avatar" property="avatar"/>
<result column="role" property="role"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
<result column="delete_time" property="deleteTime"/>
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, telephone, username, avatar, role, create_time, update_time, delete_time
</sql>
<select id="getAdministerPage" resultType="com.zhongzhi.vo.administer.GetAdministerPageVO">
SELECT
*
FROM
administer t
WHERE
t.delete_time IS NULL
AND t.role = #{listItem}
<if test="username != null and username != ''">
AND t.username LIKE concat('%', #{username}, '%')
</if>
</select>
<update id="updateAdminister">
update administer t
set t.telephone = #{telephone},
t.username = #{username},
t.avatar = #{avatar},
t.role = #{role},
t.college = #{college}
where id = #{id}
</update>
</mapper>
......@@ -62,47 +62,16 @@
<select id="getCollegeInfo" resultType="com.zhongzhi.vo.college.GetCollegeInfoVO">
SELECT
t4.id,
t4.`code`,
t4.`name`
t.id,
t.NAME,
t.CODE
FROM
colleges_dict t4
colleges_dict t
WHERE
t4.delete_time IS NULL
t.delete_time IS NULL
<if test="name != null and name != ''">
AND t4.`name` LIKE concat('%',#{name} ,'%')
AND t.`name` LIKE concat('%',#{name} ,'%')
</if>
<if test="education != null and education != ''">
and t4.education = #{education}
</if>
ORDER BY t4.id
</select>
<select id="getSceneCollegeInfo" resultType="com.zhongzhi.vo.college.GetCollegeInfoVO">
SELECT
t4.id,
t4.`code`,
t4.`name`,
count(1) as cnt
FROM
draw_lots_group_items t1
LEFT JOIN project t2 ON t1.project_id = t2.id
LEFT JOIN draw_lots_scenes t3 ON t1.scene_id = t3.id AND t2.match_id = t3.match_id
LEFT JOIN colleges_dict t4 ON t2.college = t4.`name`
WHERE
t1.delete_time IS NULL
AND t2.delete_time IS NULL
AND t3.delete_time IS NULL
AND t4.delete_time IS NULL
AND t3.id = #{sceneId}
<if test="name != null and name != ''">
AND t4.`name` LIKE concat('%',#{name} ,'%')
</if>
<if test="education != null and education != ''">
and t4.education = #{education}
</if>
GROUP BY t4.id
ORDER BY cnt DESC
</select>
</mapper>
<?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.zhongzhi.dao.DrawLotGroupDictMapper">
<select id="groupJudges" resultType="com.zhongzhi.vo.drawlots.GroupJudgesVO">
SELECT
t2.id,
t.expector_type,
t2.username
FROM
draw_lots_group_judges t
LEFT JOIN project_judge t2 ON t.judge_id = t2.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
<if test="roleType != null and roleType != ''">
AND t.role_type = #{roleType}
</if>
and t.group_id = #{groupId}
</select>
<select id="groupNums" resultType="java.lang.Integer">
SELECT
t.group_num
FROM
draw_lots_group_items t
WHERE
t.delete_time IS NULL
AND t.group_num IS NOT NULL
AND t.group_id = #{groupId}
order by group_num
</select>
</mapper>
<?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.zhongzhi.dao.DrawLotsGroupItemsMapper">
<select id="allGroupItems" resultType="com.zhongzhi.vo.drawlots.AllGroupItemsVO">
SELECT
t.id,
t2.project_name,
t3.college,
t4.group_name,
t3.`name`
FROM
draw_lots_group_items t
LEFT JOIN project t2 ON t.project_id = t2.id
LEFT JOIN student t3 ON t2.proposer_id = t3.id
left join draw_lot_group_dict t4 on t.group_id = t4.id
WHERE
t.delete_time IS NULL
AND t.scene_id = #{sceneId}
<if test="projectName != null and projectName != ''">
AND (t2.project_name LIKE concat('%', #{projectName}, '%')
OR t2.college LIKE concat('%', #{projectName}, '%'))
</if>
<if test="college != null and college != ''">
and t2.college = #{college}
</if>
</select>
<select id="matchProjects" resultType="com.zhongzhi.vo.drawlots.MatchProjectsVO">
SELECT
t.id,
t.project_name,
t.college,
t3.name
FROM
project t
LEFT JOIN student t3 ON t.proposer_id = t3.id
WHERE
t.delete_time IS NULL
and t3.delete_date is null
AND t.match_id = #{matchId}
<if test="projectSchedule != null and projectSchedule != ''">
and t.project_schedule = #{projectSchedule}
</if>
AND t.id NOT IN (
SELECT
t2.project_id
FROM
draw_lots_group_items t2
WHERE
t2.delete_time IS NULL
)
</select>
<select id="collegeProjects" resultType="com.zhongzhi.vo.drawlots.CollegeProjectsVO">
SELECT
t2.id,
t2.project_name,
t2.college,
t2.project_progress
FROM
project t2
LEFT JOIN draw_lots_scenes t3 ON t2.match_id = t3.match_id
WHERE
t2.delete_time IS NULL
and t3.delete_time IS NULL
AND t3.id = #{sceneId}
<if test="college != null and college != ''">
AND (t2.college LIKE concat('%', #{projectName}, '%') or t2.project_name LIKE concat('%', #{projectName}, '%') )
</if>
and t2.project_schedule not in ('报名阶段','校级申请项目')
<if test="projectSchedule != null and projectSchedule != ''">
and t2.project_schedule = #{projectSchedule}
</if>
<if test="projectProgress != null and projectProgress != ''">
and t2.project_progress = #{projectProgress}
</if>
AND t2.id not in (select project_id from draw_lots_group_items t where t.delete_time is null and t.scene_id = #{sceneId})
</select>
<select id="noFullGroup" resultType="com.zhongzhi.model.DrawLotGroupDictDO">
select * from (SELECT
t1.id,
t1.scene_id,
t1.project_cnt,
t1.group_name,
t2.college,
ifnull( t3.cnt, 0 ) cnt
FROM
draw_lot_group_dict t1
LEFT JOIN (
SELECT DISTINCT
t1.scene_id,
t2.college
FROM
draw_lots_group_items t1
LEFT JOIN project t2 ON t1.project_id = t2.id
WHERE
t1.scene_id = #{sceneId}
AND t1.delete_time IS NULL
) t2 ON t1.scene_id = t2.scene_id
LEFT JOIN (
SELECT
t1.scene_id,
t1.group_id,
t2.college,
count( 1 ) cnt
FROM
draw_lots_group_items t1
LEFT JOIN project t2 ON t1.project_id = t2.id
WHERE
t1.delete_time IS NULL
AND t1.scene_id = #{sceneId}
AND t1.group_id IS NOT NULL
GROUP BY
t1.scene_id,
t1.group_id,
t2.college
) t3 ON t1.scene_id = t3.scene_id
AND t1.id = t3.group_id
AND t2.college = t3.college
WHERE
t1.scene_id = #{sceneId}
AND t1.delete_time IS NULL
AND t2.college = #{college}
AND t1.id IN (
SELECT
t3.id
FROM
(
SELECT
t1.scene_id,
t1.id,
t1.project_cnt,
IFNULL( t2.cnt, 0 ) cnt
FROM
(
SELECT
t.scene_id,
t.id,
t.project_cnt
FROM
draw_lot_group_dict t
WHERE
t.delete_time IS NULL
AND t.scene_id = #{sceneId}
) t1
LEFT JOIN (
SELECT
t.scene_id,
t.group_id,
count( 1 ) cnt
FROM
draw_lots_group_items t
WHERE
t.delete_time IS NULL
AND t.scene_id = #{sceneId}
GROUP BY
t.scene_id,
t.group_id
) t2 ON t1.scene_id = t2.scene_id
AND t1.id = t2.group_id
) t3
WHERE
t3.project_cnt - t3.cnt > 0
)
) t where t.cnt = #{count}
</select>
<select id="groupProjectInfo" resultType="com.zhongzhi.vo.drawlots.GroupProjectInfoVO">
SELECT
t.id,
t2.group_name,
t.group_num,
t3.project_name,
t3.college
FROM
draw_lots_group_items t
LEFT JOIN draw_lot_group_dict t2 ON t.group_id = t2.id
LEFT JOIN project t3 ON t.project_id = t3.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
AND t3.delete_time IS NULL
AND t.group_id = #{groupId}
order by t.group_num
</select>
<select id="existNum" resultType="java.lang.Integer">
SELECT
t.group_num
FROM
draw_lots_group_items t
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
AND t.group_num IS NOT NULL
</select>
<select id="sceneCollege" resultType="java.lang.Integer">
select min(cnt) from (SELECT
t.id,
ifnull( t2.cnt, 0 ) cnt
FROM
draw_lot_group_dict t
LEFT JOIN (
SELECT
t.group_id,
count( t.project_id ) AS cnt
FROM
draw_lots_group_items t
LEFT JOIN project t2 ON t.project_id = t2.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
AND t.scene_id = #{sceneId}
and t2.college = #{college}
GROUP BY
t.group_id
) t2 ON t.id = t2.group_id
WHERE
t.delete_time IS NULL
and t.scene_id = #{sceneId}) t2
</select>
</mapper>
<?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.zhongzhi.dao.DrawLotsGroupJudgesMapper">
<select id="matchJudges" resultType="com.zhongzhi.vo.drawlots.MatchJudgesVO">
SELECT
t2.id,
t.id mapping_id,
t2.username,
t.expector_type,
t.role_type,
t3.group_name,
t2.telephone,
t2.unit,
t2.position
FROM
draw_lots_group_judges t
LEFT JOIN project_judge t2 ON t.judge_id = t2.id
LEFT JOIN draw_lot_group_dict t3 ON t.group_id = t3.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
and t3.delete_time is null
and t.scene_id = #{sceneId}
<if test="userName != null and userName != ''">
and (t2.username like concat('%', #{userName}, '%') or t2.telephone like concat('%', #{userName}, '%') )
</if>
<if test="expectorType != null and expectorType != ''">
and t.expector_type = #{expectorType}
</if>
<if test="roleType != null and roleType != ''">
and t.role_type = #{roleType}
</if>
</select>
<select id="selectJudges" resultType="com.zhongzhi.vo.drawlots.SelectJudgesVO">
SELECT
t2.id,
t2.username,
t2.unit,
t2.position,
t2.telephone
FROM
project_judge t2
WHERE
t2.delete_time IS NULL
<if test="userName != null and userName != ''">
and (t2.username like concat('%', #{userName}, '%') or t2.telephone like concat('%', #{userName}, '%') )
</if>
and t2.id not in (
select judge_id from
draw_lots_group_judges t
where t.delete_time is null
AND t.scene_id = #{sceneId}
)
</select>
<select id="allNum" resultType="java.lang.Integer">
SELECT
t.group_num
FROM
draw_lots_judge_num t
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
</select>
<select id="drawJudgeInfo" resultType="com.zhongzhi.vo.drawlots.DrawJudgeInfoVO">
SELECT
t.role_type,
t.expector_type,
t3.username,
t2.group_num
FROM
draw_lots_judge_num t2
left join draw_lots_group_judges t on t2.group_id = t.group_id and t2.group_num = t.group_num
LEFT JOIN project_judge t3 ON t.judge_id = t3.id
WHERE
t.delete_time IS NULL
AND t2.group_id = #{groupId}
order by t2.group_num
</select>
<select id="currentGroupLeaderCnt" resultType="java.lang.Integer">
SELECT
count( 1 )
FROM
draw_lots_group_judges t
WHERE
t.delete_time IS NULL
AND t.role_type = '组长'
AND t.group_id = #{groupId}
</select>
<select id="noLeaderGroup" resultType="com.zhongzhi.model.DrawLotGroupDictDO">
SELECT
*
FROM
draw_lot_group_dict t
WHERE
t.scene_id = #{sceneId}
AND t.id NOT IN (
SELECT
t.group_id
FROM
draw_lots_group_judges t
WHERE
t.scene_id = #{sceneId}
AND t.role_type = '组长'
and t.group_id is not null
)
</select>
<select id="noMemberGroup" resultType="com.zhongzhi.model.DrawLotGroupDictDO">
SELECT
*
FROM
(
SELECT
t.id,
t.group_name,
ifnull( t2.cnt, 0 ) cnt,
t.teach_cnt,
t.field_cnt
FROM
draw_lot_group_dict t
LEFT JOIN (
SELECT
t.scene_id,
t.group_id,
count( 1 ) cnt
FROM
draw_lots_group_judges t
WHERE
t.delete_time IS NULL
AND t.scene_id = #{sceneId}
AND t.expector_type = #{teachType}
GROUP BY
t.scene_id,
t.group_id,
t.expector_type
) t2 ON t.id = t2.group_id
where t.scene_id = #{sceneId}
) t
WHERE
1 = 1
<if test="teachType == '教育专家'">
AND t.teach_cnt > t.cnt
</if>
<if test="teachType == '行业专家'">
AND t.field_cnt > t.cnt
</if>
</select>
<select id="login" resultType="com.zhongzhi.vo.drawlots.LoginVO">
SELECT
*
FROM
(
SELECT
concat( t2.group_name, '', t.group_num ) NAME,
t2.group_name,
t.group_id,
t.group_num,
t2.scene_id
FROM
draw_lots_judge_num t
LEFT JOIN draw_lot_group_dict t2 ON t.group_id = t2.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
) t
WHERE
t.NAME = #{name}
</select>
<select id="judgeScoreScreen" resultType="com.zhongzhi.vo.drawlots.ScoreScreenVO">
SELECT
t.judge_id,
t2.score,
t2.submit_status
FROM
draw_lots_group_judges t
LEFT JOIN (
SELECT
t.judge_id,
t.score,
t.submit_status
FROM
draw_lots_scores t
LEFT JOIN draw_lots_group_items t2 ON t.scene_id = t2.scene_id
AND t.group_id = t2.group_id
AND t.project_id = t2.project_id
LEFT JOIN draw_lot_group_dict t3 ON t.group_id = t3.id
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
AND t2.group_num = #{groupNum}
and t.submit_status in ('已提交','弃权')
ORDER BY
t2.group_num
) t2 ON t.judge_id = t2.judge_id
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
</select>
<select id="existNum" resultType="java.lang.Integer">
SELECT
t.group_num
FROM
draw_lots_group_judges t
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
</select>
<select id="judgeInfo" resultType="com.zhongzhi.vo.drawlots.JudgeFullInfoVO">
SELECT
t.judge_id,
t2.username,
t.group_num,
t3.group_name,
t.expector_type,
t.role_type
FROM
draw_lots_group_judges t
LEFT JOIN project_judge t2 ON t.judge_id = t2.id
LEFT JOIN draw_lot_group_dict t3 ON t.group_id = t3.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
AND t.group_num = #{groupNum}
AND t.group_id = #{groupId}
</select>
</mapper>
<?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.zhongzhi.dao.DrawLotsJudgeNumMapper">
</mapper>
<?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.zhongzhi.dao.DrawLotsScenesMapper">
<select id="allMatchScenes" resultType="com.zhongzhi.vo.project.AllMatchScenesVO">
SELECT
*
FROM
draw_lots_scenes t
WHERE
t.delete_time IS NULL
AND t.match_id = #{matchId}
<if test="openStatus != null and openStatus != ''">
AND t.open_status = #{openStatus}
</if>
</select>
</mapper>
<?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.zhongzhi.dao.DrawLotsScoresMapper">
<select id="groupScores" resultType="com.zhongzhi.vo.drawlots.GroupScoresVO">
SELECT
t2.id,
t2.project_name,
t2.college,
t3.id as groupId,
t.group_num,
t3.group_name
FROM
draw_lots_group_items t
LEFT JOIN project t2 ON t.project_id = t2.id
left join draw_lot_group_dict t3 on t.group_id = t3.id
WHERE
t.delete_time IS NULL
<if test="projectName != null and projectName != ''">
AND t2.project_name like concat('%', #{projectName}, '%')
</if>
and t.scene_id = #{sceneId}
<if test="groupId != null and groupId != ''">
and t.group_id = #{groupId}
</if>
</select>
<select id="groupJudgeScores" resultType="com.zhongzhi.vo.drawlots.GroupJudgeScoresVO">
SELECT
t2.id,
t2.username,
t3.expector_type,
t3.role_type,
t.score
FROM
draw_lots_scores t
left join project_judge t2 on t.judge_id = t2.id
left join draw_lots_group_judges t3 on t.scene_id = t3.scene_id and t.judge_id = t3.judge_id
WHERE
t.submit_status in ('已提交','弃权')
and t.group_id = #{groupId}
and t.project_id = #{projectId}
</select>
<select id="queryItems" resultType="com.zhongzhi.vo.drawlots.QueryItemsVO">
SELECT
t4.id,
t2.group_name,
t3.group_num,
t4.project_name,
t5.submit_status,
t5.score
FROM
draw_lots_group_judges t
LEFT JOIN draw_lot_group_dict t2 ON t.group_id = t2.id
LEFT JOIN draw_lots_group_items t3 ON t.group_id = t3.group_id
LEFT JOIN project t4 ON t3.project_id = t4.id
LEFT JOIN draw_lots_scores t5 ON t.judge_id = t5.judge_id
AND t.group_id = t5.group_id and t3.project_id = t5.project_id
WHERE
t.delete_time IS NULL
AND t.judge_id = #{judgeId}
order by t3.group_num
</select>
<select id="groupRank" resultType="com.zhongzhi.vo.drawlots.GroupRankVO">
SELECT
t.id,
t2.project_name,
t2.college,
t3.group_name,
t.group_num,
t.total_score
FROM
draw_lots_group_items t
LEFT JOIN project t2 ON t.project_id = t2.id
LEFT JOIN draw_lot_group_dict t3 ON t.group_id = t3.id
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
ORDER BY
t.total_score desc
</select>
<select id="hand4Project" resultType="com.zhongzhi.model.DrawLotsGroupItemsDO">
SELECT
t.id,
t2.project_name,
t2.college,
t3.group_name,
t.order_no,
t.group_num
FROM
draw_lots_group_items t
LEFT JOIN project t2 ON t.project_id = t2.id
left join draw_lot_group_dict t3 on t.group_id = t3.id
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
ORDER BY
t.total_score desc
LIMIT 4
</select>
<select id="beforeHand4Project" resultType="com.zhongzhi.vo.drawlots.RankListVO">
SELECT
t.id,
t2.project_name,
t2.college,
t3.group_name,
t.order_no,
t.group_num
FROM
draw_lots_group_items t
LEFT JOIN project t2 ON t.project_id = t2.id
left join draw_lot_group_dict t3 on t.group_id = t3.id
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
ORDER BY
t.total_score
LIMIT 4
</select>
<select id="groupLeader" resultType="java.lang.String">
SELECT
t2.username
FROM
draw_lots_group_judges t
left join project_judge t2 on t.judge_id = t2.id
WHERE
t.delete_time IS NULL
AND t.group_id = #{groupId}
and t.role_type = '组长'
</select>
<select id="rank" resultType="com.zhongzhi.vo.drawlots.RankListVO">
SELECT
t.id,
t3.project_name,
t3.college,
t2.group_name,
t.group_num,
t.order_no,
t5.username leader
FROM
draw_lots_group_items t
LEFT JOIN draw_lot_group_dict t2 ON t.group_id = t2.id
LEFT JOIN project t3 ON t.project_id = t3.id
LEFT JOIN draw_lots_group_judges t4 ON t.group_id = t4.group_id
AND t4.role_type = '组长'
LEFT JOIN project_judge t5 ON t4.judge_id = t5.id
WHERE
t.delete_time IS NULL
AND t.scene_id = #{sceneId}
<if test="groupId != null and groupId != ''">
AND t.group_id = #{groupId}
</if>
<if test="projectName != null and projectName != ''">
AND t.project_name LIKE like concat('%', #{projectName}, '%')
</if>
order by t.order_no
</select>
</mapper>
<?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.zhongzhi.dao.MatchCollegeCountDAO">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.zhongzhi.model.MatchCollegeCountDO">
<id column="id" property="id"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
<result column="delete_time" property="deleteTime"/>
<result column="match_id" property="matchId"/>
<result column="college_name" property="collegeName"/>
<result column="apply_cnt" property="applyCnt"/>
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
create_time,
update_time,
delete_time,
id, match_id, college_name, apply_cnt
</sql>
</mapper>
......@@ -26,8 +26,7 @@
select
*
from match_dict
where match_type = #{matchType}
and delete_time is null
where delete_time is null
</select>
<select id="getList" resultType="com.zhongzhi.model.MatchDictDO">
......@@ -52,30 +51,4 @@
c.id
</select>
<select id="getVocationalCurrentMatch" resultType="com.zhongzhi.model.MatchDictDO">
SELECT
distinct t2.*
FROM
project t
LEFT JOIN match_dict t2 ON t.match_id = t2.id
where t.delete_time is null
and t2.delete_time is null
and t2.`status` = 1
and t.proposer_id = #{memberId}
and t.project_type = #{progress}
</select>
<select id="getSeedCurrentMatch" resultType="com.zhongzhi.model.MatchDictDO">
SELECT
distinct t2.*
FROM
project t
LEFT JOIN match_dict t2 ON t.match_id = t2.id
where t.delete_time is null
and t2.delete_time is null
and t2.`status` = 1
and t.proposer_id = #{memberId}
and t.project_progress = #{progress}
</select>
</mapper>
......@@ -18,13 +18,17 @@
</sql>
<select id="getPermissionById" resultType="com.zhongzhi.vo.permission.PermissionVO">
select
p.*
from permissions p
left join administer_permission ap on ap.permission_id = p.id
where ap.administer_id = #{id}
and p.delete_time is null
and p.delete_time is null
SELECT distinct
t2.*
FROM
administer_permission t
left join permissions t2 on t.permission_id = t2.id
WHERE
t.delete_time IS NULL
and t2.delete_time is null
<if test="id != null and id != ''">
and t.administer_id = #{id}
</if>
</select>
</mapper>
......@@ -2,68 +2,6 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhongzhi.dao.ProjectDAO">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.zhongzhi.model.ProjectDO">
<id column="id" property="id"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
<result column="delete_time" property="deleteTime"/>
<result column="proposer_id" property="proposerId"/>
<result column="item_field" property="itemField"/>
<result column="logo_uri" property="logoUri"/>
<result column="project_name" property="projectName"/>
<result column="project_group" property="projectGroup"/>
<result column="match_id" property="matchId"/>
<result column="college" property="college" />
<result column="classification" property="classification"/>
<result column="address" property="address"/>
<result column="project_intro" property="projectIntro"/>
<result column="project_creativity" property="projectCreativity"/>
<result column="scientific_principle" property="scientificPrinciple"/>
<result column="application_prospect" property="applicationProspect"/>
<result column="road_show_form" property="roadShowForm"/>
<result column="restriction" property="restriction"/>
<result column="project_transform" property="projectTransform"/>
<result column="result_transfer" property="resultTransfer"/>
<result column="competition_owner" property="competitionOwner"/>
<result column="competition_first" property="competitionFirst"/>
<result column="both_invention" property="bothInvention"/>
<result column="project_progress" property="projectProgress"/>
<result column="project_stage" property="projectStage"/>
<result column="company_name" property="companyName"/>
<result column="legal_person_status" property="legalPersonStatus"/>
<result column="legal_person_name" property="legalPersonName"/>
<result column="position" property="position"/>
<result column="register_fund" property="registerFund"/>
<result column="register_date" property="registerDate"/>
<result column="register_province" property="registerProvince"/>
<result column="register_address" property="registerAddress"/>
<result column="unify_code" property="unifyCode"/>
<result column="print_attachment" property="printAttachment"/>
<result column="print_attachment_type" property="printAttachmentType"/>
<result column="print_attachment_name" property="printAttachmentName"/>
<result column="privacy_setting" property="privacySetting"/>
<result column="project_status" property="projectStatus"/>
<result column="project_schedule" property="projectSchedule"/>
<result column="project_type" property="projectType"/>
<result column="project_review" property="projectReview"/>
<result column="project_assigned" property="projectAssigned"/>
<result column="financial_statement" property="financialStatement"/>
<result column="edit_status" property="editStatus"/>
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
create_time,
update_time,
id, proposer_id, item_field, logo_uri, project_name, project_group, match_id,college ,classification, address,
project_intro, project_creativity, scientific_principle, application_prospect, road_show_form, restriction,
project_transform, result_transfer, competition_owner, competition_first, both_invention, project_progress,
company_name, legal_person_status, legal_person_name, position, register_fund, register_date, register_province,
register_address, unify_code, privacy_setting, project_status, project_schedule, project_type, delelte_time
,print_attachment, print_attachment_type, print_attachment_name, project_review, project_assigned,edit_status
</sql>
<select id="getListPage" resultType="com.zhongzhi.vo.project.ProjectPageVO">
select
p.id,
......@@ -73,17 +11,18 @@
p.project_schedule,
p.project_status,
p.project_progress,
p.college,
p.edit_status,
s.name,
p.theme_name
p.project_group,
s.college,
p.project_track,
p.project_type
from project p
left join student s on s.id = p.proposer_id
<where>
<if test="matchId != null and matchId != ''">
and match_id = #{matchId}
</if>
and p.project_type = #{projectType}
and proposer_id = #{proposerId}
and s.delete_time is null
and p.delete_time is null
......@@ -121,70 +60,30 @@
<select id="getSeedTrackProjectPage" resultType="com.zhongzhi.vo.project.SeedTrackProjectPageVO">
select
p.*,
p.college,
s.college,
s.name,
s.major,
s.telephone,
s.xueyuan,
DATE_FORMAT(p.create_time, '%Y-%m-%d') as applicationTime,
s.class_name
p.project_track
from project p
left join student s ON s.id = p.proposer_id
<where>
and p.match_id = #{matchId}
and p.project_type = #{projectType}
and p.project_status != '填写中'
and p.college = '上海电子信息职业技术学院'
<if test="themeName != null and themeName != ''">
and p.theme_name like concat('%', #{themeName}, '%')
</if>
<if test="projectGroup != null and projectGroup != '' and projectGroup !='中职/高职'">
<if test="projectGroup != null and projectGroup != ''">
and p.project_group = #{projectGroup}
</if>
<if test="projectSchedule != null and projectSchedule != ''">
and p.project_schedule = #{projectSchedule}
</if>
<if test="projectStatus != null and projectStatus != ''">
<if test="projectStatus == '已评审'">
and p.project_status != '待评审'
</if>
<if test="projectStatus != '已评审'">
and p.project_status = #{projectStatus}
</if>
</if>
<if test="itemField != null and itemField != ''">
and p.item_field = #{itemField}
</if>
<if test="projectProgress != null and projectProgress != ''">
and p.project_progress = #{projectProgress}
<if test="projectType != null and projectType != ''">
and p.project_type = #{projectType}
</if>
<if test="name != null and name != ''">
and (p.project_name like concat('%',#{name},'%') or p.college like concat('%',#{name},'%'))
<if test="xueyuan != null and xueyuan != ''">
and s.xueyuan = #{xueyuan}
</if>
and p.delete_time is null
and s.delete_time is null
</where>
</select>
<select id="getSeedTrackProjectPageCity" resultType="com.zhongzhi.vo.project.SeedTrackProjectPageVO">
select
p.*,
p.college,
s.name,
s.major,
s.telephone,
DATE_FORMAT(p.create_time, '%Y-%m-%d') as applicationTime
from project p
left join student s ON s.id = p.proposer_id
<where>
and p.match_id = #{matchId}
and p.project_type = #{projectType}
and p.project_status != '填写中'
and p.college = '上海电子信息职业技术学院'
<if test="themeName != null and themeName != ''">
and p.theme_name like concat('%', #{themeName}, '%')
</if>
<if test="projectGroup != null and projectGroup != '' and projectGroup !='中职/高职'">
and p.project_group = #{projectGroup}
<if test="projectTrack != null and projectTrack != ''">
and p.project_track = #{projectTrack}
</if>
<if test="projectSchedule != null and projectSchedule != ''">
and p.project_schedule = #{projectSchedule}
......@@ -204,7 +103,7 @@
and p.project_progress = #{projectProgress}
</if>
<if test="name != null and name != ''">
and (p.project_name like concat('%',#{name},'%') or p.college like concat('%',#{name},'%'))
and (p.project_name like concat('%',#{name},'%'))
</if>
and p.delete_time is null
and s.delete_time is null
......@@ -213,31 +112,45 @@
<select id="getReviewList" resultType="com.zhongzhi.vo.project.ReviewListVO">
select
*
from project
t1.*,
t2.college,
t2.major,
t2.telephone,
t2.xueyuan
from project t1
left join student t2 on t1.proposer_id = t2.id
<where>
<if test="matchId != null and matchId != ''">
and match_id = #{matchId}
and t1.match_id = #{matchId}
</if>
<if test="projectSchedule != null and projectSchedule != ''">
and t1.project_schedule = #{projectSchedule}
</if>
<if test="schoolAssigned != null and schoolAssigned != ''">
and project_assigned = #{schoolAssigned}
<if test="projectReview != null and projectReview != ''">
and t1.project_review = #{projectReview}
</if>
<if test="projectName != null and projectName != ''">
and (project_name like concat('%', #{projectName}, '%') or college like concat('%', #{projectName}, '%'))
and (t1.project_name like concat('%', #{projectName}, '%') or t2.name like concat('%', #{projectName}, '%'))
</if>
<if test="projectGroup != null and projectGroup != ''">
and project_group = #{projectGroup}
and t1.project_group = #{projectGroup}
</if>
<if test="schoolReview != null and schoolReview != ''">
and project_review = #{schoolReview}
<if test="projectAssigned != null and projectAssigned != ''">
and t1.project_assigned = #{projectAssigned}
</if>
<if test="projectProgress != null and projectProgress != ''">
and project_progress = #{projectProgress}
and t1.project_progress = #{projectProgress}
</if>
and project_schedule = '校级申请项目'
and project_status != '填写中'
and college = '上海电子信息职业技术学院'
and delete_time is null
<if test="projectTrack != null and projectTrack != ''">
and t1.project_track like concat('%', #{projectTrack}, '%')
</if>
<if test="projectType != null and projectType != ''">
and t1.project_type like concat('%', #{projectType}, '%')
</if>
<if test="xueyuan != null and xueyuan != ''">
and t2.xueyuan like concat('%', #{xueyuan}, '%')
</if>
and t1.delete_time is null
</where>
</select>
......@@ -247,9 +160,13 @@
pr.review_status as reviewStatus,
pr.review_score as reviewScore,
pr.score as score,
pr.review_opinion
pr.review_opinion,
t.college school,
t.major,
t.telephone
from project p
left join project_school_review pr on pr.project_id = p.id
left join project_review pr on pr.project_id = p.id
left join student t on p.proposer_id = t.id
<where>
<if test="judgeId != null and judgeId != ''">
and pr.judge_id = #{judgeId}
......@@ -274,10 +191,7 @@
</if>
and p.delete_time is null
and pr.delete_time is null
and p.college = '上海电子信息职业技术学院'
and p.project_group = '高职'
</where>
order by p.id
</select>
<select id="getProjectReviewList" resultType="com.zhongzhi.model.ProjectDO">
......@@ -286,16 +200,14 @@
pr.project_schedule as projectSchedule,
pr.review_status as projectReview
from project p
left join project_school_review pr on p.id = pr.project_id
left join project_review pr on p.id = pr.project_id
where
p.match_id = #{matchId}
and pr.judge_id = #{id}
and p.delete_time is null
and pr.delete_time is null
and p.college = '上海电子信息职业技术学院'
and p.project_group = '高职'
<if test="projectProgress != null and projectProgress != '' ">
and p.project_progress = #{projectProgress}
<if test="projectSchedule != null and projectSchedule != '' ">
and p.project_schedule = #{projectSchedule}
</if>
</select>
......@@ -329,7 +241,7 @@
and p.project_group = #{projectGroup}
</if>
<if test="name != null and name != ''">
and p.college = #{name}
and s.college = #{name}
</if>
<if test="projectProgress!= null and projectProgress != ''">
and p.project_progress = #{projectProgress}
......@@ -337,8 +249,6 @@
and p.project_status != '填写中'
and p.delete_time is null
and s.delete_time is null
and p.college = '上海电子信息职业技术学院'
and p.project_group = '高职'
</where>
</select>
......@@ -449,7 +359,6 @@
</when>
</choose>
AND delete_time is null
and college = '上海电子信息职业技术学院'
</where>
</select>
......@@ -476,192 +385,167 @@
)
</select>
<select id="attendCount" resultType="java.lang.Integer">
<select id="collegeNum" resultType="integer">
SELECT
count( t2.id )
count( DISTINCT t2.college )
FROM
project t
LEFT JOIN match_dict t2 ON t.match_id = t2.id
LEFT JOIN student t2 ON t.proposer_id = t2.id
WHERE
t.delete_time IS NULL
AND t2.delete_time IS NULL
AND t.proposer_id = #{userId}
and t2.match_date = #{matchDate}
</select>
<select id="judgeThemeDone" resultType="com.zhongzhi.vo.student.JudgeThemeDoneVO">
<select id="getVocationalReviewNum" resultType="com.zhongzhi.model.ProjectDO">
SELECT
p.*
FROM
project p
left join student s on p.proposer_id = s.id
WHERE
p.delete_time is null
and p.match_id = #{matchId}
AND p.project_review IN ("待评审","已评审")
</select>
<select id="getVocationalAssignNum" resultType="com.zhongzhi.model.ProjectDO">
SELECT
*
FROM
project p
left join student s on p.proposer_id = s.id
WHERE
p.delete_time is null
and p.match_id = #{matchId}
AND p.project_assigned is not null
</select>
<select id="exportProjectReview" resultType="com.zhongzhi.model.ProjectDO">
SELECT
p.*
FROM
project p
left join student s on p.proposer_id = s.id
WHERE
p.delete_time is null
and p.match_id = #{matchId}
AND p.project_schedule != '填写中'
</select>
<select id="getDateList" resultType="com.zhongzhi.vo.project.GetDataDListVO">
SELECT
t.theme_name
t2.xueyuan,
t2.major,
count( t.id ) projectCnt,
count(
DISTINCT ( t2.id )) studentCnt
FROM
project t
LEFT JOIN student t2 ON t.proposer_id = t2.id
WHERE
t.delete_time IS NULL
AND t.proposer_id = #{studentId}
AND t2.delete_time IS NULL
AND t.match_id = #{matchId}
and project_progress = '文化创意'
GROUP BY
t2.xueyuan,
t2.major
</select>
<select id="existProject" resultType="com.zhongzhi.model.ProjectDO">
<select id="collegeProjects" resultType="java.lang.Long">
SELECT
id,
proposer_id,
theme_name,
item_field,
logo_uri,
project_name,
project_name_en,
project_group,
match_id,
college,
classification,
address,
project_intro,
project_creativity,
scientific_principle,
application_prospect,
road_show_form,
restriction,
project_transform,
result_transfer,
competition_owner,
competition_first,
both_invention,
project_progress,
project_stage,
company_name,
legal_person_status,
legal_person_name,
position,
register_fund,
register_date,
register_province,
register_address,
unify_code,
financial_statement,
privacy_setting,
project_status,
project_schedule,
project_type,
print_attachment,
print_attachment_type,
print_attachment_name,
investment,
project_ppt_url,
project_ppt_type,
project_ppt_type_en,
project_ppt_name,
project_ppt_name_en,
project_review,
project_assigned,
edit_status,
vod_url,
order_no,
project_ppt_url_en,
create_time,
update_time,
delete_time
t.id
FROM
project
project t
LEFT JOIN student t2 ON t.proposer_id = t2.id
WHERE
delete_time IS NULL
<if test="projectGroup != null and projectGroup != ''">
AND project_group = #{projectGroup}
</if>
<if test="studentId != null and studentId != ''">
AND proposer_id = #{studentId}
</if>
<if test="themeName != null and themeName != ''">
AND theme_name = #{themeName}
</if>
<if test="matchId != null and matchId != ''">
AND match_id = #{matchId}
</if>
<if test="projectStatus != null and projectStatus != ''">
and project_status = #{projectStatus}
</if>
<if test="progress != null and progress != ''">
and project_progress = #{progress}
</if>
t.delete_time IS NULL
AND t2.delete_time IS NULL
AND t2.xueyuan = #{xueyuan}
AND t2.major = #{major}
AND t.match_id = #{matchId}
</select>
<select id="existVocationalProject" resultType="com.zhongzhi.model.ProjectDO">
<select id="projectMembers" resultType="java.lang.Integer">
SELECT
id,
proposer_id,
theme_name,
item_field,
logo_uri,
project_name,
project_name_en,
project_group,
match_id,
college,
classification,
address,
project_intro,
project_creativity,
scientific_principle,
application_prospect,
road_show_form,
restriction,
project_transform,
result_transfer,
competition_owner,
competition_first,
both_invention,
project_progress,
project_stage,
company_name,
legal_person_status,
legal_person_name,
position,
register_fund,
register_date,
register_province,
register_address,
unify_code,
financial_statement,
privacy_setting,
project_status,
project_schedule,
project_type,
print_attachment,
print_attachment_type,
print_attachment_name,
investment,
project_ppt_url,
project_ppt_type,
project_ppt_type_en,
project_ppt_name,
project_ppt_name_en,
project_review,
project_assigned,
edit_status,
vod_url,
order_no,
project_ppt_url_en,
create_time,
update_time,
delete_time
count( 1 )
FROM
project
project_member t
WHERE
delete_time IS NULL
<if test="projectGroup != null and projectGroup != ''">
AND project_group = #{projectGroup}
</if>
<if test="studentId != null and studentId != ''">
AND proposer_id = #{studentId}
</if>
<if test="themeName != null and themeName != ''">
AND theme_name = #{themeName}
</if>
<if test="matchId != null and matchId != ''">
AND match_id = #{matchId}
</if>
<if test="projectStatus != null and projectStatus != ''">
and project_status = #{projectStatus}
</if>
t.delete_time IS NULL
AND t.project_id = #{projectId}
AND t.type = #{type}
</select>
<select id="projectProgressCnt" resultType="com.zhongzhi.vo.project.ProjectProgressCntVO">
SELECT
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_group = '创意组' ) chuangyiCnt,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_group = '初创组' ) chuchangzu,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_group = '成长组' ) chengzhangzu,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_track = '新文科类' ) wenkelei,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_track = '新医科类' ) yikelei,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_track = '新农科类' ) nongkelei,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_track = '新工科类' ) gongkelei,
( SELECT count( 1 ) FROM project t WHERE t.delete_time IS NULL
<if test="projectIds != null and projectIds.size>0">
AND t.id in
<foreach collection="collegeIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
AND t.project_track = '"人工智能+"' ) rengonglei
FROM
DUAL
</select>
</mapper>
......@@ -35,25 +35,27 @@
and status = #{status}
</if>
and delete_time is null
<if test="projectTrack != null and projectTrack != ''">
and project_track like concat('%', #{projectTrack}, '%')
</if>
</where>
</select>
<select id="projectJudgesAssigned" resultType="com.zhongzhi.vo.judge.ProjectJudgePageVO">
select
pj.*
from project_school_judge pj
left join project_school_review pr on pr.judge_id = pj.id
from project_judge pj
left join project_review pr on pr.judge_id = pj.id
left join project p on p.id = pr.project_id
<where>
<if test="projectGroup != null and projectGroup != ''">
and p.project_progress = #{projectGroup}
and p.project_group = #{projectGroup}
</if>
<if test="projectSchedule != null and projectSchedule != ''">
and p.project_schedule = #{projectSchedule}
</if>
and p.match_id = #{matchId}
and pj.status = 1
and p.college = '上海电子信息职业技术学院'
and p.delete_time is null
and pj.delete_time is null
and pr.delete_time is null
......
......@@ -2,6 +2,30 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhongzhi.dao.ProjectReviewDAO">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.zhongzhi.model.ProjectReviewDO">
<id column="id" property="id"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
<result column="delete_time" property="deleteTime"/>
<result column="project_id" property="projectId"/>
<result column="judge_id" property="judgeId"/>
<result column="review_score" property="reviewScore"/>
<result column="score" property="score"/>
<result column="review_opinion" property="reviewOpinion"/>
<result column="project_schedule" property="projectSchedule"/>
<result column="review_time" property="reviewTime"/>
<result column="review_status" property="reviewStatus"/>
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
create_time,
update_time,
delete_time,
id, project_id, judge_id, review_score, score, review_opinion, project_schedule, review_time, review_status
</sql>
<select id="getList" resultType="com.zhongzhi.vo.judge.ProjectReviewVO">
select
pj.username as judgesName,
......
......@@ -6,7 +6,7 @@ setParent=com.zhongzhi
# mapper.xml文件生成路径
mapperPath=/src/main/resources/mapper/
# 数据库地址
url=jdbc:mysql://116.62.57.92:3306/zhongzhi
url=jdbc:mysql://139.224.253.21:3306/gtja?autoReconnect=true&useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
driverName=com.mysql.cj.jdbc.Driver
userName=devloper
password=dev@1553$
\ No newline at end of file
userName=root
password=ykhladmin302
\ No newline at end of file
This file is too large to display.
No preview for this file type
D:\code\electron\src\main\java\com\zhongzhi\service\impl\AdministerServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectJudgeServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\DataOverviewDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\college\DownloadErrorDataDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectReviewService.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\ReviewVocationalNumDTO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\GroupProjectScreenVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\PrintAttachmentDTO.java
D:\code\electron\src\main\java\com\zhongzhi\common\configure\AliyunSmsProperties.java
D:\code\electron\src\main\java\com\zhongzhi\common\exception\HttpException.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\MemberType.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectReviewPeriodService.java
D:\code\electron\src\main\java\com\zhongzhi\dto\notice\SmsNoticePageDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\FinalMatchMemberService.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\ProjectDataOverview.java
D:\code\electron\src\main\java\com\zhongzhi\vo\ExcelFieldVO.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\SMSTemplate.java
D:\code\electron\src\main\java\com\zhongzhi\vo\college\AwardedListVO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\MajorDictController.java
D:\code\electron\src\main\java\com\zhongzhi\model\DrawLotsGroupJudgesDO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\CourseDictController.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\SysLog.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectCopyrightMapper.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\VocationalProjectInfoVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\AllGroupItemsVO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\FinalMatchMemberController.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\ProjectCollegeListDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectWorksService.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectCopyrightController.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\ReviewListDTO.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\ProjectProgress.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\MatchCollegeCountServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\dto\drawlots\AddJudgeDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\MatchCollegeCountService.java
D:\code\electron\src\main\java\com\zhongzhi\controller\SmsNoticeController.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\GroupScoresVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\student\LoginDTO.java
D:\code\electron\src\main\java\com\zhongzhi\common\configure\DynamicDataSource.java
D:\code\electron\src\main\java\com\zhongzhi\vo\college\RegisterMembersVO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\DrawLotsGroupJudgesController.java
D:\code\electron\src\main\java\com\zhongzhi\vo\student\JudgeThemeDoneVO.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectAwardService.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\SeedTrackProjectPageVO.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\OpenStatus.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\DrawLotsJudgeNumServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\common\configure\RemoteProperties.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectScheduleRecordServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\RankListVO.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\Signature.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\JudgeScreenVO.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectWorksDO.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectJudgeService.java
D:\code\electron\src\main\java\com\zhongzhi\model\DrawLotGroupDictDO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\DrawLotsScoresServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\model\MatchCollegePdfDO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\FundDictController.java
D:\code\electron\src\main\java\com\zhongzhi\dto\review\CancelReviewDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\review\ProjectReviewDTO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\scheduleRecord\ProjectScheduleRecordVO.java
D:\code\electron\src\main\java\com\zhongzhi\model\AdministerDO.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\ConstantUtils.java
D:\code\electron\src\main\java\com\zhongzhi\controller\SmsCodeController.java
D:\code\electron\src\main\java\com\zhongzhi\service\MessageService.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectJudgeDAO.java
D:\code\electron\src\main\java\com\zhongzhi\service\FundDictService.java
D:\code\electron\src\main\java\com\zhongzhi\vo\notice\SmsNoticeVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\QueryItemsVO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectOwnershipStructureController.java
D:\code\electron\src\main\java\com\zhongzhi\dao\DrawLotsGroupJudgesMapper.java
D:\code\electron\src\main\java\com\zhongzhi\model\MatchScheduleDO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\match\MatchDictDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\SmsCodeDAO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectWorksMapper.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\SeedTrackProjectDetailVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\CollegeProjectDTO.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\RoleType.java
D:\code\electron\src\main\java\com\zhongzhi\dao\DrawLotsGroupItemsMapper.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\AdministerPermissionServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\common\configure\DbContextHolder.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectPatentService.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\ProjectNumVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\RankVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\notice\SmsNoticeDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\FinalMatchMemberDAO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\DrawLotsGroupJudgesServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\vo\review\ReMatchReviewVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\ProjectJudgeVO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\MatchCollegePdfMapper.java
D:\code\electron\src\main\java\com\zhongzhi\dto\drawlots\JudgeScoreScreenDTO.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\ProjectStatus.java
D:\code\electron\src\main\java\com\zhongzhi\service\VodDictService.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\ExportProjectDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\college\LoginDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\CourseDictService.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\LoginVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\drawlots\AddProjectToSceneDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\college\GetCollegesListDTO.java
D:\code\electron\src\main\java\com\zhongzhi\model\MajorDictDO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\member\ProjectMemberVO.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\PDFUtil.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectReviewPeriodMapper.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\SMSSendUtils.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectScheduleRecordService.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectDAO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\oss\GetSecretVO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\OssController.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectPatentMapper.java
D:\code\electron\src\main\java\com\zhongzhi\controller\AdministerController.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\VocationalNumVO.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\SmsCode.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\Localstorage.java
D:\code\electron\src\main\java\com\zhongzhi\vo\college\CollegesVO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\DrawLotGroupDictMapper.java
D:\code\electron\src\main\java\com\zhongzhi\dto\college\CollegesDOT.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ItemFieldDictDAO.java
D:\code\electron\src\main\java\com\zhongzhi\service\MatchScheduleService.java
D:\code\electron\src\main\java\com\zhongzhi\common\configure\VODConfig.java
D:\code\electron\src\main\java\com\zhongzhi\dao\FundDictDAO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectTrademarkMapper.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\ProjectAssignNumVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\AttendCountDTO.java
D:\code\electron\src\main\java\com\zhongzhi\common\handler\MetaHandler.java
D:\code\electron\src\main\java\com\zhongzhi\model\MatchDictDO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\projectReviewPeriod\ProjectReviewPeriodVO.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectPaperService.java
D:\code\electron\src\main\java\com\zhongzhi\model\FundDictDO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\judge\ProjectJudgePageVO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectWorksController.java
D:\code\electron\src\main\java\com\zhongzhi\model\YearDictDO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\ImportVocationalProjectDTO.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectOwnershipStructureDO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\AllGroupsVO.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\PDFCheckBox.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\Platform.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectMemberDO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\SmsCodeServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\model\base\BaseModel.java
D:\code\electron\src\main\java\com\zhongzhi\controller\MatchScheduleController.java
D:\code\electron\src\main\java\com\zhongzhi\dto\match\SelectListPageDTO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\course\SignatureVO.java
D:\code\electron\src\main\java\com\zhongzhi\model\DrawLotsScoresDO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectOwnershipStructureDAO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\FinalMatchMemberServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\dto\review\ProjectReviewScoreDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectMaterialsServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\VocationalProjectVO.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\LoginRequired.java
D:\code\electron\src\main\java\com\zhongzhi\vo\college\GetCollegeInfoVO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectPaperMapper.java
D:\code\electron\src\main\java\com\zhongzhi\dto\period\ProjectReviewPeriodDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectReviewPeriodServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\dto\drawlots\MatchProjectsDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\scheduleRecord\ProjectScheduleRecordDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\MatchCollegePdfServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectOwnershipStructureServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\vo\judge\JudgeInfoVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\member\MentorDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\CourseDictServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\dto\college\CollegesPageDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectOwnershipStructureService.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\ApproveDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\StudentDAO.java
D:\code\electron\src\main\java\com\zhongzhi\model\DrawLotsGroupItemsDO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\YearDictController.java
D:\code\electron\src\main\java\com\zhongzhi\dao\MessageDAO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\member\TeamMemberDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\SmsNoticeServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\controller\DrawLotsGroupItemsController.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\GroupJudgeScoresVO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\VodDictController.java
D:\code\electron\src\main\java\com\zhongzhi\dto\drawlots\GroupScoresDTO.java
D:\code\electron\src\main\java\com\zhongzhi\common\configure\MybatisPlusConfig.java
D:\code\electron\src\main\java\com\zhongzhi\dao\DrawLotsScenesMapper.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectMemberService.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectJudgeDO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ItemFieldDictServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\dao\SmsNoticeMapper.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectScheduleRecordController.java
D:\code\electron\src\main\java\com\zhongzhi\common\configure\WebConfig.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\DrawlotsVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\match\MatchDictVO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectAwardServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\controller\DrawLotsScenesController.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\MatchJudgesVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\student\StudentInfoVO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectAwardController.java
D:\code\electron\src\main\java\com\zhongzhi\dto\college\RegisterMembersDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectMaterialsService.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\SeedTrackProjectVO.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectTrademarkService.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\CreateVocationalProjectDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\MajorDictServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\EditStatusDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\YearDictService.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\MatchProjectsVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\QueryPdfStatusVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\ScoreScreenVO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\DrawLotsScoresController.java
D:\code\electron\src\main\java\com\zhongzhi\dao\DrawLotsJudgeNumMapper.java
D:\code\electron\src\main\java\com\zhongzhi\dao\MajorDictDAO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\StudentController.java
D:\code\electron\src\main\java\com\zhongzhi\vo\college\DetailVO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\CollegesDictDAO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\LeaderFullVO.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectReviewPeriodDO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\judge\ProjectReviewVO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectAwardMapper.java
D:\code\electron\src\main\java\com\zhongzhi\dto\college\CollegesDictDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\member\CreateProjectMemberDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectService.java
D:\code\electron\src\main\java\com\zhongzhi\vo\ResponseVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\review\SendNoticeVO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\MatchDictServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\TeachType.java
D:\code\electron\src\main\java\com\zhongzhi\model\MatchCollegeCountDO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\CollegesDictServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\JudgeScoreScreenVO.java
D:\code\electron\src\main\java\com\zhongzhi\service\PermissionsService.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\CreateSeedTrackProjectDTO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\MainTrackProjectDetailVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\judge\MatchJudgesDTO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\administer\AdministerVO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectMaterialsController.java
D:\code\electron\src\main\java\com\zhongzhi\model\CourseDictDO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\PermissionsServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\dto\drawlots\CollegeProjectsDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\BatchRollbackDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectReviewDAO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectMemberController.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\CollegeProjectVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\course\ChangeOrdersDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\AdministerPermissionService.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\VocationalProjectNum.java
D:\code\electron\src\main\java\com\zhongzhi\dto\college\AddProjectMemberDTO.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\ProjectAssignStatus.java
D:\code\electron\src\main\java\com\zhongzhi\dao\MatchScheduleDAO.java
D:\code\electron\src\main\java\com\zhongzhi\service\SmsNoticeService.java
D:\code\electron\src\main\java\com\zhongzhi\service\ItemFieldDictService.java
D:\code\electron\src\main\java\com\zhongzhi\controller\AdministerPermissionController.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\Code.java
D:\code\electron\src\main\java\com\zhongzhi\controller\MessageController.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\RandomUtil.java
D:\code\electron\src\main\java\com\zhongzhi\common\configure\DataSourceAspect.java
D:\code\electron\src\main\java\com\zhongzhi\common\interceptor\AuthenticationInterceptor.java
D:\code\electron\src\main\java\com\zhongzhi\dto\review\ReviewScoreDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\StudentServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\ProjectInfoVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\drawlots\DrawLoginDTO.java
D:\code\electron\src\main\java\com\zhongzhi\model\DrawLotsJudgeNumDO.java
D:\code\electron\src\main\java\com\zhongzhi\model\FinalMatchMemberDO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\ReviewListVO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectReviewPeriodController.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ItemFieldDictController.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectScheduleRecordDO.java
D:\code\electron\src\main\java\com\zhongzhi\model\SmsCodeDO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\ProjectListPageDTO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\CollegeProjectsVO.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\ExcelUtil.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectAwardDO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectWorksServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\IpAddressUtil.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\MatchScheduleServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\service\CollegesDictService.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectMemberDAO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\StudentProjectDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\DrawLotsGroupJudgesService.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectPaperController.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\SeedTrackProjectNumDTO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\oss\UploadFileVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\GroupJudgesVO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\DrawLotsScoresMapper.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectMaterialsDO.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectPatentDO.java
D:\code\electron\src\main\java\com\zhongzhi\model\CollegesDictDO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectController.java
D:\code\electron\src\main\java\com\zhongzhi\service\MajorDictService.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\ProjectReview.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectMemberServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\SeedTrackProjectNumVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\SelectJudgesVO.java
D:\code\electron\src\main\java\com\zhongzhi\model\ItemFieldDictDO.java
D:\code\electron\src\main\java\com\zhongzhi\service\SmsCodeService.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\MessageServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectReviewDO.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\VodUtil.java
D:\code\electron\src\main\java\com\zhongzhi\vo\message\MessageVO.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectTrademarkDO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\GroupProjectInfoVO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\VodDictDAO.java
D:\code\electron\src\main\java\com\zhongzhi\service\ProjectCopyrightService.java
D:\code\electron\src\main\java\com\zhongzhi\controller\MatchCollegePdfController.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\ResponseData.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\AllMatchScenesVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\course\CoursesDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\YearDictServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\service\DrawLotGroupDictService.java
D:\code\electron\src\main\java\com\zhongzhi\vo\college\SchoolsVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\course\VodsVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\review\SchoolReviewVO.java
D:\code\electron\src\main\java\com\zhongzhi\service\StudentService.java
D:\code\electron\src\main\java\com\zhongzhi\ZhongzhiApplication.java
D:\code\electron\src\main\java\com\zhongzhi\vo\course\CoursesVO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\AdministerDAO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\YearDictDAO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\PermissionsController.java
D:\code\electron\src\main\java\com\zhongzhi\dto\course\VodsDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dao\MatchCollegeCountDAO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\MainTrackProjectPageVO.java
D:\code\electron\src\main\java\com\zhongzhi\service\DrawLotsJudgeNumService.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\SmsUtils.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\FundDictServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectDO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\college\LoginStatusDTO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectJudgeController.java
D:\code\electron\src\main\java\com\zhongzhi\dto\administer\AdministerPageDTO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\DrawLotsJudgeNumController.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectCopyrightDO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectCopyrightServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\ProjectType.java
D:\code\electron\src\main\java\com\zhongzhi\model\SmsNoticeDO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\DrawLotsGroupItemsServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\SubmitStatus.java
D:\code\electron\src\main\java\com\zhongzhi\model\MessageDO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\DrawJudgeInfoVO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\dto\review\SubmittedDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\VodDictServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectScheduleRecordDAO.java
D:\code\electron\src\main\java\com\zhongzhi\service\DrawLotsScenesService.java
D:\code\electron\src\main\java\com\zhongzhi\dao\MatchDictDAO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectTrademarkController.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\DrawLotsScenesServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\GroupRankVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\ExportDTO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\ProjectPageVO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\review\FinalsReviewVO.java
D:\code\electron\src\main\java\com\zhongzhi\model\ProjectPaperDO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\projectJudge\ImportJudge.java
D:\code\electron\src\main\java\com\zhongzhi\service\DrawLotsScoresService.java
D:\code\electron\src\main\java\com\zhongzhi\controller\DrawLotGroupDictController.java
D:\code\electron\src\main\java\com\zhongzhi\controller\MatchDictController.java
D:\code\electron\src\main\java\com\zhongzhi\dto\college\AwardedListDTO.java
D:\code\electron\src\main\java\com\zhongzhi\model\StudentDO.java
D:\code\electron\src\main\java\com\zhongzhi\service\MatchDictService.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\ProjectSchedule.java
D:\code\electron\src\main\java\com\zhongzhi\common\configure\SwaggerConfig.java
D:\code\electron\src\main\java\com\zhongzhi\vo\college\CollegePageVO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\CollegesDictController.java
D:\code\electron\src\main\java\com\zhongzhi\model\VodDictDO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\DownloadCulturalPDFDTO.java
D:\code\electron\src\main\java\com\zhongzhi\model\PermissionsDO.java
D:\code\electron\src\main\java\com\zhongzhi\common\configure\DataSourceSwitch.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectPatentController.java
D:\code\electron\src\main\java\com\zhongzhi\common\constant\DBTypeEnum.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\SceneGroupsVO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectPatentServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\dao\PermissionsDAO.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\DateFormatUtil.java
D:\code\electron\src\main\java\com\zhongzhi\dto\drawlots\AllGroupItemsDTO.java
D:\code\electron\src\main\java\com\zhongzhi\model\AdministerPermissionDO.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\AliyunSmsUtil.java
D:\code\electron\src\main\java\com\zhongzhi\service\MatchCollegePdfService.java
D:\code\electron\src\main\java\com\zhongzhi\model\DrawLotsScenesDO.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\ExcelColumn.java
D:\code\electron\src\main\java\com\zhongzhi\dto\college\UpdatePwdDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\judge\ProjectJudgePageDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\administer\LoginDTO.java
D:\code\electron\src\main\java\com\zhongzhi\common\exception\GlobalExceptionHandler.java
D:\code\electron\src\main\java\com\zhongzhi\common\generator\CodeGenerator.java
D:\code\electron\src\main\java\com\zhongzhi\service\DrawLotsGroupItemsService.java
D:\code\electron\src\main\java\com\zhongzhi\vo\college\ExportListVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\review\SetReviewDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\AdministerService.java
D:\code\electron\src\main\java\com\zhongzhi\dto\student\RegisterDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectReviewServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\vo\course\CourseVodsVO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\project\CreateMainTrackProjectDTO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\message\MessagePageDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\DrawLotGroupDictServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\vo\project\VocationalReviewNumVO.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\ApplicationContextUtil.java
D:\code\electron\src\main\java\com\zhongzhi\dao\AdministerPermissionDAO.java
D:\code\electron\src\main\java\com\zhongzhi\controller\ProjectReviewController.java
D:\code\electron\src\main\java\com\zhongzhi\controller\MatchCollegeCountController.java
D:\code\electron\src\main\java\com\zhongzhi\dao\ProjectMaterialsDAO.java
D:\code\electron\src\main\java\com\zhongzhi\dto\review\ProjectReviewPageDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectTrademarkServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\dto\college\ExportCollegeDTO.java
D:\code\electron\src\main\java\com\zhongzhi\service\impl\ProjectPaperServiceImpl.java
D:\code\electron\src\main\java\com\zhongzhi\vo\drawlots\JudgeFullInfoVO.java
D:\code\electron\src\main\java\com\zhongzhi\common\utils\JwtUtil.java
D:\code\electron\src\main\java\com\zhongzhi\dao\CourseDictDAO.java
D:\code\electron\src\main\java\com\zhongzhi\vo\permission\PermissionVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\SmsCodeController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\VodDictController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\college\AwardedListVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\college\CollegesVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\MainTrackProjectPageVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\ReviewListVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectWorksDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\SmsCodeService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\PermissionsController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\college\GetCollegesListDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\ImportVocationalProjectDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\SmsCodeDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectMemberDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\AdministerPermissionService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\match\MatchDictVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectTrademarkService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\constant\SMSTemplate.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\MatchCollegePdfServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\AdministerPermissionDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\CourseDictDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\AdministerServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\constant\ProjectSchedule.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\ExcelUtil.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\Signature.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectTrademarkMapper.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectOwnershipStructureServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\judge\ProjectReviewVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\course\VodsDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\PermissionsServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectTrackService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\administer\CreateAdministerDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\MessageController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\StudentServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\configure\VODConfig.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\CollegesDictDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectPaperServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\college\LoginStatusDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\MatchCollegePdfDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\AdministerPermissionController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectJudgeController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\college\DownloadErrorDataDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\DataOverviewDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\MessageServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\QueryPdfStatusVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\member\MentorDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\MainTrackProjectDetailVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectWorksController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectReviewPeriodServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectScheduleRecordController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectOwnershipStructureDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectMaterialsServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\CourseDictController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\Localstorage.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectScheduleRecordDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\course\CoursesDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectCopyrightService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\StudentDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\IpAddressUtil.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\SysLog.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\MatchScheduleController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\college\LoginDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\college\RegisterMembersVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectAwardService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\ProjectInfoVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectMemberServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\ProjectNumVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ItemFieldDictService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\SMSSendUtils.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\college\CollegesDictDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\JwtUtil.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\BatchRollbackDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\projectReviewPeriod\ProjectReviewPeriodVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\CourseDictService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\AliyunSmsUtil.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectReviewPeriodDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\CollegeProjectVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\college\DetailVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectCopyrightServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectJudgeService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\message\MessageVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\SeedTrackProjectNumVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\StudentController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\SmsCodeDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\review\SetReviewDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\VocationalNumVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\MatchCollegePdfMapper.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\VocationalProjectVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\MajorDictDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\administer\GetAdministerPageVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\CollegesDictController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\period\ProjectReviewPeriodDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\SmsNoticeServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\MatchDictController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\MatchScheduleDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\review\ProjectReviewDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\review\ReMatchReviewVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\FinalMatchMemberController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\interceptor\AuthenticationInterceptor.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\FinalMatchMemberDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectReviewPeriodMapper.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\CollegesDictDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\MessageService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ItemFieldDictDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectAwardServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectPatentMapper.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\RandomUtil.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\YearDictDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\CollegesDictService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\CreateVocationalProjectDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\CourseDictServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\configure\SwaggerConfig.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectTrackDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\ExcelFieldVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectTrademarkServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\ExportProjectDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\college\AddProjectMemberDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\VodDictServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectWorksService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\FinalMatchMemberDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectMemberController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectJudgeDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\SeedTrackProjectDetailVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\administer\LoginDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\MajorDictServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\oss\UploadFileVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\configure\MybatisPlusConfig.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\constant\SmsCode.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectCopyrightController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectTrademarkController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectMemberDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectScheduleRecordService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\scheduleRecord\ProjectScheduleRecordVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\generator\CodeGenerator.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectAwardMapper.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectOwnershipStructureController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\constant\Code.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\GetDataDListVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectCopyrightMapper.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\course\CourseVodsVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\college\ExportCollegeDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\administer\AdministerVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\FundDictDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\FundDictController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\CollegesDictServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectAwardController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\FundDictServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectWorksMapper.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\CollegeProjectDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\college\RegisterMembersDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\constant\ProjectProgress.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\oss\GetSecretVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectTrademarkDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\MatchCollegePdfService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectAwardDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\notice\SmsNoticePageDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectMaterialsController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectReviewDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\VodDictService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\college\SchoolsVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\college\AwardedListDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\ExportDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectPatentController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectTrackDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectReviewController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\student\StudentInfoVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectPatentService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\VocationalProjectNum.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\FinalMatchMemberServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\review\SendNoticeVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\constant\MemberType.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\college\CollegesDOT.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\administer\AdministerPageDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\StudentDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\constant\ProjectReview.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\college\UpdatePwdDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectPatentServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\MatchScheduleService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\ResponseVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectMemberService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ItemFieldDictServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\ExcelColumn.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\ProjectProgressCntVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\exception\HttpException.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectMaterialsDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectPaperMapper.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\course\ChangeOrdersDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\OssController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\exception\GlobalExceptionHandler.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\StudentProjectDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\match\SelectListPageDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\SmsCodeServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\AdministerDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ItemFieldDictDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\judge\ProjectJudgePageVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\configure\AliyunSmsProperties.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\SeedTrackProjectVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\ReviewListDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\review\SchoolReviewVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\SeedTrackProjectPageVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\constant\PDFCheckBox.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectReviewPeriodService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\MessageDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\MajorDictDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\MatchDictDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\MatchCollegePdfController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\MajorDictService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectPaperService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\course\CoursesVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectReviewPeriodController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\review\FinalsReviewVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\FundDictService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\constant\ProjectType.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\MajorDictController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\message\MessagePageDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\MatchScheduleServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectTrackServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectJudgeServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\college\ExportListVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\FundDictDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\constant\ProjectStatus.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\notice\SmsNoticeDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\StudentService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\ProjectPageVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\SmsNoticeController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectReviewServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectOwnershipStructureService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\course\VodsVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\configure\RemoteProperties.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectScheduleRecordDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\VodDictDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\AdministerController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\constant\Platform.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectMaterialsService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectJudgeDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\MatchDictServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\ZhongzhiApplication.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\configure\WebConfig.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\PrintAttachmentDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectPaperController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\LoginRequired.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectMaterialsDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\VocationalProjectInfoVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\ProjectAssignNumVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\AdministerDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\DateFormatUtil.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\SmsNoticeDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\ReviewVocationalNumDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\review\CancelReviewDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectCopyrightDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\ProjectDataOverview.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\VodUtil.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\YearDictService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\ResponseData.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\college\GetCollegeInfoVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\ApplicationContextUtil.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\MatchScheduleDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\notice\SmsNoticeVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\administer\AdministerTracksDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\member\TeamMemberDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\SeedTrackProjectNumDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\MessageDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ItemFieldDictController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\PermissionsDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectReviewDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectPatentDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\EditStatusDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\ProjectJudgeVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\judge\ProjectJudgePageDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\SmsNoticeService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\permission\PermissionVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\college\CollegesPageDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectWorksServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\handler\MetaHandler.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\CreateMainTrackProjectDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\project\VocationalReviewNumVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\AdministerPermissionServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\PermissionsDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\review\ProjectReviewPageDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\AdministerService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\ProjectScheduleRecordServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\student\RegisterDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\ProjectListPageDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\ProjectOwnershipStructureDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\AdministerTrackMappingDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\ProjectTrackController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\projectJudge\ImportJudge.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\YearDictDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\college\CollegePageVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\AdministerTrackMappingController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\utils\PDFUtil.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\MatchDictService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\ApproveDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\YearDictServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\ProjectCollegeListDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\judge\JudgeInfoVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\AdministerTrackMappingService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\common\constant\ProjectAssigned.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\PermissionsService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\CourseDictDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\match\MatchDictDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\controller\YearDictController.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\impl\AdministerTrackMappingServiceImpl.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\course\SignatureVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\review\ReviewScoreDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\member\CreateProjectMemberDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\project\CreateSeedTrackProjectDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\ProjectPaperDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\AdministerPermissionDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\FinalMatchMemberService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\SmsNoticeMapper.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\base\BaseModel.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\scheduleRecord\ProjectScheduleRecordDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\service\ProjectReviewService.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\review\ProjectReviewScoreDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\student\LoginDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dao\MatchDictDAO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\dto\review\SubmittedDTO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\VodDictDO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\vo\member\ProjectMemberVO.java
D:\code\lixinshuangchuang\src\main\java\com\zhongzhi\model\AdministerTrackMappingDO.java
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!