namespace XF.Domain.Entities;
public interface IWorkflow
{
string? WorkflowId { get; set; }
///
/// 过期时间配置id
///
string? ExpiredTimeConfigId { get; set; }
///
/// 流经部门
///
List FlowedOrgIds { get; set; }
///
/// 流经办理人
///
List FlowedUserIds { get; set; }
#region 当前办理对象
///
/// 办理人id
///
public List HandlerUsers { get; set; }
///
/// 办理部门id
///
public List HandlerOrgs { get; set; }
#endregion
void Assign(EFlowAssignType type, string handler);
void Assign(EFlowAssignType type, IEnumerable handlers);
///
/// 是否可查看
///
///
///
///
bool CanView(string userId, string orgId);
///
/// 是否能办理
///
///
///
///
bool CanHandle(string userId, string orgId);
///
/// 流程每次流转时更新待办对象及流经对象
///
void Flowed(List flowedUserIds, List flowedOrgIds,
List handlerUsers, List handlerOrgs);
}
public enum EFlowAssignType
{
///
/// 指派到部门
///
Org = 0,
///
/// 指派到用户
///
User = 1,
/////
///// 指派到角色
/////
//Role = 2,
}
///
/// 办理对象分组(以办理step分组,多人办理一个step为一组)
///
public class HandlerGroupItem
{
public string GroupId { get; set; }
public string Key { get; set; }
public string Value { get; set; }
}