using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace RoadFlow.Data.Model { [Serializable] public class WorkFlowInstalled { /// /// 流程ID /// public Guid ID { get; set; } /// /// 流程名称 /// public string Name { get; set; } /// /// 流程分类 /// public string Type { get; set; } /// /// 流程类型:0 常规流程 1 自由流程 /// public int FlowType { get; set; } /// /// 流程管理者 /// public string Manager { get; set; } /// /// 实例管理者 /// public string InstanceManager { get; set; } /// /// 第一步ID /// public Guid FirstStepID { get; set; } /// /// 创建时间 /// public DateTime CreateTime { get; set; } /// /// 创建人 /// public string CreateUser { get; set; } /// /// 设计时 /// public string DesignJSON { get; set; } /// /// 安装日期 /// public DateTime InstallTime { get; set; } /// /// 安装人 /// public string InstallUser { get; set; } /// /// 运行时JSON /// public string RunJSON { get; set; } /// /// 状态 1:设计中 2:已安装 3:已卸载 4:已删除 /// public int Status { get; set; } /// /// 是否删除已完成 0不删除 1要删除 /// public int RemoveCompleted { get; set; } /// /// 备注 /// public string Note { get; set; } /// /// 是否调试模式 0关闭 1开启(有调试窗口) 2开启(无调试窗口) /// public int Debug { get; set; } /// /// 调试人员 /// public List DebugUsers { get; set; } /// /// 数据库表以及主键信息 /// public IEnumerable DataBases { get; set; } /// /// 数据库表标题字段 /// public WorkFlowInstalledSub.TitleField TitleField { get; set; } /// /// 流程步骤 /// public IEnumerable Steps { get; set; } /// /// 流程连线 /// public IEnumerable Lines { get; set; } } } namespace RoadFlow.Data.Model.WorkFlowInstalledSub { /// /// 数据库连接结构体 /// [Serializable] public class DataBases { /// /// 连接ID /// public Guid LinkID { get; set; } /// /// 连接名称 /// public string LinkName { get; set; } /// /// 连接表 /// public string Table { get; set; } /// /// 表主键 /// public string PrimaryKey { get; set; } } /// /// 标题字段结构体 /// [Serializable] public class TitleField { /// /// 连接ID /// public Guid LinkID { get; set; } /// /// 连接名称 /// public string LinkName { get; set; } /// /// 连接表 /// public string Table { get; set; } /// /// 字段名称 /// public string Field { get; set; } } /// /// 步骤实体类 /// [Serializable] public class Step { /// /// 步骤ID /// public Guid ID { get; set; } /// /// 步骤类型 normal 一般步骤 subflow 子流程步骤 /// public string Type { get; set; } /// /// 步骤名称 /// public string Name { get; set; } /// /// 意见显示 0不显示 1显示 /// public int OpinionDisplay { get; set; } /// /// 超期提示 0不提示 1要提示 /// public int ExpiredPrompt { get; set; } /// /// 审签类型 0无签批意见栏 1有签批意见(无须签章) 2有签批意见(须签章) /// public int SignatureType { get; set; } /// /// 工时(小时) /// public decimal WorkTime { get; set; } /// /// 限额时间(小时) /// public decimal LimitTime { get; set; } /// /// 额外时间(小时) /// public decimal OtherTime { get; set; } /// /// 是否归档 0不归档 1要归档 /// public int Archives { get; set; } /// /// 归档参数 /// public string ArchivesParams { get; set; } /// /// 步骤备注说明 /// public string Note { get; set; } /// /// 步骤行为相关参数 /// public WorkFlowInstalledSub.StepSet.Behavior Behavior { get; set; } /// /// 流程表单 /// public IEnumerable Forms { get; set; } /// /// 流程按钮 /// public IEnumerable Buttons { get; set; } /// /// 字段状态 /// public IEnumerable FieldStatus { get; set; } /// /// 流程事件 /// public WorkFlowInstalledSub.StepSet.Event Event { get; set; } /// /// 设计时x坐标(用于排序) /// public decimal Position_x { get; set; } /// /// 设计时y坐标(用于排序) /// public decimal Position_y { get; set; } /// /// 子流程ID /// public string SubFlowID { get; set; } } /// /// 流程连线实体 /// public class Line { /// /// 连线ID /// public Guid ID { get; set; } /// /// 连线源步骤ID /// public Guid FromID { get; set; } /// /// 连线目标ID /// public Guid ToID { get; set; } /// /// 连线流转条件判断方法 /// public string CustomMethod { get; set; } /// /// 连线提交条件sql条件 /// public string SqlWhere { get; set; } /// /// 条件不满足时的提示信息 /// public string NoAccordMsg { get; set; } /// /// 发送者属于 /// public string Organize_SenderIn { get; set; } /// /// 发送者不属于 /// public string Organize_SenderNotIn { get; set; } /// /// 发起者属于 /// public string Organize_SponsorIn { get; set; } /// /// 发起者不属于 /// public string Organize_SponsorNotIn { get; set; } /// /// 发送者是部门领导 /// public string Organize_SenderLeader { get; set; } /// /// 发送者是部门分管领导 /// public string Organize_SenderChargeLeader { get; set; } /// /// 发起者是部门领导 /// public string Organize_SponsorLeader { get; set; } /// /// 发起者是部门分管领导 /// public string Organize_SponsorChargeLeader { get; set; } /// /// 发送者不是部门领导 /// public string Organize_NotSenderLeader { get; set; } /// /// 发送者不是部门分管领导 /// public string Organize_NotSenderChargeLeader { get; set; } /// /// 发起者不是部门领导 /// public string Organize_NotSponsorLeader { get; set; } /// /// 发起者不是部门分管领导 /// public string Organize_NotSponsorChargeLeader { get; set; } } } namespace RoadFlow.Data.Model.WorkFlowInstalledSub.StepSet { /// /// 步骤行为实体 /// [Serializable] public class Behavior { /// /// 流转类型 0系统控制 1单选一个分支流转 2多选几个分支流转 /// public int FlowType { get; set; } /// /// 运行时选择 0不允许 1允许 /// public int RunSelect { get; set; } /// /// 处理者类型 0所有成员 1部门 2岗位 3工作组 4人员 5发起者 6前一步骤处理者 7某一步骤处理者 8字段值 9发起者主管 10发起者分管领导 11当前处理者主管 12当前处理者分管领导 /// public int HandlerType { get; set; } /// /// 选择范围 /// public string SelectRange { get; set; } /// /// 当处理者类型为 7某一步骤处理者 时的处理者步骤 /// public Guid HandlerStepID { get; set; } /// /// 当处理者类型为 8字段值 时的字段 /// public string ValueField { get; set; } /// /// 默认处理者 /// public string DefaultHandler { get; set; } /// /// 退回策略 0不能退回 1单个退回 2全部退回 /// public int BackModel { get; set; } /// /// 处理策略 0所有人必须处理 1一人同意即可 2依据人数比例 3独立处理 /// public int HanlderModel { get; set; } /// /// 退回类型 0退回前一步 1退回第一步 2退回某一步 /// public int BackType { get; set; } /// /// 策略百分比 /// public decimal Percentage { get; set; } /// /// 退回步骤ID 当退回类型为 2退回某一步 时 /// public Guid BackStepID { get; set; } /// /// 会签策略 0 不会签 1 所有步骤同意 2 一个步骤同意即可 3 依据比例 /// public int Countersignature { get; set; } /// /// 会签策略是依据比例时设置的百分比 /// public decimal CountersignaturePercentage { get; set; } /// /// 子流程处理策略 0 子流程完成后才能提交 1 子流程发起即可提交 /// public int SubFlowStrategy { get; set; } /// /// 抄送人员 /// public string CopyFor { get; set; } } /// /// 表单实体 /// [Serializable] public class Form { /// /// 表单ID /// public Guid ID { get; set; } /// /// 表单名称 /// public string Name { get; set; } /// /// 排序 /// public int Sort { get; set; } } /// /// 流程按钮 /// [Serializable] public class Button { /// /// 按钮ID(为guid则是按钮库中的按钮,否则为其它特定功能按钮) /// public string ID { get; set; } /// /// 按钮说明 /// public string Note { get; set; } /// /// 排序 /// public int Sort { get; set; } } /// /// 字段状态 /// [Serializable] public class FieldStatus { /// /// 字段 /// public string Field { get; set; } /// /// 状态 0编辑 1只读 2隐藏 /// public int Status1 { get; set; } /// /// 数据检查 0不检查 1允许为空,非空时检查 2不允许为空,并检查 /// public int Check { get; set; } } /// /// 相关事件 /// [Serializable] public class Event { /// /// 步骤提交前事件 /// public string SubmitBefore { get; set; } /// /// 步骤提交后事件 /// public string SubmitAfter { get; set; } /// /// 步骤退回前事件 /// public string BackBefore { get; set; } /// /// 步骤退回后事件 /// public string BackAfter { get; set; } /// /// 子流程激活前事件 /// public string SubFlowActivationBefore { get; set; } /// /// 子流程完成后事件 /// public string SubFlowCompletedBefore { get; set; } } }