Exemple #1
0
        /// <summary>
        /// 创建流程定义记录
        /// </summary>
        /// <param name="entity">流程定义实体</param>
        /// <returns>新ID</returns>
        public int CreateProcess(ProcessEntity entity)
        {
            var pm        = new ProcessManager();
            var processID = pm.CreateProcess(entity, XPDLStorageFactory.CreateXPDLStorage());

            return(processID);
        }
Exemple #2
0
        /// <summary>
        /// 流程定义的XML文件获取和保存
        /// </summary>
        /// <param name="processGUID">流程GUID</param>
        /// <param name="version">版本</param>
        /// <returns>流程文件</returns>
        public ProcessFileEntity GetProcessFile(string processGUID, string version)
        {
            var pm     = new ProcessManager();
            var entity = pm.GetProcessFile(processGUID, version, XPDLStorageFactory.CreateXPDLStorage());

            return(entity);
        }
Exemple #3
0
        /// <summary>
        /// 获取流程定义文件
        /// </summary>
        /// <param name="id">流程ID</param>
        /// <returns></returns>
        public ProcessFileEntity GetProcessFileByID(int id)
        {
            var pm     = new ProcessManager();
            var entity = pm.GetProcessFileByID(id, XPDLStorageFactory.CreateXPDLStorage());

            return(entity);
        }
Exemple #4
0
        /// <summary>
        /// 重置缓存中的流程定义信息
        /// </summary>
        /// <param name="processGUID">流程Guid编号</param>
        /// <param name="version">流程版本</param>
        public void ResetCache(string processGUID, string version = null)
        {
            //获取流程信息
            var process = GetProcessByVersion(processGUID, version);
            var pm      = new ProcessManager();
            var xmlDoc  = pm.GetProcessXmlDocument(process.ProcessGUID, process.Version,
                                                   XPDLStorageFactory.CreateXPDLStorage()); //xml文件读取方式,数据库或外部文件

            if (MemoryCachedHelper.GetXpdlCache(process.ProcessGUID, process.Version) == null)
            {
                MemoryCachedHelper.SetXpdlCache(process.ProcessGUID, process.Version, xmlDoc);
            }
            else
            {
                MemoryCachedHelper.TryUpdate(process.ProcessGUID, process.Version, xmlDoc);
            }
        }
Exemple #5
0
        /// <summary>
        /// 删除流程定义记录
        /// </summary>
        /// <param name="processGUID">流程GUID</param>
        /// <param name="version">版本</param>
        public void DeleteProcess(string processGUID, string version)
        {
            var pm = new ProcessManager();

            pm.DeleteProcess(processGUID, version, XPDLStorageFactory.CreateXPDLStorage());
        }
Exemple #6
0
        /// <summary>
        /// 保存流程定义的xml文件
        /// </summary>
        /// <param name="entity">流程文件实体</param>
        public void SaveProcessFile(ProcessFileEntity entity)
        {
            var pm = new ProcessManager();

            pm.SaveProcessFile(entity, XPDLStorageFactory.CreateXPDLStorage());
        }