20190516074527_create_workstate_identity_tables.rb 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. class CreateWorkstateIdentityTables < ActiveRecord::Migration
  2. def change
  3. #用户表
  4. create_table :wa_id_users do |t|
  5. t.string :uaccount, :limit => 20, :null => false
  6. t.string :uname, :limit => 20, :null => false
  7. t.string :upsd, :limit => 255, :null => false
  8. t.string :salt, :limit => 100
  9. t.string :status, :limit => 20, :null => false
  10. t.boolean :is_god, :null => false, :default => false
  11. t.integer :department_id, :null => false
  12. t.timestamps
  13. end
  14. add_index :wa_id_users, :uaccount
  15. #角色表
  16. create_table :wa_id_roles do |t|
  17. t.string :name, :limit => 20, :null => false
  18. t.boolean :is_available, :null => false, :default => false
  19. t.timestamps
  20. end
  21. #用户角色表
  22. create_table :wa_id_user_roles do |t|
  23. t.integer :user_id, :null => false
  24. t.integer :role_id, :null => false
  25. t.timestamps
  26. end
  27. add_index :wa_id_user_roles, :user_id
  28. add_index :wa_id_user_roles, :role_id
  29. #权限表
  30. create_table :wa_id_permissions do |t|
  31. t.string :name, :limit => 20, :null => false
  32. t.string :url_type, :limit => 20, :null => false, :default => 'button'# menu,button,general
  33. t.string :url, :limit => 100
  34. t.string :percode, :limit => 40 #权限代码字符串
  35. t.string :url_path, :limit => 100 #页面链接
  36. t.integer :parentid
  37. t.integer :m_parentid #菜单父节点
  38. t.string :parentids, :limit => 100 #父结点id列表串
  39. t.integer :sort, :null => false #排序
  40. t.boolean :is_available, :null => false, :default => false #是否可用
  41. t.timestamps
  42. end
  43. #角色权限表
  44. create_table :wa_id_role_permissions do |t|
  45. t.integer :permission_id, :null => false
  46. t.integer :role_id, :null => false
  47. t.timestamps
  48. end
  49. add_index :wa_id_role_permissions, :permission_id
  50. add_index :wa_id_role_permissions, :role_id
  51. #用户token表
  52. create_table :wa_id_user_tokens do |t|
  53. t.integer :user_id, :null => false
  54. t.string :token, :null => false
  55. t.integer :expire_time, :null => false, :default => 0
  56. t.timestamps
  57. end
  58. add_index :wa_id_user_tokens, :user_id
  59. #部门表
  60. create_table :wa_id_departments do |t|
  61. t.string :name, :limit => 20, :null => false
  62. t.timestamps
  63. end
  64. end
  65. #可新增~用户与主系统用户关系对应表
  66. def self.down
  67. drop_table :wa_id_users
  68. drop_table :wa_id_roles
  69. drop_table :wa_id_permissions
  70. drop_table :wa_id_user_roles
  71. drop_table :wa_id_role_permissions
  72. drop_table :wa_id_user_tokens
  73. end
  74. end