You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Salesforce中排序自定义设置记录:全大写值后置

调整自定义设置记录在Aura组件中的显示顺序

我们在Aura组件中获取自定义设置的值,当前UI显示时全大写的CGU记录位置不符合需求,需要将这类记录放到最后,其余记录保持原有顺序。

原Apex类代码

@AuraEnabled
public static AP_ApplicantSpaceFooterWrapper getdisclaimerCS(){
    AP_ApplicantSpaceFooterWrapper footerDetailsWrapper  = new AP_ApplicantSpaceFooterWrapper();
    List<CS_DisclaimerLink__c> disclaimerLinkList = CS_DisclaimerLink__c.getall().values();
    footerDetailsWrapper.disclaimerLinkCSList = disclaimerLinkList;
    footerDetailsWrapper.userLanguage = UserInfo.getLanguage();
    return footerDetailsWrapper;
}

修改后的Apex类代码(实现排序逻辑)

@AuraEnabled
public static AP_ApplicantSpaceFooterWrapper getdisclaimerCS(){
    AP_ApplicantSpaceFooterWrapper footerDetailsWrapper  = new AP_ApplicantSpaceFooterWrapper();
    List<CS_DisclaimerLink__c> disclaimerLinkList = CS_DisclaimerLink__c.getall().values();
    
    // 拆分记录:普通记录和全大写CGU记录
    List<CS_DisclaimerLink__c> normalRecords = new List<CS_DisclaimerLink__c>();
    List<CS_DisclaimerLink__c> uppercaseCguRecords = new List<CS_DisclaimerLink__c>();
    
    for(CS_DisclaimerLink__c rec : disclaimerLinkList){
        // 按需求筛选全大写的CGU记录,可根据实际字段调整判断条件
        if(rec.Name != null && rec.Name.equals(rec.Name.toUpperCase()) && rec.Name == 'CGU'){
            uppercaseCguRecords.add(rec);
        } else {
            normalRecords.add(rec);
        }
    }
    
    // 合并列表:普通记录保持原顺序在前,CGU记录追加到末尾
    normalRecords.addAll(uppercaseCguRecords);
    footerDetailsWrapper.disclaimerLinkCSList = normalRecords;
    footerDetailsWrapper.userLanguage = UserInfo.getLanguage();
    
    return footerDetailsWrapper;
}

Aura组件助手方法(无需修改)

({
    doInit : function(component, event, helper) {
        helper.callServer(
            component, 
            "c.getdisclaimerCS", 
            function(response){
                console.log('response: '+response);
                if(!$A.util.isEmpty(response)){                    
                    component.set("v.disclaimerLinksCS", response);
                }
            }
        );
    }
})

逻辑说明

  • 核心是在Apex层对自定义设置记录进行分组处理:遍历所有记录,将全大写的CGU记录单独归类,其余记录保留原有顺序,最后把CGU记录追加到普通记录列表末尾。
  • 如果自定义设置中标识全大写CGU的字段不是Name,只需替换代码中对应的字段名即可。

内容的提问来源于stack exchange,提问作者Amit Kundu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 10:21:12