protected override void OnPrepareUserOperationLog(WfExecutorDataContext dataContext) { if (OperatorActivity != null) { UserOperationLog log = UserOperationLog.FromActivity(OperatorActivity); log.OperationType = DataObjects.OperationType.Update; log.OperationName = EnumItemDescriptionAttribute.GetDescription(this.OperationType); dataContext.OperationLogs.Add(log); } FirePrepareUserOperationLog(dataContext, dataContext.OperationLogs); foreach (UserOperationLog log in dataContext.OperationLogs) { if (log.RealUser != null && string.IsNullOrEmpty(log.OperationDescription)) { string originalUserName = UsersToString(this.OriginalAssignees); log.OperationDescription = string.Format("{0}:{1}->{2}>>'{3}' {4:yyyy-MM-dd HH:mm:ss}", log.OperationName, log.RealUser.DisplayName, originalUserName, this.TargetAssigneesToString(), SNTPClient.AdjustedTime); } } }
/// <summary> /// 写打开表单的日志 /// </summary> /// <param name="currentActivity"></param> /// <param name="logOpType"></param> private static void WriteOpenFormLog(IWfActivity currentActivity, MCS.Library.SOA.DataObjects.OperationType logOpType) { if (currentActivity != null) { UserOperationLog log = UserOperationLog.FromActivity(currentActivity); log.OperationType = logOpType; log.OperationName = EnumItemDescriptionAttribute.GetDescription(logOpType); UserOperationLogAdapter.Instance.Update(log); } }
protected virtual void OnPrepareUserOperationLog(WfExecutorDataContext dataContext) { UserOperationLogCollection logs = dataContext.OperationLogs; if (OperatorActivity != null) { UserOperationLog log = UserOperationLog.FromActivity(OperatorActivity); log.OperationType = DataObjects.OperationType.Update; log.OperationName = EnumItemDescriptionAttribute.GetDescription(this.OperationType); logs.Add(log); } FirePrepareUserOperationLog(dataContext, logs); foreach (UserOperationLog log in logs) { OnPrepareUserOperationLogDescription(dataContext, log); } List <string> accomplishedUserTaskIDs = new List <string>(); foreach (UserTask item in WfRuntime.ProcessContext.AccomplishedUserTasks) { accomplishedUserTaskIDs.Add(item.TaskID); } UserOperationTasksLogCollection userOperationlogs = new UserOperationTasksLogCollection(); foreach (UserTask userTaskItem in WfRuntime.ProcessContext.MoveToUserTasks) { if (accomplishedUserTaskIDs.Exists(taskID => string.Equals(taskID, userTaskItem.TaskID)) == false) { userOperationlogs.Add(UserOperationTasksLog.FromUserTask(userTaskItem)); } } if (userOperationlogs.Count > 0) { dataContext.Add("USER_OPERATION_TASKSLOGS", userOperationlogs); } else { dataContext.Remove("USER_OPERATION_TASKSLOGS"); } }