This commit is contained in:
lhx
2025-11-12 17:56:17 +08:00
parent 61e8c8c434
commit fe8fe03f55
11 changed files with 450 additions and 0 deletions

1
.gitignore vendored
View File

@@ -33,3 +33,4 @@ build/
.vscode/
*.log
logs/

View File

@@ -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(<generated>)
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)

View File

@@ -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(<generated>)
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

View File

@@ -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();
}
}

View File

@@ -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;
}

View File

@@ -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;
}

View File

@@ -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();
}

View File

@@ -18,4 +18,10 @@ public interface LaboratoryService extends IService<Laboratory> {
* @return
*/
ResponseResult getList(LaboratoryDto laboratoryDto);
/**
* 大屏获取数量统计
* @return
*/
ResponseResult getPigStatistics();
}

View File

@@ -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;
}
}

View File

@@ -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<LaboratoryMapper, Laborat
return ResponseResult.success(laboratoryVos);
}
@Override
public ResponseResult getPigStatistics() {
BigScreenStatistics bigScreenStatistics = new BigScreenStatistics();
//试验室
bigScreenStatistics.setLaboratoryCount(baseMapper.selectCount(null));
return null;
}
}

View File

@@ -0,0 +1,55 @@
package com.dc.dc_project.utils;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
/**
* 日期时间工具类
*/
public class DateUtils {
/**
* 获取当前年份
* @return 当前年份字符串 (yyyy)
*/
public static String getCurrentYear() {
return String.valueOf(LocalDate.now().getYear());
}
/**
* 获取当前年月
* @return 当前年月字符串 (yyyy-MM)
*/
public static String getCurrentYearMonth() {
return LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM"));
}
/**
* 获取当前年月日
* @return 当前日期字符串 (yyyy-MM-dd)
*/
public static String getCurrentDate() {
return LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
}
/**
* 根据指定年月日获取日期字符串
* @param year 年
* @param month 月
* @param day 日
* @return 指定日期字符串 (yyyy-MM-dd)
*/
public static String getDate(int year, int month, int day) {
LocalDate date = LocalDate.of(year, month, day);
return date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
}
/**
* 获取当前完整日期时间
* @return 当前日期时间字符串 (yyyy-MM-dd HH:mm:ss)
*/
public static String getCurrentDateTime() {
return LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
}
}