public void MovePositionDown(int ticketStatusID) { ValidatePositions(TicketStatuses.GetTicketStatus(LoginUser, ticketStatusID).TicketTypeID); TicketStatuses types1 = new TicketStatuses(LoginUser); types1.LoadByTicketStatusID(ticketStatusID); if (types1.IsEmpty || types1[0].Position >= GetMaxPosition(types1[0].TicketTypeID)) { return; } TicketStatuses types2 = new TicketStatuses(LoginUser); types2.LoadByPosition(types1[0].TicketTypeID, types1[0].Position + 1); if (!types2.IsEmpty) { types2[0].Position = types2[0].Position - 1; types2.Save(); } types1[0].Position = types1[0].Position + 1; types1.Save(); ValidatePositions(types1[0].TicketTypeID); }
public static TicketStatus GetTicketStatus(LoginUser loginUser, int ticketStatusID) { TicketStatuses ticketStatuses = new TicketStatuses(loginUser); ticketStatuses.LoadByTicketStatusID(ticketStatusID); if (ticketStatuses.IsEmpty) { return(null); } else { return(ticketStatuses[0]); } }
public void LoadNotNextStatuses(int currentStatusID) { TicketStatuses statuses = new TicketStatuses(LoginUser); statuses.LoadByTicketStatusID(currentStatusID); if (statuses.IsEmpty) { return; } TicketStatus status = statuses[0]; using (SqlCommand command = new SqlCommand()) { command.CommandText = "SELECT * FROM TicketStatuses ts WHERE (ts.TicketStatusID not in (SELECT tns.NextStatusID FROM TicketNextStatuses tns WHERE (tns.CurrentStatusID = @CurrentStatusID))) AND (ts.TicketTypeID = @TicketTypeID) AND (ts.TicketStatusID <> @CurrentStatusID)"; command.CommandType = CommandType.Text; command.Parameters.AddWithValue("CurrentStatusID", currentStatusID); command.Parameters.AddWithValue("TicketTypeID", status.TicketTypeID); Fill(command, "TicketStatuses,TicketNextStatuses"); } }