diff --git a/.gitignore b/.gitignore index f5c20f5..9415624 100644 --- a/.gitignore +++ b/.gitignore @@ -33,3 +33,4 @@ build/ .vscode/ *.log +logs/ diff --git a/logs/error.log b/logs/error.log index 90e65ae..461e47d 100644 --- a/logs/error.log +++ b/logs/error.log @@ -1392,3 +1392,73 @@ java.sql.SQLSyntaxErrorException: Unknown column 'sols.standard_id' in 'field li at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) at java.base/java.lang.Thread.run(Thread.java:840) +2025-11-12 16:44:33.098 [http-nio-8800-exec-1] ERROR o.a.c.c.C.[.[localhost].[/dc].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [/dc] threw exception [Request processing failed: java.lang.NullPointerException: Cannot invoke "java.lang.Integer.intValue()" because the return value of "com.dc.dc_project.model.dto.LaboratoryDto.getType()" is null] with root cause +java.lang.NullPointerException: Cannot invoke "java.lang.Integer.intValue()" because the return value of "com.dc.dc_project.model.dto.LaboratoryDto.getType()" is null + at com.dc.dc_project.service.impl.LaboratoryServiceImpl.getList(LaboratoryServiceImpl.java:41) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:569) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:716) + at com.dc.dc_project.service.impl.LaboratoryServiceImpl$$SpringCGLIB$$0.getList() + at com.dc.dc_project.controller.bigScreen.LaboratoryBigScreenController.list(LaboratoryBigScreenController.java:24) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:569) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:255) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:188) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:926) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:831) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at cn.dev33.satoken.filter.SaFirewallCheckFilterForJakartaServlet.doFilter(SaFirewallCheckFilterForJakartaServlet.java:69) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at cn.dev33.satoken.filter.SaTokenCorsFilterForJakartaServlet.doFilter(SaTokenCorsFilterForJakartaServlet.java:52) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at cn.dev33.satoken.filter.SaTokenContextFilterForJakartaServlet.doFilter(SaTokenContextFilterForJakartaServlet.java:40) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:384) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:904) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:840) diff --git a/logs/info.log b/logs/info.log index d65a00c..9de680f 100644 --- a/logs/info.log +++ b/logs/info.log @@ -2008,3 +2008,156 @@ java.sql.SQLSyntaxErrorException: Unknown column 'sols.standard_id' in 'field li 2025-11-12 16:28:13.722 [main] INFO com.dc.dc_project.DcProjectApplication:56 - Started DcProjectApplication in 2.765 seconds (process running for 3.252) 2025-11-12 16:41:46.461 [SpringApplicationShutdownHook] INFO com.alibaba.druid.pool.DruidDataSource:2204 - {dataSource-1} closing ... 2025-11-12 16:41:46.462 [SpringApplicationShutdownHook] INFO com.alibaba.druid.pool.DruidDataSource:2277 - {dataSource-1} closed +2025-11-12 16:41:49.770 [main] INFO com.dc.dc_project.DcProjectApplication:50 - Starting DcProjectApplication using Java 17.0.14 with PID 23172 (D:\p1\dc_project\target\classes started by ADMIN in D:\p1\dc_project) +2025-11-12 16:41:49.772 [main] INFO com.dc.dc_project.DcProjectApplication:654 - No active profile set, falling back to 1 default profile: "default" +2025-11-12 16:41:50.323 [main] INFO o.s.d.r.config.RepositoryConfigurationDelegate:295 - Multiple Spring Data modules found, entering strict repository configuration mode +2025-11-12 16:41:50.325 [main] INFO o.s.d.r.config.RepositoryConfigurationDelegate:143 - Bootstrapping Spring Data Redis repositories in DEFAULT mode. +2025-11-12 16:41:50.348 [main] INFO o.s.d.r.config.RepositoryConfigurationDelegate:211 - Finished Spring Data repository scanning in 13 ms. Found 0 Redis repository interfaces. +2025-11-12 16:41:50.749 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:111 - Tomcat initialized with port 8800 (http) +2025-11-12 16:41:50.756 [main] INFO org.apache.coyote.http11.Http11NioProtocol:173 - Initializing ProtocolHandler ["http-nio-8800"] +2025-11-12 16:41:50.759 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2025-11-12 16:41:50.759 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/10.1.28] +2025-11-12 16:41:50.802 [main] INFO o.a.c.c.ContainerBase.[Tomcat].[localhost].[/dc]:173 - Initializing Spring embedded WebApplicationContext +2025-11-12 16:41:50.802 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:296 - Root WebApplicationContext: initialization completed in 1000 ms +2025-11-12 16:41:50.890 [main] INFO c.a.d.s.b.a.DruidDataSourceAutoConfigure:68 - Init DruidDataSource +2025-11-12 16:41:50.960 [main] INFO com.alibaba.druid.pool.DruidDataSource:1002 - {dataSource-1} inited +2025-11-12 16:41:52.149 [main] INFO org.apache.coyote.http11.Http11NioProtocol:173 - Starting ProtocolHandler ["http-nio-8800"] +2025-11-12 16:41:52.167 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:243 - Tomcat started on port 8800 (http) with context path '/dc' +2025-11-12 16:41:52.175 [main] INFO com.dc.dc_project.DcProjectApplication:56 - Started DcProjectApplication in 2.814 seconds (process running for 3.297) +2025-11-12 16:42:54.175 [http-nio-8800-exec-1] INFO o.a.c.c.ContainerBase.[Tomcat].[localhost].[/dc]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-11-12 16:42:54.175 [http-nio-8800-exec-1] INFO org.springframework.web.servlet.DispatcherServlet:532 - Initializing Servlet 'dispatcherServlet' +2025-11-12 16:42:54.176 [http-nio-8800-exec-1] INFO org.springframework.web.servlet.DispatcherServlet:554 - Completed initialization in 1 ms +2025-11-12 16:43:19.237 [http-nio-8800-exec-6] INFO org.springdoc.api.AbstractOpenApiResource:390 - Init duration for springdoc-openapi is: 110 ms +2025-11-12 16:44:16.530 [SpringApplicationShutdownHook] INFO com.alibaba.druid.pool.DruidDataSource:2204 - {dataSource-1} closing ... +2025-11-12 16:44:16.533 [SpringApplicationShutdownHook] INFO com.alibaba.druid.pool.DruidDataSource:2277 - {dataSource-1} closed +2025-11-12 16:44:20.876 [main] INFO com.dc.dc_project.DcProjectApplication:50 - Starting DcProjectApplication using Java 17.0.14 with PID 22916 (D:\p1\dc_project\target\classes started by ADMIN in D:\p1\dc_project) +2025-11-12 16:44:20.878 [main] INFO com.dc.dc_project.DcProjectApplication:654 - No active profile set, falling back to 1 default profile: "default" +2025-11-12 16:44:21.415 [main] INFO o.s.d.r.config.RepositoryConfigurationDelegate:295 - Multiple Spring Data modules found, entering strict repository configuration mode +2025-11-12 16:44:21.417 [main] INFO o.s.d.r.config.RepositoryConfigurationDelegate:143 - Bootstrapping Spring Data Redis repositories in DEFAULT mode. +2025-11-12 16:44:21.442 [main] INFO o.s.d.r.config.RepositoryConfigurationDelegate:211 - Finished Spring Data repository scanning in 14 ms. Found 0 Redis repository interfaces. +2025-11-12 16:44:21.848 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:111 - Tomcat initialized with port 8800 (http) +2025-11-12 16:44:21.857 [main] INFO org.apache.coyote.http11.Http11NioProtocol:173 - Initializing ProtocolHandler ["http-nio-8800"] +2025-11-12 16:44:21.860 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2025-11-12 16:44:21.860 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/10.1.28] +2025-11-12 16:44:21.913 [main] INFO o.a.c.c.ContainerBase.[Tomcat].[localhost].[/dc]:173 - Initializing Spring embedded WebApplicationContext +2025-11-12 16:44:21.914 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:296 - Root WebApplicationContext: initialization completed in 1005 ms +2025-11-12 16:44:22.004 [main] INFO c.a.d.s.b.a.DruidDataSourceAutoConfigure:68 - Init DruidDataSource +2025-11-12 16:44:22.065 [main] INFO com.alibaba.druid.pool.DruidDataSource:1002 - {dataSource-1} inited +2025-11-12 16:44:23.210 [main] INFO org.apache.coyote.http11.Http11NioProtocol:173 - Starting ProtocolHandler ["http-nio-8800"] +2025-11-12 16:44:23.226 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:243 - Tomcat started on port 8800 (http) with context path '/dc' +2025-11-12 16:44:23.233 [main] INFO com.dc.dc_project.DcProjectApplication:56 - Started DcProjectApplication in 2.737 seconds (process running for 3.212) +2025-11-12 16:44:33.022 [http-nio-8800-exec-1] INFO o.a.c.c.ContainerBase.[Tomcat].[localhost].[/dc]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-11-12 16:44:33.022 [http-nio-8800-exec-1] INFO org.springframework.web.servlet.DispatcherServlet:532 - Initializing Servlet 'dispatcherServlet' +2025-11-12 16:44:33.023 [http-nio-8800-exec-1] INFO org.springframework.web.servlet.DispatcherServlet:554 - Completed initialization in 0 ms +2025-11-12 16:44:33.098 [http-nio-8800-exec-1] ERROR o.a.c.c.C.[.[localhost].[/dc].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [/dc] threw exception [Request processing failed: java.lang.NullPointerException: Cannot invoke "java.lang.Integer.intValue()" because the return value of "com.dc.dc_project.model.dto.LaboratoryDto.getType()" is null] with root cause +java.lang.NullPointerException: Cannot invoke "java.lang.Integer.intValue()" because the return value of "com.dc.dc_project.model.dto.LaboratoryDto.getType()" is null + at com.dc.dc_project.service.impl.LaboratoryServiceImpl.getList(LaboratoryServiceImpl.java:41) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:569) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:716) + at com.dc.dc_project.service.impl.LaboratoryServiceImpl$$SpringCGLIB$$0.getList() + at com.dc.dc_project.controller.bigScreen.LaboratoryBigScreenController.list(LaboratoryBigScreenController.java:24) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:569) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:255) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:188) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:926) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:831) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at cn.dev33.satoken.filter.SaFirewallCheckFilterForJakartaServlet.doFilter(SaFirewallCheckFilterForJakartaServlet.java:69) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at cn.dev33.satoken.filter.SaTokenCorsFilterForJakartaServlet.doFilter(SaTokenCorsFilterForJakartaServlet.java:52) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at cn.dev33.satoken.filter.SaTokenContextFilterForJakartaServlet.doFilter(SaTokenContextFilterForJakartaServlet.java:40) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:384) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:904) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:840) +2025-11-12 16:44:56.112 [SpringApplicationShutdownHook] INFO com.alibaba.druid.pool.DruidDataSource:2204 - {dataSource-1} closing ... +2025-11-12 16:44:56.112 [SpringApplicationShutdownHook] INFO com.alibaba.druid.pool.DruidDataSource:2277 - {dataSource-1} closed +2025-11-12 16:44:59.517 [main] INFO com.dc.dc_project.DcProjectApplication:50 - Starting DcProjectApplication using Java 17.0.14 with PID 8300 (D:\p1\dc_project\target\classes started by ADMIN in D:\p1\dc_project) +2025-11-12 16:44:59.519 [main] INFO com.dc.dc_project.DcProjectApplication:654 - No active profile set, falling back to 1 default profile: "default" +2025-11-12 16:45:00.056 [main] INFO o.s.d.r.config.RepositoryConfigurationDelegate:295 - Multiple Spring Data modules found, entering strict repository configuration mode +2025-11-12 16:45:00.058 [main] INFO o.s.d.r.config.RepositoryConfigurationDelegate:143 - Bootstrapping Spring Data Redis repositories in DEFAULT mode. +2025-11-12 16:45:00.080 [main] INFO o.s.d.r.config.RepositoryConfigurationDelegate:211 - Finished Spring Data repository scanning in 12 ms. Found 0 Redis repository interfaces. +2025-11-12 16:45:00.473 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:111 - Tomcat initialized with port 8800 (http) +2025-11-12 16:45:00.480 [main] INFO org.apache.coyote.http11.Http11NioProtocol:173 - Initializing ProtocolHandler ["http-nio-8800"] +2025-11-12 16:45:00.482 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2025-11-12 16:45:00.482 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/10.1.28] +2025-11-12 16:45:00.525 [main] INFO o.a.c.c.ContainerBase.[Tomcat].[localhost].[/dc]:173 - Initializing Spring embedded WebApplicationContext +2025-11-12 16:45:00.525 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:296 - Root WebApplicationContext: initialization completed in 975 ms +2025-11-12 16:45:00.610 [main] INFO c.a.d.s.b.a.DruidDataSourceAutoConfigure:68 - Init DruidDataSource +2025-11-12 16:45:00.670 [main] INFO com.alibaba.druid.pool.DruidDataSource:1002 - {dataSource-1} inited +2025-11-12 16:45:01.810 [main] INFO org.apache.coyote.http11.Http11NioProtocol:173 - Starting ProtocolHandler ["http-nio-8800"] +2025-11-12 16:45:01.823 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:243 - Tomcat started on port 8800 (http) with context path '/dc' +2025-11-12 16:45:01.830 [main] INFO com.dc.dc_project.DcProjectApplication:56 - Started DcProjectApplication in 2.694 seconds (process running for 3.164) +2025-11-12 16:45:05.387 [http-nio-8800-exec-1] INFO o.a.c.c.ContainerBase.[Tomcat].[localhost].[/dc]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-11-12 16:45:05.388 [http-nio-8800-exec-1] INFO org.springframework.web.servlet.DispatcherServlet:532 - Initializing Servlet 'dispatcherServlet' +2025-11-12 16:45:05.389 [http-nio-8800-exec-1] INFO org.springframework.web.servlet.DispatcherServlet:554 - Completed initialization in 1 ms +2025-11-12 16:45:48.041 [SpringApplicationShutdownHook] INFO com.alibaba.druid.pool.DruidDataSource:2204 - {dataSource-1} closing ... +2025-11-12 16:45:48.044 [SpringApplicationShutdownHook] INFO com.alibaba.druid.pool.DruidDataSource:2277 - {dataSource-1} closed +2025-11-12 16:45:51.935 [main] INFO com.dc.dc_project.DcProjectApplication:50 - Starting DcProjectApplication using Java 17.0.14 with PID 21872 (D:\p1\dc_project\target\classes started by ADMIN in D:\p1\dc_project) +2025-11-12 16:45:51.938 [main] INFO com.dc.dc_project.DcProjectApplication:654 - No active profile set, falling back to 1 default profile: "default" +2025-11-12 16:45:52.469 [main] INFO o.s.d.r.config.RepositoryConfigurationDelegate:295 - Multiple Spring Data modules found, entering strict repository configuration mode +2025-11-12 16:45:52.471 [main] INFO o.s.d.r.config.RepositoryConfigurationDelegate:143 - Bootstrapping Spring Data Redis repositories in DEFAULT mode. +2025-11-12 16:45:52.494 [main] INFO o.s.d.r.config.RepositoryConfigurationDelegate:211 - Finished Spring Data repository scanning in 13 ms. Found 0 Redis repository interfaces. +2025-11-12 16:45:52.882 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:111 - Tomcat initialized with port 8800 (http) +2025-11-12 16:45:52.889 [main] INFO org.apache.coyote.http11.Http11NioProtocol:173 - Initializing ProtocolHandler ["http-nio-8800"] +2025-11-12 16:45:52.892 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2025-11-12 16:45:52.892 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/10.1.28] +2025-11-12 16:45:52.939 [main] INFO o.a.c.c.ContainerBase.[Tomcat].[localhost].[/dc]:173 - Initializing Spring embedded WebApplicationContext +2025-11-12 16:45:52.939 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:296 - Root WebApplicationContext: initialization completed in 970 ms +2025-11-12 16:45:53.027 [main] INFO c.a.d.s.b.a.DruidDataSourceAutoConfigure:68 - Init DruidDataSource +2025-11-12 16:45:53.086 [main] INFO com.alibaba.druid.pool.DruidDataSource:1002 - {dataSource-1} inited +2025-11-12 16:45:54.257 [main] INFO org.apache.coyote.http11.Http11NioProtocol:173 - Starting ProtocolHandler ["http-nio-8800"] +2025-11-12 16:45:54.274 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:243 - Tomcat started on port 8800 (http) with context path '/dc' +2025-11-12 16:45:54.281 [main] INFO com.dc.dc_project.DcProjectApplication:56 - Started DcProjectApplication in 2.737 seconds (process running for 3.196) +2025-11-12 16:46:01.609 [http-nio-8800-exec-1] INFO o.a.c.c.ContainerBase.[Tomcat].[localhost].[/dc]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-11-12 16:46:01.609 [http-nio-8800-exec-1] INFO org.springframework.web.servlet.DispatcherServlet:532 - Initializing Servlet 'dispatcherServlet' +2025-11-12 16:46:01.610 [http-nio-8800-exec-1] INFO org.springframework.web.servlet.DispatcherServlet:554 - Completed initialization in 1 ms diff --git a/src/main/java/com/dc/dc_project/controller/bigScreen/LaboratoryBigScreenController.java b/src/main/java/com/dc/dc_project/controller/bigScreen/LaboratoryBigScreenController.java index 13b3ac0..614711d 100644 --- a/src/main/java/com/dc/dc_project/controller/bigScreen/LaboratoryBigScreenController.java +++ b/src/main/java/com/dc/dc_project/controller/bigScreen/LaboratoryBigScreenController.java @@ -3,6 +3,8 @@ package com.dc.dc_project.controller.bigScreen; import com.dc.dc_project.common.ResponseResult; import com.dc.dc_project.model.dto.LaboratoryDto; +import com.dc.dc_project.model.vo.BigScreenStatistics; +import com.dc.dc_project.service.BigScreenService; import com.dc.dc_project.service.LaboratoryService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; @@ -17,6 +19,7 @@ import org.springframework.web.bind.annotation.*; public class LaboratoryBigScreenController { private final LaboratoryService laboratoryService; + private final BigScreenService bigScreenService; @PostMapping("/list") @Operation(summary = "实验室列表") @@ -24,4 +27,17 @@ public class LaboratoryBigScreenController { return laboratoryService.getList(laboratoryDto); } + @PostMapping("/Statistics") + @Operation(summary = "大屏统计信息") + public ResponseResult getStatistics() { + return bigScreenService.getPigStatistics(); + } + + @PostMapping("/record_entrust") + @Operation(summary = "本年实验室委托统计") + public ResponseResult recordEntrust() { + return bigScreenService.getRecordEntrustStatistics(); + } + + } diff --git a/src/main/java/com/dc/dc_project/model/vo/BigScreenStatistics.java b/src/main/java/com/dc/dc_project/model/vo/BigScreenStatistics.java new file mode 100644 index 0000000..ab84ca3 --- /dev/null +++ b/src/main/java/com/dc/dc_project/model/vo/BigScreenStatistics.java @@ -0,0 +1,43 @@ +package com.dc.dc_project.model.vo; + + +import lombok.Data; + +@Data +public class BigScreenStatistics { + + /** + * 实验室数量 + */ + private Long laboratoryCount; + + /** + * 设备数量 + */ + private Long deviceCount; + + /** + * 人员数量 + */ + private Long personCount; + + /** + * 工程数量 + */ + private Long projectCount; + + /** + * 在建工程数量 + */ + private Long projectBuildingCount; + + /** + * 完工工程数量 + */ + private Long projectCompletedCount; + + /** + * 委托数量 + */ + private Long entrustCount; +} diff --git a/src/main/java/com/dc/dc_project/model/vo/RecordEntrustStatisticsVo.java b/src/main/java/com/dc/dc_project/model/vo/RecordEntrustStatisticsVo.java new file mode 100644 index 0000000..218ade7 --- /dev/null +++ b/src/main/java/com/dc/dc_project/model/vo/RecordEntrustStatisticsVo.java @@ -0,0 +1,22 @@ +package com.dc.dc_project.model.vo; + +import lombok.Data; + +@Data +public class RecordEntrustStatisticsVo { + + /** + * 月份 + */ + private Integer month; + + /** + * 委托总数量 + */ + private Integer entrustCount; + + /** + * 报告数量 + */ + private Integer reportCount; +} diff --git a/src/main/java/com/dc/dc_project/service/BigScreenService.java b/src/main/java/com/dc/dc_project/service/BigScreenService.java new file mode 100644 index 0000000..d2d8063 --- /dev/null +++ b/src/main/java/com/dc/dc_project/service/BigScreenService.java @@ -0,0 +1,17 @@ +package com.dc.dc_project.service; + +import com.dc.dc_project.common.ResponseResult; + +public interface BigScreenService { + /** + * 大屏统计信息 + * @return + */ + ResponseResult getPigStatistics(); + + /** + * 大屏委托统计信息 + * @return + */ + ResponseResult getRecordEntrustStatistics(); +} diff --git a/src/main/java/com/dc/dc_project/service/LaboratoryService.java b/src/main/java/com/dc/dc_project/service/LaboratoryService.java index 9786fd2..4e04421 100644 --- a/src/main/java/com/dc/dc_project/service/LaboratoryService.java +++ b/src/main/java/com/dc/dc_project/service/LaboratoryService.java @@ -18,4 +18,10 @@ public interface LaboratoryService extends IService { * @return */ ResponseResult getList(LaboratoryDto laboratoryDto); + + /** + * 大屏获取数量统计 + * @return + */ + ResponseResult getPigStatistics(); } diff --git a/src/main/java/com/dc/dc_project/service/impl/BigScreenServiceImpl.java b/src/main/java/com/dc/dc_project/service/impl/BigScreenServiceImpl.java new file mode 100644 index 0000000..8f8d8a7 --- /dev/null +++ b/src/main/java/com/dc/dc_project/service/impl/BigScreenServiceImpl.java @@ -0,0 +1,57 @@ +package com.dc.dc_project.service.impl; + + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.dc.dc_project.common.ResponseResult; +import com.dc.dc_project.model.pojo.RecordEntrust; +import com.dc.dc_project.model.vo.BigScreenStatistics; +import com.dc.dc_project.model.vo.RecordEntrustStatisticsVo; +import com.dc.dc_project.service.*; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; + +@Service +@RequiredArgsConstructor +public class BigScreenServiceImpl implements BigScreenService { + + private final LaboratoryService laboratoryService; + private final EquipmentService equipmentService; + private final StandardService standardService; + private final PersonnelService personnelService; + private final RecordEntrustService recordEntrustService; + @Override + public ResponseResult getPigStatistics() { + BigScreenStatistics bigScreenStatistics = new BigScreenStatistics(); + //试验室 + bigScreenStatistics.setLaboratoryCount(laboratoryService.count()); + bigScreenStatistics.setDeviceCount(equipmentService.count()); + bigScreenStatistics.setPersonCount(personnelService.count()); + bigScreenStatistics.setProjectCount(standardService.count()); + bigScreenStatistics.setProjectBuildingCount(standardService.count()); + bigScreenStatistics.setProjectCompletedCount(standardService.count()); + bigScreenStatistics.setEntrustCount(recordEntrustService.count()); + return ResponseResult.success(bigScreenStatistics); + } + + @Override + public ResponseResult getRecordEntrustStatistics() { + // 获取本年时间 + DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss"); + // 本年开始时间(1月1日 00:00:00) + LocalDateTime startTime = LocalDateTime.of(LocalDateTime.now().getYear(), 1, 1, 0, 0, 0); + String startTimeStr = startTime.format(dtf); + // 结束时间为当前时间 + LocalDateTime endTime = LocalDateTime.now(); + String endTimeStr = endTime.format(dtf); + for (int i = 1; i < 13; i++) { + RecordEntrustStatisticsVo recordEntrustStatistics = new RecordEntrustStatisticsVo(); + recordEntrustStatistics.setMonth(i); + recordEntrustStatistics.setEntrustCount(recordEntrustService.count(new LambdaQueryWrapper<>().between(, startTime, endTime))); + } + return null; + } +} diff --git a/src/main/java/com/dc/dc_project/service/impl/LaboratoryServiceImpl.java b/src/main/java/com/dc/dc_project/service/impl/LaboratoryServiceImpl.java index a434d41..0f61009 100644 --- a/src/main/java/com/dc/dc_project/service/impl/LaboratoryServiceImpl.java +++ b/src/main/java/com/dc/dc_project/service/impl/LaboratoryServiceImpl.java @@ -7,6 +7,7 @@ import com.dc.dc_project.model.dto.LaboratoryDto; import com.dc.dc_project.model.pojo.Laboratory; import com.dc.dc_project.model.pojo.Standard; import com.dc.dc_project.model.pojo.StandardCategory; +import com.dc.dc_project.model.vo.BigScreenStatistics; import com.dc.dc_project.model.vo.LaboratoryVo; import com.dc.dc_project.service.LaboratoryService; import com.dc.dc_project.mapper.LaboratoryMapper; @@ -65,4 +66,13 @@ public class LaboratoryServiceImpl extends ServiceImpl