コード例 #1
0
        internal TransitionInstanceEntity CreateTransitionInstanceObject(ProcessInstanceEntity processInstance,
                                                                         TransitionEntity transition,
                                                                         ActivityInstanceEntity fromActivityInstance,
                                                                         ActivityInstanceEntity toActivityInstance,
                                                                         TransitionTypeEnum transitionType,
                                                                         WfLogonUser logonUser,
                                                                         byte conditionParseResult)
        {
            var entity = new TransitionInstanceEntity();

            entity.AppName                  = processInstance.AppName;
            entity.AppInstanceID            = processInstance.AppInstanceID;
            entity.TransitionInstanceGUID   = Guid.NewGuid();
            entity.ProcessGUID              = processInstance.ProcessGUID;
            entity.ProcessInstanceGUID      = processInstance.ProcessInstanceGUID;
            entity.TransitionGUID           = transition.TransitionGUID;
            entity.TransitionType           = (byte)transitionType;
            entity.FromActivityGUID         = transition.FromActivityGUID;
            entity.FromActivityInstanceGUID = fromActivityInstance.ActivityInstanceGUID;
            entity.FromActivityType         = fromActivityInstance.ActivityType;
            entity.FromActivityName         = fromActivityInstance.ActivityName;
            entity.ToActivityGUID           = transition.ToActivityGUID;
            entity.ToActivityInstanceGUID   = toActivityInstance.ActivityInstanceGUID;
            entity.ToActivityType           = toActivityInstance.ActivityType;
            entity.ToActivityName           = toActivityInstance.ActivityName;
            entity.ConditionParseResult     = conditionParseResult;
            entity.CreatedByUserID          = logonUser.UserID;
            entity.CreatedByUserName        = logonUser.UserName;
            entity.CreatedDateTime          = System.DateTime.Now;

            return(entity);
        }
コード例 #2
0
        //private IEnumerable<TransitionInstanceEntity> GetTransitonInstance(string appName, string appInstanceID, Guid processGUID)
        //{
        //    var sql = "SELECT * FROM WfTransitionInstance WHERE AppName=@appName and AppInstanceID=@appInstanceID and ProcessGUID=@processGUID and State=@state";
        //    return ProcessInstanceRepository.Query<ProcessInstanceEntity>(sql,
        //        new
        //        {
        //            appName = appName,
        //            appInstanceID = appInstanceID,
        //            processGUID = processGUID,
        //            state = (short)state
        //        });
        //}

        internal void Insert(TransitionInstanceEntity entity,
                             ISession session = null)
        {
            int result = TransitionInstanceRepository.Insert(entity, session.Connection, session.Transaction);

            Debug.WriteLine(string.Format("transition instance inserted, time:{0}", System.DateTime.Now.ToString()));
        }