From 13117c90b1690901fa82518ca2cc07090b1bf575 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Thu, 22 Feb 2024 14:23:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=84=E7=90=86=E5=88=86=E7=89=87=E6=8F=92?= =?UTF-8?q?=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../elog/service/impl/LocalElogService.java | 11 +++++-- .../salary/elog/util/LoggerTemplate.java | 29 ++++++++++++------- 2 files changed, 27 insertions(+), 13 deletions(-) diff --git a/src/com/engine/salary/elog/service/impl/LocalElogService.java b/src/com/engine/salary/elog/service/impl/LocalElogService.java index bcb34a5..3dd9eba 100644 --- a/src/com/engine/salary/elog/service/impl/LocalElogService.java +++ b/src/com/engine/salary/elog/service/impl/LocalElogService.java @@ -10,6 +10,7 @@ import com.engine.salary.elog.util.ElogUtils; import com.engine.salary.mapper.elog.LocalElogAopDaoMapper; import com.engine.salary.elog.util.db.IdGenerator; import com.engine.salary.elog.util.db.MapperProxyFactory; +import com.google.common.collect.Lists; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -166,9 +167,15 @@ public class LocalElogService implements ILocalElogService { if (hasCustonInfo) { - getLocalElogAopDaoMapper().insertElogDetailPreparedHasCustonInfo(detailTableName, detailContexts, context.getUuid(), cusColumns); + List> partition = Lists.partition(detailContexts, 50); + for (int i = 0; i < partition.size(); i++) { + getLocalElogAopDaoMapper().insertElogDetailPreparedHasCustonInfo(detailTableName, partition.get(i), context.getUuid(), cusColumns); + } } else { - getLocalElogAopDaoMapper().insertElogDetailPrepared(detailTableName, detailContexts, context.getUuid()); + List> partition = Lists.partition(detailContexts, 50); + partition.forEach(part -> { + getLocalElogAopDaoMapper().insertElogDetailPrepared(detailTableName, part, context.getUuid()); + }); } } diff --git a/src/com/engine/salary/elog/util/LoggerTemplate.java b/src/com/engine/salary/elog/util/LoggerTemplate.java index 508a861..3838de7 100644 --- a/src/com/engine/salary/elog/util/LoggerTemplate.java +++ b/src/com/engine/salary/elog/util/LoggerTemplate.java @@ -86,8 +86,9 @@ public class LoggerTemplate { */ public void write(LoggerContext context, boolean isLocal) { String elogLocalQueue = ELOG + this.applicationName; - if (StringUtils.isEmpty(this.localQueue)) + if (StringUtils.isEmpty(this.localQueue)) { this.localQueue = (StringUtils.isNotEmpty(this.moduleName) ? this.moduleName : elogLocalQueue) + "LocalQueue" + this.publishkitGroup; + } try { handleContext(context); } catch (Exception e) { @@ -230,12 +231,15 @@ public class LoggerTemplate { // } private void handleContext(LoggerContext context) { - if (StringUtils.isEmpty(context.getModuleName())) + if (StringUtils.isEmpty(context.getModuleName())) { context.setModuleName(module); - if (StringUtils.isEmpty(context.getFunctionName())) + } + if (StringUtils.isEmpty(context.getFunctionName())) { context.setFunctionName(function); - if (!(context.getId() > 0)) + } + if (!(context.getId() > 0)) { context.setId(IdGenerator.generate()); + } if (StringUtils.isEmpty(context.getUuid())) { context.setUuid(UUID.randomUUID().toString().replace("-", "")); } @@ -278,7 +282,7 @@ public class LoggerTemplate { List valueChangeList = new ArrayList<>(); int showOrder = 0; - if (changeBeans != null) + if (changeBeans != null) { for (TableChangeBean changeBean : changeBeans) { if (changeBean != null && (changeBean.getNewValue() != null || changeBean.getOldValue() != null)) { String uuid = UUID.randomUUID().toString().replace("-", ""); @@ -340,7 +344,7 @@ public class LoggerTemplate { valueChangeBean.setNewValue(newJo.getString(field.getName())); valueChangeBean.setOldValue(oldJo.getString(field.getName())); - valueChangeBean.setCreator(-1l); + valueChangeBean.setCreator(-1L); try { extracted(newJo, oldJo, field, fieldElogTransform, valueChangeBean); } catch (Exception e) { @@ -371,12 +375,13 @@ public class LoggerTemplate { valueChangeBean.setNewValue(newJo.getString(key)); valueChangeBean.setOldValue(oldJo.getString(key)); valueChangeBean.setShoworder(showOrder++); - valueChangeBean.setCreator(-1l); + valueChangeBean.setCreator(-1L); valueChangeList.add(valueChangeBean); } for (String key : (Set) oldJo.keySet()) { - if (keys.contains(key)) + if (keys.contains(key)) { continue; + } keys.add(key); if (oldJo.getString(key).equals(newJo.getString(key))) { continue; @@ -389,15 +394,17 @@ public class LoggerTemplate { valueChangeBean.setNewValue(newJo.getString(key)); valueChangeBean.setOldValue(oldJo.getString(key)); valueChangeBean.setShoworder(showOrder++); - valueChangeBean.setCreator(-1l); + valueChangeBean.setCreator(-1L); valueChangeList.add(valueChangeBean); } } } } + } - if (valueChangeList.size() > 0) + if (valueChangeList.size() > 0) { context.setDetailContexts(valueChangeList); + } } @@ -455,7 +462,7 @@ public class LoggerTemplate { valueChangeBean.setFieldName(allField.getName()); valueChangeBean.setNewValue(newValue.getString(allField.getName())); valueChangeBean.setOldValue(oldValue.getString(allField.getName())); - valueChangeBean.setCreator(-1l); + valueChangeBean.setCreator(-1L); valueChangeBean.setBelongDataid(""); valueChangeBean.setDataid(String.valueOf(dataid));