diff --git a/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/resources/jeecg/code-template-online/default/one/java/${bussiPackage}/${entityPackage}/vue3/${entityName}List.vuei b/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/resources/jeecg/code-template-online/default/one/java/${bussiPackage}/${entityPackage}/vue3/${entityName}List.vuei
index 60c3ca1f4..52f6a1171 100644
--- a/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/resources/jeecg/code-template-online/default/one/java/${bussiPackage}/${entityPackage}/vue3/${entityName}List.vuei
+++ b/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/resources/jeecg/code-template-online/default/one/java/${bussiPackage}/${entityPackage}/vue3/${entityName}List.vuei
@@ -2,6 +2,7 @@
<#assign list_need_category=false>
<#assign list_need_pca=false>
+<#assign list_has_popup_dict=false>
<#assign bpm_flag=false>
<#-- 开始循环 -->
@@ -12,6 +13,9 @@
<#if po.classType=='cat_tree' && po.dictText?default("")?trim?length == 0>
<#assign list_need_category=true>
#if>
+<#if po.classType=='popup_dict'>
+<#assign list_has_popup_dict=true>
+#if>
<#if po.classType=='pca'>
<#assign list_need_pca=true>
#if>
@@ -91,6 +95,10 @@
import { loadCategoryData } from '/@/api/common/api'
import { getAuthCache, setAuthCache } from '/@/utils/auth';
import { DB_DICT_DATA_KEY } from '/@/enums/cacheEnum';
+ #if>
+ <#if list_has_popup_dict>
+ import {getPopDictByCode} from "@/utils/dict";
+ import {filterMultiDictText} from "@/utils/dict/JDictSelectUtil";
#if>
<#if bpm_flag==true>
import { startProcess } from '/@/api/common/api';
@@ -146,6 +154,9 @@
beforeFetch: (params) => {
return Object.assign(params, queryParam);
},
+ <#if list_has_popup_dict>
+ afterFetch: afterFetch
+ #if>
},
exportConfig: {
name:"${tableVo.ftlDescription}",
@@ -319,6 +330,28 @@
}
initDictConfig();
#if>
+
+ <#if list_has_popup_dict>
+ /**
+ * 翻译Popup字典配置
+ */
+ async function afterFetch(records){
+ <#list columns as po>
+ <#if po.isQuery=='Y' || po.isShowList=='Y'>
+ <#if po.classType=='popup_dict' && list_has_popup_dict==true>
+ const ${po.fieldName}Keys = [...new Set(records.map((item) => item['${po.fieldName}']).flatMap((item) => item.split(',')))];
+ if(${po.fieldName}Keys && ${po.fieldName}Keys.length){
+ const dictOptions = await getPopDictByCode(${po.fieldName}Keys.join(','), '${po.dictTable},${po.dictField},${po.dictText}');
+ records.forEach((item) => {
+ item['${po.fieldName}_dictText'] = filterMultiDictText(dictOptions, item['${po.fieldName}']);
+ });
+ }
+ #if>
+ #if>
+ #list>
+ return records;
+ }
+ #if>