AdminTablesSeeder.php 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. <?php
  2. namespace Dcat\Admin\Models;
  3. use Illuminate\Database\Seeder;
  4. class AdminTablesSeeder extends Seeder
  5. {
  6. /**
  7. * Run the database seeds.
  8. *
  9. * @return void
  10. */
  11. public function run()
  12. {
  13. $createdAt = date('Y-m-d H:i:s');
  14. // create a user.
  15. Administrator::truncate();
  16. Administrator::create([
  17. 'username' => 'admin',
  18. 'password' => bcrypt('admin'),
  19. 'name' => 'Administrator',
  20. 'created_at' => $createdAt,
  21. ]);
  22. // create a role.
  23. Role::truncate();
  24. Role::create([
  25. 'name' => 'Administrator',
  26. 'slug' => Role::ADMINISTRATOR,
  27. 'created_at' => $createdAt,
  28. ]);
  29. // add role to user.
  30. Administrator::first()->roles()->save(Role::first());
  31. //create a permission
  32. Permission::truncate();
  33. Permission::insert([
  34. [
  35. 'id' => 1,
  36. 'name' => 'Auth management',
  37. 'slug' => 'auth.management',
  38. 'http_method' => '',
  39. 'http_path' => '',
  40. 'parent_id' => 0,
  41. 'created_at' => $createdAt,
  42. ],
  43. [
  44. 'id' => 2,
  45. 'name' => 'Users',
  46. 'slug' => 'users',
  47. 'http_method' => '',
  48. 'http_path' => "/auth/users*",
  49. 'parent_id' => 1,
  50. 'created_at' => $createdAt,
  51. ],
  52. [
  53. 'id' => 3,
  54. 'name' => 'Roles',
  55. 'slug' => 'roles',
  56. 'http_method' => '',
  57. 'http_path' => "/auth/roles*",
  58. 'parent_id' => 1,
  59. 'created_at' => $createdAt,
  60. ],
  61. [
  62. 'id' => 4,
  63. 'name' => 'Permissions',
  64. 'slug' => 'permissions',
  65. 'http_method' => '',
  66. 'http_path' => "/auth/permissions*",
  67. 'parent_id' => 1,
  68. 'created_at' => $createdAt,
  69. ],
  70. [
  71. 'id' => 5,
  72. 'name' => 'Menu',
  73. 'slug' => 'menu',
  74. 'http_method' => '',
  75. 'http_path' => "/auth/menu*",
  76. 'parent_id' => 1,
  77. 'created_at' => $createdAt,
  78. ],
  79. [
  80. 'id' => 6,
  81. 'name' => 'Operation log',
  82. 'slug' => 'operation-log',
  83. 'http_method' => '',
  84. 'http_path' => "/auth/logs*",
  85. 'parent_id' => 1,
  86. 'created_at' => $createdAt,
  87. ],
  88. ]);
  89. // Role::first()->permissions()->save(Permission::first());
  90. // add default menus.
  91. Menu::truncate();
  92. Menu::insert([
  93. [
  94. 'parent_id' => 0,
  95. 'order' => 1,
  96. 'title' => 'Index',
  97. 'icon' => 'fa-bar-chart',
  98. 'uri' => '/',
  99. 'created_at' => $createdAt,
  100. ],
  101. [
  102. 'parent_id' => 0,
  103. 'order' => 2,
  104. 'title' => 'Admin',
  105. 'icon' => 'fa-tasks',
  106. 'uri' => '',
  107. 'created_at' => $createdAt,
  108. ],
  109. [
  110. 'parent_id' => 2,
  111. 'order' => 3,
  112. 'title' => 'Users',
  113. 'icon' => 'fa-users',
  114. 'uri' => 'auth/users',
  115. 'created_at' => $createdAt,
  116. ],
  117. [
  118. 'parent_id' => 2,
  119. 'order' => 4,
  120. 'title' => 'Roles',
  121. 'icon' => 'fa-user',
  122. 'uri' => 'auth/roles',
  123. 'created_at' => $createdAt,
  124. ],
  125. [
  126. 'parent_id' => 2,
  127. 'order' => 5,
  128. 'title' => 'Permission',
  129. 'icon' => 'fa-ban',
  130. 'uri' => 'auth/permissions',
  131. 'created_at' => $createdAt,
  132. ],
  133. [
  134. 'parent_id' => 2,
  135. 'order' => 6,
  136. 'title' => 'Menu',
  137. 'icon' => 'fa-bars',
  138. 'uri' => 'auth/menu',
  139. 'created_at' => $createdAt,
  140. ],
  141. [
  142. 'parent_id' => 2,
  143. 'order' => 7,
  144. 'title' => 'Operation log',
  145. 'icon' => 'fa-history',
  146. 'uri' => 'auth/logs',
  147. 'created_at' => $createdAt,
  148. ],
  149. ]);
  150. (new Menu())->destroyCache();
  151. }
  152. }