mirror of
				https://github.com/dromara/RuoYi-Vue-Plus.git
				synced 2025-11-04 08:13:44 +08:00 
			
		
		
		
	fix 修复 字典同步 数据异常问题
This commit is contained in:
		@@ -1,6 +1,7 @@
 | 
				
			|||||||
package org.dromara.system.service.impl;
 | 
					package org.dromara.system.service.impl;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import cn.dev33.satoken.secure.BCrypt;
 | 
					import cn.dev33.satoken.secure.BCrypt;
 | 
				
			||||||
 | 
					import cn.hutool.core.bean.BeanUtil;
 | 
				
			||||||
import cn.hutool.core.collection.CollUtil;
 | 
					import cn.hutool.core.collection.CollUtil;
 | 
				
			||||||
import cn.hutool.core.convert.Convert;
 | 
					import cn.hutool.core.convert.Convert;
 | 
				
			||||||
import cn.hutool.core.util.ObjectUtil;
 | 
					import cn.hutool.core.util.ObjectUtil;
 | 
				
			||||||
@@ -413,33 +414,36 @@ public class SysTenantServiceImpl implements ISysTenantService {
 | 
				
			|||||||
                    Map<String, SysDictData> map = StreamUtils.toIdentityMap(dataListTenant, SysDictData::getDictValue);
 | 
					                    Map<String, SysDictData> map = StreamUtils.toIdentityMap(dataListTenant, SysDictData::getDictValue);
 | 
				
			||||||
                    for (SysDictData dictData : dataList) {
 | 
					                    for (SysDictData dictData : dataList) {
 | 
				
			||||||
                        if (!map.containsKey(dictData.getDictValue())) {
 | 
					                        if (!map.containsKey(dictData.getDictValue())) {
 | 
				
			||||||
 | 
					                            SysDictData data = BeanUtil.toBean(dictData, SysDictData.class);
 | 
				
			||||||
                            // 设置字典编码为 null
 | 
					                            // 设置字典编码为 null
 | 
				
			||||||
                            dictData.setDictCode(null);
 | 
					                            data.setDictCode(null);
 | 
				
			||||||
                            dictData.setTenantId(tenantId);
 | 
					                            data.setTenantId(tenantId);
 | 
				
			||||||
                            dictData.setCreateTime(null);
 | 
					                            data.setCreateTime(null);
 | 
				
			||||||
                            dictData.setUpdateTime(null);
 | 
					                            data.setUpdateTime(null);
 | 
				
			||||||
                            set.add(tenantId);
 | 
					                            set.add(tenantId);
 | 
				
			||||||
                            saveDataList.add(dictData);
 | 
					                            saveDataList.add(data);
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                } else {
 | 
					                } else {
 | 
				
			||||||
                    dictType.setDictId(null);
 | 
					                    SysDictType type = BeanUtil.toBean(dictType, SysDictType.class);
 | 
				
			||||||
                    dictType.setTenantId(tenantId);
 | 
					                    type.setDictId(null);
 | 
				
			||||||
                    dictType.setCreateTime(null);
 | 
					                    type.setTenantId(tenantId);
 | 
				
			||||||
                    dictType.setUpdateTime(null);
 | 
					                    type.setCreateTime(null);
 | 
				
			||||||
 | 
					                    type.setUpdateTime(null);
 | 
				
			||||||
                    set.add(tenantId);
 | 
					                    set.add(tenantId);
 | 
				
			||||||
                    saveTypeList.add(dictType);
 | 
					                    saveTypeList.add(type);
 | 
				
			||||||
                    if (CollUtil.isNotEmpty(dataList)) {
 | 
					                    if (CollUtil.isNotEmpty(dataList)) {
 | 
				
			||||||
                        // 筛选出 dictType 对应的 data
 | 
					                        // 筛选出 dictType 对应的 data
 | 
				
			||||||
                        for (SysDictData dictData : dataList) {
 | 
					                        for (SysDictData dictData : dataList) {
 | 
				
			||||||
 | 
					                            SysDictData data = BeanUtil.toBean(dictData, SysDictData.class);
 | 
				
			||||||
                            // 设置字典编码为 null
 | 
					                            // 设置字典编码为 null
 | 
				
			||||||
                            dictData.setDictCode(null);
 | 
					                            data.setDictCode(null);
 | 
				
			||||||
                            dictData.setTenantId(tenantId);
 | 
					                            data.setTenantId(tenantId);
 | 
				
			||||||
                            dictData.setCreateTime(null);
 | 
					                            data.setCreateTime(null);
 | 
				
			||||||
                            dictData.setUpdateTime(null);
 | 
					                            data.setUpdateTime(null);
 | 
				
			||||||
                            set.add(tenantId);
 | 
					                            set.add(tenantId);
 | 
				
			||||||
 | 
					                            saveDataList.add(data);
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
                        saveDataList.addAll(dataList);
 | 
					 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user