我想防止YouTrack中的用户过去修改或添加工作项。他们仅应在当天添加/修改工作项。

在YouTrack工作流程中,我可以检测到更改的“花费的时间”事件并阻止用户添加工作项。但是我想在用户修改JavaScript工作流中的工作项时得到一个事件。这是我的代码:

var entities = require('@jetbrains/youtrack-scripting-api/entities');
var workflow = require('@jetbrains/youtrack-scripting-api/workflow');

exports.rule = entities.Issue.onChange({

  title: workflow.i18n('Disable editing workitems'),

  guard: function(ctx) {
    return ctx.issue.fields.isChanged(ctx.ST);
  },

  action: function(ctx) {
    workflow.check(ctx.issue.workItems.added.isEmpty(), workflow.i18n('You can add/modify workitems only in current day.'));
  },

  requirements: {
    ST: {
      type: entities.Field.periodType,
      name: 'Spent Time'
    }
  }
});


日期时间条件被省略...

最佳答案

检查ctx.issue.workItems.isChanged,还检查ctx.issue.editedWorkItems集的内容。

关于javascript - 如何在YouTrack工作流程中禁用修改工作项?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48766799/

10-09 18:14
查看更多