| 17 | |
| 18 | |
| 19 | class Migration(migrations.Migration): |
| 20 | |
| 21 | initial = True |
| 22 | |
| 23 | dependencies = [ |
| 24 | ('users', '0001_initial'), |
| 25 | ] |
| 26 | |
| 27 | operations = [ |
| 28 | migrations.CreateModel( |
| 29 | name='ToolFolder', |
| 30 | fields=[ |
| 31 | ('create_time', models.DateTimeField(auto_now_add=True, db_index=True, verbose_name='创建时间')), |
| 32 | ('update_time', models.DateTimeField(auto_now=True, db_index=True, verbose_name='修改时间')), |
| 33 | ('id', models.CharField(editable=False, max_length=64, primary_key=True, serialize=False, verbose_name='主键id')), |
| 34 | ('name', models.CharField(db_index=True, max_length=64, verbose_name='文件夹名称')), |
| 35 | ('desc', models.CharField(blank=True, max_length=200, null=True, verbose_name='描述')), |
| 36 | ('workspace_id', models.CharField(db_index=True, default='default', max_length=64, verbose_name='工作空间id')), |
| 37 | ('lft', models.PositiveIntegerField(editable=False)), |
| 38 | ('rght', models.PositiveIntegerField(editable=False)), |
| 39 | ('tree_id', models.PositiveIntegerField(db_index=True, editable=False)), |
| 40 | ('level', models.PositiveIntegerField(editable=False)), |
| 41 | ('parent', mptt.fields.TreeForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='children', to='tools.toolfolder')), |
| 42 | ('user', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.SET_NULL, to='users.user')), |
| 43 | ], |
| 44 | options={ |
| 45 | 'db_table': 'tool_folder', |
| 46 | }, |
| 47 | ), |
| 48 | migrations.RunPython(insert_default_data), |
| 49 | migrations.CreateModel( |
| 50 | name='Tool', |
| 51 | fields=[ |
| 52 | ('create_time', models.DateTimeField(auto_now_add=True, db_index=True, verbose_name='创建时间')), |
| 53 | ('update_time', models.DateTimeField(auto_now=True, db_index=True, verbose_name='修改时间')), |
| 54 | ('id', models.UUIDField(default=uuid_utils.compat.uuid7, editable=False, primary_key=True, serialize=False, verbose_name='主键id')), |
| 55 | ('name', models.CharField(db_index=True, max_length=64, verbose_name='工具名称')), |
| 56 | ('desc', models.CharField(max_length=128, verbose_name='描述')), |
| 57 | ('code', models.CharField(max_length=102400, verbose_name='python代码')), |
| 58 | ('input_field_list', models.JSONField(default=list, verbose_name='输入字段列表')), |
| 59 | ('init_field_list', models.JSONField(default=list, verbose_name='启动字段列表')), |
| 60 | ('icon', models.CharField(default='', max_length=256, verbose_name='工具库icon')), |
| 61 | ('is_active', models.BooleanField(db_index=True, default=True)), |
| 62 | ('scope', models.CharField(choices=[('SHARED', '共享'), ('WORKSPACE', '工作空间可用'), ('INTERNAL', '内置')], db_index=True, default='WORKSPACE', max_length=20, verbose_name='可用范围')), |
| 63 | ('tool_type', models.CharField(choices=[('INTERNAL', '内置'), ('CUSTOM', '自定义')], db_index=True, default='CUSTOM', max_length=20, verbose_name='工具类型')), |
| 64 | ('template_id', models.UUIDField(db_index=True, default=None, null=True, verbose_name='模版id')), |
| 65 | ('workspace_id', models.CharField(db_index=True, default='default', max_length=64, verbose_name='工作空间id')), |
| 66 | ('init_params', models.CharField(max_length=102400, null=True, verbose_name='初始化参数')), |
| 67 | ('label', models.CharField(db_index=True, max_length=128, null=True, verbose_name='标签')), |
| 68 | ('user', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.SET_NULL, to='users.user')), |
| 69 | ('folder', models.ForeignKey(default='default', on_delete=django.db.models.deletion.DO_NOTHING, to='tools.toolfolder', verbose_name='文件夹id')), |
| 70 | ], |
| 71 | options={ |
| 72 | 'db_table': 'tool', |
| 73 | }, |
| 74 | ), |
| 75 | migrations.RunSQL(get_file_content(os.path.join(PROJECT_DIR, "apps", "tools", 'migrations', 'internal_tool.sql'))) |
| 76 | ] |
nothing calls this directly
no test coverage detected