Exemplo n.º 1
0
        /// <summary>
        /// 更新流程节点信息
        /// </summary>
        /// <param name="entity"></param>
        public void UpdateNode(WFProcessNodesEntity entity)
        {
            try 
	        {
                entity.Modify(entity.F_Id);
                this.BaseRepository().Update(entity);
	        }
	        catch (Exception)
	        {
		
		        throw;
	        }
        }
Exemplo n.º 2
0
        /// <summary>
        /// 保存节点审核数据
        /// </summary>
        /// <param name="wfVerificationProcessModel"></param>
        public void SaveProcessVerification(WFVerificationProcessModel wfVerificationProcessModel)
        {
           
            IRepository db = this.BaseRepository().BeginTrans();
            try
            {
                if (wfVerificationProcessModel.wfProcessInstanceEntity != null)
                {
                    db.Update(wfVerificationProcessModel.wfProcessInstanceEntity);
                }

                if (wfVerificationProcessModel.processNodeList != null)
                {
                    foreach (var item in wfVerificationProcessModel.processNodeList)
                    {
                        if (!string.IsNullOrEmpty(item.F_Id))
                        {
                            item.Modify(item.F_Id);
                            db.Update(item);
                        }
                        else
                        {
                            item.Create();
                            var expression = LinqExtensions.True<WFProcessNodesEntity>();
                            expression = expression.And(t => t.F_ProcessId == item.F_ProcessId);
                            expression = expression.And(t => t.F_NodeId == item.F_NodeId);
                            WFProcessNodesEntity ee = this.BaseRepository().FindEntity<WFProcessNodesEntity>(expression);
                            if (ee != null)
                            {
                                db.Delete(ee);
                            }
                            db.Insert(item);
                        }
                        
                    }
                }
                if (wfVerificationProcessModel.processTransitionHistoryList != null)
                {
                    foreach (var item in wfVerificationProcessModel.processTransitionHistoryList)
                    {
                        item.Create();
                        db.Insert(item);
                    }
                }
                if (wfVerificationProcessModel.delegateRecordEntitylist != null)
                {
                    foreach (var item in wfVerificationProcessModel.delegateRecordEntitylist)
                    {
                        item.Create();
                        db.Insert(item);
                    }
                }
                //if (wfVerificationProcessModel.processFormInstanceEntityList != null)
                //{
                //    foreach (var item in wfVerificationProcessModel.processFormInstanceEntityList)
                //    {
                //        if (string.IsNullOrEmpty(item.F_Id))
                //        {
                //            item.Create();
                //            db.Insert(item);
                //        }
                //        else
                //        {
                //            item.Modify(item.F_Id);
                //            db.Update(item);
                //        }
                //    }
                //}
                wfVerificationProcessModel.processOperationHistoryEntity.Create();
                db.Insert(wfVerificationProcessModel.processOperationHistoryEntity);

                wfVerificationProcessModel.node.Modify(wfVerificationProcessModel.node.F_Id);
                db.Update(wfVerificationProcessModel.node);

                db.Commit();
            }
            catch (Exception)
            {
                db.Rollback();
                throw;
            }
        }