You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

76 line
3.0KB

  1. <%
  2. Class board_columns_Repository_Class
  3. Public Function FindByID(id)
  4. Dim sql : sql = "SELECT [id],[board_id],[name],[position],[created_at],[created_by],[updated_at],[updated_by] FROM [board_columns] WHERE [id] = ?"
  5. Dim rs : Set rs = DAL.Query(sql, Array(id))
  6. If rs.EOF Then
  7. Err.Raise 1, "board_columns_Repository_Class", "Column not found with id = " & id
  8. Else
  9. Set FindByID = Automapper.AutoMap(rs, "POBO_board_columns")
  10. End If
  11. Destroy rs
  12. End Function
  13. Public Function FindByBoardId(boardId)
  14. Dim sql : sql = "SELECT [id],[board_id],[name],[position],[created_at],[created_by],[updated_at],[updated_by] FROM [board_columns] WHERE [board_id] = ? ORDER BY [position] ASC"
  15. Dim rs : Set rs = DAL.Query(sql, Array(boardId))
  16. Dim list : Set list = New LinkedList_Class
  17. Do Until rs.EOF
  18. list.Push Automapper.AutoMap(rs, "POBO_board_columns")
  19. rs.MoveNext
  20. Loop
  21. Set FindByBoardId = list
  22. Destroy rs
  23. End Function
  24. Public Function MaxPosition(boardId)
  25. Dim sql : sql = "SELECT MAX([position]) FROM [board_columns] WHERE [board_id] = ?"
  26. Dim rs : Set rs = DAL.Query(sql, Array(boardId))
  27. If rs.EOF Or IsNull(rs(0)) Then
  28. MaxPosition = -1
  29. Else
  30. MaxPosition = CLng(rs(0))
  31. End If
  32. Destroy rs
  33. End Function
  34. Public Sub AddNew(ByRef model)
  35. Dim sql : sql = "INSERT INTO [board_columns] ([board_id],[name],[position],[created_at],[created_by],[updated_at],[updated_by]) VALUES (?,?,?,?,?,?,?)"
  36. DAL.Execute sql, Array(model.board_id, model.name, model.position, model.created_at, model.created_by, model.updated_at, model.updated_by)
  37. Dim rsId : Set rsId = DAL.Query("SELECT @@IDENTITY AS NewID", Empty)
  38. If Not rsId.EOF Then
  39. If Not IsNull(rsId(0)) Then model.id = rsId(0)
  40. End If
  41. Destroy rsId
  42. End Sub
  43. Public Sub Update(model)
  44. Dim sql : sql = "UPDATE [board_columns] SET [name]=?,[position]=?,[updated_at]=?,[updated_by]=? WHERE [id]=?"
  45. DAL.Execute sql, Array(model.name, model.position, model.updated_at, model.updated_by, model.id)
  46. End Sub
  47. Public Sub UpdatePosition(id, position, updatedAt, updatedBy)
  48. Dim sql : sql = "UPDATE [board_columns] SET [position]=?,[updated_at]=?,[updated_by]=? WHERE [id]=?"
  49. DAL.Execute sql, Array(position, updatedAt, updatedBy, id)
  50. End Sub
  51. Public Sub Delete(id)
  52. DAL.Execute "DELETE FROM [board_columns] WHERE [id]=?", Array(id)
  53. End Sub
  54. Public Sub DeleteByBoardId(boardId)
  55. DAL.Execute "DELETE FROM [board_columns] WHERE [board_id]=?", Array(boardId)
  56. End Sub
  57. End Class
  58. Dim board_columns_Repository__Singleton
  59. Function board_columns_Repository()
  60. If IsEmpty(board_columns_Repository__Singleton) Then
  61. Set board_columns_Repository__Singleton = New board_columns_Repository_Class
  62. End If
  63. Set board_columns_Repository = board_columns_Repository__Singleton
  64. End Function
  65. %>

Powered by TurnKey Linux.