二开插件 - 任务处理界面打回发起人时显示下一步处理人

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

二开插件 - 任务处理界面打回发起人时显示下一步处理人

客户需求: 客户发现在任务处理界面,没有显示下一步处理人,希望审批项是【打回发起人】时,在下一步处理人处显示出发起人。


问题分析: 当节点高级选项勾选了【允许指定下一步处理人】(见图1),且参数设置里勾选了【勾选允许指定下一步处理人时,参与人必须人工指定】(见图2)时,下一步处理人控件显示为空(见图3)。

(图1)

(图2)

(图3)


解决方法: 使用如下插件可根据审批项修改参数设置,使之显示下一步处理人。


工作流任务处理(SilverLight/GUI)[WF_AssignmentApproval]

public class AssignmentApprovalEx : AssignmentApproval
{
    private bool nextHandlerControlCache = false;
    public override void DataChanged(DataChangedEventArgs e)
    {
        if (e.Field.Key.EqualsIgnoreCase(KEY_AssignResultGroup))
        {
            if (!nextHandlerControlCache)
            {
                nextHandlerControlCache = this._nextHandlerControl;
            }
            //获取审批项,判断是否是【打回发起人】
            var assignResult = ObjectUtils.Object2String(this.View.Model.GetValue(KEY_AssignResultGroup));
            //显示下一步处理人
            this._nextHandlerControl = assignResult.EqualsIgnoreCase("02") ? false : nextHandlerControlCache;
        }
        base.DataChanged(e);
    }
}


工作流任务处理H5[WF_AssignmentApprovalH5]

public class AssignmentApprovalH5Ex : AssignmentApprovalH5
{
    private bool nextHandlerControlCache = false;
    public override void DataChanged(DataChangedEventArgs e)
    {
        if (e.Field.Key.EqualsIgnoreCase(KEY_AssignResultGroup))
        {
            if (!nextHandlerControlCache)
            {
                nextHandlerControlCache = this._nextHandlerControl;
            }
            //获取审批项,判断是否是【打回发起人】
            var assignResult = ObjectUtils.Object2String(this.View.Model.GetValue(KEY_AssignResultGroup));
            //显示下一步处理人
            this._nextHandlerControl = assignResult.EqualsIgnoreCase("02") ? false : nextHandlerControlCache;
        }
        base.DataChanged(e);
    }
}


二开插件 - 任务处理界面打回发起人时显示下一步处理人

客户需求: 客户发现在任务处理界面,没有显示下一步处理人,希望审批项是【打回发起人】时,在下一步处理人处显示出发起人。问题分析: ...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息