|
@@ -139,11 +139,41 @@ public abstract class WorkflowEntity : FullStateEntity, IWorkflow
|
|
[SugarColumn(IsNullable = true)]
|
|
[SugarColumn(IsNullable = true)]
|
|
public string? WorkflowId { get; set; }
|
|
public string? WorkflowId { get; set; }
|
|
|
|
|
|
- [SugarColumn(ColumnDataType = "varchar(4000)", IsJson = true)]
|
|
|
|
- public List<string> AssignDepCodes { get; set; } = new();
|
|
|
|
|
|
+ [SugarColumn(ColumnDataType = "varchar(2000)", IsJson = true)]
|
|
|
|
+ public List<string> AssignOrgCodes { get; set; } = new();
|
|
|
|
|
|
- [SugarColumn(ColumnDataType = "varchar(4000)", IsJson = true)]
|
|
|
|
|
|
+ [SugarColumn(ColumnDataType = "varchar(2000)", IsJson = true)]
|
|
public List<string> AssignUserIds { get; set; } = new();
|
|
public List<string> AssignUserIds { get; set; } = new();
|
|
|
|
+
|
|
|
|
+ public void Assign(EFlowAssignType type, string id)
|
|
|
|
+ {
|
|
|
|
+ switch (type)
|
|
|
|
+ {
|
|
|
|
+ case EFlowAssignType.Org:
|
|
|
|
+ AssignOrgCodes.Add(id);
|
|
|
|
+ break;
|
|
|
|
+ case EFlowAssignType.User:
|
|
|
|
+ AssignUserIds.Add(id);
|
|
|
|
+ break;
|
|
|
|
+ default:
|
|
|
|
+ throw new ArgumentOutOfRangeException(nameof(type), type, null);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void Assign(EFlowAssignType type, IEnumerable<string> ids)
|
|
|
|
+ {
|
|
|
|
+ switch (type)
|
|
|
|
+ {
|
|
|
|
+ case EFlowAssignType.Org:
|
|
|
|
+ AssignOrgCodes.AddRange(ids);
|
|
|
|
+ break;
|
|
|
|
+ case EFlowAssignType.User:
|
|
|
|
+ AssignUserIds.AddRange(ids);
|
|
|
|
+ break;
|
|
|
|
+ default:
|
|
|
|
+ throw new ArgumentOutOfRangeException(nameof(type), type, null);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
public abstract class PositionEntity : FullStateEntity
|
|
public abstract class PositionEntity : FullStateEntity
|
|
@@ -187,9 +217,39 @@ public abstract class PositionWorkflowEntity : PositionEntity, IWorkflow
|
|
[SugarColumn(IsNullable = true)]
|
|
[SugarColumn(IsNullable = true)]
|
|
public string? WorkflowId { get; set; }
|
|
public string? WorkflowId { get; set; }
|
|
|
|
|
|
- [SugarColumn(ColumnDataType = "varchar(3000)", IsJson = true)]
|
|
|
|
- public List<string> AssignDepCodes { get; set; } = new();
|
|
|
|
|
|
+ [SugarColumn(ColumnDataType = "varchar(2000)", IsJson = true)]
|
|
|
|
+ public List<string> AssignOrgCodes { get; set; } = new();
|
|
|
|
|
|
- [SugarColumn(ColumnDataType = "varchar(3000)", IsJson = true)]
|
|
|
|
|
|
+ [SugarColumn(ColumnDataType = "varchar(2000)", IsJson = true)]
|
|
public List<string> AssignUserIds { get; set; } = new();
|
|
public List<string> AssignUserIds { get; set; } = new();
|
|
|
|
+
|
|
|
|
+ public void Assign(EFlowAssignType type, string id)
|
|
|
|
+ {
|
|
|
|
+ switch (type)
|
|
|
|
+ {
|
|
|
|
+ case EFlowAssignType.Org:
|
|
|
|
+ AssignOrgCodes.Add(id);
|
|
|
|
+ break;
|
|
|
|
+ case EFlowAssignType.User:
|
|
|
|
+ AssignUserIds.Add(id);
|
|
|
|
+ break;
|
|
|
|
+ default:
|
|
|
|
+ throw new ArgumentOutOfRangeException(nameof(type), type, null);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void Assign(EFlowAssignType type, IEnumerable<string> ids)
|
|
|
|
+ {
|
|
|
|
+ switch (type)
|
|
|
|
+ {
|
|
|
|
+ case EFlowAssignType.Org:
|
|
|
|
+ AssignOrgCodes.AddRange(ids);
|
|
|
|
+ break;
|
|
|
|
+ case EFlowAssignType.User:
|
|
|
|
+ AssignUserIds.AddRange(ids);
|
|
|
|
+ break;
|
|
|
|
+ default:
|
|
|
|
+ throw new ArgumentOutOfRangeException(nameof(type), type, null);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|