package com.qmth.distributed.print.business.activiti.custom.service;

import com.qmth.distributed.print.business.bean.flow.CustomFlowDto;
import com.qmth.distributed.print.business.bean.flow.link.FlowTaskLink;
import org.activiti.bpmn.model.UserTask;

/**
 * @Description: 并行/串行业务
 * @Param:
 * @return:
 * @Author: wangliang
 * @Date: 2022/2/8
 */
public interface MultiWorkFlow {

    /**
     * 创建并行/串行会签节点
     *
     * @param userTask
     * @param sequential
     */
    UserTask createMultiInstanceLoopCharacteristics(UserTask userTask, boolean sequential);

    /**
     * 创建默认用户节点
     *
     * @param customFlowDto
     * @param flowTaskLink
     * @param id
     * @return
     */
    CustomFlowDto createDefaultUserTask(CustomFlowDto customFlowDto, FlowTaskLink flowTaskLink, String id);

//    /**
//     * 更新atomicInteger值
//     *
//     * @param atomicInteger
//     * @return
//     */
//    int getAndIncrement(AtomicInteger atomicInteger);
}
