电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

如何在业务单据列表上批量同意待办任务

来源:金蝶云社区作者:金蝶2024-09-235

如何在业务单据列表上批量同意待办任务


1 问题描述

当前处理待办任务,需要进入消息中心的待办任务列表进行操作;而有些场景,在对应的单据列表上直接进行审批会更加便捷。


2 解决方法

以上场景可以通过插件达成。在对应单据列表上添加按钮,并编写插件实现具体逻辑。如下图所示:

  • 插件中的主要逻辑为:

  • 调用接口kd.bos.servicehelper.workflow.WorkflowServiceHelper#batchAgreeTaskWithUserId

  • 其中需要三个参数,分别是需要处理的任务id、审批意见以及任务处理人id。

  • 参数3 任务处理人即为当前用户,可通过以下代码获取:

long userId = UserServiceHelper.getCurrentUserId();
  • 参数2 任务id需要借助另一个接口:其中,需要的两个参数,用户id即为上述的任务处理人id;而businessKey即为业务单据的id,此参数可以通过列表的选中行获取到。

  • 参数1 审批意见可以自行组装、设计。比如:

  • ILocaleString option = new LocaleString();
    option.setLocaleValue("审批通过");

    

  • 至此,接口实现逻辑已经完成,还需考虑交互场景。例如:用户没有选择列表上的数据就点击了按钮;用户选择的按钮当前用户无法处理等情况。


最后,完整代码如下:

package nm21.cosmic.plugin.list;

import com.kingdee.util.StringUtils;
import kd.bos.dataentity.entity.ILocaleString;
import kd.bos.dataentity.entity.LocaleString;
import kd.bos.entity.datamodel.ListSelectedRow;
import kd.bos.entity.datamodel.ListSelectedRowCollection;
import kd.bos.form.control.Control;
import kd.bos.form.control.events.ItemClickEvent;
import kd.bos.list.BillList;
import kd.bos.list.plugin.AbstractListPlugin;
import kd.bos.servicehelper.user.UserServiceHelper;
import kd.bos.servicehelper.workflow.WorkflowServiceHelper;
import kd.sdk.plugin.Plugin;

import java.util.ArrayList;
import java.util.List;

public class BatchApprovalPlugin extends AbstractListPlugin implements Plugin {

    @Override
    public void itemClick(ItemClickEvent evt) {
        super.itemClick(evt);
        String itemKey = evt.getItemKey();
        if (StringUtils.equals(itemKey, "nm21_baritemap")) {
            //所有任务id
            List<Long> taskIds = new ArrayList<>();
            
            //1当前用户id
            long userId = UserServiceHelper.getCurrentUserId();

            //2获取选中行
            ListSelectedRowCollection selectedRows = this.getSelectedRows();
            if (selectedRows.size() <= 0) {
                this.getView().showTipNotification("请选择要审批的单据~~~");
   

如何在业务单据列表上批量同意待办任务

1 问题描述当前处理待办任务,需要进入消息中心的待办任务列表进行操作;而有些场景,在对应的单据列表上直接进行审批会更加便捷。2 解决...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信