如何配置用户默认使用的门户

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

如何配置用户默认使用的门户


1 问题描述

       苍穹升级到6.0后用户默认使用新门户布局,升级前旧的数据中心支持切换新旧两种门户,6.0后建立的数据中心不再支持切换回旧门户,用户可能会对不同的门户感到疑惑,客户要求统一用户的门户并且与新用户门户一致。


2 解决方法

       对于历史用户需要调整和新用户的门户一致,可使用插件或脚本设置用户的默认门户记录(实体:个人参数设置,标识:bos_user_params_config),将所有人的旧门户设置成新门户;没有设置过的用户需要在表中增加该用户的配置数据,可在系统库查询没有设置过新旧门户记录的用户id,将以上查询的用户 id 追加到个人参数设置的 fuserid 字段,生成用户的门户记录数据。如需插件处理,可设计表单或列表按钮,新增donothing操作按钮触发,示例代码如下:

@Override
public void afterDoOperation(AfterDoOperationEventArgs args) {
    if ("test".equals(args.getOperateKey())) {
        DynamicObject[] existUsers = BusinessDataServiceHelper.load("bos_user_params_config",
                "userid,usenewportal,modifytime,fmodifier", null);
        List<Object> existIds = Arrays.stream(existUsers)
                .map(e -> e.getDynamicObject("userid").getPkValue())
                .collect(Collectors.toList());
        DynamicObject[] userAdd = BusinessDataServiceHelper.load("bos_user", "id",
                new QFilter[]{new QFilter("id", QCP.not_in, existIds)});
        List<DynamicObject> saveList = new ArrayList<>();
        Date now = new Date();
        // 新增设置 - 初始化配置信息
        for (DynamicObject user : userAdd) {
            Object pkValue = user.getPkValue();
            DynamicObject userParams = BusinessDataServiceHelper.newDynamicObject("bos_user_params_config");
            userParams.set("userid", pkValue);
            userParams.set("receivemessage", "1");
            userParams.set("usenewportal", "1"); // 设置为新门户
            userParams.set("firstnewportal", "1");
            userParams.set("creator", 0);
            userParams.set("createtime", now);
            userParams.set("tableallenable", "0");
            userParams.set("tableisgridstriped", "0");
            userParams.set("tablevertical", "0");
            userParams.set("tabledisplaymode", "");
            userParams.set("tablerowhigh", 0);
            saveList.add(userParams);
        }
        // 更新设置 - 更新为新门户
        for (DynamicObject existUser : existUsers) {
            if ("1".equals(existUser.get("usenewportal"))) {
                continue;
            }
            existUser.set("usenewportal", "1");
            saveList.add(existUser);
        }
        SaveServiceHelper.save(saveList.toArray(new DynamicObject[0]));
    }
}

       注:如果现场苍穹版本低于6.0,可以设置 mc 租户级参数 5.0.0012022-06-18 ,此为产品预留的参数升级6.0后会失效,参数为 true 时新用户默认使用新门户,参数为 false 时默认使用旧门户,如果用户已经手动切换了新旧门户,则以用户设置的优先。


3 适用版本

       金蝶云·苍穹 V6.0.1及以上


5 参考资料

如何配置用户默认使用的门户

1 问题描述 苍穹升级到6.0后新用户默认使用新门户布局,升级前旧的数据中心支持切换新旧两种门户,6.0后建立的数据中心不再支持...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息