From 9ea8bcf9fb5954d0414519648f67040fa5aff7d8 Mon Sep 17 00:00:00 2001 From: winter Date: Wed, 28 Aug 2024 09:19:04 +0800 Subject: [PATCH] fix --- .../config/BaseMyBatisConfiguration.java | 7 +++++++ .../service/helper/WxEnergyHelper.java | 18 ++++++++++++++---- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/config/BaseMyBatisConfiguration.java b/mallinkService/src/main/java/com/iformall/config/BaseMyBatisConfiguration.java index 1f6a8951b..7ea61a869 100644 --- a/mallinkService/src/main/java/com/iformall/config/BaseMyBatisConfiguration.java +++ b/mallinkService/src/main/java/com/iformall/config/BaseMyBatisConfiguration.java @@ -435,6 +435,13 @@ public class BaseMyBatisConfiguration { wxAllBillSharding.setRule(EnumShardingRule.HASH.getCode()); shardingList.add(wxAllBillSharding); + ShardingSphere wxEnergyReadingCalcuteResultSharding = new ShardingSphere(); + wxEnergyReadingCalcuteResultSharding.setColumn("tenant_id"); + wxEnergyReadingCalcuteResultSharding.setTableName("wx_energy_reading_calcute_result"); + wxEnergyReadingCalcuteResultSharding.setCount(100); + wxEnergyReadingCalcuteResultSharding.setRule(EnumShardingRule.HASH.getCode()); + shardingList.add(wxEnergyReadingCalcuteResultSharding); + //初始化 shardingSpherePlugin.setShardingSpheres(shardingList); Properties properties = new Properties(); diff --git a/mallinkService/src/main/java/com/iformall/service/helper/WxEnergyHelper.java b/mallinkService/src/main/java/com/iformall/service/helper/WxEnergyHelper.java index bf8958010..4a9047ef6 100644 --- a/mallinkService/src/main/java/com/iformall/service/helper/WxEnergyHelper.java +++ b/mallinkService/src/main/java/com/iformall/service/helper/WxEnergyHelper.java @@ -134,6 +134,20 @@ public class WxEnergyHelper { return formula; } + public void testCalcute(String formula) { + if (StringUtils.isBlank(formula)) { + return ; + } + List buildingAreaList = PlaceholderExtractorWithPrefixAndSuffix.extractPlaceholders(formula, "#", "#"); + if (null != buildingAreaList && buildingAreaList.size() > 0 ) { + for (int i = 0 ; i < buildingAreaList.size(); i ++) { + String floorArea = buildingAreaList.get(i); + formula = formula.replaceAll(floorArea, "1"); + } + } + FormulaParser.evaluate(formula); + } + /** * 计算金额 * 1. 如果是用户表: @@ -201,9 +215,5 @@ public class WxEnergyHelper { } } - public void testCalcute(String formula) { - - } - }