Ejemplo n.º 1
0
        public static void UnlockAll(LoginUser loginUser)
        {
            TaskEmailPosts taskEmailPosts = new TaskEmailPosts(loginUser);

            using (SqlCommand command = new SqlCommand())
            {
                command.CommandText = "UPDATE TaskEmailPosts SET LockProcessID = NULL";
                command.CommandType = CommandType.Text;
                taskEmailPosts.ExecuteNonQuery(command);
            }
        }
Ejemplo n.º 2
0
        public static void UnlockThread(LoginUser loginUser, int thread)
        {
            TaskEmailPosts taskEmailPosts = new TaskEmailPosts(loginUser);

            using (SqlCommand command = new SqlCommand())
            {
                command.CommandText = "UPDATE TaskEmailPosts SET LockProcessID = NULL WHERE LockProcessID = @id";
                command.CommandType = CommandType.Text;
                command.Parameters.AddWithValue("id", thread);
                taskEmailPosts.ExecuteNonQuery(command);
            }
        }
        public static TaskEmailPost GetTaskEmailPost(LoginUser loginUser, int taskEmailPostID)
        {
            TaskEmailPosts taskEmailPosts = new TaskEmailPosts(loginUser);

            taskEmailPosts.LoadByTaskEmailPostID(taskEmailPostID);
            if (taskEmailPosts.IsEmpty)
            {
                return(null);
            }
            else
            {
                return(taskEmailPosts[0]);
            }
        }
Ejemplo n.º 4
0
        public static TaskEmailPost GetNextWaiting(LoginUser loginUser, string processID)
        {
            TaskEmailPosts emails = new TaskEmailPosts(loginUser);

            using (SqlCommand command = new SqlCommand())
            {
                command.CommandText = @"
                    UPDATE
                        TaskEmailPosts 
                    SET
                        LockProcessID = @ProcessID 
                    OUTPUT
                        Inserted.*
                    WHERE
                        TaskEmailPostID IN 
                        (
                            SELECT 
                                TOP 1
                                TaskEmailPostID 
                            FROM
                                TaskEmailPosts
                            WHERE
                                LockProcessID IS NULL 
                                AND DATEADD(SECOND, HoldTime, DateCreated) < GETUTCDATE() 
                            ORDER BY 
                                DateCreated
                        )
                ";

                command.CommandType = CommandType.Text;
                command.Parameters.AddWithValue("@ProcessID", processID);
                emails.Fill(command);
            }

            if (emails.IsEmpty)
            {
                return(null);
            }
            else
            {
                return(emails[0]);
            }
        }
 public TaskEmailPost(DataRow row, TaskEmailPosts taskEmailPosts) : base(row, taskEmailPosts)
 {
     _taskEmailPosts = taskEmailPosts;
 }