using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace BP.WF { /// /// 抄送状态 /// public enum CCSta { /// /// 未读 /// UnRead, /// /// 已读 /// Read, /// /// 已回复 /// CheckOver, /// /// 已删除 /// Del } /// /// 所有子流程结束,父流程处理规则 /// public enum AllSubFlowOverRole { /// /// 无 /// None, /// /// 发送父流程到下一个节点 /// SendParentFlowToNextStep, /// /// 结束父流程 /// OverParentFlow } /// /// 根据子流程运行模式控制父流程的运行到下一个节点/结束 /// public enum SubFlowRunModel { /// /// 无,不设置 /// None, /// /// 子流程结束 /// FlowOver, /// /// 子流程运行到指定节点 /// SpecifiedNodes } /// /// 子流程数据反填父流程数据规则 /// public enum BackCopyRole { /// /// 不反填 /// None, /// /// 字段自动匹配 /// AutoFieldMatch, /// /// 按照设置的格式匹配 /// FollowSetFormat, /// /// 混合模式 /// MixedMode } /// /// 会签模式 /// public enum HuiQianRole { None, /// /// 队列(按照顺序处理,有最后一个人发送到下一个节点) /// Teamup = 1, /// /// 协作组长模式 /// TeamupGroupLeader = 4 } /// /// 组长会签规则 /// public enum HuiQianLeaderRole { /// /// 仅有一个组长 /// OnlyOne = 0, /// /// 最后一个组长为主 /// LastOneMain = 1, /// /// 任意组长为主 /// EveryOneMain = 2 } /// /// 方向条件控制规则 /// public enum DirCondModel { /// /// 由连接线控制 /// ByLineCond = 0, /// /// 发送后手工选择到达节点与接受人(用于子线程节点) /// ByPopSelect = 1, /// /// 下拉框模式 /// ByDDLSelected = 2, /// /// 按照按钮选择 /// ByButtonSelected = 3 } /// /// 抢办发送后执行规则 /// public enum QiangBanSendAfterRole { /// /// 不处理 /// None = 0, /// /// 抄送给其他人 /// CCToEtcEmps = 1, /// /// 发送消息给其他人 /// SendMsgToEtcEmps = 2 } /// /// 待办工作超时处理方式 /// public enum OutTimeDeal { /// /// 不处理 /// None = 0, /// /// 自动的转向下一步骤 /// AutoTurntoNextStep = 1, /// /// 自动跳转到指定的点 /// AutoJumpToSpecNode = 2, /// /// 自动移交到指定的人员 /// AutoShiftToSpecUser = 3, /// /// 向指定的人员发送消息 /// SendMsgToSpecUser = 4, /// /// 删除流程 /// DeleteFlow = 5, /// /// 执行SQL /// RunSQL = 6 } public enum SelectorModel { /// /// 角色 /// Station, /// /// 部门 /// Dept, /// /// 操作员 /// Emp, /// /// SQL /// SQL, /// /// SQL模版计算 /// SQLTemplate, /// /// 通用的人员选择器. /// GenerUserSelecter, /// /// 按部门与角色的交集 /// DeptAndStation, /// /// 自定义链接 /// Url, /// /// 通用部门角色人员选择器 /// AccepterOfDeptStationEmp, /// /// 按角色智能计算(操作员所在部门) /// AccepterOfDeptStationOfCurrentOper, /// /// 按本组织用户计算. /// TeamOrgOnly = 10, /// /// 按全组织用户计算 /// TeamOnly = 11, /// /// 按本组织部门用户计算 /// TeamDeptOnly = 12, /// /// 按照角色智能计算 /// ByStationAI = 13, /// /// 按照webapi接口计算 /// ByWebAPI=14, /// /// 按照webapi接口计算 /// ByMyDeptEmps = 15 } /// /// 运行平台 /// public enum Platform { /// /// CCFlow .net平台. /// CCFlow, /// /// JFlow java 平台. /// JFlow } /// /// 短消息写入规则(当系统产生短消息的时候,需要写入的方式。) /// public enum ShortMessageWriteTo { /// /// 写入Sys_SMS表 /// ToSMSTable = 0, /// /// 写入WebServices. /// WS地址: \DataUser\PortalInterface.asmx 的 WriteShortMessage /// ToWebservices = 1, /// /// 写入丁丁 /// ToDingDing = 2, /// /// 写入微信. /// ToWeiXin = 3, /// /// 写入CCIM /// CCIM = 4 } /// /// 加签模式 /// public enum AskforHelpSta { /// /// 加签后直接发送 /// AfterDealSend = 5, /// /// 加签后由我直接发送 /// AfterDealSendByWorker = 6 } /// /// 删除流程规则 /// @0=不能删除 /// @1=逻辑删除 /// @2=记录日志方式删除: 数据删除后,记录到WF_DeleteWorkFlow中。 /// @3=彻底删除: /// @4=让用户决定删除方式 /// public enum DelWorkFlowRole { /// /// 不能删除 /// None, /// /// 按照标记删除(需要交互,填写删除原因) /// DeleteByFlag, /// /// 删除到日志库(需要交互,填写删除原因) /// DeleteAndWriteToLog, /// /// 彻底的删除(不需要交互,直接干净彻底的删除) /// DeleteReal, /// /// 让用户决定删除方式(需要交互) /// ByUser } /// /// 导入流程的模式 /// public enum ImpFlowTempleteModel { /// /// 按新的流程导入 /// AsNewFlow, /// /// 按模版的流程编号 /// AsTempleteFlowNo, /// /// 覆盖当前的流程 /// OvrewaiteCurrFlowNo, /// /// 按指定的流程编号导入 /// AsSpecFlowNo } /// /// 日志类型 /// public enum ActionType { /// /// 发起 /// Start = 0, /// /// 前进(发送) /// Forward = 1, /// /// 退回 /// Return = 2, /// /// 退回并原路返回. /// ReturnAndBackWay = 201, /// /// 移交 /// Shift = 3, /// /// 撤消移交 /// UnShift = 4, /// /// 撤消发送 /// UnSend = 5, /// /// 分流前进 /// ForwardFL = 6, /// /// 合流前进 /// ForwardHL = 7, /// /// 流程正常结束 /// FlowOver = 8, /// /// 调用起子流程 /// CallChildenFlow = 9, /// /// 启动子流程 /// StartChildenFlow = 10, /// /// 子线程前进 /// SubThreadForward = 11, /// /// 取回 /// Tackback = 12, /// /// 恢复已完成的流程 /// RebackOverFlow = 13, /// /// 强制终止流程 For lijian:2012-10-24. /// FlowOverByCoercion = 14, /// /// 挂起 /// Hungup = 15, /// /// 取消挂起 /// UnHungup = 16, /// /// 强制移交 /// ShiftByCoercion = 17, /// /// 催办 /// Press = 18, /// /// 逻辑删除流程(撤销流程) /// DeleteFlowByFlag = 19, /// /// 恢复删除流程(撤销流程) /// UnDeleteFlowByFlag = 20, /// /// 抄送 /// CC = 21, /// /// 工作审核(日志) /// WorkCheck = 22, /// /// 删除子线程 /// DeleteSubThread = 23, /// /// 请求加签 /// AskforHelp = 24, /// /// 加签向下发送 /// ForwardAskfor = 25, /// /// 自动条转的方式向下发送 /// Skip = 26, /// /// 队列发送 /// Order = 27, /// /// 协作发送 /// TeampUp = 28, /// /// 流程评论 /// FlowBBS = 29, /// /// 执行会签 /// HuiQian = 30, /// /// 调整流程 /// Adjust = 31, /// /// 信息 /// Info = 100 } /// /// 挂起方式 /// public enum HungupWay { /// /// 永久挂起 /// Forever, /// /// 在指定的日期解除 /// SpecDataRel } /// /// 自动跳转规则 /// public enum AutoJumpRole { /// /// 处理人就是提交人 /// DealerIsDealer, /// /// 处理人已经出现过 /// DealerIsInWorkerList, /// /// 处理人与上一步相同 /// DealerAsNextStepWorker } /// /// 抄送到角色计算方式 /// public enum CCStaWay { /// /// 仅按角色计算 /// StationOnly, /// /// 按角色智能计算(当前节点的人员角色) /// StationSmartCurrNodeWorker, /// /// 按角色智能计算(接受节点的人员角色) /// StationSmartNextNodeWorker, /// /// 按角色与部门的交集 /// StationAndDept, /// /// 按直线部门找角色下的人员(当前节点) /// StationDeptUpLevelCurrNodeWorker, /// /// 按直线部门找角色下的人员 /// StationDeptUpLevelNextNodeWorker } /// /// 抄送数据写入规则 /// public enum CCWriteTo { /// /// 抄送列表 /// CCList, /// /// 待办列表 /// Todolist, /// /// 抄送与待办列表 /// All, } /// /// 组长确认规则 /// public enum TeamLeaderConfirmRole { /// /// 按照部门表的字段 Leader 模式计算. /// ByDeptFieldLeader, /// /// 按照SQL计算. /// BySQL, /// /// 会签时主持人计算 /// HuiQianLeader } /// /// 普通工作节点处理模式 /// public enum TodolistModel { /// /// 抢办(谁抢到谁来办理,办理完后其他人就不能办理.) /// QiangBan = 0, /// /// 协作(没有处理顺序,接受的人都要去处理,由最后一个人发送到下一个节点) /// Teamup = 1, /// /// 队列(按照顺序处理,有最后一个人发送到下一个节点) /// Order = 2, /// /// 共享模式(需要申请,申请后才能执行) /// Sharing = 3, /// /// 协作组长模式 /// TeamupGroupLeader = 4 } /// /// 阻塞模式 /// public enum BlockModel { /// /// 不阻塞 /// None = 0, /// /// 当前节点的有未完成的子线程 /// CurrNodeAll = 1, /// /// 按照约定的格式阻塞. /// SpecSubFlow = 2, /// /// 按照配置的sql阻塞,返回大于等于1表示阻塞,否则不阻塞. /// BySQL = 3, /// /// 按照表达式阻塞,表达式类似方向条件的表达式. /// ByExp = 4, /// /// 为父流程时,指定的子流程未运行到指定节点,则阻塞 /// SpecSubFlowNode = 5, /// /// 为平级子流程时,指定的子流程未运行到指定节点,则阻塞 /// SameLevelSubFlow = 6 } /// /// 节点工作批处理 /// public enum BatchRole { /// /// 不可以 /// None, /// /// 批量审批 /// WorkCheckModel, /// /// 分组批量审核 /// Group } /// /// 子线程删除规则 /// public enum ThreadKillRole { /// /// 不能删除,不许等到全部完成才可以向下运动。 /// None, /// /// 需要手工的删除才可以向下运动。 /// ByHand, /// /// 自动删除未完成的子线程。 /// ByAuto } /// /// 撤销规则 /// public enum CancelRole { /// /// 仅上一步 /// OnlyNextStep, /// /// 不能撤销 /// None, /// /// 上一步与开始节点. /// NextStepAndStartNode, /// /// 可以撤销指定的节点 /// SpecNodes } /// /// 抄送方式 /// public enum CCWay { /// /// 按照信息发送 /// ByMsg, /// /// 按照e-mail /// ByEmail, /// /// 按照电话 /// ByPhone, /// /// 按照数据库功能 /// ByDBFunc } /// /// 抄送类型 /// public enum CCType { /// /// 不抄送 /// None, /// /// 按人员 /// AsEmps, /// /// 按角色 /// AsStation, /// /// 按节点 /// AsNode, /// /// 按部门 /// AsDept, /// /// 按照部门与角色 /// AsDeptAndStation } /// /// 流程类型 /// public enum FlowType_del { /// /// 平面流程 /// Panel, /// /// 分合流 /// FHL } /// /// 流程发起限制 /// public enum StartLimitRole { /// /// 不限制 /// None = 0, /// /// 一人一天一次 /// Day = 1, /// /// 一人一周一次 /// Week = 2, /// /// 一人一月一次 /// Month = 3, /// /// 一人一季度一次 /// JD = 4, /// /// 一人一年一次 /// Year = 5, /// /// 发起的列不能重复,(多个列可以用逗号分开) /// ColNotExit = 6, /// /// 设置的SQL数据源为空,或者返回结果为零时可以启动. /// ResultIsZero = 7, /// /// 设置的SQL数据源为空,或者返回结果为零时不可以启动. /// ResultIsNotZero = 8, /// /// 为子流程时仅仅只能被调用1次. /// OnlyOneSubFlow = 9 } /// /// 装在前提示 /// public enum StartLimitWhen { /// /// 表单装载后 /// StartFlow, /// /// 发送前检查 /// SendWhen } /// /// 流程启动类型 /// public enum FlowRunWay { /// /// 手工启动 /// HandWork=0, /// /// 指定人员按时启动 /// SpecEmp=1, /// /// 数据集按时启动 /// SelectSQLModel=2, /// /// 触发式启动 /// WF_TaskTableInsertModel=3, /// /// 指定人员按时启动高级模式 /// SpecEmpAdv=4, /// /// 让管理员启动流程发送到指定 /// LetAdminSendSpecEmp=5 } /// /// 保存模式 /// public enum SaveModel { /// /// 仅节点表. /// NDOnly, /// /// 节点表与Rpt表. /// NDAndRpt } /// /// 节点完成转向处理 /// public enum TurnToDeal { /// /// 按系统默认的提示 /// CCFlowMsg, /// /// 指定消息 /// SpecMsg, /// /// 指定Url /// SpecUrl, /// /// 发送后关闭 /// TurntoClose, /// /// 按条件转向 /// TurnToByCond } /// /// 投递方式 /// public enum DeliveryWay { /// /// 按角色(以部门为纬度) /// ByStation = 0, /// /// 本部门内的人员 /// FindSpecDeptEmpsInStationlist = 19, /// /// 按部门 /// ByDept = 1, /// /// 按SQL /// BySQL = 2, /// /// 按本节点绑定的人员 /// ByBindEmp = 3, /// /// 由上一步发送人选择 /// BySelected = 4, /// /// 所有人员都可以发起 /// BySelected_1 = 41, /// /// 固定范围的选择 /// BySelected_2 = 60, /// /// 按表单选择人员 /// ByPreviousNodeFormEmpsField = 5, /// /// 与上一节点的人员相同 /// ByPreviousNodeEmp = 6, /// /// 与开始节点的人员相同 /// ByStarter = 7, /// /// 与指定节点的人员相同 /// BySpecNodeEmp = 8, /// /// 按角色与部门交集计算 /// ByDeptAndStation = 9, /// /// 按角色计算(以部门集合为纬度) /// //ByStationAndEmpDept = 10, /// /// 按指定节点的人员或者指定字段作为人员的角色计算 /// BySpecNodeEmpStation = 11, /// /// 按SQL确定子线程接受人与数据源. /// BySQLAsSubThreadEmpsAndData = 12, /// /// 按明细表确定子线程接受人. /// ByDtlAsSubThreadEmps = 13, /// /// 仅按角色计算 /// ByStationOnly = 14, /// /// FEE计算. /// ByFEE = 15, /// /// 按绑定部门计算,该部门一人处理标识该工作结束(子线程). /// BySetDeptAsSubthread = 16, /// /// 按SQL模版计算 /// BySQLTemplate = 17, /// /// 从人员到人员 /// ByFromEmpToEmp = 18, /// /// 按照角色计算-范围内的 /// ByStationForPrj = 20, /// /// 按照选择模式计算. /// BySelectedForPrj = 21, /// /// 按照设置的组织计算 /// BySelectedOrgs = 22, /// /// 按照部门领导计算 /// ByDeptLeader = 23, /// /// 按照部门分管领导计算 /// ByDeptShipLeader = 28, /// /// 找自己的直属领导. /// ByEmpLeader = 50, /// /// 按照用户组计算(本组织范围内) /// ByTeamOrgOnly = 24, /// /// 按照用户组计算(全集团) /// ByTeamOnly = 25, /// /// 按照用户组计算(本部门范围内) /// ByTeamDeptOnly = 26, /// /// 按照绑定角色的用户组人员 /// ByBindTeamEmp = 27, /// /// 按照组织模式人员选择器 /// BySelectedEmpsOrgModel = 43, /// /// 按照自定义Url模式的人员选择器 /// BySelfUrl = 44, /// /// 按照设置的WebAPI接口获取的数据计算 /// ByAPIUrl = 45, /// /// 发送人的上级部门的负责人 /// 就是找上级领导主管. /// BySenderParentDeptLeader = 46, /// /// 发送人上级部门指定的角色 /// BySenderParentDeptStations = 47, /// /// 外部用户 /// ByGuest = 51, /// /// 按照部门计算 /// ByPreviousNodeFormDepts = 52, /// /// 按照角色计算 /// ByPreviousNodeFormStationsAI = 53, /// /// 智能计算 /// ByPreviousNodeFormStationsOnly = 54, /// /// 选择其他组织的联络员 /// BySelectEmpByOfficer = 55, /// /// 按照ccflow的BPM模式处理 /// ByCCFlowBPM = 100 } /// /// 自动发起 /// public enum AutoStart { /// /// 手工启动(默认) /// None = 0, /// /// 按照指定的人员 /// ByDesignee = 1, /// /// 数据集按时启动 /// ByTineData = 2, /// /// 触发试启动 /// ByTrigger = 3 } /// /// 节点工作退回规则 /// public enum JumpWay { /// /// 不能跳转 /// CanNotJump, /// /// 向后跳转 /// Next, /// /// 向前跳转 /// Previous, /// /// 任何节点 /// AnyNode, /// /// 任意点 /// JumpSpecifiedNodes } /// /// 节点工作退回规则 /// public enum ReturnRole { /// /// 不能退回 /// CanNotReturn, /// /// 只能退回上一个节点 /// ReturnPreviousNode, /// /// 可退回以前任意节点(默认) /// ReturnAnyNodes, /// /// 可退回指定的节点 /// ReturnSpecifiedNodes, /// /// 由流程图设计的退回路线来决定 /// ByReturnLine } /// /// 附件开放类型 /// public enum FJOpen { /// /// 不开放 /// None, /// /// 对操作员开放 /// ForEmp, /// /// 对工作ID开放 /// ForWorkID, /// /// 对流程ID开放 /// ForFID } /// /// 分流规则 /// public enum FLRole { /// /// 按照接受人 /// ByEmp, /// /// 按照部门 /// ByDept, /// /// 按照角色 /// ByStation } /// /// 运行模式 /// public enum RunModel { /// /// 普通 /// Ordinary = 0, /// /// 合流 /// HL = 1, /// /// 分流 /// FL = 2, /// /// 分合流 /// FHL = 3, /// /// 同表单子线程 /// SubThreadSameWorkID = 4, /// /// 异表单子线程 /// SubThreadUnSameWorkID = 5 } /// /// 流程状态(详) /// ccflow根据是否启用草稿分两种工作模式,它的设置是在web.config 是 IsEnableDraft 节点来配置的. /// 1, 不启用草稿 IsEnableDraft = 0. /// 这种模式下,就没有草稿状态, 一个用户进入工作界面后就生成一个Blank, 用户保存时,也是存储blank状态。 /// 2, 启用草稿. /// public enum WFState { /// /// 空白 /// Blank = 0, /// /// 草稿 /// Draft = 1, /// /// 运行中 /// Runing = 2, /// /// 已完成 /// Complete = 3, /// /// 挂起 /// Hungup = 4, /// /// 退回 /// ReturnSta = 5, /// /// 转发(移交) /// Shift = 6, /// /// 删除(逻辑删除状态) /// Delete = 7, /// /// 加签 /// Askfor = 8, /// /// 冻结 /// Fix = 9, /// /// 加签回复状态 /// AskForReplay = 10 } /// /// 节点工作类型 /// public enum NodeWorkType { Work = 0, /// /// 开始节点 /// StartWork = 1, /// /// 开始节点分流 /// StartWorkFL = 2, /// /// 合流节点 /// WorkHL = 3, /// /// 分流节点 /// WorkFL = 4, /// /// 分合流 /// WorkFHL = 5, /// /// 子流程 /// SubThreadWork = 6 } /// /// 抄送规则 /// public enum CCRoleEnum { /// /// 不能抄送 /// UnCC, /// /// 手工抄送 /// HandCC, /// /// 自动抄送 /// AutoCC, /// /// 手工与自动并存 /// HandAndAuto, /// /// 按字段 /// BySysCCEmps, /// /// 在发送前打开 /// WhenSend } /// /// 谁执行它 /// public enum WhoDoIt { /// /// 操作员 /// Operator, /// /// 机器 /// MachtionOnly, /// /// 混合 /// Mux } /// /// 位置类型 /// public enum NodePosType { /// /// 开始 /// Start, /// /// 中间 /// Mid, /// /// 结束 /// End } /// /// 节点表单类型 /// public enum NodeFormType { /// /// 傻瓜表单. /// FoolForm = 0, /// /// 嵌入式表单. /// SelfForm = 2, /// /// SDKForm /// SDKForm = 3, /// /// 表单树 /// SheetTree = 5, /// /// 动态表单树 /// SheetAutoTree = 6, /// /// 公文表单 /// WebOffice = 7, /// /// Excel表单 /// ExcelForm = 8, /// /// Word表单 /// WordForm = 9, /// /// 累加表单 /// FoolTruck = 10, /// /// 节点单表单 /// RefOneFrmTree = 11, /// /// 开发者表单 /// Develop = 12, /// /// 开发者表单 /// ChapterFrm = 13, /// /// 引用指定节点上的表单 /// RefNodeFrm = 14, /// /// 禁用(对多表单流程有效) /// DisableIt = 100, } /// /// 工作类型 /// public enum WorkType { /// /// 普通的 /// Ordinary, /// /// 自动的 /// Auto } /// /// 已读回执类型 /// public enum ReadReceipts { /// /// 不回执 /// None, /// /// 自动回执 /// Auto, /// /// 由系统字段决定 /// BySysField, /// /// 按开发者参数 /// BySDKPara } /// /// 打印方式 /// @0=不打印@1=打印网页@2=打印RTF模板 /// public enum PrintDocEnable { /// /// 不打印 /// None, /// /// 打印网页 /// PrintHtml, /// /// 打印RTF模板 /// PrintRTF, /// /// 打印word /// PrintWord } /// /// 考核规则 /// public enum CHWay { /// /// 不考核 /// None, /// /// 按照时效考核 /// ByTime, /// /// 按照工作量考核 /// ByWorkNum, /// /// 是否是考核质量点 /// IsQuality } public enum GuestFlowRole { /// /// 不参与 /// None, /// /// 开始节点参与 /// StartNodeJoin, /// /// 中间节点参与 /// MiddleNodeJoin } /// /// 工作提醒规则 /// public enum CHAlertRole { /// /// 不提醒 /// None, /// /// 一天一次 /// OneDayOneTime, /// /// 一天两次 /// OneDayTowTime } /// /// 工作提醒方式 /// public enum CHAlertWay { /// /// 邮件 /// ByEmail, /// /// 短消息 /// BySMS, /// /// 即时通讯 /// ByCCIM } /// /// 运行平台 /// public enum Plant { CCFlow, JFlow } /// /// 周末休息类型 /// public enum WeekResetType { /// /// 双休 /// Double, /// /// 单休 /// Single, /// /// 不 /// None } /// /// 用户信息显示格式 /// public enum UserInfoShowModel { /// /// 用户ID,用户名 /// UserIDUserName = 0, /// /// 用户ID /// UserIDOnly = 1, /// /// 用户名 /// UserNameOnly = 2 } }