Parcourir la source

新增Agent菜单角色模型

zhangdongming il y a 2 semaines
Parent
commit
3f84a2d8de
1 fichiers modifiés avec 46 ajouts et 0 suppressions
  1. 46 0
      AgentModel/models.py

+ 46 - 0
AgentModel/models.py

@@ -1,5 +1,6 @@
 from django.db import models
 
+from Model.models import Role
 
 # Create your models here.
 
@@ -248,4 +249,49 @@ class BurnEncryptedICUID(models.Model):
         db_table = 'burn_encrypted_ic_uid'
         verbose_name = '烧录加密ICUID'
         verbose_name_plural = verbose_name
+        app_label = 'AgentModel'
+
+
+class AgentMenu(models.Model):
+    id = models.AutoField(primary_key=True, verbose_name=u'自增标记ID')
+    parentId = models.IntegerField(default=0, verbose_name='父节点ID')
+    name = models.CharField(max_length=50, null=True, default='', verbose_name='名称')
+    path = models.CharField(max_length=100, null=True, default='', verbose_name='路径')
+    component = models.CharField(max_length=100, null=True, default='', verbose_name='组件路径')
+    hidden = models.BooleanField(blank=True, default=False, verbose_name=u'是否隐藏')
+    title = models.CharField(max_length=50, default='', verbose_name='标题')
+    icon = models.CharField(max_length=50, default='', verbose_name='图标')
+    sort = models.IntegerField(default=0, verbose_name='排序')
+    menu_code = models.CharField(max_length=50, default='', verbose_name='菜单编码')
+    menutype = models.SmallIntegerField(default=1, verbose_name=u'类型')  # 类型: 1-菜单 2-按钮
+
+    class Meta:
+        db_table = 'agent_menu'
+        verbose_name = '代理菜单表'
+        verbose_name_plural = verbose_name
+        app_label = 'AgentModel'
+
+
+class AgentRole(models.Model):
+    rid = models.SmallIntegerField(primary_key=True, unique=True, verbose_name=u'用户角色组ID')
+    role_name = models.CharField(max_length=32, unique=True,
+                                default='User', verbose_name=u'角色名称')
+    description = models.TextField(blank=True, default='', verbose_name=u'描述信息')
+    agent_type = models.SmallIntegerField(default=1, verbose_name='代理类型')
+    data_scope = models.SmallIntegerField(default=1, verbose_name='数据权限')
+
+    class Meta:
+        db_table = 'agent_role'
+        verbose_name = '代理角色'
+        verbose_name_plural = verbose_name
+        app_label = 'AgentModel'
+
+class AgentRoleMenu(models.Model):
+    role = models.ForeignKey(AgentRole, on_delete=models.CASCADE, verbose_name='角色ID')
+    menu = models.ForeignKey(AgentMenu, on_delete=models.CASCADE, verbose_name='菜单ID')
+
+    class Meta:
+        db_table = 'agent_role_menu'
+        unique_together = ('role', 'menu')
+        verbose_name = '代理角色菜单权限'
         app_label = 'AgentModel'