package com.ruoyi.system.mapper;

import com.ruoyi.system.domain.FlowProcDefDto;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 流程定义查询
 *
 * @author Tony
 * @email
 * @date 2022/1/29 5:44 下午
 **/
public interface FlowDeployMapper {

    /**
     * 流程定义列表
     * @param roleId 发起角色
     * @param category 流程类别
     * @param name 流程名称
     * @return
     */
    List<FlowProcDefDto> selectDeployList(@Param("roleId")String roleId, @Param("category")String category, @Param("name")String name);

    /**
     * 我的流程定义列表
     * @param username 登录用户
     * @param category 流程类别
     * @param name 流程名称
     * @return
     */
    List<FlowProcDefDto> selectMyDeployList(@Param("username")String username, @Param("category")String category, @Param("name")String name);

    /**
     * 根据角色删除流程定义
     * @param roleId 橘色
     * @return
     */
    int deleteDeployByRoleId(String roleId);


    /**
     * 批量新增流程定义角色配置
     * @param items 列表
     * @return
     */
    int batchDeployRoleRole(List<Map<String, Object>> items);

    /**
     * 流程发起排序设置
     * @param roleId 角色主键
     * @param key 流程
     * @param sort 排序
     * @return
     */
    int updateProcKeyRoleSort(@Param("roleId")String roleId, @Param("key")String key, @Param("sort")String sort);
}
