diff --git a/.idea/workspace.xml b/.idea/workspace.xml index e2ca87d..e079618 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -1,7 +1,111 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - @@ -775,7 +879,17 @@ - + + + + + + + + + + + 1664517688369 @@ -1187,10 +1301,10 @@ - + - + @@ -1199,66 +1313,66 @@ - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + @@ -1275,10 +1389,10 @@ - + - + diff --git a/logs/springboot-logback-error.log b/logs/springboot-logback-error.log index 19b4745..dd1719b 100644 --- a/logs/springboot-logback-error.log +++ b/logs/springboot-logback-error.log @@ -2,3 +2,91 @@ at [Source: (PushbackInputStream); line: 1, column: 48] (through reference chain: com.subsidy.model.AdministerCompanyMappingDO["companyId"]) 2024-01-18 18:19:49,840 [http-nio-23477-exec-2] ERROR com.subsidy.common.exception.GlobalExceptionHandler:89 - JSON parse error: Cannot deserialize instance of `java.lang.Long` out of START_OBJECT token; nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize instance of `java.lang.Long` out of START_OBJECT token at [Source: (PushbackInputStream); line: 1, column: 48] (through reference chain: com.subsidy.model.AdministerCompanyMappingDO["companyId"]) +2024-01-22 10:21:59,613 [main] ERROR org.apache.catalina.util.LifecycleBase:175 - Failed to start component [Connector[HTTP/1.1-23477]] +org.apache.catalina.LifecycleException: Protocol handler start failed + at org.apache.catalina.connector.Connector.startInternal(Connector.java:1008) + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) + at org.apache.catalina.core.StandardService.addConnector(StandardService.java:227) + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.addPreviouslyRemovedConnectors(TomcatWebServer.java:263) + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.start(TomcatWebServer.java:195) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.startWebServer(ServletWebServerApplicationContext.java:297) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.finishRefresh(ServletWebServerApplicationContext.java:163) + at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:552) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141) + at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:743) + at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:390) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:312) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1214) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1203) + at com.subsidy.MeishuApplication.main(MeishuApplication.java:22) +Caused by: java.net.BindException: Address already in use: bind + at sun.nio.ch.Net.bind0(Native Method) + at sun.nio.ch.Net.bind(Net.java:433) + at sun.nio.ch.Net.bind(Net.java:425) + at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223) + at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74) + at org.apache.tomcat.util.net.NioEndpoint.initServerSocket(NioEndpoint.java:230) + at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:213) + at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1124) + at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1210) + at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:585) + at org.apache.catalina.connector.Connector.startInternal(Connector.java:1005) + ... 14 common frames omitted +2024-01-22 10:21:59,634 [main] ERROR org.springframework.boot.diagnostics.LoggingFailureAnalysisReporter:40 - + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +The Tomcat connector configured to listen on port 23477 failed to start. The port may already be in use or the connector may be misconfigured. + +Action: + +Verify the connector's configuration, identify and stop any process that's listening on port 23477, or configure this application to listen on another port. + +2024-01-22 10:22:36,306 [main] ERROR org.apache.catalina.util.LifecycleBase:175 - Failed to start component [Connector[HTTP/1.1-23477]] +org.apache.catalina.LifecycleException: Protocol handler start failed + at org.apache.catalina.connector.Connector.startInternal(Connector.java:1008) + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) + at org.apache.catalina.core.StandardService.addConnector(StandardService.java:227) + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.addPreviouslyRemovedConnectors(TomcatWebServer.java:263) + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.start(TomcatWebServer.java:195) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.startWebServer(ServletWebServerApplicationContext.java:297) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.finishRefresh(ServletWebServerApplicationContext.java:163) + at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:552) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141) + at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:743) + at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:390) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:312) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1214) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1203) + at com.subsidy.MeishuApplication.main(MeishuApplication.java:22) +Caused by: java.net.BindException: Address already in use: bind + at sun.nio.ch.Net.bind0(Native Method) + at sun.nio.ch.Net.bind(Net.java:433) + at sun.nio.ch.Net.bind(Net.java:425) + at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223) + at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74) + at org.apache.tomcat.util.net.NioEndpoint.initServerSocket(NioEndpoint.java:230) + at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:213) + at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1124) + at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1210) + at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:585) + at org.apache.catalina.connector.Connector.startInternal(Connector.java:1005) + ... 14 common frames omitted +2024-01-22 10:22:36,323 [main] ERROR org.springframework.boot.diagnostics.LoggingFailureAnalysisReporter:40 - + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +The Tomcat connector configured to listen on port 23477 failed to start. The port may already be in use or the connector may be misconfigured. + +Action: + +Verify the connector's configuration, identify and stop any process that's listening on port 23477, or configure this application to listen on another port. + diff --git a/logs/springboot-logback-info.log b/logs/springboot-logback-info.log index c20d8cb..1a1b42c 100644 --- a/logs/springboot-logback-info.log +++ b/logs/springboot-logback-info.log @@ -1,26 +1,26 @@ -2024-01-22 10:10:38,824 [main] INFO org.springframework.data.repository.config.RepositoryConfigurationDelegate:244 - Multiple Spring Data modules found, entering strict repository configuration mode! -2024-01-22 10:10:38,830 [main] INFO org.springframework.data.repository.config.RepositoryConfigurationDelegate:126 - Bootstrapping Spring Data repositories in DEFAULT mode. -2024-01-22 10:10:38,879 [main] INFO org.springframework.data.repository.config.RepositoryConfigurationDelegate:182 - Finished Spring Data repository scanning in 36ms. Found 0 repository interfaces. -2024-01-22 10:10:39,229 [main] INFO org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker:330 - Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$6fb3a425] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) -2024-01-22 10:10:39,343 [main] INFO org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker:330 - Bean 'redisConfig' of type [com.subsidy.common.configure.RedisConfig$$EnhancerBySpringCGLIB$$6f7baf2c] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) -2024-01-22 10:10:39,668 [main] INFO org.springframework.boot.web.embedded.tomcat.TomcatWebServer:90 - Tomcat initialized with port(s): 23477 (http) -2024-01-22 10:10:39,681 [main] INFO org.apache.coyote.http11.Http11NioProtocol:173 - Initializing ProtocolHandler ["http-nio-23477"] -2024-01-22 10:10:39,689 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] -2024-01-22 10:10:39,690 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.22] -2024-01-22 10:10:39,696 [main] INFO org.apache.catalina.core.AprLifecycleListener:173 - Loaded APR based Apache Tomcat Native library [1.2.37] using APR version [1.7.4]. -2024-01-22 10:10:39,697 [main] INFO org.apache.catalina.core.AprLifecycleListener:173 - APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true]. -2024-01-22 10:10:39,697 [main] INFO org.apache.catalina.core.AprLifecycleListener:173 - APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true] -2024-01-22 10:10:39,700 [main] INFO org.apache.catalina.core.AprLifecycleListener:173 - OpenSSL successfully initialized [OpenSSL 1.1.1u 30 May 2023] -2024-01-22 10:10:39,838 [main] INFO org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/]:173 - Initializing Spring embedded WebApplicationContext -2024-01-22 10:10:39,839 [main] INFO org.springframework.web.context.ContextLoader:284 - Root WebApplicationContext: initialization completed in 1940 ms -2024-01-22 10:10:39,955 [main] INFO com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure:56 - Init DruidDataSource -2024-01-22 10:10:41,261 [main] INFO com.alibaba.druid.pool.DruidDataSource:994 - {dataSource-1} inited -2024-01-22 10:10:42,684 [main] INFO org.quartz.impl.StdSchedulerFactory:1208 - Using default implementation for ThreadExecutor -2024-01-22 10:10:42,693 [main] INFO org.quartz.core.SchedulerSignalerImpl:61 - Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl -2024-01-22 10:10:42,693 [main] INFO org.quartz.core.QuartzScheduler:229 - Quartz Scheduler v.2.3.1 created. -2024-01-22 10:10:42,696 [main] INFO org.springframework.scheduling.quartz.LocalDataSourceJobStore:672 - Using db table-based data access locking (synchronization). -2024-01-22 10:10:42,697 [main] INFO org.springframework.scheduling.quartz.LocalDataSourceJobStore:145 - JobStoreCMT initialized. -2024-01-22 10:10:42,698 [main] INFO org.quartz.core.QuartzScheduler:294 - Scheduler meta-data: Quartz Scheduler (v2.3.1) 'schedulerFactoryBean' with instanceId 'NON_CLUSTERED' +2024-01-30 09:51:55,888 [main] INFO org.springframework.data.repository.config.RepositoryConfigurationDelegate:244 - Multiple Spring Data modules found, entering strict repository configuration mode! +2024-01-30 09:51:55,894 [main] INFO org.springframework.data.repository.config.RepositoryConfigurationDelegate:126 - Bootstrapping Spring Data repositories in DEFAULT mode. +2024-01-30 09:51:55,932 [main] INFO org.springframework.data.repository.config.RepositoryConfigurationDelegate:182 - Finished Spring Data repository scanning in 26ms. Found 0 repository interfaces. +2024-01-30 09:51:56,249 [main] INFO org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker:330 - Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$50b0b1d3] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2024-01-30 09:51:56,345 [main] INFO org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker:330 - Bean 'redisConfig' of type [com.subsidy.common.configure.RedisConfig$$EnhancerBySpringCGLIB$$5078bcda] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2024-01-30 09:51:56,656 [main] INFO org.springframework.boot.web.embedded.tomcat.TomcatWebServer:90 - Tomcat initialized with port(s): 23477 (http) +2024-01-30 09:51:56,666 [main] INFO org.apache.coyote.http11.Http11NioProtocol:173 - Initializing ProtocolHandler ["http-nio-23477"] +2024-01-30 09:51:56,672 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2024-01-30 09:51:56,672 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.22] +2024-01-30 09:51:56,677 [main] INFO org.apache.catalina.core.AprLifecycleListener:173 - Loaded APR based Apache Tomcat Native library [1.2.37] using APR version [1.7.4]. +2024-01-30 09:51:56,677 [main] INFO org.apache.catalina.core.AprLifecycleListener:173 - APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true]. +2024-01-30 09:51:56,677 [main] INFO org.apache.catalina.core.AprLifecycleListener:173 - APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true] +2024-01-30 09:51:56,679 [main] INFO org.apache.catalina.core.AprLifecycleListener:173 - OpenSSL successfully initialized [OpenSSL 1.1.1u 30 May 2023] +2024-01-30 09:51:56,774 [main] INFO org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/]:173 - Initializing Spring embedded WebApplicationContext +2024-01-30 09:51:56,774 [main] INFO org.springframework.web.context.ContextLoader:284 - Root WebApplicationContext: initialization completed in 1650 ms +2024-01-30 09:51:56,857 [main] INFO com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure:56 - Init DruidDataSource +2024-01-30 09:51:57,785 [main] INFO com.alibaba.druid.pool.DruidDataSource:994 - {dataSource-1} inited +2024-01-30 09:51:58,944 [main] INFO org.quartz.impl.StdSchedulerFactory:1208 - Using default implementation for ThreadExecutor +2024-01-30 09:51:58,952 [main] INFO org.quartz.core.SchedulerSignalerImpl:61 - Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl +2024-01-30 09:51:58,952 [main] INFO org.quartz.core.QuartzScheduler:229 - Quartz Scheduler v.2.3.1 created. +2024-01-30 09:51:58,955 [main] INFO org.springframework.scheduling.quartz.LocalDataSourceJobStore:672 - Using db table-based data access locking (synchronization). +2024-01-30 09:51:58,956 [main] INFO org.springframework.scheduling.quartz.LocalDataSourceJobStore:145 - JobStoreCMT initialized. +2024-01-30 09:51:58,957 [main] INFO org.quartz.core.QuartzScheduler:294 - Scheduler meta-data: Quartz Scheduler (v2.3.1) 'schedulerFactoryBean' with instanceId 'NON_CLUSTERED' Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. NOT STARTED. Currently in standby mode. @@ -28,19 +28,27 @@ Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads. Using job-store 'org.springframework.scheduling.quartz.LocalDataSourceJobStore' - which supports persistence. and is not clustered. -2024-01-22 10:10:42,698 [main] INFO org.quartz.impl.StdSchedulerFactory:1362 - Quartz scheduler 'schedulerFactoryBean' initialized from an externally provided properties instance. -2024-01-22 10:10:42,698 [main] INFO org.quartz.impl.StdSchedulerFactory:1366 - Quartz scheduler version: 2.3.1 -2024-01-22 10:10:42,699 [main] INFO org.quartz.core.QuartzScheduler:2293 - JobFactory set to: com.subsidy.common.configure.JobFactory@1ad1b737 -2024-01-22 10:10:43,344 [main] INFO springfox.documentation.spring.web.PropertySourcedRequestMappingHandlerMapping:69 - Mapped URL path [/v2/api-docs] onto method [public org.springframework.http.ResponseEntity springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(java.lang.String,javax.servlet.http.HttpServletRequest)] -2024-01-22 10:10:43,511 [main] INFO org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor:171 - Initializing ExecutorService 'applicationTaskExecutor' -2024-01-22 10:10:44,174 [main] INFO org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler:171 - Initializing ExecutorService 'taskScheduler' -2024-01-22 10:10:44,224 [main] INFO springfox.documentation.spring.web.plugins.DocumentationPluginsBootstrapper:160 - Context refreshed -2024-01-22 10:10:44,237 [main] INFO springfox.documentation.spring.web.plugins.DocumentationPluginsBootstrapper:163 - Found 1 custom documentation plugin(s) -2024-01-22 10:10:44,261 [main] INFO springfox.documentation.spring.web.scanners.ApiListingReferenceScanner:41 - Scanning for api listing references -2024-01-22 10:10:44,405 [main] INFO org.springframework.scheduling.quartz.SchedulerFactoryBean:731 - Will start Quartz Scheduler [schedulerFactoryBean] in 1 seconds -2024-01-22 10:10:44,413 [main] INFO org.apache.coyote.http11.Http11NioProtocol:173 - Starting ProtocolHandler ["http-nio-23477"] -2024-01-22 10:10:44,433 [main] INFO org.springframework.boot.web.embedded.tomcat.TomcatWebServer:202 - Tomcat started on port(s): 23477 (http) with context path '' -2024-01-22 10:10:45,418 [Quartz Scheduler [schedulerFactoryBean]] INFO org.springframework.scheduling.quartz.SchedulerFactoryBean:747 - Starting Quartz Scheduler now, after delay of 1 seconds -2024-01-22 10:15:57,961 [http-nio-23477-exec-1] INFO org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' -2024-01-22 10:15:57,962 [http-nio-23477-exec-1] INFO org.springframework.web.servlet.DispatcherServlet:524 - Initializing Servlet 'dispatcherServlet' -2024-01-22 10:15:57,969 [http-nio-23477-exec-1] INFO org.springframework.web.servlet.DispatcherServlet:546 - Completed initialization in 7 ms +2024-01-30 09:51:58,957 [main] INFO org.quartz.impl.StdSchedulerFactory:1362 - Quartz scheduler 'schedulerFactoryBean' initialized from an externally provided properties instance. +2024-01-30 09:51:58,957 [main] INFO org.quartz.impl.StdSchedulerFactory:1366 - Quartz scheduler version: 2.3.1 +2024-01-30 09:51:58,957 [main] INFO org.quartz.core.QuartzScheduler:2293 - JobFactory set to: com.subsidy.common.configure.JobFactory@3a54638b +2024-01-30 09:51:59,461 [main] INFO springfox.documentation.spring.web.PropertySourcedRequestMappingHandlerMapping:69 - Mapped URL path [/v2/api-docs] onto method [public org.springframework.http.ResponseEntity springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(java.lang.String,javax.servlet.http.HttpServletRequest)] +2024-01-30 09:51:59,610 [main] INFO org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor:171 - Initializing ExecutorService 'applicationTaskExecutor' +2024-01-30 09:52:00,238 [main] INFO org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler:171 - Initializing ExecutorService 'taskScheduler' +2024-01-30 09:52:00,290 [main] INFO springfox.documentation.spring.web.plugins.DocumentationPluginsBootstrapper:160 - Context refreshed +2024-01-30 09:52:00,303 [main] INFO springfox.documentation.spring.web.plugins.DocumentationPluginsBootstrapper:163 - Found 1 custom documentation plugin(s) +2024-01-30 09:52:00,328 [main] INFO springfox.documentation.spring.web.scanners.ApiListingReferenceScanner:41 - Scanning for api listing references +2024-01-30 09:52:00,509 [main] INFO org.springframework.scheduling.quartz.SchedulerFactoryBean:731 - Will start Quartz Scheduler [schedulerFactoryBean] in 1 seconds +2024-01-30 09:52:00,519 [main] INFO org.apache.coyote.http11.Http11NioProtocol:173 - Starting ProtocolHandler ["http-nio-23477"] +2024-01-30 09:52:00,543 [main] INFO org.springframework.boot.web.embedded.tomcat.TomcatWebServer:202 - Tomcat started on port(s): 23477 (http) with context path '' +2024-01-30 09:52:01,520 [Quartz Scheduler [schedulerFactoryBean]] INFO org.springframework.scheduling.quartz.SchedulerFactoryBean:747 - Starting Quartz Scheduler now, after delay of 1 seconds +2024-01-30 13:28:25,700 [http-nio-23477-exec-1] INFO org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' +2024-01-30 13:28:25,702 [http-nio-23477-exec-1] INFO org.springframework.web.servlet.DispatcherServlet:524 - Initializing Servlet 'dispatcherServlet' +2024-01-30 13:28:25,746 [http-nio-23477-exec-1] INFO org.springframework.web.servlet.DispatcherServlet:546 - Completed initialization in 43 ms +2024-01-30 16:14:39,155 [Thread-16] INFO org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler:208 - Shutting down ExecutorService 'taskScheduler' +2024-01-30 16:14:39,173 [Thread-16] INFO org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor:208 - Shutting down ExecutorService 'applicationTaskExecutor' +2024-01-30 16:14:39,199 [Thread-16] INFO org.quartz.core.QuartzScheduler:666 - Scheduler schedulerFactoryBean_$_NON_CLUSTERED shutting down. +2024-01-30 16:14:39,199 [Thread-16] INFO org.quartz.core.QuartzScheduler:585 - Scheduler schedulerFactoryBean_$_NON_CLUSTERED paused. +2024-01-30 16:14:39,200 [Thread-16] INFO org.quartz.core.QuartzScheduler:740 - Scheduler schedulerFactoryBean_$_NON_CLUSTERED shutdown complete. +2024-01-30 16:14:39,201 [Thread-16] INFO org.springframework.scheduling.quartz.SchedulerFactoryBean:844 - Shutting down Quartz Scheduler +2024-01-30 16:14:39,202 [Thread-16] INFO com.alibaba.druid.pool.DruidDataSource:2029 - {dataSource-1} closing ... +2024-01-30 16:14:39,204 [Thread-16] INFO com.alibaba.druid.pool.DruidDataSource:2101 - {dataSource-1} closed diff --git a/logs/springboot-logback/info/2023-12-25-0.log.gz b/logs/springboot-logback/info/2023-12-25-0.log.gz deleted file mode 100644 index 31ce135..0000000 Binary files a/logs/springboot-logback/info/2023-12-25-0.log.gz and /dev/null differ diff --git a/logs/springboot-logback/info/2023-12-26-0.log.gz b/logs/springboot-logback/info/2023-12-26-0.log.gz deleted file mode 100644 index 3b15ace..0000000 Binary files a/logs/springboot-logback/info/2023-12-26-0.log.gz and /dev/null differ diff --git a/logs/springboot-logback/info/2024-01-22-0.log.gz b/logs/springboot-logback/info/2024-01-22-0.log.gz new file mode 100644 index 0000000..1336d89 Binary files /dev/null and b/logs/springboot-logback/info/2024-01-22-0.log.gz differ diff --git a/logs/springboot-logback/info/2024-01-24-0.log.gz b/logs/springboot-logback/info/2024-01-24-0.log.gz new file mode 100644 index 0000000..0982034 Binary files /dev/null and b/logs/springboot-logback/info/2024-01-24-0.log.gz differ diff --git a/logs/springboot-logback/info/2024-01-25-0.log.gz b/logs/springboot-logback/info/2024-01-25-0.log.gz new file mode 100644 index 0000000..f4cf8de Binary files /dev/null and b/logs/springboot-logback/info/2024-01-25-0.log.gz differ diff --git a/logs/springboot-logback/info/2024-01-26-0.log.gz b/logs/springboot-logback/info/2024-01-26-0.log.gz new file mode 100644 index 0000000..3c9f5fe Binary files /dev/null and b/logs/springboot-logback/info/2024-01-26-0.log.gz differ diff --git a/logs/springboot-logback/info/2024-01-29-0.log.gz b/logs/springboot-logback/info/2024-01-29-0.log.gz new file mode 100644 index 0000000..5a2b1b5 Binary files /dev/null and b/logs/springboot-logback/info/2024-01-29-0.log.gz differ diff --git a/src/main/java/com/subsidy/controller/AdministerController.java b/src/main/java/com/subsidy/controller/AdministerController.java index ee7fd54..323211a 100644 --- a/src/main/java/com/subsidy/controller/AdministerController.java +++ b/src/main/java/com/subsidy/controller/AdministerController.java @@ -5,6 +5,7 @@ import com.subsidy.common.ResponseData; import com.subsidy.common.ResponseVO; import com.subsidy.common.interceptor.LoginRequired; import com.subsidy.common.interceptor.TimeRequired; +import com.subsidy.dto.administer.AddAdministerDTO; import com.subsidy.dto.administer.DownloadFailMembersDTO; import com.subsidy.model.AdministerDO; import com.subsidy.model.MemberDO; @@ -46,7 +47,7 @@ public class AdministerController { } @PostMapping("auth") - @ApiOperation("授权到应用端免密登录 telephone 手机号") + @ApiOperation("授权到应用端免密登录 accountName 用户名 id ") @TimeRequired public ResponseVO qxy(@RequestBody AdministerDO administerDO){ return ResponseData.generateCreatedResponse(0,administerService.auth(administerDO)); @@ -65,5 +66,25 @@ public class AdministerController { administerService.downloadFailMembers(downloadFailMembersDTO); } + @PostMapping("addAdminister") + @ApiOperation("添加客户账户 userName 名称 accountName 账户 password 密码 telephone 联系方式 role:0:应用 1:客户 2:中心 3:企业唯一账号 remark 备注 companyIds[] serviceIds[]") + @LoginRequired + public ResponseVO addAdminister(@RequestBody AddAdministerDTO addAdministerDTO) { + return ResponseData.generateCreatedResponse(0, administerService.addAdminister(addAdministerDTO)); + } + + @PostMapping("deleteAdminister") + @ApiOperation("客户账户管理 删除 id ") + @LoginRequired + public ResponseVO deleteAdminister(@RequestBody AdministerDO administerDO) { + return ResponseData.generateCreatedResponse(0, administerService.deleteAdminister(administerDO)); + } + + @PostMapping("updateAdminister") + @ApiOperation("编辑客户账户 id userName 名称 accountName 账号 password remark telephone companyIds[] serviceIds[]") + @LoginRequired + public ResponseVO updateAdminister(@RequestBody AddAdministerDTO addAdministerDTO) { + return ResponseData.generateCreatedResponse(0, administerService.updateAdminister(addAdministerDTO)); + } } diff --git a/src/main/java/com/subsidy/controller/ClassMemberMappingController.java b/src/main/java/com/subsidy/controller/ClassMemberMappingController.java new file mode 100644 index 0000000..63dab0d --- /dev/null +++ b/src/main/java/com/subsidy/controller/ClassMemberMappingController.java @@ -0,0 +1,22 @@ +package com.subsidy.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.web.bind.annotation.RestController; +import io.swagger.annotations.Api; + +/** + *

+ * 班级成员映射表 前端控制器 + *

+ * + * @author Tuyp + * @since 2024-01-22 + */ +@RestController +@Api(tags = "班级成员映射表") +@RequestMapping("/class-member-mapping-do") +public class ClassMemberMappingController { + +} diff --git a/src/main/java/com/subsidy/controller/CompanyMemberMappingController.java b/src/main/java/com/subsidy/controller/CompanyMemberMappingController.java index 8fe714f..c716f65 100644 --- a/src/main/java/com/subsidy/controller/CompanyMemberMappingController.java +++ b/src/main/java/com/subsidy/controller/CompanyMemberMappingController.java @@ -1,6 +1,15 @@ package com.subsidy.controller; +import com.subsidy.common.ResponseData; +import com.subsidy.common.ResponseVO; +import com.subsidy.dto.company.InviteMemberDTO; +import com.subsidy.dto.member.CancerMemberDTO; +import com.subsidy.service.CompanyMemberMappingService; +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; @@ -16,7 +25,22 @@ import io.swagger.annotations.Api; */ @RestController @Api(tags = "公司人员映射表") -@RequestMapping("/company-member-mapping-do") +@RequestMapping("/companyMemberMapping") public class CompanyMemberMappingController { + @Autowired + private CompanyMemberMappingService companyMemberMappingService; + + @PostMapping("inviteMember") + @ApiOperation("邀请某人 userName idCard companyId") + public ResponseVO inviteMember(@RequestBody InviteMemberDTO inviteMemberDTO){ + return ResponseData.generateCreatedResponse(0,companyMemberMappingService.inviteMember(inviteMemberDTO)); + } + + @PostMapping("cancerMember") + @ApiOperation("离职 memberIds[] companyId") + public ResponseVO cancerMember(@RequestBody CancerMemberDTO cancerMemberDTO){ + return ResponseData.generateCreatedResponse(0,companyMemberMappingService.cancerMember(cancerMemberDTO)); + } + } diff --git a/src/main/java/com/subsidy/controller/JobMemberMappingController.java b/src/main/java/com/subsidy/controller/JobMemberMappingController.java new file mode 100644 index 0000000..072f955 --- /dev/null +++ b/src/main/java/com/subsidy/controller/JobMemberMappingController.java @@ -0,0 +1,22 @@ +package com.subsidy.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.web.bind.annotation.RestController; +import io.swagger.annotations.Api; + +/** + *

+ * 成员岗位信息表 前端控制器 + *

+ * + * @author Tuyp + * @since 2024-01-22 + */ +@RestController +@Api(tags = "成员岗位信息表") +@RequestMapping("/job-member-mapping-do") +public class JobMemberMappingController { + +} diff --git a/src/main/java/com/subsidy/controller/MemberController.java b/src/main/java/com/subsidy/controller/MemberController.java index 82592e1..88d34ca 100644 --- a/src/main/java/com/subsidy/controller/MemberController.java +++ b/src/main/java/com/subsidy/controller/MemberController.java @@ -3,19 +3,19 @@ package com.subsidy.controller; import com.subsidy.common.ResponseData; import com.subsidy.common.ResponseVO; +import com.subsidy.common.interceptor.LoginRequired; import com.subsidy.dto.company.AttendMembersDTO; -import com.subsidy.dto.member.CancerMemberDTO; -import com.subsidy.dto.member.DepartMembersDTO; +import com.subsidy.dto.member.*; import com.subsidy.model.CompanyMemberMappingDO; -import com.subsidy.service.CompanyMemberMappingService; +import com.subsidy.model.MemberDO; +import com.subsidy.service.MemberService; +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 io.swagger.annotations.Api; /** *

@@ -30,39 +30,67 @@ import io.swagger.annotations.Api; @RequestMapping("/member") public class MemberController { - @Autowired - private CompanyMemberMappingService companyMemberMappingService; + private MemberService memberService; - @PostMapping("cancerMember") - @ApiOperation("离职 memberIds[] companyId") - public ResponseVO cancerMember(@RequestBody CancerMemberDTO cancerMemberDTO){ - return ResponseData.generateCreatedResponse(0,companyMemberMappingService.cancerMember(cancerMemberDTO)); - } @PostMapping("departMembers") @ApiOperation("某公司的离职记录 pageSize pageNum companyId userName 姓名/手机号/身份证号") public ResponseVO departMembers(@RequestBody DepartMembersDTO departMembersDTO){ - return ResponseData.generateCreatedResponse(0,companyMemberMappingService.departMembers(departMembersDTO)); + return ResponseData.generateCreatedResponse(0,memberService.departMembers(departMembersDTO)); } @PostMapping("exportDepartMembers") @ApiOperation("导出离职人员记录 companyId userName 姓名/手机号/身份证号 ") public void exportDepartMembers(@RequestBody DepartMembersDTO departMembersDTO){ - companyMemberMappingService.exportDepartMembers(departMembersDTO); + memberService.exportDepartMembers(departMembersDTO); } @PostMapping("attendMembers") @ApiOperation("查看某个企业已经参加过该培训的学生 companyId departmentId userName pageSize pageNum") public ResponseVO attendMembers(@RequestBody AttendMembersDTO attendMembersDTO){ - return ResponseData.generateCreatedResponse(0,companyMemberMappingService.attendMembers(attendMembersDTO)); + return ResponseData.generateCreatedResponse(0,memberService.attendMembers(attendMembersDTO)); } @PostMapping("memberAttendInfo") @ApiOperation("某个学员在该企业参加培训的详情 memberId 学员id companyId 公司id") public ResponseVO memberAttendInfo(@RequestBody CompanyMemberMappingDO companyMemberMappingDO){ - return ResponseData.generateCreatedResponse(0,companyMemberMappingService.memberAttendInfo(companyMemberMappingDO)); + return ResponseData.generateCreatedResponse(0,memberService.memberAttendInfo(companyMemberMappingDO)); + } + + @PostMapping("getAll") + @ApiOperation("查询某部门成员 pageNum pageSize departmentId userName status startDate endDate") + @LoginRequired + public ResponseVO getAll(@RequestBody GetAllDTO getAllDTO){ + return ResponseData.generateCreatedResponse(0,memberService.getAll(getAllDTO)); } + @PostMapping("deleteMember") + @ApiOperation("删除成员 id ") + @LoginRequired + public ResponseVO deleteMember(@RequestBody MemberDO memberDO){ + return ResponseData.generateCreatedResponse(0,memberService.deleteMember(memberDO)); + } + + @PostMapping("addMember") + @ApiOperation("新增成员 companyId userName accountName accountNameEn telephone gender image idCard departmentIds jobIds workNo inductionDate email") + @LoginRequired + public ResponseVO addMember(@RequestBody AddMemberDTO addMemberDTO){ + return ResponseData.generateCreatedResponse(0,memberService.addMember(addMemberDTO)); + } + + @PostMapping("updateMember") + @ApiOperation("编辑成员 {id companyId userName accountName accountNameEn telephone gender image idCard idCardPhoto status departmentIds jobIds}") + @LoginRequired + public ResponseVO updateMember(@RequestBody AddMemberDTO addMemberDTO){ + return ResponseData.generateCreatedResponse(0,memberService.updateMember(addMemberDTO)); + } + + @PostMapping("changeDepartments") + @ApiOperation("修改部门 desDepId[] 目的部门 memberIds[] 成员id") + @LoginRequired + public ResponseVO changeDepartments(@RequestBody ChangeDepartmentsDTO changeDepartmentsDTO){ + return ResponseData.generateCreatedResponse(0,memberService.changeDepartments(changeDepartmentsDTO)); + } } diff --git a/src/main/java/com/subsidy/controller/OssController.java b/src/main/java/com/subsidy/controller/OssController.java new file mode 100644 index 0000000..ff95eae --- /dev/null +++ b/src/main/java/com/subsidy/controller/OssController.java @@ -0,0 +1,201 @@ +package com.subsidy.controller; + +import com.aliyun.oss.ClientException; +import com.aliyun.oss.OSS; +import com.aliyun.oss.OSSClientBuilder; +import com.aliyun.oss.OSSException; +import com.aliyun.oss.model.*; +import com.subsidy.common.ResponseData; +import com.subsidy.common.ResponseVO; +import com.subsidy.vo.oss.GetSecretVO; +import com.subsidy.vo.oss.UploadFileVO; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.multipart.MultipartFile; + +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStream; +import java.util.ArrayList; +import java.util.List; + +@Api(tags = "oss") +@RestController +@RequestMapping("/oss") +public class OssController { + + public static final String keyId = "LTAI5tPAH7P7WQVeowo517BE"; + + + public static final String secret = "0ueqhIfdAZyw5lWlBVSLpAxTtx37RY"; + + + @Value("${spring.profiles.active}") + private String env; + + @PostMapping("getSecret") + @ApiOperation("oss秘钥") + public ResponseVO getSecret() { + GetSecretVO getSecretVO = new GetSecretVO(); + getSecretVO.setKey(keyId); + getSecretVO.setSecret(secret); + return ResponseData.generateCreatedResponse(0, getSecretVO); + } + + @PostMapping("uploadFile") + @ApiOperation("分片上传") + public ResponseVO fenpian(@RequestParam("file") MultipartFile file) { + + UploadFileVO uploadFileVO = new UploadFileVO(); + + // Endpoint以华东1(杭州)为例,其它Region请按实际情况填写。 + String endpoint = "http://oss-cn-beijing.aliyuncs.com"; + // 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。 + String accessKeyId = keyId; + String accessKeySecret = secret; + // 填写Bucket名称,例如examplebucket。 +// String bucketName = "zhongzhi-cms"; + // 填写Object完整路径,例如exampledir/exampleobject.txt。Object完整路径中不能包含Bucket名称。 + String objectName = System.currentTimeMillis() + "_" + file.getOriginalFilename(); + + // 创建OSSClient实例。 + OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); + + if (env.equals("dev")) { + env = "ykhl-bigger-test"; + } + if (env.equals("prod")) { + env = "ykhl-bigger"; + } + + + try { + // 创建InitiateMultipartUploadRequest对象。 + InitiateMultipartUploadRequest request = new InitiateMultipartUploadRequest(env, objectName); + + // 如果需要在初始化分片时设置请求头,请参考以下示例代码。 + ObjectMetadata metadata = new ObjectMetadata(); + metadata.setContentType(file.getContentType()); + metadata.setContentDisposition("inline"); + // 如果需要在初始化分片时设置请求头,请参考以下示例代码。 + // ObjectMetadata metadata = new ObjectMetadata(); + // metadata.setHeader(OSSHeaders.OSS_STORAGE_CLASS, StorageClass.Standard.toString()); + // 指定该Object的网页缓存行为。 + // metadata.setCacheControl("no-cache"); + // 指定该Object被下载时的名称。 + // metadata.setContentDisposition("attachment;filename=oss_MultipartUpload.txt"); + // 指定该Object的内容编码格式。 + // metadata.setContentEncoding(OSSConstants.DEFAULT_CHARSET_NAME); + // 指定初始化分片上传时是否覆盖同名Object。此处设置为true,表示禁止覆盖同名Object。 + // metadata.setHeader("x-oss-forbid-overwrite", "true"); + // 指定上传该Object的每个part时使用的服务器端加密方式。 + // metadata.setHeader(OSSHeaders.OSS_SERVER_SIDE_ENCRYPTION, ObjectMetadata.KMS_SERVER_SIDE_ENCRYPTION); + // 指定Object的加密算法。如果未指定此选项,表明Object使用AES256加密算法。 + // metadata.setHeader(OSSHeaders.OSS_SERVER_SIDE_DATA_ENCRYPTION, ObjectMetadata.KMS_SERVER_SIDE_ENCRYPTION); + // 指定KMS托管的用户主密钥。 + // metadata.setHeader(OSSHeaders.OSS_SERVER_SIDE_ENCRYPTION_KEY_ID, "9468da86-3509-4f8d-a61e-6eab1eac****"); + // 指定Object的存储类型。 + // metadata.setHeader(OSSHeaders.OSS_STORAGE_CLASS, StorageClass.Standard); + // 指定Object的对象标签,可同时设置多个标签。 + // metadata.setHeader(OSSHeaders.OSS_TAGGING, "a:1"); + // request.setObjectMetadata(metadata); + + metadata.setHeader("x-oss-force-download", false); + request.setObjectMetadata(metadata); + + // 初始化分片。 + InitiateMultipartUploadResult upresult = ossClient.initiateMultipartUpload(request); + // 返回uploadId,它是分片上传事件的唯一标识。您可以根据该uploadId发起相关的操作,例如取消分片上传、查询分片上传等。 + String uploadId = upresult.getUploadId(); + + // partETags是PartETag的集合。PartETag由分片的ETag和分片号组成。 + List partETags = new ArrayList(); + // 每个分片的大小,用于计算文件有多少个分片。单位为字节。 + final long partSize = 1 * 1024 * 1024L; //1 MB。 + + // 根据上传的数据大小计算分片数。以本地文件为例,说明如何通过File.length()获取上传数据的大小。 +// final File sampleFile = new File("D:\\localpath\\examplefile.txt"); +// long fileLength = sampleFile.length(); +// int partCount = (int) (fileLength / partSize); +// if (fileLength % partSize != 0) { +// partCount++; +// } + + long fileLength = file.getSize(); + int partCount = (int) (fileLength / partSize); + if (fileLength % partSize != 0) { + partCount++; + } + + // 遍历分片上传。 + for (int i = 0; i < partCount; i++) { + long startPos = i * partSize; + long curPartSize = (i + 1 == partCount) ? (fileLength - startPos) : partSize; + UploadPartRequest uploadPartRequest = new UploadPartRequest(); + uploadPartRequest.setBucketName(env); + uploadPartRequest.setKey(objectName); + uploadPartRequest.setUploadId(uploadId); + // 设置上传的分片流。 + // 以本地文件为例说明如何创建FIleInputstream,并通过InputStream.skip()方法跳过指定数据。 + InputStream instream = file.getInputStream(); + instream.skip(startPos); + uploadPartRequest.setInputStream(instream); + // 设置分片大小。除了最后一个分片没有大小限制,其他的分片最小为100 KB。 + uploadPartRequest.setPartSize(curPartSize); + // 设置分片号。每一个上传的分片都有一个分片号,取值范围是1~10000,如果超出此范围,OSS将返回InvalidArgument错误码。 + uploadPartRequest.setPartNumber(i + 1); + // 每个分片不需要按顺序上传,甚至可以在不同客户端上传,OSS会按照分片号排序组成完整的文件。 + UploadPartResult uploadPartResult = ossClient.uploadPart(uploadPartRequest); + // 每次上传分片之后,OSS的返回结果包含PartETag。PartETag将被保存在partETags中。 + partETags.add(uploadPartResult.getPartETag()); + } + + + // 创建CompleteMultipartUploadRequest对象。 + // 在执行完成分片上传操作时,需要提供所有有效的partETags。OSS收到提交的partETags后,会逐一验证每个分片的有效性。当所有的数据分片验证通过后,OSS将把这些分片组合成一个完整的文件。 + CompleteMultipartUploadRequest completeMultipartUploadRequest = + new CompleteMultipartUploadRequest(env, objectName, uploadId, partETags); + + // 如果需要在完成分片上传的同时设置文件访问权限,请参考以下示例代码。 + // completeMultipartUploadRequest.setObjectACL(CannedAccessControlList.Private); + // 指定是否列举当前UploadId已上传的所有Part。仅在Java SDK为3.14.0及以上版本时,支持通过服务端List分片数据来合并完整文件时,将CompleteMultipartUploadRequest中的partETags设置为null。 + // Map headers = new HashMap(); + // 如果指定了x-oss-complete-all:yes,则OSS会列举当前UploadId已上传的所有Part,然后按照PartNumber的序号排序并执行CompleteMultipartUpload操作。 + // 如果指定了x-oss-complete-all:yes,则不允许继续指定body,否则报错。 + // headers.put("x-oss-complete-all","yes"); + // completeMultipartUploadRequest.setHeaders(headers); + + // 完成分片上传。 + CompleteMultipartUploadResult completeMultipartUploadResult = ossClient.completeMultipartUpload(completeMultipartUploadRequest); + uploadFileVO.setUrl(completeMultipartUploadResult.getLocation()); + System.out.println(completeMultipartUploadResult.getLocation()); + } catch (OSSException oe) { + System.out.println("Caught an OSSException, which means your request made it to OSS, " + + "but was rejected with an error response for some reason."); + System.out.println("Error Message:" + oe.getErrorMessage()); + System.out.println("Error Code:" + oe.getErrorCode()); + System.out.println("Request ID:" + oe.getRequestId()); + System.out.println("Host ID:" + oe.getHostId()); + } 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()); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + if (ossClient != null) { + ossClient.shutdown(); + } + } + + return ResponseData.generateCreatedResponse(0, uploadFileVO); + } +} diff --git a/src/main/java/com/subsidy/controller/ServiceCompanyFilesController.java b/src/main/java/com/subsidy/controller/ServiceCompanyFilesController.java index 385b2d5..6cf340b 100644 --- a/src/main/java/com/subsidy/controller/ServiceCompanyFilesController.java +++ b/src/main/java/com/subsidy/controller/ServiceCompanyFilesController.java @@ -3,6 +3,8 @@ package com.subsidy.controller; import com.subsidy.common.ResponseData; import com.subsidy.common.ResponseVO; +import com.subsidy.dto.company.CompanyFilesDTO; +import com.subsidy.dto.company.UploadFileDTO; import com.subsidy.model.ServiceCompanyFilesDO; import com.subsidy.service.ServiceCompanyFilesService; import io.swagger.annotations.ApiOperation; @@ -31,9 +33,9 @@ public class ServiceCompanyFilesController { private ServiceCompanyFilesService serviceCompanyFilesService; @PostMapping("companyFiles") - @ApiOperation("查看业务合同/业务材料 serviceCompanyId fileType 0:业务合同 1:业务材料 ") - public ResponseVO companyFiles(@RequestBody ServiceCompanyFilesDO serviceCompanyFilesDO){ - return ResponseData.generateCreatedResponse(0,serviceCompanyFilesService.companyFiles(serviceCompanyFilesDO)); + @ApiOperation("查看业务合同/业务材料 serviceId companyId fileType 0:业务合同 1:业务材料 ") + public ResponseVO companyFiles(@RequestBody CompanyFilesDTO companyFilesDTO){ + return ResponseData.generateCreatedResponse(0,serviceCompanyFilesService.companyFiles(companyFilesDTO)); } @PostMapping("deleteFile") @@ -43,9 +45,9 @@ public class ServiceCompanyFilesController { } @PostMapping("uploadFile") - @ApiOperation("上传新文件 serviceCompanyId fileType 0:业务合同 1:业务材料 fileName fileAddress ") - public ResponseVO uploadFile(@RequestBody ServiceCompanyFilesDO serviceCompanyFilesDO){ - return ResponseData.generateCreatedResponse(0,serviceCompanyFilesService.uploadFile(serviceCompanyFilesDO)); + @ApiOperation("上传新文件 serviceId companyId fileType 0:业务合同 1:业务材料 fileName fileAddress ") + public ResponseVO uploadFile(@RequestBody UploadFileDTO uploadFileDTO){ + return ResponseData.generateCreatedResponse(0,serviceCompanyFilesService.uploadFile(uploadFileDTO)); } } diff --git a/src/main/java/com/subsidy/dto/administer/AddAdministerDTO.java b/src/main/java/com/subsidy/dto/administer/AddAdministerDTO.java new file mode 100644 index 0000000..b8f1487 --- /dev/null +++ b/src/main/java/com/subsidy/dto/administer/AddAdministerDTO.java @@ -0,0 +1,52 @@ +package com.subsidy.dto.administer; + +import lombok.Data; + +import java.util.List; + +@Data +public class AddAdministerDTO { + + + + private Long id; + + /** + * 账号 + */ + private String accountName; + + /** + * 手机号/企业账号 + */ + private String telephone; + + /** + * 密码 + */ + private String password; + + /** + * 成员名称 + */ + private String userName; + + /** + * 备注 + */ + private String remark; + + /** + * 角色 + */ + private Integer role; + /** + * 企业 + */ + private List companyIds; + + /** + * 服务 + */ + private List serviceIds; +} diff --git a/src/main/java/com/subsidy/dto/administer/AdministerPermissionVO.java b/src/main/java/com/subsidy/dto/administer/AdministerPermissionVO.java index 3b1cbb2..d2a82e1 100644 --- a/src/main/java/com/subsidy/dto/administer/AdministerPermissionVO.java +++ b/src/main/java/com/subsidy/dto/administer/AdministerPermissionVO.java @@ -19,6 +19,10 @@ public class AdministerPermissionVO { private String companyName; + private String telephone; + + private String accountName; + private String shortName; private List permissions; diff --git a/src/main/java/com/subsidy/dto/company/CompanyFilesDTO.java b/src/main/java/com/subsidy/dto/company/CompanyFilesDTO.java new file mode 100644 index 0000000..ac2bac2 --- /dev/null +++ b/src/main/java/com/subsidy/dto/company/CompanyFilesDTO.java @@ -0,0 +1,23 @@ +package com.subsidy.dto.company; + +import lombok.Data; + +@Data +public class CompanyFilesDTO { + + private Integer pageSize; + + private Integer pageNum; + + private String fileName; + + private Long serviceCompanyId; + + private Long serviceId; + + private Long companyId; + + private Integer fileType; + + +} diff --git a/src/main/java/com/subsidy/dto/company/InviteMemberDTO.java b/src/main/java/com/subsidy/dto/company/InviteMemberDTO.java new file mode 100644 index 0000000..567a2c6 --- /dev/null +++ b/src/main/java/com/subsidy/dto/company/InviteMemberDTO.java @@ -0,0 +1,16 @@ +package com.subsidy.dto.company; + +import lombok.Data; + +@Data +public class InviteMemberDTO { + + private String userName; + + private String idCard; + + private Long companyId; + + private Long departmentId; + +} diff --git a/src/main/java/com/subsidy/dto/company/UploadFileDTO.java b/src/main/java/com/subsidy/dto/company/UploadFileDTO.java new file mode 100644 index 0000000..113bc0e --- /dev/null +++ b/src/main/java/com/subsidy/dto/company/UploadFileDTO.java @@ -0,0 +1,20 @@ +package com.subsidy.dto.company; + +import lombok.Data; + +@Data +public class UploadFileDTO { + + private Long id; + + private Long companyId; + + private Long serviceId; + + private String fileType; + + private String fileName; + + private String fileAddress; + +} diff --git a/src/main/java/com/subsidy/dto/member/AddMemberDTO.java b/src/main/java/com/subsidy/dto/member/AddMemberDTO.java new file mode 100644 index 0000000..8e28ac8 --- /dev/null +++ b/src/main/java/com/subsidy/dto/member/AddMemberDTO.java @@ -0,0 +1,17 @@ +package com.subsidy.dto.member; + +import com.subsidy.model.MemberDO; +import lombok.Data; + +import java.util.List; + +@Data +public class AddMemberDTO extends MemberDO { + + private List departmentIds; + + private List jobIds; + + private Long companyId; + +} diff --git a/src/main/java/com/subsidy/dto/member/ChangeDepartmentsDTO.java b/src/main/java/com/subsidy/dto/member/ChangeDepartmentsDTO.java new file mode 100644 index 0000000..5143158 --- /dev/null +++ b/src/main/java/com/subsidy/dto/member/ChangeDepartmentsDTO.java @@ -0,0 +1,14 @@ +package com.subsidy.dto.member; + +import lombok.Data; + +import java.util.List; + +@Data +public class ChangeDepartmentsDTO { + + private List desDepId; + + private List memberIds; + +} diff --git a/src/main/java/com/subsidy/dto/member/GetAllDTO.java b/src/main/java/com/subsidy/dto/member/GetAllDTO.java new file mode 100644 index 0000000..6f9dffe --- /dev/null +++ b/src/main/java/com/subsidy/dto/member/GetAllDTO.java @@ -0,0 +1,22 @@ +package com.subsidy.dto.member; + +import lombok.Data; + +@Data +public class GetAllDTO { + + private String userName; + + private String status; + + private Long departmentId; + + private String startDate; + + private String endDate; + + private Integer pageNum; + + private Integer pageSize; + +} diff --git a/src/main/java/com/subsidy/mapper/AdministerMapper.java b/src/main/java/com/subsidy/mapper/AdministerMapper.java index 1236695..045aab3 100644 --- a/src/main/java/com/subsidy/mapper/AdministerMapper.java +++ b/src/main/java/com/subsidy/mapper/AdministerMapper.java @@ -25,4 +25,15 @@ public interface AdministerMapper extends BaseMapper { * 查看某客户账号管理哪些公司 */ List administerCompanys(Long administerId); + + /** + * 查看某客户账号管理哪些公司 返回id + */ + List administerCompanyIds(Long administerId); + + /** + * 查看某客户有哪些服务 返回id + */ + List administerServiceIds(Long administerId); + } diff --git a/src/main/java/com/subsidy/mapper/ClassMemberMappingMapper.java b/src/main/java/com/subsidy/mapper/ClassMemberMappingMapper.java new file mode 100644 index 0000000..913931a --- /dev/null +++ b/src/main/java/com/subsidy/mapper/ClassMemberMappingMapper.java @@ -0,0 +1,18 @@ +package com.subsidy.mapper; + +import com.subsidy.model.ClassMemberMappingDO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.springframework.stereotype.Repository; + +/** + *

+ * 班级成员映射表 Mapper 接口 + *

+ * + * @author Tuyp + * @since 2024-01-22 + */ + @Repository +public interface ClassMemberMappingMapper extends BaseMapper { + +} diff --git a/src/main/java/com/subsidy/mapper/CompanyDictMapper.java b/src/main/java/com/subsidy/mapper/CompanyDictMapper.java index ced495b..9c65ad7 100644 --- a/src/main/java/com/subsidy/mapper/CompanyDictMapper.java +++ b/src/main/java/com/subsidy/mapper/CompanyDictMapper.java @@ -15,20 +15,25 @@ import org.springframework.stereotype.Repository; * @author Tuyp * @since 2024-01-11 */ - @Repository +@Repository public interface CompanyDictMapper extends BaseMapper { - /** - * 企业管理--查找所有主账号 、运营者 - * - * @return - */ - IPage operators(IPage page, Long userId,String companyName, Long fieldId, String superviseName); + /** + * 查询全部企业 + */ + IPage allOperators(IPage page, String companyName, Long fieldId, String superviseName); - /** - * 查看某个公司的学生 - */ - IPage getCompanyMembers(IPage page, Long companyId, String userName, String memberStatus); + + /** + * 企业管理--查找所有主账号 、运营者 + */ + IPage operators(IPage page, Long userId, String companyName, Long fieldId, String superviseName); + + + /** + * 查看某个公司的学生 + */ + IPage getCompanyMembers(IPage page, Long companyId, String userName, String memberStatus); } diff --git a/src/main/java/com/subsidy/mapper/JobDictMapper.java b/src/main/java/com/subsidy/mapper/JobDictMapper.java index e0356a4..c76bcdd 100644 --- a/src/main/java/com/subsidy/mapper/JobDictMapper.java +++ b/src/main/java/com/subsidy/mapper/JobDictMapper.java @@ -4,6 +4,8 @@ import com.subsidy.model.JobDictDO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.springframework.stereotype.Repository; +import java.util.List; + /** *

* 岗位表 Mapper 接口 @@ -12,7 +14,12 @@ import org.springframework.stereotype.Repository; * @author Tuyp * @since 2024-01-11 */ - @Repository +@Repository public interface JobDictMapper extends BaseMapper { + /** + * 获取某个人的岗位 + */ + List queryMemberJobs(Long memberId); + } diff --git a/src/main/java/com/subsidy/mapper/JobMemberMappingMapper.java b/src/main/java/com/subsidy/mapper/JobMemberMappingMapper.java new file mode 100644 index 0000000..74b79c4 --- /dev/null +++ b/src/main/java/com/subsidy/mapper/JobMemberMappingMapper.java @@ -0,0 +1,18 @@ +package com.subsidy.mapper; + +import com.subsidy.model.JobMemberMappingDO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.springframework.stereotype.Repository; + +/** + *

+ * 成员岗位信息表 Mapper 接口 + *

+ * + * @author Tuyp + * @since 2024-01-22 + */ + @Repository +public interface JobMemberMappingMapper extends BaseMapper { + +} diff --git a/src/main/java/com/subsidy/mapper/MemberMapper.java b/src/main/java/com/subsidy/mapper/MemberMapper.java index 8cec4fc..2ddd321 100644 --- a/src/main/java/com/subsidy/mapper/MemberMapper.java +++ b/src/main/java/com/subsidy/mapper/MemberMapper.java @@ -1,6 +1,7 @@ package com.subsidy.mapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.subsidy.model.DepartmentDictDO; import com.subsidy.model.MemberDO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.subsidy.vo.member.GetAllVO; @@ -35,4 +36,14 @@ public interface MemberMapper extends BaseMapper { */ List getMemberWithoutPage(Long departmentId, String userName, String status, String startDate, String endDate); + /** + * 查询某公司的学生 + */ + IPage getCompanyMember(IPage iPage,Long companyId,String userName,String status,String startDate,String endDate); + + /** + * 查询学生所在部门 + */ + List getDepartments(Long memberId); + } diff --git a/src/main/java/com/subsidy/mapper/ServiceCompanyFilesMapper.java b/src/main/java/com/subsidy/mapper/ServiceCompanyFilesMapper.java index 811c1e6..b39db0e 100644 --- a/src/main/java/com/subsidy/mapper/ServiceCompanyFilesMapper.java +++ b/src/main/java/com/subsidy/mapper/ServiceCompanyFilesMapper.java @@ -1,5 +1,6 @@ package com.subsidy.mapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.subsidy.model.ServiceCompanyFilesDO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.springframework.stereotype.Repository; @@ -14,11 +15,9 @@ import java.util.List; * @author Tuyp * @since 2024-01-11 */ - @Repository +@Repository public interface ServiceCompanyFilesMapper extends BaseMapper { - - List companyFiles(Long serviceCompanyId, String fileName); - + IPage companyFiles(IPage page,Integer fileType,Long companyId,Long serviceId, String fileName); } diff --git a/src/main/java/com/subsidy/mapper/ServiceCompanyMappingMapper.java b/src/main/java/com/subsidy/mapper/ServiceCompanyMappingMapper.java index 155e105..30c6fe4 100644 --- a/src/main/java/com/subsidy/mapper/ServiceCompanyMappingMapper.java +++ b/src/main/java/com/subsidy/mapper/ServiceCompanyMappingMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.subsidy.model.ServiceCompanyMappingDO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.subsidy.model.ServiceDictDO; +import com.subsidy.vo.administer.AdministerServicesVO; import com.subsidy.vo.service.GetServiceCompaniesVO; import com.subsidy.vo.service.ServiceCompaniesVO; import org.springframework.stereotype.Repository; @@ -29,11 +30,11 @@ public interface ServiceCompanyMappingMapper extends BaseMapper companyService(Long companyId); + List companyService(Long companyId); /** * 返回公司授权给某个人的业务 */ - List companyAdministerService(Long companyId, Long administerId); + List companyAdministerService(Long companyId, Long administerId); } diff --git a/src/main/java/com/subsidy/model/ClassMemberMappingDO.java b/src/main/java/com/subsidy/model/ClassMemberMappingDO.java new file mode 100644 index 0000000..5828e5d --- /dev/null +++ b/src/main/java/com/subsidy/model/ClassMemberMappingDO.java @@ -0,0 +1,48 @@ +package com.subsidy.model; + +import com.subsidy.util.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; + +/** + *

+ * 班级成员映射表 + *

+ * + * @author Tuyp + * @since 2024-01-22 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("class_member_mapping") +public class ClassMemberMappingDO extends BaseModel { + + private static final long serialVersionUID = 1L; + + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + /** + * 成员id + */ + private Long memberId; + + /** + * 班级id + */ + private Long classId; + + private String email; + + private Integer emailStatus; + + /** + * 实名验证人脸 + */ + private String photo; + + +} diff --git a/src/main/java/com/subsidy/model/JobMemberMappingDO.java b/src/main/java/com/subsidy/model/JobMemberMappingDO.java new file mode 100644 index 0000000..db9e09e --- /dev/null +++ b/src/main/java/com/subsidy/model/JobMemberMappingDO.java @@ -0,0 +1,33 @@ +package com.subsidy.model; + +import com.subsidy.util.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; + +/** + *

+ * 成员岗位信息表 + *

+ * + * @author Tuyp + * @since 2024-01-22 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("job_member_mapping") +public class JobMemberMappingDO extends BaseModel { + + private static final long serialVersionUID = 1L; + + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + private Long jobId; + + private Long memberId; + + +} diff --git a/src/main/java/com/subsidy/service/AdministerService.java b/src/main/java/com/subsidy/service/AdministerService.java index cf36fb1..3ccbd46 100644 --- a/src/main/java/com/subsidy/service/AdministerService.java +++ b/src/main/java/com/subsidy/service/AdministerService.java @@ -1,10 +1,7 @@ package com.subsidy.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.subsidy.dto.administer.AdministerPermissionVO; -import com.subsidy.dto.administer.DownloadFailMembersDTO; -import com.subsidy.dto.administer.ImportMemberResultVO; -import com.subsidy.dto.administer.LoginVO; +import com.subsidy.dto.administer.*; import com.subsidy.model.AdministerDO; import com.subsidy.vo.administer.AuthVO; import org.springframework.web.multipart.MultipartFile; @@ -28,4 +25,10 @@ public interface AdministerService extends IService { ImportMemberResultVO importMember(Long companyId, MultipartFile multipartFile)throws Exception; void downloadFailMembers(DownloadFailMembersDTO downloadFailMembersDTO); + + String addAdminister(AddAdministerDTO addAdministerDTO); + + String deleteAdminister(AdministerDO administerDO); + + String updateAdminister(AddAdministerDTO addAdministerDTO); } diff --git a/src/main/java/com/subsidy/service/ClassMemberMappingService.java b/src/main/java/com/subsidy/service/ClassMemberMappingService.java new file mode 100644 index 0000000..421b1ef --- /dev/null +++ b/src/main/java/com/subsidy/service/ClassMemberMappingService.java @@ -0,0 +1,16 @@ +package com.subsidy.service; + +import com.subsidy.model.ClassMemberMappingDO; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 班级成员映射表 服务类 + *

+ * + * @author Tuyp + * @since 2024-01-22 + */ +public interface ClassMemberMappingService extends IService { + +} diff --git a/src/main/java/com/subsidy/service/CompanyMemberMappingService.java b/src/main/java/com/subsidy/service/CompanyMemberMappingService.java index c2672c3..f6ba595 100644 --- a/src/main/java/com/subsidy/service/CompanyMemberMappingService.java +++ b/src/main/java/com/subsidy/service/CompanyMemberMappingService.java @@ -2,6 +2,7 @@ package com.subsidy.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.subsidy.dto.company.AttendMembersDTO; +import com.subsidy.dto.company.InviteMemberDTO; import com.subsidy.dto.member.CancerMemberDTO; import com.subsidy.dto.member.DepartMembersDTO; import com.subsidy.model.CompanyMemberMappingDO; @@ -22,15 +23,7 @@ import java.util.List; */ public interface CompanyMemberMappingService extends IService { - String cancerMember(CancerMemberDTO cancerMemberDTO); - - IPage departMembers(DepartMembersDTO departMembersDTO); - - void exportDepartMembers(DepartMembersDTO departMembersDTO); - - IPage attendMembers(AttendMembersDTO attendMembersDTO); - - List memberAttendInfo(CompanyMemberMappingDO companyMemberMappingDO); - + String inviteMember(InviteMemberDTO inviteMemberDTO); + String cancerMember(CancerMemberDTO cancerMemberDTO); } diff --git a/src/main/java/com/subsidy/service/JobMemberMappingService.java b/src/main/java/com/subsidy/service/JobMemberMappingService.java new file mode 100644 index 0000000..9e74782 --- /dev/null +++ b/src/main/java/com/subsidy/service/JobMemberMappingService.java @@ -0,0 +1,16 @@ +package com.subsidy.service; + +import com.subsidy.model.JobMemberMappingDO; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 成员岗位信息表 服务类 + *

+ * + * @author Tuyp + * @since 2024-01-22 + */ +public interface JobMemberMappingService extends IService { + +} diff --git a/src/main/java/com/subsidy/service/MemberService.java b/src/main/java/com/subsidy/service/MemberService.java index f61d1f5..17d112c 100644 --- a/src/main/java/com/subsidy/service/MemberService.java +++ b/src/main/java/com/subsidy/service/MemberService.java @@ -1,7 +1,17 @@ package com.subsidy.service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.subsidy.dto.company.AttendMembersDTO; +import com.subsidy.dto.member.*; +import com.subsidy.model.CompanyMemberMappingDO; import com.subsidy.model.MemberDO; import com.baomidou.mybatisplus.extension.service.IService; +import com.subsidy.vo.member.AttendMembersVO; +import com.subsidy.vo.member.DepartMembersVO; +import com.subsidy.vo.member.GetAllVO; +import com.subsidy.vo.member.MemberAttendInfoVO; + +import java.util.List; /** *

@@ -13,4 +23,22 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface MemberService extends IService { + IPage departMembers(DepartMembersDTO departMembersDTO); + + void exportDepartMembers(DepartMembersDTO departMembersDTO); + + IPage attendMembers(AttendMembersDTO attendMembersDTO); + + List memberAttendInfo(CompanyMemberMappingDO companyMemberMappingDO); + + IPage getAll(GetAllDTO getAllDTO); + + String deleteMember(MemberDO memberDO); + + String addMember(AddMemberDTO addMemberDTO); + + String updateMember(AddMemberDTO addMemberDTO); + + String changeDepartments(ChangeDepartmentsDTO changeDepartmentsDTO); + } diff --git a/src/main/java/com/subsidy/service/ServiceAdministerMappingService.java b/src/main/java/com/subsidy/service/ServiceAdministerMappingService.java index 373b71d..3cb5e2e 100644 --- a/src/main/java/com/subsidy/service/ServiceAdministerMappingService.java +++ b/src/main/java/com/subsidy/service/ServiceAdministerMappingService.java @@ -4,6 +4,7 @@ import com.subsidy.model.AdministerCompanyMappingDO; import com.subsidy.model.ServiceAdministerMappingDO; import com.baomidou.mybatisplus.extension.service.IService; import com.subsidy.model.ServiceDictDO; +import com.subsidy.vo.administer.AdministerServicesVO; import java.util.List; @@ -17,6 +18,6 @@ import java.util.List; */ public interface ServiceAdministerMappingService extends IService { - List administerServices(AdministerCompanyMappingDO administerCompanyMappingDO); + List administerServices(AdministerCompanyMappingDO administerCompanyMappingDO); } diff --git a/src/main/java/com/subsidy/service/ServiceCompanyFilesService.java b/src/main/java/com/subsidy/service/ServiceCompanyFilesService.java index 4d93bb1..77d979d 100644 --- a/src/main/java/com/subsidy/service/ServiceCompanyFilesService.java +++ b/src/main/java/com/subsidy/service/ServiceCompanyFilesService.java @@ -1,5 +1,8 @@ package com.subsidy.service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.subsidy.dto.company.CompanyFilesDTO; +import com.subsidy.dto.company.UploadFileDTO; import com.subsidy.model.ServiceCompanyFilesDO; import com.baomidou.mybatisplus.extension.service.IService; @@ -15,11 +18,11 @@ import java.util.List; */ public interface ServiceCompanyFilesService extends IService { - List companyFiles(ServiceCompanyFilesDO serviceCompanyFilesDO); + IPage companyFiles(CompanyFilesDTO companyFilesDTO); String deleteFile(ServiceCompanyFilesDO serviceCompanyFilesDO); - String uploadFile(ServiceCompanyFilesDO serviceCompanyFilesDO); + String uploadFile(UploadFileDTO uploadFileDTO); } diff --git a/src/main/java/com/subsidy/service/impl/AdministerServiceImpl.java b/src/main/java/com/subsidy/service/impl/AdministerServiceImpl.java index f5dd4bd..f7fa021 100644 --- a/src/main/java/com/subsidy/service/impl/AdministerServiceImpl.java +++ b/src/main/java/com/subsidy/service/impl/AdministerServiceImpl.java @@ -11,6 +11,7 @@ import com.subsidy.mapper.*; import com.subsidy.model.*; import com.subsidy.service.AdministerService; import com.subsidy.service.CompanyMemberMappingService; +import com.subsidy.service.ServiceAdministerMappingService; import com.subsidy.util.*; import com.subsidy.util.excel.ExcelUtil; import com.subsidy.vo.administer.AuthVO; @@ -30,6 +31,7 @@ import org.apache.http.util.EntityUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; import java.text.SimpleDateFormat; @@ -65,6 +67,12 @@ public class AdministerServiceImpl extends ServiceImpl() // .lambda() @@ -150,31 +160,21 @@ public class AdministerServiceImpl extends ServiceImpl() + .lambda() + .eq(AdministerDO::getAccountName, addAdministerDTO.getAccountName())); + + int count1 = this.baseMapper.selectCount(new QueryWrapper() + .lambda() + .eq(AdministerDO::getTelephone, addAdministerDTO.getTelephone())); + + if (count + count1 > 0) { + throw new HttpException(20002); + } + + AdministerDO administerDO = new AdministerDO(); + BeanUtils.copyProperties(addAdministerDTO, administerDO); + this.baseMapper.insert(administerDO); + + if (null != addAdministerDTO.getCompanyIds()) { + List companyIds = addAdministerDTO.getCompanyIds(); + for (Long companyId : companyIds) { + AdministerCompanyMappingDO administerCompanyMappingDO = new AdministerCompanyMappingDO(); + administerCompanyMappingDO.setAdministerId(administerDO.getId()); + administerCompanyMappingDO.setCompanyId(companyId); + administerCompanyMappingMapper.insert(administerCompanyMappingDO); + } + } + + if (null != addAdministerDTO.getServiceIds()) { + List serviceIds = addAdministerDTO.getServiceIds(); + for (Long service : serviceIds) { + ServiceAdministerMappingDO serviceAdministerMappingDO = new ServiceAdministerMappingDO(); + serviceAdministerMappingDO.setAdministerId(administerDO.getId()); + serviceAdministerMappingDO.setServiceId(service); + serviceAdministerMappingMapper.insert(serviceAdministerMappingDO); + } + } + + return ConstantUtils.ADD_SUCCESS; + } + + @Transactional(rollbackFor = Exception.class) + public String deleteAdminister(AdministerDO administerDO) { + this.baseMapper.deleteById(administerDO.getId()); + + administerCompanyMappingMapper.delete(new QueryWrapper() + .lambda() + .eq(AdministerCompanyMappingDO::getAdministerId, administerDO.getId())); + + serviceAdministerMappingMapper.delete(new QueryWrapper() + .lambda() + .eq(ServiceAdministerMappingDO::getAdministerId, administerDO.getId())); + + return ConstantUtils.DELETE_SUCCESS; + } + + public String updateAdminister(AddAdministerDTO addAdministerDTO) { + + int count = this.baseMapper.selectCount(new QueryWrapper() + .lambda() + .eq(AdministerDO::getAccountName, addAdministerDTO.getAccountName()) + .ne(AdministerDO::getId, addAdministerDTO.getId())); + + int count1 = this.baseMapper.selectCount(new QueryWrapper() + .lambda() + .eq(AdministerDO::getTelephone, addAdministerDTO.getTelephone()) + .ne(AdministerDO::getId, addAdministerDTO.getId())); + + if (count + count1 > 0) { + throw new HttpException(20002); + } + AdministerDO administerDO = this.baseMapper.selectById(addAdministerDTO.getId()); + BeanUtils.copyProperties(addAdministerDTO, administerDO); + this.baseMapper.updateById(administerDO); + + if (null != addAdministerDTO.getCompanyIds()) { + + // + List oldIds = this.baseMapper.administerCompanyIds(addAdministerDTO.getId()); + List newIds = addAdministerDTO.getCompanyIds(); + + List newCompanyIds2 = new ArrayList<>(); + for (Long lg : newIds) { + newCompanyIds2.add(lg); + } + + newIds.removeAll(oldIds); // + if (newIds.size() > 0) { + for (Long lg : newIds) { + AdministerCompanyMappingDO administerCompanyMappingDO = new AdministerCompanyMappingDO(); + administerCompanyMappingDO.setAdministerId(addAdministerDTO.getId()); + administerCompanyMappingDO.setCompanyId(lg); + administerCompanyMappingMapper.insert(administerCompanyMappingDO); + } + } + + oldIds.removeAll(newCompanyIds2); + if (oldIds.size() > 0) { + for (Long lg : oldIds) { + administerCompanyMappingMapper.delete(new QueryWrapper() + .lambda() + .eq(AdministerCompanyMappingDO::getAdministerId, addAdministerDTO.getId()) + .eq(AdministerCompanyMappingDO::getCompanyId, lg)); + } + } + } + + if (null != addAdministerDTO.getServiceIds()) { + + // + List oldIds = this.baseMapper.administerServiceIds(addAdministerDTO.getId()); + List newIds = addAdministerDTO.getServiceIds(); + + List newServices2 = new ArrayList<>(); + for (Long lg : newIds) { + newServices2.add(lg); + } + + newIds.removeAll(oldIds); // + if (newIds.size() > 0) { + for (Long lg : newIds) { + ServiceAdministerMappingDO serviceAdministerMappingDO = new ServiceAdministerMappingDO(); + serviceAdministerMappingDO.setAdministerId(addAdministerDTO.getId()); + serviceAdministerMappingDO.setServiceId(lg); + serviceAdministerMappingMapper.insert(serviceAdministerMappingDO); + } + } + + oldIds.removeAll(newServices2); + if (oldIds.size() > 0) { + for (Long lg : oldIds) { + serviceAdministerMappingMapper.delete(new QueryWrapper() + .lambda() + .eq(ServiceAdministerMappingDO::getAdministerId, addAdministerDTO.getId()) + .eq(ServiceAdministerMappingDO::getServiceId, lg)); + } + } + } + + return ConstantUtils.SET_SUCCESS; + } public String userName(String originName, int i, Long companyId) { i++; List memberDOS = memberMapper.selectList(new QueryWrapper() diff --git a/src/main/java/com/subsidy/service/impl/ClassMemberMappingServiceImpl.java b/src/main/java/com/subsidy/service/impl/ClassMemberMappingServiceImpl.java new file mode 100644 index 0000000..dbd828c --- /dev/null +++ b/src/main/java/com/subsidy/service/impl/ClassMemberMappingServiceImpl.java @@ -0,0 +1,20 @@ +package com.subsidy.service.impl; + +import com.subsidy.model.ClassMemberMappingDO; +import com.subsidy.mapper.ClassMemberMappingMapper; +import com.subsidy.service.ClassMemberMappingService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 班级成员映射表 服务实现类 + *

+ * + * @author Tuyp + * @since 2024-01-22 + */ +@Service +public class ClassMemberMappingServiceImpl extends ServiceImpl implements ClassMemberMappingService { + +} diff --git a/src/main/java/com/subsidy/service/impl/CompanyDictServiceImpl.java b/src/main/java/com/subsidy/service/impl/CompanyDictServiceImpl.java index 5af43d9..fab9dfa 100644 --- a/src/main/java/com/subsidy/service/impl/CompanyDictServiceImpl.java +++ b/src/main/java/com/subsidy/service/impl/CompanyDictServiceImpl.java @@ -33,24 +33,29 @@ import java.util.List; public class CompanyDictServiceImpl extends ServiceImpl implements CompanyDictService { @Autowired - private AdministerMapper administerMapper; - - @Autowired private FieldDictMapper fieldDictMapper; @Autowired private CompanyMemberMappingMapper companyMemberMappingMapper; + @Autowired + private AdministerMapper administerMapper; + public IPage operators(OperatorsDTO operatorsDTO) { Page pager = new Page(operatorsDTO.getPageNum(), operatorsDTO.getPageSize()); -// AdministerDO administerDO = administerMapper.selectById(operatorsDTO.getId()); + AdministerDO administerDO = administerMapper.selectById(operatorsDTO.getUserId()); + + IPage page = null; + if (0 == administerDO.getRole()) { + page = this.baseMapper.allOperators(pager, operatorsDTO.getCompanyName(), operatorsDTO.getFieldId(), operatorsDTO.getSuperviseName()); + } else if (1 == administerDO.getRole() || 3 == administerDO.getRole()) { + page = this.baseMapper.operators(pager, operatorsDTO.getUserId(), operatorsDTO.getCompanyName(), operatorsDTO.getFieldId(), operatorsDTO.getSuperviseName()); + } - IPage page = this.baseMapper.operators(pager, operatorsDTO.getUserId(), operatorsDTO.getCompanyName(), operatorsDTO.getFieldId(), operatorsDTO.getSuperviseName()); List operatorsVOS = page.getRecords(); for (OperatorsVO operatorsVO : operatorsVOS) { - //查看公司所在行业 List fieldDictDOS = fieldDictMapper.queryCompanyFields(operatorsVO.getCompanyId()); operatorsVO.setField(fieldDictDOS); diff --git a/src/main/java/com/subsidy/service/impl/CompanyMemberMappingServiceImpl.java b/src/main/java/com/subsidy/service/impl/CompanyMemberMappingServiceImpl.java index e937eff..5db7770 100644 --- a/src/main/java/com/subsidy/service/impl/CompanyMemberMappingServiceImpl.java +++ b/src/main/java/com/subsidy/service/impl/CompanyMemberMappingServiceImpl.java @@ -3,12 +3,17 @@ package com.subsidy.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.subsidy.common.exception.HttpException; import com.subsidy.dto.company.AttendMembersDTO; +import com.subsidy.dto.company.InviteMemberDTO; import com.subsidy.dto.member.CancerMemberDTO; import com.subsidy.dto.member.DepartMembersDTO; import com.subsidy.mapper.MemberDepartmentMappingMapper; +import com.subsidy.mapper.MemberMapper; import com.subsidy.model.CompanyMemberMappingDO; import com.subsidy.mapper.CompanyMemberMappingMapper; +import com.subsidy.model.MemberDO; +import com.subsidy.model.MemberDepartmentMappingDO; import com.subsidy.service.CompanyMemberMappingService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.subsidy.util.ConstantUtils; @@ -35,6 +40,45 @@ public class CompanyMemberMappingServiceImpl extends ServiceImpl() + .lambda() + .eq(MemberDO::getUserName, inviteMemberDTO.getUserName()) + .eq(MemberDO::getIdCard, inviteMemberDTO.getIdCard())); + + if (null == memberDO) { + throw new HttpException(10011); + } + + Integer count = this.baseMapper.selectCount(new QueryWrapper() + .lambda() + .eq(CompanyMemberMappingDO::getMemberId, memberDO.getId()) + .eq(CompanyMemberMappingDO::getMemberStatus, 1)); + + if (count > 0) { + throw new HttpException(10028); + } + + CompanyMemberMappingDO companyMemberMappingDO = new CompanyMemberMappingDO(); + companyMemberMappingDO.setCompanyId(inviteMemberDTO.getCompanyId()); + companyMemberMappingDO.setMemberId(memberDO.getId()); + companyMemberMappingDO.setMemberStatus(1); + this.baseMapper.insert(companyMemberMappingDO); + + MemberDepartmentMappingDO memberDepartmentMappingDO = new MemberDepartmentMappingDO(); + memberDepartmentMappingDO.setDepartmentId(inviteMemberDTO.getDepartmentId()); + memberDepartmentMappingDO.setMemberId(memberDO.getId()); + memberDepartmentMappingDO.setMemberStatus(1); + memberDepartmentMappingMapper.insert(memberDepartmentMappingDO); + + + return ConstantUtils.ADD_SUCCESS; + } + public String cancerMember(CancerMemberDTO cancerMemberDTO) { List members = cancerMemberDTO.getMemberIds(); @@ -53,26 +97,4 @@ public class CompanyMemberMappingServiceImpl extends ServiceImpl departMembers(DepartMembersDTO departMembersDTO) { - Page pager = new Page(departMembersDTO.getPageNum(), departMembersDTO.getPageSize()); - return this.baseMapper.departMembers(pager, departMembersDTO.getCompanyId(), departMembersDTO.getUserName()); - } - - public void exportDepartMembers(DepartMembersDTO departMembersDTO) { - Page pager = new Page(1, -1); - IPage departMembersVOIPage = this.baseMapper.departMembers(pager, departMembersDTO.getCompanyId(), departMembersDTO.getUserName()); - List departMembersVOS = departMembersVOIPage.getRecords(); - ExcelUtil.writeExcel(departMembersVOS, DepartMembersVO.class); - } - - public IPage attendMembers(AttendMembersDTO attendMembersDTO) { - Page pager = new Page(attendMembersDTO.getPageNum(), attendMembersDTO.getPageSize()); - return this.baseMapper.attendMembers(pager, attendMembersDTO.getCompanyId(), attendMembersDTO.getDepartmentId(), attendMembersDTO.getUserName()); - } - - public List memberAttendInfo(CompanyMemberMappingDO companyMemberMappingDO) { - return this.baseMapper.memberAttendInfo(companyMemberMappingDO.getMemberId(),companyMemberMappingDO.getCompanyId()); - } - - } diff --git a/src/main/java/com/subsidy/service/impl/DepartmentDictServiceImpl.java b/src/main/java/com/subsidy/service/impl/DepartmentDictServiceImpl.java index ff99862..f981580 100644 --- a/src/main/java/com/subsidy/service/impl/DepartmentDictServiceImpl.java +++ b/src/main/java/com/subsidy/service/impl/DepartmentDictServiceImpl.java @@ -5,8 +5,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.subsidy.common.exception.HttpException; import com.subsidy.dto.department.GetDepartmentMembersDTO; +import com.subsidy.mapper.CompanyMemberMappingMapper; import com.subsidy.mapper.MemberDepartmentMappingMapper; import com.subsidy.mapper.MemberMapper; +import com.subsidy.model.CompanyMemberMappingDO; import com.subsidy.model.DepartmentDictDO; import com.subsidy.mapper.DepartmentDictMapper; import com.subsidy.model.MemberDO; @@ -41,6 +43,9 @@ public class DepartmentDictServiceImpl extends ServiceImpl getDepartments(DepartmentDictDO departmentDictDO) { //返回结果 @@ -55,10 +60,11 @@ public class DepartmentDictServiceImpl extends ServiceImpl() - // .lambda() - // .eq(MemberDepartmentMappingDO::getDepartmentId, dd.getId())); - //getDepartmentsVO.setCnt(count); + Integer count = companyMemberMappingMapper.selectCount(new QueryWrapper() + .lambda() + .eq(CompanyMemberMappingDO::getCompanyId, departmentDictDO.getCompanyId()) + .eq(CompanyMemberMappingDO::getMemberStatus, 1)); + getDepartmentsVO.setCnt(count); getDepartmentsVO.setChildren(getChildNodes(getDepartmentsVO)); DepartmentDictDO departmentDictDO1 = this.baseMapper.selectById(dd.getParentId()); if (null != departmentDictDO1) { @@ -93,7 +99,7 @@ public class DepartmentDictServiceImpl extends ServiceImpl() .lambda() .eq(MemberDepartmentMappingDO::getDepartmentId, getDepartmentsVO.getId()) - .eq(MemberDepartmentMappingDO::getMemberStatus,1)); + .eq(MemberDepartmentMappingDO::getMemberStatus, 1)); getDepartmentsVO.setCnt(count); DepartmentDictDO departmentDictDO2 = this.baseMapper.selectById(departmentDictDO1.getParentId()); if (null != departmentDictDO2) { diff --git a/src/main/java/com/subsidy/service/impl/JobMemberMappingServiceImpl.java b/src/main/java/com/subsidy/service/impl/JobMemberMappingServiceImpl.java new file mode 100644 index 0000000..ec50d97 --- /dev/null +++ b/src/main/java/com/subsidy/service/impl/JobMemberMappingServiceImpl.java @@ -0,0 +1,20 @@ +package com.subsidy.service.impl; + +import com.subsidy.model.JobMemberMappingDO; +import com.subsidy.mapper.JobMemberMappingMapper; +import com.subsidy.service.JobMemberMappingService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 成员岗位信息表 服务实现类 + *

+ * + * @author Tuyp + * @since 2024-01-22 + */ +@Service +public class JobMemberMappingServiceImpl extends ServiceImpl implements JobMemberMappingService { + +} diff --git a/src/main/java/com/subsidy/service/impl/MemberServiceImpl.java b/src/main/java/com/subsidy/service/impl/MemberServiceImpl.java index b643846..045a8d4 100644 --- a/src/main/java/com/subsidy/service/impl/MemberServiceImpl.java +++ b/src/main/java/com/subsidy/service/impl/MemberServiceImpl.java @@ -1,10 +1,27 @@ package com.subsidy.service.impl; -import com.subsidy.model.MemberDO; -import com.subsidy.mapper.MemberMapper; +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.subsidy.common.exception.HttpException; +import com.subsidy.dto.company.AttendMembersDTO; +import com.subsidy.dto.member.*; +import com.subsidy.mapper.*; +import com.subsidy.model.*; import com.subsidy.service.MemberService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.subsidy.util.ConstantUtils; +import com.subsidy.util.excel.ExcelUtil; +import com.subsidy.vo.member.AttendMembersVO; +import com.subsidy.vo.member.DepartMembersVO; +import com.subsidy.vo.member.GetAllVO; +import com.subsidy.vo.member.MemberAttendInfoVO; +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.List; /** *

@@ -17,4 +34,249 @@ import org.springframework.stereotype.Service; @Service public class MemberServiceImpl extends ServiceImpl implements MemberService { + @Autowired + private MemberDepartmentMappingMapper memberDepartmentMappingMapper; + + @Autowired + private CompanyMemberMappingMapper companyMemberMappingMapper; + + @Autowired + private DepartmentDictMapper departmentDictMapper; + + @Autowired + private JobDictMapper jobDictMapper; + + @Autowired + private ClassMemberMappingMapper classMemberMappingMapper; + + @Autowired + private JobMemberMappingMapper jobMemberMappingMapper; + + public IPage departMembers(DepartMembersDTO departMembersDTO) { + Page pager = new Page(departMembersDTO.getPageNum(), departMembersDTO.getPageSize()); + return companyMemberMappingMapper.departMembers(pager, departMembersDTO.getCompanyId(), departMembersDTO.getUserName()); + } + + public void exportDepartMembers(DepartMembersDTO departMembersDTO) { + Page pager = new Page(1, -1); + IPage departMembersVOIPage = companyMemberMappingMapper.departMembers(pager, departMembersDTO.getCompanyId(), departMembersDTO.getUserName()); + List departMembersVOS = departMembersVOIPage.getRecords(); + ExcelUtil.writeExcel(departMembersVOS, DepartMembersVO.class); + } + + public IPage attendMembers(AttendMembersDTO attendMembersDTO) { + Page pager = new Page(attendMembersDTO.getPageNum(), attendMembersDTO.getPageSize()); + + IPage attendMembersVOIPage = companyMemberMappingMapper.attendMembers(pager, attendMembersDTO.getCompanyId(), attendMembersDTO.getDepartmentId(), attendMembersDTO.getUserName()); + + List getAllVOS = attendMembersVOIPage.getRecords(); + for (AttendMembersVO getAllVO : getAllVOS) { + //获取这个人所在的部门 + List departmentDictDOS = this.baseMapper.getDepartments(getAllVO.getId()); + getAllVO.setDepartmentDictDOS(departmentDictDOS); + + //获取这个人所在的岗位 + List jobDictDOS = jobDictMapper.queryMemberJobs(getAllVO.getId()); + getAllVO.setJobDictDOS(jobDictDOS); + } + return attendMembersVOIPage; + } + + public List memberAttendInfo(CompanyMemberMappingDO companyMemberMappingDO) { + return companyMemberMappingMapper.memberAttendInfo(companyMemberMappingDO.getMemberId(),companyMemberMappingDO.getCompanyId()); + } + + + public IPage getAll(GetAllDTO getAllDTO) { + Page pager = new Page(getAllDTO.getPageNum(), getAllDTO.getPageSize()); + + DepartmentDictDO departmentDictDO = departmentDictMapper.selectById(getAllDTO.getDepartmentId()); + + IPage iPage = null; + + if (null != departmentDictDO.getParentId()) { + iPage = this.baseMapper.getMembers(pager, getAllDTO.getDepartmentId(), getAllDTO.getUserName(), getAllDTO.getStatus(), getAllDTO.getStartDate(), getAllDTO.getEndDate()); + } else { + iPage = this.baseMapper.getCompanyMember(pager, departmentDictDO.getCompanyId(), getAllDTO.getUserName(), getAllDTO.getStatus(), getAllDTO.getStartDate(), getAllDTO.getEndDate()); + } + + List getAllVOS = iPage.getRecords(); + for (GetAllVO getAllVO : getAllVOS) { + //获取这个人所在的部门 + List departmentDictDOS = this.baseMapper.getDepartments(getAllVO.getId()); + getAllVO.setDepartmentDictDOS(departmentDictDOS); + + //获取这个人所在的岗位 + List jobDictDOS = jobDictMapper.queryMemberJobs(getAllVO.getId()); + getAllVO.setJobDictDOS(jobDictDOS); + } + return iPage; + } + + + @Transactional(rollbackFor = Exception.class) + public String deleteMember(MemberDO memberDO) { + + this.baseMapper.deleteById(memberDO.getId()); + classMemberMappingMapper.delete(new QueryWrapper() + .lambda() + .eq(ClassMemberMappingDO::getMemberId, memberDO.getId())); + memberDepartmentMappingMapper.delete(new QueryWrapper() + .lambda() + .eq(MemberDepartmentMappingDO::getMemberId, memberDO.getId())); + return ConstantUtils.DELETE_SUCCESS; + } + + public String addMember(AddMemberDTO addMemberDTO) { + + Integer count = this.baseMapper.selectCount(new QueryWrapper() + .lambda() + .eq(MemberDO::getTelephone, addMemberDTO.getTelephone())); + + if (count > 0) { + throw new HttpException(20002); + } + + Integer count2 = this.baseMapper.selectCount(new QueryWrapper() + .lambda() + .eq(MemberDO::getIdCard, addMemberDTO.getIdCard())); + + if (count2 > 0) { + throw new HttpException(20002); + } + + List memberDOS = companyMemberMappingMapper.companyAccountMembers(addMemberDTO.getCompanyId(), addMemberDTO.getAccountName()); + + if (memberDOS.size() > 0) { + throw new HttpException(20002); + } + + MemberDO memberDO = new MemberDO(); + BeanUtils.copyProperties(addMemberDTO, memberDO); + memberDO.setPassword("Ykhl123456"); + memberDO.setStatus("启用"); + memberDO.setFirstLogin(0); + this.baseMapper.insert(memberDO); + //公司赋值 + CompanyMemberMappingDO companyMemberMappingDO = new CompanyMemberMappingDO(); + companyMemberMappingDO.setCompanyId(addMemberDTO.getCompanyId()); + companyMemberMappingDO.setMemberId(memberDO.getId()); + companyMemberMappingDO.setMemberStatus(1); + companyMemberMappingMapper.insert(companyMemberMappingDO); + + + if (null != addMemberDTO.getDepartmentIds()) { + //部门 + List longs = addMemberDTO.getDepartmentIds(); + + for (Long lg : longs) { + MemberDepartmentMappingDO memberDepartmentMappingDO = new MemberDepartmentMappingDO(); + memberDepartmentMappingDO.setMemberId(memberDO.getId()); + memberDepartmentMappingDO.setDepartmentId(lg); + memberDepartmentMappingDO.setMemberStatus(1); + memberDepartmentMappingMapper.insert(memberDepartmentMappingDO); + } + } + + + if (null != addMemberDTO.getJobIds()) { + jobMemberMappingMapper.delete(new QueryWrapper() + .lambda() + .eq(JobMemberMappingDO::getMemberId, addMemberDTO.getId())); + + //岗位 + List longs = addMemberDTO.getJobIds(); + for (Long lg : longs) { + JobMemberMappingDO jobMemberMappingDO = new JobMemberMappingDO(); + jobMemberMappingDO.setMemberId(memberDO.getId()); + jobMemberMappingDO.setJobId(lg); + jobMemberMappingMapper.insert(jobMemberMappingDO); + } + } + + return ConstantUtils.ADD_SUCCESS; + } + + public String updateMember(AddMemberDTO addMemberDTO) { + + Integer count = this.baseMapper.selectCount(new QueryWrapper() + .lambda() + .eq(MemberDO::getTelephone, addMemberDTO.getTelephone()) + .ne(MemberDO::getId, addMemberDTO.getId())); + + if (count > 0) { + throw new HttpException(20002); + } + + Integer count1 = this.baseMapper.selectCount(new QueryWrapper() + .lambda() + .eq(MemberDO::getAccountName, addMemberDTO.getAccountName()) + .ne(MemberDO::getId, addMemberDTO.getId())); + + if (count1 > 0) { + throw new HttpException(20002); + } + + MemberDO memberDO = new MemberDO(); + BeanUtils.copyProperties(addMemberDTO, memberDO); + this.baseMapper.updateById(memberDO); + + if (null != addMemberDTO.getDepartmentIds()) { + memberDepartmentMappingMapper.delete(new QueryWrapper() + .lambda() + .eq(MemberDepartmentMappingDO::getMemberId, addMemberDTO.getId())); + + //部门 + List longs = addMemberDTO.getDepartmentIds(); + for (Long lg : longs) { + MemberDepartmentMappingDO memberDepartmentMappingDO = new MemberDepartmentMappingDO(); + memberDepartmentMappingDO.setMemberId(memberDO.getId()); + memberDepartmentMappingDO.setDepartmentId(lg); + memberDepartmentMappingMapper.insert(memberDepartmentMappingDO); + } + } + + if (null != addMemberDTO.getJobIds()) { + jobMemberMappingMapper.delete(new QueryWrapper() + .lambda() + .eq(JobMemberMappingDO::getMemberId, addMemberDTO.getId())); + + //岗位 + List longs = addMemberDTO.getJobIds(); + for (Long lg : longs) { + JobMemberMappingDO jobMemberMappingDO = new JobMemberMappingDO(); + jobMemberMappingDO.setMemberId(memberDO.getId()); + jobMemberMappingDO.setJobId(lg); + jobMemberMappingMapper.insert(jobMemberMappingDO); + } + } + + return ConstantUtils.SET_SUCCESS; + } + + + public String changeDepartments(ChangeDepartmentsDTO changeDepartmentsDTO) { + + List memberIds = changeDepartmentsDTO.getMemberIds(); + + //清掉以前的部门 + for (Long lg : memberIds) { + memberDepartmentMappingMapper.cancelMember(lg); + } + + //加入新的部门 + List depIds = changeDepartmentsDTO.getDesDepId(); + for (Long lg : memberIds) { + for (Long depId : depIds) { + MemberDepartmentMappingDO memberDepartmentMappingDO = new MemberDepartmentMappingDO(); + memberDepartmentMappingDO.setMemberId(lg); + memberDepartmentMappingDO.setDepartmentId(depId); + memberDepartmentMappingDO.setMemberStatus(1); + memberDepartmentMappingMapper.insert(memberDepartmentMappingDO); + } + } + return ConstantUtils.SET_SUCCESS; + } + + } diff --git a/src/main/java/com/subsidy/service/impl/ServiceAdministerMappingServiceImpl.java b/src/main/java/com/subsidy/service/impl/ServiceAdministerMappingServiceImpl.java index 7044dee..275abe8 100644 --- a/src/main/java/com/subsidy/service/impl/ServiceAdministerMappingServiceImpl.java +++ b/src/main/java/com/subsidy/service/impl/ServiceAdministerMappingServiceImpl.java @@ -6,6 +6,7 @@ import com.subsidy.model.*; import com.subsidy.mapper.ServiceAdministerMappingMapper; import com.subsidy.service.ServiceAdministerMappingService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.subsidy.vo.administer.AdministerServicesVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,7 +30,7 @@ public class ServiceAdministerMappingServiceImpl extends ServiceImpl administerServices(AdministerCompanyMappingDO administerCompanyMappingDO) { + public List administerServices(AdministerCompanyMappingDO administerCompanyMappingDO) { AdministerDO administerDO = administerMapper.selectById(administerCompanyMappingDO.getAdministerId()); if (3 == administerDO.getRole() || 1 == administerDO.getRole()) { diff --git a/src/main/java/com/subsidy/service/impl/ServiceCompanyFilesServiceImpl.java b/src/main/java/com/subsidy/service/impl/ServiceCompanyFilesServiceImpl.java index 24e3b64..8191704 100644 --- a/src/main/java/com/subsidy/service/impl/ServiceCompanyFilesServiceImpl.java +++ b/src/main/java/com/subsidy/service/impl/ServiceCompanyFilesServiceImpl.java @@ -1,10 +1,19 @@ package com.subsidy.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.subsidy.dto.company.CompanyFilesDTO; +import com.subsidy.dto.company.UploadFileDTO; +import com.subsidy.mapper.ServiceCompanyMappingMapper; import com.subsidy.model.ServiceCompanyFilesDO; import com.subsidy.mapper.ServiceCompanyFilesMapper; +import com.subsidy.model.ServiceCompanyMappingDO; import com.subsidy.service.ServiceCompanyFilesService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.subsidy.util.ConstantUtils; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @@ -20,9 +29,12 @@ import java.util.List; @Service public class ServiceCompanyFilesServiceImpl extends ServiceImpl implements ServiceCompanyFilesService { + @Autowired + private ServiceCompanyMappingMapper serviceCompanyMappingMapper; - public List companyFiles(ServiceCompanyFilesDO serviceCompanyFilesDO) { - return this.baseMapper.companyFiles(serviceCompanyFilesDO.getServiceCompanyId(), serviceCompanyFilesDO.getFileName()); + public IPage companyFiles(CompanyFilesDTO companyFilesDTO) { + Page pager = new Page(companyFilesDTO.getPageNum(), companyFilesDTO.getPageSize()); + return this.baseMapper.companyFiles(pager,companyFilesDTO.getFileType(),companyFilesDTO.getCompanyId(),companyFilesDTO.getServiceId(), companyFilesDTO.getFileName()); } public String deleteFile(ServiceCompanyFilesDO serviceCompanyFilesDO) { @@ -30,7 +42,18 @@ public class ServiceCompanyFilesServiceImpl extends ServiceImpl() + .lambda() + .eq(ServiceCompanyMappingDO::getCompanyId,uploadFileDTO.getCompanyId()) + .eq(ServiceCompanyMappingDO::getServiceId,uploadFileDTO.getServiceId())); + + BeanUtils.copyProperties(uploadFileDTO,serviceCompanyFilesDO); + serviceCompanyFilesDO.setServiceCompanyId(serviceCompanyMappingDO.getId()); + this.baseMapper.insert(serviceCompanyFilesDO); return ConstantUtils.ADD_SUCCESS; } diff --git a/src/main/java/com/subsidy/vo/administer/AdministerServicesVO.java b/src/main/java/com/subsidy/vo/administer/AdministerServicesVO.java new file mode 100644 index 0000000..10bfea4 --- /dev/null +++ b/src/main/java/com/subsidy/vo/administer/AdministerServicesVO.java @@ -0,0 +1,13 @@ +package com.subsidy.vo.administer; + +import lombok.Data; + +@Data +public class AdministerServicesVO { + + private Long id; + + private String serviceName; + + private Long serviceCompanyId; +} diff --git a/src/main/java/com/subsidy/vo/member/AttendMembersVO.java b/src/main/java/com/subsidy/vo/member/AttendMembersVO.java index 46f953b..381fe52 100644 --- a/src/main/java/com/subsidy/vo/member/AttendMembersVO.java +++ b/src/main/java/com/subsidy/vo/member/AttendMembersVO.java @@ -1,7 +1,11 @@ package com.subsidy.vo.member; +import com.subsidy.model.DepartmentDictDO; +import com.subsidy.model.JobDictDO; import lombok.Data; +import java.util.List; + @Data public class AttendMembersVO { @@ -21,5 +25,13 @@ public class AttendMembersVO { private String email; + private String status; + + private String workNo; + + private String inductionDate; + + private List departmentDictDOS; + private List jobDictDOS; } diff --git a/src/main/java/com/subsidy/vo/oss/GetSecretVO.java b/src/main/java/com/subsidy/vo/oss/GetSecretVO.java new file mode 100644 index 0000000..0106522 --- /dev/null +++ b/src/main/java/com/subsidy/vo/oss/GetSecretVO.java @@ -0,0 +1,15 @@ +package com.subsidy.vo.oss; + +import lombok.Data; + +@Data +public class GetSecretVO { + + + private String key; + + private String secret; + + + +} diff --git a/src/main/java/com/subsidy/vo/oss/UploadFileVO.java b/src/main/java/com/subsidy/vo/oss/UploadFileVO.java new file mode 100644 index 0000000..1576248 --- /dev/null +++ b/src/main/java/com/subsidy/vo/oss/UploadFileVO.java @@ -0,0 +1,11 @@ +package com.subsidy.vo.oss; + +import lombok.Data; + +@Data +public class UploadFileVO { + + private String url; + + +} diff --git a/src/main/resources/application-prod.properties b/src/main/resources/application-prod.properties index 75e43ae..444bdcc 100644 --- a/src/main/resources/application-prod.properties +++ b/src/main/resources/application-prod.properties @@ -1,5 +1,5 @@ # 生产环境配置 -spring.server.port=23459 +spring.server.port=23477 # 数据源配置 spring.datasource.url=jdbc:mysql://rm-uf69w46mo6agw0ahao.mysql.rds.aliyuncs.com:3306/subsidy?autoReconnect=true&useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8 diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 5a90389..ae4bf01 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -1,5 +1,5 @@ # 环境配置 -spring.profiles.active=dev +spring.profiles.active=prod #和CPU数 spring.server.acceptorThreadCount=600 spring.server.minSpareThreads=100 diff --git a/src/main/resources/code.properties b/src/main/resources/code.properties index 9ce8341..57ad344 100644 --- a/src/main/resources/code.properties +++ b/src/main/resources/code.properties @@ -22,6 +22,7 @@ meishu.code-message[10025]=身份证识别错误 meishu.code-message[10026]=姓名或身份证号格式不正确 meishu.code-message[10027]=该手机号已注册 meishu.code-message[10028]=该成员已在其他公司入职 +meishu.code-message[10029]=密码输入错误 meishu.code-message[20001]=该课程已存在 diff --git a/src/main/resources/mapper/AdministerMapper.xml b/src/main/resources/mapper/AdministerMapper.xml index 128ceec..7467d19 100644 --- a/src/main/resources/mapper/AdministerMapper.xml +++ b/src/main/resources/mapper/AdministerMapper.xml @@ -35,4 +35,30 @@ AND t.administer_id = #{administerId} + + + + + + diff --git a/src/main/resources/mapper/ClassMemberMappingMapper.xml b/src/main/resources/mapper/ClassMemberMappingMapper.xml new file mode 100644 index 0000000..e661275 --- /dev/null +++ b/src/main/resources/mapper/ClassMemberMappingMapper.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + create_date, + update_date, + delete_date, + id, member_id, class_id, email, email_status, photo + + + diff --git a/src/main/resources/mapper/CompanyDictMapper.xml b/src/main/resources/mapper/CompanyDictMapper.xml index 6b288d5..cee568f 100644 --- a/src/main/resources/mapper/CompanyDictMapper.xml +++ b/src/main/resources/mapper/CompanyDictMapper.xml @@ -2,6 +2,38 @@ + + + + + SELECT + distinct t2.user_name, t2.telephone, t2.id_card, @@ -27,7 +28,7 @@ t2.email, t2.qq_no, t2.wechat, - t.create_date + t.update_date as create_date FROM company_member_mapping t LEFT JOIN member t2 ON t.member_id = t2.id @@ -41,7 +42,7 @@ or t2.telephone like concat('%',#{userName} ,'%')) and t.member_status = 0 - order by t.id desc + order by t.update_date desc + SELECT + t2.* + FROM + job_member_mapping t + LEFT JOIN job_dict t2 ON t.job_id = t2.id + where t.delete_date is null + and t2.delete_date is null + and t.member_id = #{memberId} + diff --git a/src/main/resources/mapper/JobMemberMappingMapper.xml b/src/main/resources/mapper/JobMemberMappingMapper.xml new file mode 100644 index 0000000..d0719eb --- /dev/null +++ b/src/main/resources/mapper/JobMemberMappingMapper.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + create_date, + update_date, + delete_date, + id, job_id, member_id + + + diff --git a/src/main/resources/mapper/MemberMapper.xml b/src/main/resources/mapper/MemberMapper.xml index 83ced3c..1f4b5bb 100644 --- a/src/main/resources/mapper/MemberMapper.xml +++ b/src/main/resources/mapper/MemberMapper.xml @@ -102,4 +102,54 @@ and DATE_FORMAT(t2.induction_date ,'%Y-%m-%d') <= DATE_FORMAT(#{endDate}, '%Y-%m-%d') + + + + + + diff --git a/src/main/resources/mapper/ServiceCompanyFilesMapper.xml b/src/main/resources/mapper/ServiceCompanyFilesMapper.xml index 003bd1d..a4d4be6 100644 --- a/src/main/resources/mapper/ServiceCompanyFilesMapper.xml +++ b/src/main/resources/mapper/ServiceCompanyFilesMapper.xml @@ -7,13 +7,20 @@ * FROM service_company_files t + left join service_company_mapping t2 on t2.id = t.service_company_id WHERE t.delete_date IS NULL - AND t.service_company_id = #{serviceCompanyId} + and t2.delete_date is null + + AND t2.company_id = #{companyId} + + + and t2.service_id = #{serviceId} + AND t.file_name like concat('%',#{fileName} ,'%') + and t.file_type = #{fileType} - diff --git a/src/main/resources/mapper/ServiceCompanyMappingMapper.xml b/src/main/resources/mapper/ServiceCompanyMappingMapper.xml index e1df111..a350cab 100644 --- a/src/main/resources/mapper/ServiceCompanyMappingMapper.xml +++ b/src/main/resources/mapper/ServiceCompanyMappingMapper.xml @@ -44,9 +44,10 @@ - SELECT - t2.* + t2.*, + t.id as service_company_id FROM service_company_mapping t LEFT JOIN service_dict t2 ON t.service_id = t2.id @@ -56,12 +57,13 @@ AND t.company_id = #{companyId} - SELECT - t2.* + t2.*, + t.id as service_company_id FROM service_company_mapping t - LEFT JOIN service_dict t2 ON t.company_id = t2.id + LEFT JOIN service_dict t2 ON t.service_id = t2.id LEFT JOIN service_administer_mapping t3 ON t.service_id = t3.service_id WHERE t.delete_date IS NULL diff --git a/target/classes/application-prod.properties b/target/classes/application-prod.properties index 75e43ae..444bdcc 100644 --- a/target/classes/application-prod.properties +++ b/target/classes/application-prod.properties @@ -1,5 +1,5 @@ # 生产环境配置 -spring.server.port=23459 +spring.server.port=23477 # 数据源配置 spring.datasource.url=jdbc:mysql://rm-uf69w46mo6agw0ahao.mysql.rds.aliyuncs.com:3306/subsidy?autoReconnect=true&useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8 diff --git a/target/classes/application.properties b/target/classes/application.properties index 5a90389..ae4bf01 100644 --- a/target/classes/application.properties +++ b/target/classes/application.properties @@ -1,5 +1,5 @@ # 环境配置 -spring.profiles.active=dev +spring.profiles.active=prod #和CPU数 spring.server.acceptorThreadCount=600 spring.server.minSpareThreads=100 diff --git a/target/classes/code.properties b/target/classes/code.properties index 9ce8341..57ad344 100644 --- a/target/classes/code.properties +++ b/target/classes/code.properties @@ -22,6 +22,7 @@ meishu.code-message[10025]=身份证识别错误 meishu.code-message[10026]=姓名或身份证号格式不正确 meishu.code-message[10027]=该手机号已注册 meishu.code-message[10028]=该成员已在其他公司入职 +meishu.code-message[10029]=密码输入错误 meishu.code-message[20001]=该课程已存在 diff --git a/target/classes/com/subsidy/controller/AdministerController.class b/target/classes/com/subsidy/controller/AdministerController.class index 9eed0a6..b7888f4 100644 Binary files a/target/classes/com/subsidy/controller/AdministerController.class and b/target/classes/com/subsidy/controller/AdministerController.class differ diff --git a/target/classes/com/subsidy/controller/CompanyMemberMappingController.class b/target/classes/com/subsidy/controller/CompanyMemberMappingController.class index 673d451..25ea54c 100644 Binary files a/target/classes/com/subsidy/controller/CompanyMemberMappingController.class and b/target/classes/com/subsidy/controller/CompanyMemberMappingController.class differ diff --git a/target/classes/com/subsidy/controller/MemberController.class b/target/classes/com/subsidy/controller/MemberController.class index ea71e76..82ef604 100644 Binary files a/target/classes/com/subsidy/controller/MemberController.class and b/target/classes/com/subsidy/controller/MemberController.class differ diff --git a/target/classes/com/subsidy/controller/ServiceCompanyFilesController.class b/target/classes/com/subsidy/controller/ServiceCompanyFilesController.class index 345a6fc..e1d55d4 100644 Binary files a/target/classes/com/subsidy/controller/ServiceCompanyFilesController.class and b/target/classes/com/subsidy/controller/ServiceCompanyFilesController.class differ diff --git a/target/classes/com/subsidy/dto/administer/AdministerPermissionVO.class b/target/classes/com/subsidy/dto/administer/AdministerPermissionVO.class index fb3b1d5..bed58ac 100644 Binary files a/target/classes/com/subsidy/dto/administer/AdministerPermissionVO.class and b/target/classes/com/subsidy/dto/administer/AdministerPermissionVO.class differ diff --git a/target/classes/com/subsidy/mapper/AdministerMapper.class b/target/classes/com/subsidy/mapper/AdministerMapper.class index f1d19df..5ebb92b 100644 Binary files a/target/classes/com/subsidy/mapper/AdministerMapper.class and b/target/classes/com/subsidy/mapper/AdministerMapper.class differ diff --git a/target/classes/com/subsidy/mapper/CompanyDictMapper.class b/target/classes/com/subsidy/mapper/CompanyDictMapper.class index cf3d213..a124ad5 100644 Binary files a/target/classes/com/subsidy/mapper/CompanyDictMapper.class and b/target/classes/com/subsidy/mapper/CompanyDictMapper.class differ diff --git a/target/classes/com/subsidy/mapper/JobDictMapper.class b/target/classes/com/subsidy/mapper/JobDictMapper.class index 8a8d217..ed28e40 100644 Binary files a/target/classes/com/subsidy/mapper/JobDictMapper.class and b/target/classes/com/subsidy/mapper/JobDictMapper.class differ diff --git a/target/classes/com/subsidy/mapper/MemberMapper.class b/target/classes/com/subsidy/mapper/MemberMapper.class index b3f76d7..4b175ac 100644 Binary files a/target/classes/com/subsidy/mapper/MemberMapper.class and b/target/classes/com/subsidy/mapper/MemberMapper.class differ diff --git a/target/classes/com/subsidy/mapper/ServiceCompanyFilesMapper.class b/target/classes/com/subsidy/mapper/ServiceCompanyFilesMapper.class index 87a7a2b..aaf2ae9 100644 Binary files a/target/classes/com/subsidy/mapper/ServiceCompanyFilesMapper.class and b/target/classes/com/subsidy/mapper/ServiceCompanyFilesMapper.class differ diff --git a/target/classes/com/subsidy/mapper/ServiceCompanyMappingMapper.class b/target/classes/com/subsidy/mapper/ServiceCompanyMappingMapper.class index af4265c..7e41a13 100644 Binary files a/target/classes/com/subsidy/mapper/ServiceCompanyMappingMapper.class and b/target/classes/com/subsidy/mapper/ServiceCompanyMappingMapper.class differ diff --git a/target/classes/com/subsidy/service/AdministerService.class b/target/classes/com/subsidy/service/AdministerService.class index 1618bfd..38d4a90 100644 Binary files a/target/classes/com/subsidy/service/AdministerService.class and b/target/classes/com/subsidy/service/AdministerService.class differ diff --git a/target/classes/com/subsidy/service/CompanyMemberMappingService.class b/target/classes/com/subsidy/service/CompanyMemberMappingService.class index 676e84b..bcfe5c2 100644 Binary files a/target/classes/com/subsidy/service/CompanyMemberMappingService.class and b/target/classes/com/subsidy/service/CompanyMemberMappingService.class differ diff --git a/target/classes/com/subsidy/service/MemberService.class b/target/classes/com/subsidy/service/MemberService.class index 77a1266..e6e314d 100644 Binary files a/target/classes/com/subsidy/service/MemberService.class and b/target/classes/com/subsidy/service/MemberService.class differ diff --git a/target/classes/com/subsidy/service/ServiceAdministerMappingService.class b/target/classes/com/subsidy/service/ServiceAdministerMappingService.class index 3953e32..2975bd1 100644 Binary files a/target/classes/com/subsidy/service/ServiceAdministerMappingService.class and b/target/classes/com/subsidy/service/ServiceAdministerMappingService.class differ diff --git a/target/classes/com/subsidy/service/ServiceCompanyFilesService.class b/target/classes/com/subsidy/service/ServiceCompanyFilesService.class index 255ca39..16d9553 100644 Binary files a/target/classes/com/subsidy/service/ServiceCompanyFilesService.class and b/target/classes/com/subsidy/service/ServiceCompanyFilesService.class differ diff --git a/target/classes/com/subsidy/service/impl/AdministerServiceImpl.class b/target/classes/com/subsidy/service/impl/AdministerServiceImpl.class index 96f3592..99827d4 100644 Binary files a/target/classes/com/subsidy/service/impl/AdministerServiceImpl.class and b/target/classes/com/subsidy/service/impl/AdministerServiceImpl.class differ diff --git a/target/classes/com/subsidy/service/impl/CompanyDictServiceImpl.class b/target/classes/com/subsidy/service/impl/CompanyDictServiceImpl.class index 41320b5..918f245 100644 Binary files a/target/classes/com/subsidy/service/impl/CompanyDictServiceImpl.class and b/target/classes/com/subsidy/service/impl/CompanyDictServiceImpl.class differ diff --git a/target/classes/com/subsidy/service/impl/CompanyMemberMappingServiceImpl.class b/target/classes/com/subsidy/service/impl/CompanyMemberMappingServiceImpl.class index 9bd7c61..b815d85 100644 Binary files a/target/classes/com/subsidy/service/impl/CompanyMemberMappingServiceImpl.class and b/target/classes/com/subsidy/service/impl/CompanyMemberMappingServiceImpl.class differ diff --git a/target/classes/com/subsidy/service/impl/DepartmentDictServiceImpl.class b/target/classes/com/subsidy/service/impl/DepartmentDictServiceImpl.class index bbb66cb..784cf1c 100644 Binary files a/target/classes/com/subsidy/service/impl/DepartmentDictServiceImpl.class and b/target/classes/com/subsidy/service/impl/DepartmentDictServiceImpl.class differ diff --git a/target/classes/com/subsidy/service/impl/MemberServiceImpl.class b/target/classes/com/subsidy/service/impl/MemberServiceImpl.class index f140f44..c045263 100644 Binary files a/target/classes/com/subsidy/service/impl/MemberServiceImpl.class and b/target/classes/com/subsidy/service/impl/MemberServiceImpl.class differ diff --git a/target/classes/com/subsidy/service/impl/ServiceAdministerMappingServiceImpl.class b/target/classes/com/subsidy/service/impl/ServiceAdministerMappingServiceImpl.class index 19bd545..19e57f4 100644 Binary files a/target/classes/com/subsidy/service/impl/ServiceAdministerMappingServiceImpl.class and b/target/classes/com/subsidy/service/impl/ServiceAdministerMappingServiceImpl.class differ diff --git a/target/classes/com/subsidy/service/impl/ServiceCompanyFilesServiceImpl.class b/target/classes/com/subsidy/service/impl/ServiceCompanyFilesServiceImpl.class index 067a8cd..cad6487 100644 Binary files a/target/classes/com/subsidy/service/impl/ServiceCompanyFilesServiceImpl.class and b/target/classes/com/subsidy/service/impl/ServiceCompanyFilesServiceImpl.class differ diff --git a/target/classes/com/subsidy/vo/member/AttendMembersVO.class b/target/classes/com/subsidy/vo/member/AttendMembersVO.class index 7d40d21..7d30c8e 100644 Binary files a/target/classes/com/subsidy/vo/member/AttendMembersVO.class and b/target/classes/com/subsidy/vo/member/AttendMembersVO.class differ diff --git a/target/classes/mapper/AdministerMapper.xml b/target/classes/mapper/AdministerMapper.xml index 128ceec..7467d19 100644 --- a/target/classes/mapper/AdministerMapper.xml +++ b/target/classes/mapper/AdministerMapper.xml @@ -35,4 +35,30 @@ AND t.administer_id = #{administerId} + + + + + + diff --git a/target/classes/mapper/CompanyDictMapper.xml b/target/classes/mapper/CompanyDictMapper.xml index 6b288d5..cee568f 100644 --- a/target/classes/mapper/CompanyDictMapper.xml +++ b/target/classes/mapper/CompanyDictMapper.xml @@ -2,6 +2,38 @@ + + + + + SELECT + distinct t2.user_name, t2.telephone, t2.id_card, @@ -27,7 +28,7 @@ t2.email, t2.qq_no, t2.wechat, - t.create_date + t.update_date as create_date FROM company_member_mapping t LEFT JOIN member t2 ON t.member_id = t2.id @@ -41,7 +42,7 @@ or t2.telephone like concat('%',#{userName} ,'%')) and t.member_status = 0 - order by t.id desc + order by t.update_date desc + SELECT + t2.* + FROM + job_member_mapping t + LEFT JOIN job_dict t2 ON t.job_id = t2.id + where t.delete_date is null + and t2.delete_date is null + and t.member_id = #{memberId} + diff --git a/target/classes/mapper/MemberMapper.xml b/target/classes/mapper/MemberMapper.xml index 83ced3c..1f4b5bb 100644 --- a/target/classes/mapper/MemberMapper.xml +++ b/target/classes/mapper/MemberMapper.xml @@ -102,4 +102,54 @@ and DATE_FORMAT(t2.induction_date ,'%Y-%m-%d') <= DATE_FORMAT(#{endDate}, '%Y-%m-%d') + + + + + + diff --git a/target/classes/mapper/ServiceCompanyFilesMapper.xml b/target/classes/mapper/ServiceCompanyFilesMapper.xml index 003bd1d..a4d4be6 100644 --- a/target/classes/mapper/ServiceCompanyFilesMapper.xml +++ b/target/classes/mapper/ServiceCompanyFilesMapper.xml @@ -7,13 +7,20 @@ * FROM service_company_files t + left join service_company_mapping t2 on t2.id = t.service_company_id WHERE t.delete_date IS NULL - AND t.service_company_id = #{serviceCompanyId} + and t2.delete_date is null + + AND t2.company_id = #{companyId} + + + and t2.service_id = #{serviceId} + AND t.file_name like concat('%',#{fileName} ,'%') + and t.file_type = #{fileType} - diff --git a/target/classes/mapper/ServiceCompanyMappingMapper.xml b/target/classes/mapper/ServiceCompanyMappingMapper.xml index e1df111..a350cab 100644 --- a/target/classes/mapper/ServiceCompanyMappingMapper.xml +++ b/target/classes/mapper/ServiceCompanyMappingMapper.xml @@ -44,9 +44,10 @@ - SELECT - t2.* + t2.*, + t.id as service_company_id FROM service_company_mapping t LEFT JOIN service_dict t2 ON t.service_id = t2.id @@ -56,12 +57,13 @@ AND t.company_id = #{companyId} - SELECT - t2.* + t2.*, + t.id as service_company_id FROM service_company_mapping t - LEFT JOIN service_dict t2 ON t.company_id = t2.id + LEFT JOIN service_dict t2 ON t.service_id = t2.id LEFT JOIN service_administer_mapping t3 ON t.service_id = t3.service_id WHERE t.delete_date IS NULL diff --git a/target/subsidy-app.jar b/target/subsidy-app.jar index 475e069..ceac9a5 100644 Binary files a/target/subsidy-app.jar and b/target/subsidy-app.jar differ diff --git a/target/subsidy-app.jar.original b/target/subsidy-app.jar.original index a1bfa6a..a9d4452 100644 Binary files a/target/subsidy-app.jar.original and b/target/subsidy-app.jar.original differ