如何在camunda任务列表中设置默认排序?

How to set default sorting in camunda tasklist?

我正在尝试将 camunda 任务列表过滤器中的默认排序顺序设置为按创建日期升序排列。

只找到 this suggestion 说我应该使用 maven replacer 插件。但我想让它更优雅。例如,对于任务列表本地化,我创建了文件 src/main/resources/META-INF/resources/webjars/camunda/app/tasklist/scripts/config.js.

我有网络 camunda spring: org.camunda.bpm.springboot:camunda-bpm-spring-boot-starter-webapp:3.4.2

添加文件PROJECT_DIR/src/main/resources/META-INF/resources/webjars/camunda/app/tasklist/scripts/defaultSorting.js

define(['angular'], function (angular) {
    var ngModule = angular.module('tasklist.defaultSorting', []);

    ngModule.config(['ViewsProvider', function (ViewsProvider) {
        ViewsProvider.registerDefaultView('tasklist.header', {
            id: 'default-sorting',
            priority: 50,
            template: "<script>angular.element(document.getElementsByClassName('sorting-choice')).scope().changeOrder(0)</script>"
        });
    }]);

    return ngModule;
});

加载任务列表页面时设置顺序需要的顺序。

要在文件中启用功能,您需要在 PROJECT_DIR/src/main/resources/META-INF/resources/webjars/camunda/app/tasklist/scripts/config.js:

var camTasklistConf = {
    "locales": {
        "availableLocales": ["ru"],
        "fallbackLocale": "ru"
    },
    app: {
        name: 'App',
        vendor: 'Vendor'
    },
    customScripts: {
        ngDeps: ['tasklist.defaultSorting'],
        deps: ['defaultSorting'],
        paths: {
            'defaultSorting': 'scripts/defaultSorting'
        }
    }
};

相关文档:https://docs.camunda.org/manual/latest/webapps/cockpit/extend/configuration/#custom-scripts