From 71fba5328a35b449b11088e540932787220f91d8 Mon Sep 17 00:00:00 2001 From: liding <756868258@qq.com> Date: 星期三, 18 六月 2025 17:28:50 +0800 Subject: [PATCH] 1.生产加工变更库存回滚 2.巡检,档案上传完善 --- ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java | 62 +++++++++++++----------------- 1 files changed, 27 insertions(+), 35 deletions(-) diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java index cdf20bb..84e8879 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java @@ -1,57 +1,49 @@ package com.ruoyi.framework.config; import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer; import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import com.ruoyi.common.handler.LocalDateTimeTypeHandler; +import org.apache.ibatis.type.JdbcType; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.transaction.annotation.EnableTransactionManagement; -/** - * Mybatis Plus 閰嶇疆 - * - * @author ruoyi - */ -@EnableTransactionManagement(proxyTargetClass = true) @Configuration public class MybatisPlusConfig { + @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); - // 鍒嗛〉鎻掍欢 - interceptor.addInnerInterceptor(paginationInnerInterceptor()); - // 涔愯閿佹彃浠� - interceptor.addInnerInterceptor(optimisticLockerInnerInterceptor()); - // 闃绘柇鎻掍欢 - interceptor.addInnerInterceptor(blockAttackInnerInterceptor()); + // 1. 鍒嗛〉鎻掍欢 - 鎸囧畾 PostgreSQL 鏁版嵁搴撶被鍨� + PaginationInnerInterceptor pagination = new PaginationInnerInterceptor(DbType.POSTGRE_SQL); + pagination.setOptimizeJoin(true); // 浼樺寲 JOIN 鏌ヨ + pagination.setMaxLimit(500L); // 璁剧疆鏈�澶у崟椤甸檺鍒� + interceptor.addInnerInterceptor(pagination); + + // 2. 涔愯閿佹彃浠� + interceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor()); + + // 3. 闃叉鍏ㄨ〃鏇存柊/鍒犻櫎鎻掍欢 + interceptor.addInnerInterceptor(new BlockAttackInnerInterceptor()); + return interceptor; } - /** - * 鍒嗛〉鎻掍欢锛岃嚜鍔ㄨ瘑鍒暟鎹簱绫诲瀷 https://baomidou.com/guide/interceptor-pagination.html - */ - public PaginationInnerInterceptor paginationInnerInterceptor() { - PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor(); - // 璁剧疆鏁版嵁搴撶被鍨嬩负mysql - paginationInnerInterceptor.setDbType(DbType.MYSQL); - // 璁剧疆鏈�澶у崟椤甸檺鍒舵暟閲忥紝榛樿 500 鏉★紝-1 涓嶅彈闄愬埗 - paginationInnerInterceptor.setMaxLimit(-1L); - return paginationInnerInterceptor; - } + // 4. 娣诲姞鍏ㄥ眬绫诲瀷澶勭悊鍣ㄩ厤缃� + @Bean + public ConfigurationCustomizer configurationCustomizer() { + return configuration -> { + // 娉ㄥ唽 LocalDateTime 绫诲瀷澶勭悊鍣� + configuration.getTypeHandlerRegistry().register(new LocalDateTimeTypeHandler()); - /** - * 涔愯閿佹彃浠� https://baomidou.com/guide/interceptor-optimistic-locker.html - */ - public OptimisticLockerInnerInterceptor optimisticLockerInnerInterceptor() { - return new OptimisticLockerInnerInterceptor(); - } + // 璁剧疆绌哄�煎鐞嗙瓥鐣� + configuration.setJdbcTypeForNull(JdbcType.NULL); - /** - * 濡傛灉鏄鍏ㄨ〃鐨勫垹闄ゆ垨鏇存柊鎿嶄綔锛屽氨浼氱粓姝㈣鎿嶄綔 https://baomidou.com/guide/interceptor-block-attack.html - */ - public BlockAttackInnerInterceptor blockAttackInnerInterceptor() { - return new BlockAttackInnerInterceptor(); + // 鍚敤鑷姩椹煎嘲鍛藉悕瑙勫垯鏄犲皠 + configuration.setMapUnderscoreToCamelCase(true); + }; } } \ No newline at end of file -- Gitblit v1.9.3