浏览代码

support dict

zisokal 3 年之前
父节点
当前提交
39af411ef8
共有 6 个文件被更改,包括 176 次插入2 次删除
  1. 40 0
      app/models/DictData.py
  2. 32 0
      app/models/DictType.py
  3. 2 0
      app/models/__init__.py
  4. 2 1
      app/routes/__init__.py
  5. 11 0
      app/routes/dictdata.py
  6. 89 1
      db.sql

+ 40 - 0
app/models/DictData.py

@@ -0,0 +1,40 @@
+from app import db
+from datetime import datetime
+
+class DictData(db.Model):
+    __tablename__ = 'SYS_DICT_DATA'
+    dict_code = db.Column(db.Integer, primary_key=True)
+    dict_sort = db.Column(db.Integer)
+    dict_label = db.Column(db.String(100))
+    dict_value = db.Column(db.String(100))
+    dict_type = db.Column(db.String(100), db.ForeignKey('SYS_DICT_TYPE.dict_type'))
+    css_class = db.Column(db.String(100))
+    list_class = db.Column(db.String(100))
+    is_default = db.Column(db.Integer)
+    status = db.Column(db.Integer)
+    create_by = db.Column(db.String(64))
+    create_time = db.Column(db.DATETIME, default=datetime.now)
+    update_by = db.Column(db.String(64))
+    update_time = db.Column(db.DATETIME, default=datetime.now)
+    remark = db.Column(db.String(500))
+
+    def to_json(self):
+        return {
+            'dictCode': self.dict_code,
+            'dictSort': self.dict_sort,
+            'dictLabel': self.dict_label,
+            'dictValue': self.dict_value,
+            'dictType': self.dict_type,
+            'cssClass': self.css_class,
+            'listClass': self.list_class,
+            'isDefault': self.is_default,
+            'status': self.status,
+            'createBy': self.create_by,
+            'createTime': self.create_time,
+            'updateBy': self.update_by,
+            'updateTime': self.update_time,
+            'remark': self.remark
+        }
+
+    def __repr__(self):
+        return '<DictData %r>\n' %(self.dict_label)

+ 32 - 0
app/models/DictType.py

@@ -0,0 +1,32 @@
+from app import db
+from datetime import datetime
+
+class DictType(db.Model):
+    __tablename__ = 'SYS_DICT_TYPE'
+    dict_id = db.Column(db.Integer, primary_key=True)
+    dict_name = db.Column(db.String(100))
+    dict_type = db.Column(db.String(100))
+    status = db.Column(db.Integer)
+    create_by = db.Column(db.String(64))
+    create_time = db.Column(db.DATETIME, default=datetime.now)
+    update_by = db.Column(db.String(64))
+    update_time = db.Column(db.DATETIME, default=datetime.now)
+    remark = db.Column(db.String(500))
+
+    data_list =  db.relationship('DictData', backref='type', lazy='dynamic')
+
+    def to_json(self):
+        return {
+            'dict_id': self.dict_id,
+            'dict_name': self.dict_name,
+            'dict_type': self.dict_type,
+            'status': self.status,
+            'create_by': self.create_by,
+            'create_time': self.create_time,
+            'update_by': self.update_by,
+            'update_time': self.update_time,
+            'remark': self.remark,
+        }
+
+    def __repr__(self):
+        return '<DictType %r>\n' %(self.dict_name)

+ 2 - 0
app/models/__init__.py

@@ -5,3 +5,5 @@ from .ResourceType import ResourceType
 from .Role import Role
 from .User import User
 from .OnLine import OnLine
+from .DictData import DictData
+from .DictType import DictType

+ 2 - 1
app/routes/__init__.py

@@ -3,4 +3,5 @@ from . import index
 from . import user
 from . import resource
 from . import organization
-from .import online
+from . import online
+from . import dictdata

+ 11 - 0
app/routes/dictdata.py

@@ -0,0 +1,11 @@
+from ..base import base
+from ..models import DictData, DictType
+from flask import render_template, request, jsonify
+from sqlalchemy import asc
+from sqlalchemy import desc
+
+@base.route('/system/dict/data/type/<dictType>', methods=['GET'])
+def sysdictdata_get_by_type(dictType):
+    data_list = DictData.query.filter(DictData.dict_type == dictType)
+
+    return jsonify({'msg': '操作成功', 'code': 200, 'data': [data.to_json() for data in data_list]})

+ 89 - 1
db.sql

@@ -11,7 +11,7 @@
  Target Server Version : 80029
  File Encoding         : 65001
 
- Date: 23/05/2022 08:18:08
+ Date: 24/05/2022 14:59:03
 */
 
 SET NAMES utf8mb4;
@@ -260,6 +260,94 @@ INSERT INTO `SYROLE_SYRESOURCE` VALUES ('0', 'zylb');
 INSERT INTO `SYROLE_SYRESOURCE` VALUES ('0', 'zysc');
 INSERT INTO `SYROLE_SYRESOURCE` VALUES ('0', 'zytj');
 
+-- ----------------------------
+-- Table structure for SYS_DICT_DATA
+-- ----------------------------
+DROP TABLE IF EXISTS `SYS_DICT_DATA`;
+CREATE TABLE `SYS_DICT_DATA`  (
+  `dict_code` bigint NOT NULL AUTO_INCREMENT COMMENT '字典编码',
+  `dict_sort` int NULL DEFAULT 0 COMMENT '字典排序',
+  `dict_label` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '字典标签',
+  `dict_value` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '字典键值',
+  `dict_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '字典类型',
+  `css_class` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '样式属性(其他样式扩展)',
+  `list_class` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '表格回显样式',
+  `is_default` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT 'N' COMMENT '是否默认(Y是 N否)',
+  `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
+  `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '创建者',
+  `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
+  `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '更新者',
+  `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
+  `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
+  PRIMARY KEY (`dict_code`) USING BTREE,
+  INDEX `dict_type`(`dict_type`) USING BTREE,
+  CONSTRAINT `SYS_DICT_DATA_ibfk_1` FOREIGN KEY (`dict_type`) REFERENCES `SYS_DICT_TYPE` (`dict_type`) ON DELETE RESTRICT ON UPDATE RESTRICT
+) ENGINE = InnoDB AUTO_INCREMENT = 100 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '字典数据表' ROW_FORMAT = DYNAMIC;
+
+-- ----------------------------
+-- Records of SYS_DICT_DATA
+-- ----------------------------
+INSERT INTO `SYS_DICT_DATA` VALUES (1, 1, '男', '0', 'sys_user_sex', '', '', 'Y', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '性别男');
+INSERT INTO `SYS_DICT_DATA` VALUES (2, 2, '女', '1', 'sys_user_sex', '', '', 'N', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '性别女');
+INSERT INTO `SYS_DICT_DATA` VALUES (3, 3, '未知', '2', 'sys_user_sex', '', '', 'N', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '性别未知');
+INSERT INTO `SYS_DICT_DATA` VALUES (4, 1, '显示', '0', 'sys_show_hide', '', 'primary', 'Y', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '显示菜单');
+INSERT INTO `SYS_DICT_DATA` VALUES (5, 2, '隐藏', '1', 'sys_show_hide', '', 'danger', 'N', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '隐藏菜单');
+INSERT INTO `SYS_DICT_DATA` VALUES (6, 1, '正常', '0', 'sys_normal_disable', '', 'primary', 'Y', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '正常状态');
+INSERT INTO `SYS_DICT_DATA` VALUES (7, 2, '停用', '1', 'sys_normal_disable', '', 'danger', 'N', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '停用状态');
+INSERT INTO `SYS_DICT_DATA` VALUES (8, 1, '正常', '0', 'sys_job_status', '', 'primary', 'Y', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '正常状态');
+INSERT INTO `SYS_DICT_DATA` VALUES (9, 2, '暂停', '1', 'sys_job_status', '', 'danger', 'N', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '停用状态');
+INSERT INTO `SYS_DICT_DATA` VALUES (10, 1, '默认', 'DEFAULT', 'sys_job_group', '', '', 'Y', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '默认分组');
+INSERT INTO `SYS_DICT_DATA` VALUES (11, 2, '系统', 'SYSTEM', 'sys_job_group', '', '', 'N', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '系统分组');
+INSERT INTO `SYS_DICT_DATA` VALUES (12, 1, '是', 'Y', 'sys_yes_no', '', 'primary', 'Y', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '系统默认是');
+INSERT INTO `SYS_DICT_DATA` VALUES (13, 2, '否', 'N', 'sys_yes_no', '', 'danger', 'N', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '系统默认否');
+INSERT INTO `SYS_DICT_DATA` VALUES (14, 1, '通知', '1', 'sys_notice_type', '', 'warning', 'Y', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '通知');
+INSERT INTO `SYS_DICT_DATA` VALUES (15, 2, '公告', '2', 'sys_notice_type', '', 'success', 'N', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '公告');
+INSERT INTO `SYS_DICT_DATA` VALUES (16, 1, '正常', '0', 'sys_notice_status', '', 'primary', 'Y', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '正常状态');
+INSERT INTO `SYS_DICT_DATA` VALUES (17, 2, '关闭', '1', 'sys_notice_status', '', 'danger', 'N', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '关闭状态');
+INSERT INTO `SYS_DICT_DATA` VALUES (18, 1, '新增', '1', 'sys_oper_type', '', 'info', 'N', '0', 'admin', '2022-05-14 14:04:21', '', NULL, '新增操作');
+INSERT INTO `SYS_DICT_DATA` VALUES (19, 2, '修改', '2', 'sys_oper_type', '', 'info', 'N', '0', 'admin', '2022-05-14 14:04:21', '', NULL, '修改操作');
+INSERT INTO `SYS_DICT_DATA` VALUES (20, 3, '删除', '3', 'sys_oper_type', '', 'danger', 'N', '0', 'admin', '2022-05-14 14:04:21', '', NULL, '删除操作');
+INSERT INTO `SYS_DICT_DATA` VALUES (21, 4, '授权', '4', 'sys_oper_type', '', 'primary', 'N', '0', 'admin', '2022-05-14 14:04:21', '', NULL, '授权操作');
+INSERT INTO `SYS_DICT_DATA` VALUES (22, 5, '导出', '5', 'sys_oper_type', '', 'warning', 'N', '0', 'admin', '2022-05-14 14:04:21', '', NULL, '导出操作');
+INSERT INTO `SYS_DICT_DATA` VALUES (23, 6, '导入', '6', 'sys_oper_type', '', 'warning', 'N', '0', 'admin', '2022-05-14 14:04:21', '', NULL, '导入操作');
+INSERT INTO `SYS_DICT_DATA` VALUES (24, 7, '强退', '7', 'sys_oper_type', '', 'danger', 'N', '0', 'admin', '2022-05-14 14:04:21', '', NULL, '强退操作');
+INSERT INTO `SYS_DICT_DATA` VALUES (25, 8, '生成代码', '8', 'sys_oper_type', '', 'warning', 'N', '0', 'admin', '2022-05-14 14:04:21', '', NULL, '生成操作');
+INSERT INTO `SYS_DICT_DATA` VALUES (26, 9, '清空数据', '9', 'sys_oper_type', '', 'danger', 'N', '0', 'admin', '2022-05-14 14:04:21', '', NULL, '清空操作');
+INSERT INTO `SYS_DICT_DATA` VALUES (27, 1, '成功', '0', 'sys_common_status', '', 'primary', 'N', '0', 'admin', '2022-05-14 14:04:21', '', NULL, '正常状态');
+INSERT INTO `SYS_DICT_DATA` VALUES (28, 2, '失败', '1', 'sys_common_status', '', 'danger', 'N', '0', 'admin', '2022-05-14 14:04:21', '', NULL, '停用状态');
+
+-- ----------------------------
+-- Table structure for SYS_DICT_TYPE
+-- ----------------------------
+DROP TABLE IF EXISTS `SYS_DICT_TYPE`;
+CREATE TABLE `SYS_DICT_TYPE`  (
+  `dict_id` bigint NOT NULL AUTO_INCREMENT COMMENT '字典主键',
+  `dict_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '字典名称',
+  `dict_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '字典类型',
+  `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
+  `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '创建者',
+  `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
+  `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '更新者',
+  `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
+  `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
+  PRIMARY KEY (`dict_id`) USING BTREE,
+  UNIQUE INDEX `dict_type`(`dict_type`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 100 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '字典类型表' ROW_FORMAT = DYNAMIC;
+
+-- ----------------------------
+-- Records of SYS_DICT_TYPE
+-- ----------------------------
+INSERT INTO `SYS_DICT_TYPE` VALUES (1, '用户性别', 'sys_user_sex', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '用户性别列表');
+INSERT INTO `SYS_DICT_TYPE` VALUES (2, '菜单状态', 'sys_show_hide', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '菜单状态列表');
+INSERT INTO `SYS_DICT_TYPE` VALUES (3, '系统开关', 'sys_normal_disable', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '系统开关列表');
+INSERT INTO `SYS_DICT_TYPE` VALUES (4, '任务状态', 'sys_job_status', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '任务状态列表');
+INSERT INTO `SYS_DICT_TYPE` VALUES (5, '任务分组', 'sys_job_group', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '任务分组列表');
+INSERT INTO `SYS_DICT_TYPE` VALUES (6, '系统是否', 'sys_yes_no', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '系统是否列表');
+INSERT INTO `SYS_DICT_TYPE` VALUES (7, '通知类型', 'sys_notice_type', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '通知类型列表');
+INSERT INTO `SYS_DICT_TYPE` VALUES (8, '通知状态', 'sys_notice_status', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '通知状态列表');
+INSERT INTO `SYS_DICT_TYPE` VALUES (9, '操作类型', 'sys_oper_type', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '操作类型列表');
+INSERT INTO `SYS_DICT_TYPE` VALUES (10, '系统状态', 'sys_common_status', '0', 'admin', '2022-05-14 14:04:20', '', NULL, '登录状态列表');
+
 -- ----------------------------
 -- Table structure for SYUSER
 -- ----------------------------