实践案例 | 巧用主题定制功能,轻松定制企业个性化UI

栏目:云苍穹知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

实践案例 | 巧用主题定制功能,轻松定制企业个性化UI

小编推荐


在数字化浪潮中,企业如何统一众多业务系统的UI风格,降低员工对系统界面的认知成本、提升操作效率,并强化企业品牌形象呢?


本期案例巧妙运用“主题定制”功能,以低成本、高效率的策略,轻松实现客户系统的个性化UI定制,让企业形象和工作效率双提升。



一、业务背景


客户公司拥有众多业务系统,为节省员工对系统的认知成本、提升操作效率,强化企业品牌形象,客户要求所有系统的UI风格与公司的整体视觉标准保持一致,比如统一的主题色、文字规范、组件规范(如弹窗、按钮、步骤条等)


然而,由于客户的系统页面繁多,且需要确保开发效率和降低成本的前提下实现系统界面风格的定制,这样的需求对于任何供应商来说都是巨大的挑战。


二、解决方案

方案概述

针对客户的诉求,我们提出了一个基于“主题定制”特性的解决方案。


该方案允许通过简单配置+少量开发的方式来实现UI的个性化定制,极大地提高了开发效率并降低了成本。具体实施步骤包括:


1. 整体色彩规范调整:包括主色、功能色、辅助色、中性色的统一设定,确保视觉上的一致性。

2. 文字规范统一:包括正文、锚点、标题、辅助文字等,以保证文本的可读性和美观度。

3. 组件规范样式:涵盖确认弹窗样式、标签页、步骤条、单选/多选按钮、输入框(包含各种状态如normal、hover、active/focus、filled、disabled)、选择器、级联选择、开关、滑块、日期时间选择器、上传控件、表单、列表、分页、缺省页面、加载动画、导航等,根据客户提供的UI要求逐一进行调整。


关键步骤及效果展示

“主题定制”特性路径:

V6.0及以上版本:“基础服务云>个性设置>主题定制”

V6.0以下版本:“系统服务云>系统管理>配置工具>主题定制”
注:客户所属系统版本为V5.0.011,后文展示界面以该版本为准。


进入【主题定制】页面后,除了可修改系统预置的主题外,还可点击“新增”自定义客户主题,以可视化的方式编辑主题的各种属性配置,同时也支持代码修改


接下来以几个场景为例,展示“主题定制”特性的使用方法和效果。


1. 色彩调整


根据客户个性化UI诉求,通过色号录入,将系统的主题色调整为“#CC3D3D”、中性悬停色调整为“#F7F5FA”,状态色中的成功色调整为“#007AFF”、警示色调整为“#D09338、失败色调整为”#AD3333,如下图所示:


上传图片


配置后,各界面的主题色统一,文本按钮、工具栏按钮的颜色也为主题色。


导航栏

列表及列表按钮

表单按钮


2. 字号调整


客户要求表格所有文字字体大小为14px,对此,可通过调整字号为14来实现。



3. 表单内容紧凑度调整


客户希望表单界面,form-item标题与表单内容应一行显示,不能换行,且表单内容项有上下左右边框。对此,通过代码进行调整,示例如下:


{
 "defaultProps": {
  "advcon": {
   "paddingBottom": 7,
   "paddingRight": 12,
   "hideCollapseIcon": false,
   "paddingLeft": 12
  },
  "common": {
   "field": {
    "horizontalInputWidth": 200,
    "fieldPanelItemInputHeightForBorder": 28,
    "horizontalTitleFontSize": 14,
    "labelDirection": "h",
    "marginRight": 8,
    "horizontalTitleAlign": "left",
    "horizontalTitleWidth": 112,
    "fieldPanelItemAdaptive": true,
    "fieldPanelItemMarginBottom": 5,
    "fieldStyle": 2,
    "fieldPanelItemPriorHorizontalMarginRight": 20
   },
   "grid": {
    "headerHeight": "28",
    "rowHeight": "32",
    "pageType": "nicety",
    "FseqName": "序号"
   },
   "ui": {
    "cancelConfirmBtnPositionExchange": true
   }
  },
  "f7ListGrid": {
   "headerHeight": "28",
   "rowHeight": "32"
  },
  "listGrid": {
   "toolbarLocation": "1",
   "headerHeight": "28",
   "rowHeight": "32"
  },
  "entryGrid": {
   "headerHeight": "28",
   "rowHeight": "32"
  }
 },
 "theme": {
  "@treemenu-lower-level-bg-color": "#FAFAFA",
  "@treemenu-first-level-hover-bg-color": "#FAECEC",
  "@treemenu-first-level-color": "#666666",
  "@treemenu-lower-level-hover-color": "#CC3D3D",
  "@treemenu-first-level-bg-color": "#FAFAFA",
  "@warning-color": "#D09338",
  "@hover-color": "#F7F5FA",
  "@treemenu-star-color": "#666666",
  "@success-color": "#007AFF",
  "@treemenu-first-level-hover-color": "#CC3D3D",
  "@treemenu-star-select-color": "#CC3D3D",
  "@error-color": "#AD3333",
  "@treemenu-lower-level-color": "#666666",
  "@theme-color": "#CC3D3D"
 }
}


效果如下图所示:


注:V6.0及以上版本可直接采用系统预置的“紧凑主题”,一键切换即可实现上述效果,无需写代码,轻松提升表单紧凑度



除此之外,客户希望单据内增加固定按钮,用于查看流程流转信息,对此,通过在内侧panel的右侧增加空白面板,放置“查看审批记录”控件;调用审批记录接口,将数据放置到控件中来实现。相关代码示例如下:


public void customEvent(CustomEventArgs e) {
        if (e != null) {
            String clz = e.getClass().toString();
            String loadStatus = this.getPageCache().get("loadStatus");
            if (clz.contains("AfterCreatNewData") && Objects.isNull(loadStatus)) {
                Map<String, Boolean> btnVisible = new HashMap();
                Map<String, BarItemAp> btns = new HashMap();
                List<BarItemAp> sortBtns = new LinkedList();
                logger.info("进入上下布局页面加载按钮");
                this.loadBtnVisibleStatus(e, btnVisible, btns, sortBtns);
                this.addPrintBtns("toolbarap1", btnVisible, btns, sortBtns);
                this.addExtendBtns("toolbarap1", btnVisible, btns, sortBtns);
                this.moveToBottomToolbar(btnVisible, btns);
                this.getView().setVisible(false, new String[]{"btnexit"});
                this.mergeButton(btnVisible, sortBtns);
                String entitynumber = this.getPageCache().get("entitynumber");
                DynamicObject dynamicObject = BusinessDataServiceHelper.newDynamicObject(entitynumber);
                this.getModel().setValue("zxjt_title", dynamicObject.getDataEntityType().getDisplayName().toString());
            }
        }
    }


效果如下图所示:



三、方案的可推广价值

该“主题定制”方案不仅满足了客户对系统界面的一致性和个性化需求,还显著提升了企业品牌价值和员工工作效率,是一项具备高度应用价值的解决方案。具体价值如下:


  • 通用性和可复用性

该方案适用于有多个业务系统且需要统一系统UI风格的企业,具有强大的通用性和可复用性。


  • 个性化需求满足

通过主题定制化方案,成功满足了客户对个性化系统界面风格的需求。通过配置+少量开发即可实现定制,大大提高了项目交付效率,显著降低了实施成本。


  • 增强企业品牌形象

统一且个性化的UI设计不仅提升了用户体验,还助于强化企业的品牌形象。


  • 节省员工的认知成本

通过统一的UI设计,员工在使用不同业务系统时,可以更快地适应和掌握操作,从而减少了学习新系统界面的时间和精力,提高了工作效率。




#往期推荐#



# UI主题可视化——轻松实现个性化主题编辑

# 集成WPS,文档编辑和预览另一选择

表单校验体验全新优化升级,速看!


更多精彩内容,“码”上了解!↓


上传图片


实践案例 | 巧用主题定制功能,轻松定制企业个性化UI

小编推荐在数字化浪潮中,企业如何统一众多业务系统的UI风格,降低员工对系统界面的认知成本、提升操作效率,并强化企业品牌形象呢?本期案...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息