| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- from typing import Optional, List, Annotated
- from datetime import datetime
- from ruoyi_common.base.model import BaseEntity
- from pydantic import ConfigDict, model_validator, BeforeValidator
- from ruoyi_common.utils.base import DateUtil
- from ruoyi_common.base.transformer import to_datetime
- from sqlalchemy import CHAR, DateTime, String, text
- from sqlalchemy.dialects.mysql import BIGINT, INTEGER
- from sqlalchemy.orm import Mapped, mapped_column
- from ruoyi_admin.ext import db
- class GenTablePo(db.Model):
- __tablename__ = 'gen_table'
- __table_args__ = {'comment': '代码生成业务表'}
- table_id: Mapped[int] = mapped_column(BIGINT(20), primary_key=True, comment='编号')
- table_name: Mapped[Optional[str]] = mapped_column(String(200), server_default=text("''"), comment='表名称')
- table_comment: Mapped[Optional[str]] = mapped_column(String(500), server_default=text("''"), comment='表描述')
- sub_table_name: Mapped[Optional[str]] = mapped_column(String(64), comment='关联子表的表名')
- sub_table_fk_name: Mapped[Optional[str]] = mapped_column(String(64), comment='子表关联的外键名')
- class_name: Mapped[Optional[str]] = mapped_column(String(100), server_default=text("''"), comment='实体类名称')
- tpl_category: Mapped[Optional[str]] = mapped_column(String(200), server_default=text("'crud'"), comment='使用的模板')
- package_name: Mapped[Optional[str]] = mapped_column(String(100), comment='生成包路径')
- module_name: Mapped[Optional[str]] = mapped_column(String(30), comment='生成模块名')
- business_name: Mapped[Optional[str]] = mapped_column(String(30), comment='生成业务名')
- function_name: Mapped[Optional[str]] = mapped_column(String(50), comment='生成功能名')
- function_author: Mapped[Optional[str]] = mapped_column(String(50), comment='生成功能作者')
- gen_type: Mapped[Optional[str]] = mapped_column(CHAR(1), server_default=text("'0'"), comment='生成代码方式(0zip压缩包 1自定义路径)')
- gen_path: Mapped[Optional[str]] = mapped_column(String(200), server_default=text("'/'"), comment='生成路径(不填默认项目路径)')
- options: Mapped[Optional[str]] = mapped_column(String(1000), comment='其它生成选项')
- create_by: Mapped[Optional[str]] = mapped_column(String(64), server_default=text("''"), comment='创建者')
- create_time: Mapped[Optional[datetime]] = mapped_column(DateTime, comment='创建时间')
- update_by: Mapped[Optional[str]] = mapped_column(String(64), server_default=text("''"), comment='更新者')
- update_time: Mapped[Optional[datetime]] = mapped_column(DateTime, comment='更新时间')
- remark: Mapped[Optional[str]] = mapped_column(String(500), comment='备注')
- class GenTableColumnPo(db.Model):
- __tablename__ = 'gen_table_column'
- __table_args__ = {'comment': '代码生成业务列'}
- column_id: Mapped[int] = mapped_column(BIGINT(20), primary_key=True, comment='编号')
- table_id: Mapped[Optional[int]] = mapped_column(BIGINT(20), comment='归属表编号')
- column_name: Mapped[Optional[str]] = mapped_column(String(200), server_default=text("''"), comment='列名称')
- column_comment: Mapped[Optional[str]] = mapped_column(String(500), server_default=text("''"), comment='列描述')
- column_type: Mapped[Optional[str]] = mapped_column(String(100), server_default=text("''"), comment='列类型')
- java_type: Mapped[Optional[str]] = mapped_column(String(500), server_default=text("''"), comment='JAVA类型')
- java_field: Mapped[Optional[str]] = mapped_column(String(200), server_default=text("''"), comment='JAVA字段名')
- is_pk: Mapped[Optional[str]] = mapped_column(CHAR(1), server_default=text("'0'"), comment='是否主键(1是)')
- is_increment: Mapped[Optional[str]] = mapped_column(CHAR(1), server_default=text("'0'"), comment='是否自增(1是)')
- is_required: Mapped[Optional[str]] = mapped_column(CHAR(1), server_default=text("'0'"), comment='是否必填(1是)')
- is_insert: Mapped[Optional[str]] = mapped_column(CHAR(1), server_default=text("'1'"), comment='是否为插入字段(1是)')
- is_edit: Mapped[Optional[str]] = mapped_column(CHAR(1), server_default=text("'1'"), comment='是否编辑字段(1是)')
- is_list: Mapped[Optional[str]] = mapped_column(CHAR(1), server_default=text("'1'"), comment='是否列表字段(1是)')
- is_query: Mapped[Optional[str]] = mapped_column(CHAR(1), server_default=text("'1'"), comment='是否查询字段(1是)')
- query_type: Mapped[Optional[str]] = mapped_column(String(200), server_default=text("'EQ'"), comment='查询方式(等于、不等于、大于、小于、范围)')
- html_type: Mapped[Optional[str]] = mapped_column(String(200), comment='显示类型(文本框、文本域、下拉框、复选框、单选框、日期控件)')
- dict_type: Mapped[Optional[str]] = mapped_column(String(200), server_default=text("''"), comment='字典类型')
- sort: Mapped[Optional[int]] = mapped_column(INTEGER(4), server_default=text("'0'"), comment='排序')
- create_by: Mapped[Optional[str]] = mapped_column(String(64), server_default=text("''"), comment='创建者')
- create_time: Mapped[Optional[datetime]] = mapped_column(DateTime, comment='创建时间')
- update_by: Mapped[Optional[str]] = mapped_column(String(64), server_default=text("''"), comment='更新者')
- update_time: Mapped[Optional[datetime]] = mapped_column(DateTime, comment='更新时间')
- remark: Mapped[Optional[str]] = mapped_column(String(500), comment='备注')
- class GenTablePO(BaseEntity):
- """
- 代码生成业务表
- """
- model_config = ConfigDict(
- from_attributes=True,
- json_encoders = {
- datetime: lambda v: v.strftime(DateUtil.YYYY_MM_DD_HH_MM_SS) if v else None
- },
- extra = "ignore"
- )
-
- table_id: Optional[int] = None
- table_name: Optional[str] = None
- table_comment: Optional[str] = None
- sub_table_name: Optional[str] = None
- sub_table_fk_name: Optional[str] = None
- class_name: Optional[str] = None
- tpl_category: Optional[str] = None
- package_name: Optional[str] = None
- module_name: Optional[str] = None
- business_name: Optional[str] = None
- function_name: Optional[str] = None
- function_author: Optional[str] = None
- gen_type: Optional[str] = None
- gen_path: Optional[str] = None
- options: Optional[str] = None
- create_by: Optional[str] = None
- create_time: Optional[Annotated[datetime, BeforeValidator(to_datetime())]] = None
- update_by: Optional[str] = None
- update_time: Optional[Annotated[datetime, BeforeValidator(to_datetime())]] = None
- remark: Optional[str] = None
- columns: Optional[List['GenTableColumnPO']] = None
- pk_column: Optional[dict] = None
- params: Optional[dict] = None
- # 添加tree相关字段
- tree_name: Optional[str] = None
- tree_code: Optional[str] = None
- tree_parent_code: Optional[str] = None
- # 分页参数
- page_num: Optional[int] = None
- page_size: Optional[int] = None
- class GenTableColumnPO(BaseEntity):
- """
- 代码生成业务列
- """
- model_config = ConfigDict(
- from_attributes=True,
- json_encoders = {
- datetime: lambda v: v.strftime(DateUtil.YYYY_MM_DD_HH_MM_SS) if v else None
- },
- extra = "ignore"
- )
-
- column_id: Optional[int] = None
- table_id: Optional[int] = None
- column_name: Optional[str] = None
- column_comment: Optional[str] = None
- column_type: Optional[str] = None
- java_type: Optional[str] = None
- java_field: Optional[str] = None
- is_pk: Optional[str] = None
- is_increment: Optional[str] = None
- is_required: Optional[str] = None
- is_insert: Optional[str] = None
- is_edit: Optional[str] = None
- is_list: Optional[str] = None
- is_query: Optional[str] = None
- query_type: Optional[str] = "EQ"
- html_type: Optional[str] = None
- dict_type: Optional[str] = ""
- sort: Optional[int] = None
- create_by: Optional[str] = ""
- create_time: Optional[Annotated[datetime, BeforeValidator(to_datetime())]] = None
- update_by: Optional[str] = ""
- update_time: Optional[Annotated[datetime, BeforeValidator(to_datetime())]] = None
- remark: Optional[str] = None
- # 分页参数
- page_num: Optional[int] = None
- page_size: Optional[int] = None
|