完成If语句后需要运行函数

时间:2019-04-16 09:02:16

标签: javascript jquery if-statement

我需要为某些过渡类型创建截止日期日历。因此,我为该过渡创建了If语句。日历创建良好。但是它需要在日期完成后再进行一次过渡。

        runTransition: function (context, resolve, reject) {
            var tasks = getSet(context, 'task') || getSet(context, 'tasks'),
                trans = Ember.get(context, 'transition') || Ember.get(context, 'propertyMap.transition'),
                requestData = [];
            if (!tasks.length) {
                resolve();
                return;
            }
            if (!trans) {
                trans = 'Done';
            }
            if (trans == 'PrelimPassReview') {
            Core.Action('Core:editDueDate', context).done(showDialog);
            }
            tasks.forEach(function (task) {
                 requestData.push({ name: 'id', value: (Ember.get(task, 'id') || Ember.get(task, 'currentTask.id') )});
                requestData.push({ name: 'transition', value: trans || '' });
            });
            if (context.get('serviceParams')) {
                Object.asAjaxData(context.get('serviceParams')).forEach(function (param) {
                   requestData.push(param);
                });
            }
            return (Core.services({
                    type: 'post',
                    service: 'workflow/task/transition',
                    data: requestData,
                    json: true
                })
                .done(function (res) {
                    Core.model.ingestResources(res);
                    var inspected = Core.controller.detailsObject,
                        wf = res.workflows || {};
                    if (inspected) {
                        Object.keys(wf).forEach(function (w) {
                            var hist = wf[w].historicalTaskIds;
                            if (hist.contains(inspected.currentTaskId)) {
                                inspected.set('currentTaskId', wf[w].openTaskIds[0]);
                            }
                        });
                    }
                    resolve();
                })
                .fail(function (xhr, status, error) {
                    Core.Error.show(error);
                })
                .always(function () {
                    tasks.forEach(function (task) {
                        if (Ember.get(task, 'isClip')) {
                            Core.model.clip.clear();
                        }
                    });
                    var wfController = Core.Tab.Workflow.getController();
                    var sel = wfController.get('selection');
                    wfController.reloadResultSet();
                    var rs = wfController.get('resultSet');
                    rs && rs.done(function () {
                        var s = Ember.Set.create();
                        rs.get('content').forEach(function (item) {
                            if (!item) { return; }
                            s.addObject(item);
                        });
                        sel.forEach(function (item) {
                           if (!s.contains(item)) {
                               sel.remove(item);
                           }
                        });
                    });
                    sel.clear();
                    resolve(tasks);
                })
            );
        },

为此,我创建了if (trans == 'PrelimPassReview')并调用了到期日操作。日期完成后,我需要将其移至另一个过渡。请提供一些建议

0 个答案:

没有答案