20140608000002_update_ticket_replace2.rb 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. class UpdateTicketReplace2 < ActiveRecord::Migration
  2. def up
  3. overview_role = Role.where( :name => 'Agent' ).first
  4. if overview_role
  5. Overview.destroy_all
  6. UserInfo.current_user_id = 1
  7. Overview.create_if_not_exists(
  8. :name => 'My assigned Tickets',
  9. :link => 'my_assigned',
  10. :prio => 1000,
  11. :role_id => overview_role.id,
  12. :condition => {
  13. 'tickets.state_id' => [ 1,2,3 ],
  14. 'tickets.owner_id' => 'current_user.id',
  15. },
  16. :order => {
  17. :by => 'created_at',
  18. :direction => 'ASC',
  19. },
  20. :view => {
  21. :d => [ 'title', 'customer', 'state', 'group', 'created_at' ],
  22. :s => [ 'number', 'title', 'customer', 'state', 'priority', 'group', 'created_at' ],
  23. :m => [ 'number', 'title', 'customer', 'state', 'priority', 'group', 'created_at' ],
  24. :view_mode_default => 's',
  25. },
  26. )
  27. Overview.create_if_not_exists(
  28. :name => 'Unassigned & Open Tickets',
  29. :link => 'all_unassigned',
  30. :prio => 1001,
  31. :role_id => overview_role.id,
  32. :condition => {
  33. 'tickets.state_id' => [1,2,3],
  34. 'tickets.owner_id' => 1,
  35. },
  36. :order => {
  37. :by => 'created_at',
  38. :direction => 'ASC',
  39. },
  40. :view => {
  41. :d => [ 'title', 'customer', 'state', 'group', 'created_at' ],
  42. :s => [ 'number', 'title', 'customer', 'state', 'priority', 'group', 'created_at' ],
  43. :m => [ 'number', 'title', 'customer', 'state', 'priority', 'group', 'created_at' ],
  44. :view_mode_default => 's',
  45. },
  46. )
  47. Overview.create_if_not_exists(
  48. :name => 'All Open Tickets',
  49. :link => 'all_open',
  50. :prio => 1002,
  51. :role_id => overview_role.id,
  52. :condition => {
  53. 'tickets.state_id' => [1,2,3],
  54. },
  55. :order => {
  56. :by => 'created_at',
  57. :direction => 'ASC',
  58. },
  59. :view => {
  60. :d => [ 'title', 'customer', 'state', 'group', 'created_at' ],
  61. :s => [ 'number', 'title', 'customer', 'state', 'priority', 'group', 'created_at' ],
  62. :m => [ 'number', 'title', 'customer', 'state', 'priority', 'group', 'created_at' ],
  63. :view_mode_default => 's',
  64. },
  65. )
  66. Overview.create_if_not_exists(
  67. :name => 'Escalated Tickets',
  68. :link => 'all_escalated',
  69. :prio => 1010,
  70. :role_id => overview_role.id,
  71. :condition => {
  72. 'tickets.escalation_time' =>{ 'direction' => 'before', 'count'=> 5, 'area' => 'minute' },
  73. },
  74. :order => {
  75. :by => 'escalation_time',
  76. :direction => 'ASC',
  77. },
  78. :view => {
  79. :d => [ 'title', 'customer', 'state', 'group', 'owner', 'escalation_time' ],
  80. :s => [ 'number', 'title', 'customer', 'state', 'priority', 'group', 'owner', 'escalation_time' ],
  81. :m => [ 'number', 'title', 'customer', 'state', 'priority', 'group', 'owner', 'escalation_time' ],
  82. :view_mode_default => 's',
  83. },
  84. )
  85. Overview.create_if_not_exists(
  86. :name => 'My pending reached Tickets',
  87. :link => 'my_pending_reached',
  88. :prio => 1020,
  89. :role_id => overview_role.id,
  90. :condition => {
  91. 'tickets.state_id' => [3],
  92. 'tickets.owner_id' => 'current_user.id',
  93. },
  94. :order => {
  95. :by => 'created_at',
  96. :direction => 'ASC',
  97. },
  98. :view => {
  99. :d => [ 'title', 'customer', 'state', 'group', 'created_at' ],
  100. :s => [ 'number', 'title', 'customer', 'state', 'priority', 'group', 'created_at' ],
  101. :m => [ 'number', 'title', 'customer', 'state', 'priority', 'group', 'created_at' ],
  102. :view_mode_default => 's',
  103. },
  104. )
  105. Overview.create_if_not_exists(
  106. :name => 'All Tickets',
  107. :link => 'all',
  108. :prio => 9003,
  109. :role_id => overview_role.id,
  110. :condition => {
  111. # 'tickets.state_id' => [3],
  112. # 'tickets.owner_id' => current_user.id,
  113. },
  114. :order => {
  115. :by => 'created_at',
  116. :direction => 'ASC',
  117. },
  118. :view => {
  119. :s => [ 'title', 'customer', 'state', 'group', 'created_at' ],
  120. :s => [ 'number', 'title', 'customer', 'state', 'priority', 'group', 'created_at' ],
  121. :m => [ 'number', 'title', 'customer', 'state', 'priority', 'group', 'created_at' ],
  122. :view_mode_default => 's',
  123. },
  124. )
  125. overview_role = Role.where( :name => 'Customer' ).first
  126. Overview.create_if_not_exists(
  127. :name => 'My Tickets',
  128. :link => 'my_tickets',
  129. :prio => 1000,
  130. :role_id => overview_role.id,
  131. :condition => {
  132. 'tickets.state_id' => [ 1,2,3,4,6 ],
  133. 'tickets.customer_id' => 'current_user.id',
  134. },
  135. :order => {
  136. :by => 'created_at',
  137. :direction => 'DESC',
  138. },
  139. :view => {
  140. :d => [ 'title', 'customer', 'state', 'created_at' ],
  141. :s => [ 'number', 'title', 'state', 'priority', 'created_at' ],
  142. :m => [ 'number', 'title', 'state', 'priority', 'created_at' ],
  143. :view_mode_default => 's',
  144. },
  145. )
  146. Overview.create_if_not_exists(
  147. :name => 'My Organization Tickets',
  148. :link => 'my_organization_tickets',
  149. :prio => 1100,
  150. :role_id => overview_role.id,
  151. :organization_shared => true,
  152. :condition => {
  153. 'tickets.state_id' => [ 1,2,3,4,6 ],
  154. 'tickets.organization_id' => 'current_user.organization_id',
  155. },
  156. :order => {
  157. :by => 'created_at',
  158. :direction => 'DESC',
  159. },
  160. :view => {
  161. :d => [ 'title', 'customer', 'state', 'created_at' ],
  162. :s => [ 'number', 'title', 'customer', 'state', 'priority', 'created_at' ],
  163. :m => [ 'number', 'title', 'state', 'priority', 'created_at' ],
  164. :view_mode_default => 's',
  165. },
  166. )
  167. end
  168. end
  169. def down
  170. end
  171. end