二开插件实现苍穹Logo、欢迎语等的自定义
场景
企业一般会在苍穹系统中配置自己企业的Logo、登录欢迎语、浏览器页签Icon及浏览器页签Title。具体配置功能路径为:系统服务云>>系统管理>>登录页配置。
如果上述功能还不能满足客户需求时,可以通过二开的方式实现一个插件,并用该插件实现自己的Logo、登录欢迎语、浏览器页签Icon及浏览器页签Title的自定义。
适用版本
该功能适用版本为苍穹V5.0.001以上。
特性展示/功能速览
列举一个场景:
有位客户有两个组织的人员需要访问苍穹,A组织人员从外网访问,B组织人员从内网访问。这两个组织的人员看到的苍穹的地址,登录欢迎语、浏览器页签Icon及浏览器页签Title都需要不同。
很显然,这个需求在苍穹系统中的登录页配置中是不能实现的,这个时候,就可以通过实现kd.bos.login. IMainPageFacadeService接口来支持上述的场景。
怎么实现呢?分两个步骤:
1,实现kd.bos.login. IMainPageFacadeService接口方法,每个方法返回对应需要的自定义内容。具体可参考后续的代码示例
2,在mc中配置启用该插件:在mc公共配置(/root/config/common/prop)中配置:main_page_facade_class= kd.bos.login.ext.service. DemoLogoService(为实现插件类的全路径)
代码示例:
package kd.bos.login.ext.service;
import javax.servlet.http.HttpServletRequest;
import kd.bos.login.IMainPageFacadeService;
public class DemoLogoService implements IMainPageFacadeService {
/**
* 返回自定义的浏览器页签Icon的url(系统的相对路径)
*/
@Override
public String getIconUrl(HttpServletRequest request) {
String clientDomain= request.getHeader(“clientDomain”);
//根据不同定义的域名返回不同的Icon Url
If(StringUtils.isNotEmpty(clientDomain)&&clientDomain.startWith(“www.kingdee.com”)){
return "./public/thirdjs/image/kingdee.ico";
}else{
return "./public/thirdjs/image/favicon.ico";
}
}
/**
* 返回自定义的Logo的url(系统的相对路径)
*/
@Override
public String getLogoUrl() {
//根据不同定义的域名返回不同的LogoUrl
String clientDomain= request.getHeader(“clientDomain”);
If(StringUtils.isNotEmpty(clientDomain)&&clientDomain.startWith(“www.kingdee.com”)){
return "images/pc/other/logo_kingdee.webp?v=1.0";
}else{
return "images/pc/other/logo_ccs_cn_242_72.webp?v=1.0";
}
}
/**
* 返回自定义浏览器页签Title
*/
@Override
public String getTitle(HttpServletRequest arg0) {
//根据不同定义的域名返回不同自定义首页的浏览器Title
String clientDomain= request.getHeader(“clientDomain”);
If(StringUtils.isNotEmpty(clientDomain)&&clientDomain.startWith(“www.kingdee.com”)){
return "金蝶云苍穹系统";
}else{
return "金蝶云苍穹demo系统";
}
}
/**
* 返回自定义的欢迎语
*/
@Override
public String getWelcomeMessage(HttpServletRequest arg0) {
//根据不同定义的域名返回自定义的欢迎语
String clientDomain= request.getHeader(“clientDomain”);
If(StringUtils.isNotEmpty(clientDomain)&&clientDomain.startWith(“www.kingdee.com”)){
return "欢迎金蝶云苍穹系统";
}else{
return "欢迎金蝶云苍穹demo系统";
}
}
亮点价值
对于一些通过苍穹系统中的登录页配置不能满足的需求,通过二开插件编写逻辑来实现自定义还是很方便的。
二开插件实现苍穹Logo、欢迎语等的自定义
本文2024-09-23 00:34:54发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-140381.html