From 9b51a62597487073b54aa27cdd059828ebfcb2ac Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 08 Jul 2022 19:19:47 +0800
Subject: [PATCH] 加synchronized

---
 src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ReleaseServiceImpl.java |   35 ++++++++++++++++++++---------------
 1 files changed, 20 insertions(+), 15 deletions(-)

diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ReleaseServiceImpl.java b/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ReleaseServiceImpl.java
index 85f4e75..58513fb 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ReleaseServiceImpl.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ReleaseServiceImpl.java
@@ -63,17 +63,7 @@
     @Override
     public void releaseColumn(Long id, int type, Long companyId) {
         ColumnEntity columnEntity = columnMapper.selectById(id);
-        Map<String, Object> map = new Hashtable<>();
-        map.put("id", columnEntity.getId());
-        map.put("code", columnEntity.getColumnCode());
-        if (columnEntity.getParentId() == 0L) {
-            map.put("parentCode", columnEntity.getColumnCode());
-        } else {
-            ColumnEntity parent = columnMapper.selectById(columnEntity.getParentId());
-            map.put("parentCode", parent.getColumnCode());
-        }
-        map.put("templatePath", columnEntity.getPath());
-        map.put("companyId", companyId);
+        Map<String, Object> map = buildColumnData(columnEntity);
 
         executor.execute(() -> {
             cmsCoreService.columnProcess(map, columnEntity.getListTemplate());
@@ -86,12 +76,11 @@
                     List<ColumnEntity> columns = columnMapper.selectColumnByParentId(columnEntity.getId(), companyId, 2);
                     if (CollUtil.isNotEmpty(columns)) {
                         for (ColumnEntity column : columns) {
-                            map.put("id", column.getId());
-                            map.put("code", column.getColumnCode());
-                            cmsCoreService.columnProcess(map, column.getListTemplate());
+                            Map<String, Object> data = buildColumnData(column);
+                            cmsCoreService.columnProcess(data, column.getListTemplate());
 
                             List<Long> ids = articleMapper.selectArticleIdsByColumnId(column.getId(), companyId,type);
-                            cmsCoreService.articlesProcess(map, ids, column.getArticleTemplate(), column.getPath());
+                            cmsCoreService.articlesProcess(data, ids, column.getArticleTemplate(), column.getPath());
                         }
                     }
                 }
@@ -104,6 +93,22 @@
         }
     }
 
+    private Map<String, Object> buildColumnData(ColumnEntity columnEntity) {
+        Map<String, Object> map = new Hashtable<>();
+        map.put("id", columnEntity.getId());
+        map.put("code", columnEntity.getColumnCode());
+        if (columnEntity.getParentId() == 0L) {
+            map.put("parentCode", columnEntity.getColumnCode());
+        } else {
+            ColumnEntity parent = columnMapper.selectById(columnEntity.getParentId());
+            map.put("parentCode", parent.getColumnCode());
+        }
+        map.put("columnTitle", columnEntity.getColumnName());
+        map.put("templatePath", columnEntity.getPath());
+        map.put("companyId", columnEntity.getCompanyId());
+        return map;
+    }
+
     @Override
     public void releaseIndex(Long companyId) {
         Map<String, Object> map = new HashMap<>();

--
Gitblit v1.9.1