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; } }