日常修复内容20260422

This commit is contained in:
2026-04-22 18:28:32 +08:00
parent dffc1d5872
commit 66e48d3165
507 changed files with 473 additions and 1085 deletions

2
.idea/misc.xml generated
View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Black">
<option name="sdkName" value="Python 3.8 (cdtestplant_v1)" />
<option name="sdkName" value="uv (cdtestplant_v1)" />
</component>
<component name="ProjectRootManager" version="2" project-jdk-name="uv (cdtestplant_v1)" project-jdk-type="Python SDK" />
</project>

View File

@@ -15,7 +15,7 @@ from pathlib import Path
from utils.chen_response import ChenResponse
# 导入数据库ORM
from apps.project.models import Project, Contact, Abbreviation, ProjectSoftSummary, StuctSortData, StaticSoftItem, StaticSoftHardware, \
DynamicSoftTable, DynamicHardwareTable, ProjectDynamicDescription, EvaluateData, EnvAnalysis
DynamicSoftTable, DynamicHardwareTable, ProjectDynamicDescription, EvaluateData, EnvAnalysis, Design
from apps.dict.models import Dict
# 导入工具函数
from utils.util import get_str_dict, get_list_dict, get_testType, get_ident, get_str_abbr
@@ -91,12 +91,23 @@ class GenerateControllerDG(ControllerBase, FragementToolsMixin):
html_parser = RichParser(single_qs.design.description)
desc_list = html_parser.get_final_list(doc)
# 查询关联design以及普通design
doc_list = [{'dut_name': single_qs.dut.name, 'design_chapter': single_qs.design.chapter,
'design_name': single_qs.design.name}]
for relate_design in single_qs.otherDesign.all():
ddict = {'dut_name': relate_design.dut.name, 'design_chapter': relate_design.chapter,
'design_name': relate_design.name}
doc_list = [{
'dut_name': single_qs.dut.name,
'design_chapter': single_qs.design.chapter,
'design_name': single_qs.design.name,
'dut_type': single_qs.dut.type # 添加 type 字段用于排序
}]
for relate_design in single_qs.otherDesign.all(): # type: Design
ddict = {
'dut_name': relate_design.dut.name,
'design_chapter': relate_design.chapter,
'design_name': relate_design.name,
'dut_type': relate_design.dut.type # 添加 type 字段用于排序
}
doc_list.append(ddict)
# 定义排序顺序映射
TYPE_ORDER = {'YZ': 0, 'XQ': 1, 'XY': 2, 'SJ': 3, None: 99, '': 999}
doc_list.sort(key=lambda x: TYPE_ORDER.get(x.get('dut_type'), 999))
# 组装单个测试项
## 打印本项目是FPGA还是CPU
@@ -403,10 +414,13 @@ class GenerateControllerDG(ControllerBase, FragementToolsMixin):
interface_dict = {
'name': interface.name,
'ident': interface.ident,
'source': interface.source,
'to': interface.to,
'type': interface.type,
'protocal': interface.protocal,
'is_bidirectional': interface.is_bidirectional, # 是否有反向
'jk_info_list': [{
'source': item.source,
'destination': item.destination,
'description': item.description,
} for item in interface.jkField.all()]
}
interface_list.append(interface_dict)
# 项目接口图处理 - 2026/2/4
@@ -423,7 +437,7 @@ class GenerateControllerDG(ControllerBase, FragementToolsMixin):
'iters': interfaceNameList,
'iter_list': interface_list,
'image_render': image_render if image_render else "",
'fontnote': fontnote if fontnote else "".join([project_name, '接口示意图'])
'fontnote': fontnote if fontnote else "".join([project_name, '接口示意图']),
}
doc.render(context, autoescape=True)
try:
@@ -469,7 +483,7 @@ class GenerateControllerDG(ControllerBase, FragementToolsMixin):
except PermissionError as e:
return ChenResponse(status=400, code=400, message="模版文件已打开,请关闭后再试,{0}".format(e))
# 通用生成静态软件项、静态硬件项、动态软件项、动态硬件信息的context包含fontnote和table
# 通用生成静态软件项、静态硬件项、动态软件项、动态硬件信息、测评数据的context包含fontnote和table
@classmethod
def create_table_context(cls, table_data: list[list[str]], doc: DocxTemplate):
"""注意:该函数会增加一列序号列,并且支持单元格内回车换行(段落换行)"""

View File

@@ -8,7 +8,7 @@ from django.db.models import QuerySet, Q
from docxtpl import DocxTemplate
from docx import Document
# 导入模型
from apps.project.models import Project, Round, Dut, InfluenceArea
from apps.project.models import Project, Round, Dut
from apps.dict.models import Dict
# 导入项目工具
from utils.util import get_list_dict, get_str_dict, get_ident, get_case_ident, get_testType
@@ -19,7 +19,6 @@ from utils.path_utils import project_path
from apps.createDocument.extensions.util import delete_dir_files
from apps.createDocument.extensions.parse_rich_text import RichParser
from apps.createDocument.extensions.documentTime import DocTime
from utils.util import get_str_abbr
from apps.createDocument.extensions.content_result_tool import create_influence_context
# 导入生成日志记录模块
from apps.createSeiTaiDocument.extensions.logger import GenerateLogger
@@ -234,7 +233,7 @@ class GenerateControllerHSM(ControllerBase):
xq_dut: Dut = hround.rdField.filter(type='XQ').first()
# 处理代码版本
last_round_key = str(int(hround.key) - 1)
last_round: Round = project_obj.pField.filter(key=last_round_key).first()
last_round: Round | None = project_obj.pField.filter(key=last_round_key).first()
last_round_so_dut = last_round.rdField.filter(type='SO').first()
if not last_round_so_dut:
return ChenResponse(code=400, status=400,

View File

@@ -38,6 +38,17 @@ def create_sm_docx(template_name: str, context: dict, id: int) -> ChenResponse:
except PermissionError as e:
return ChenResponse(status=400, code=400, message="模版文件已打开,请关闭后再试,{0}".format(e))
def create_hsm_docx(template_name: str, context: dict, id: int) -> ChenResponse:
"""生成最终回归测试说明文档工具函数"""
input_path = Path.cwd() / 'media' / project_path(id) / 'form_template' / 'hsm' / template_name
doc = DocxTemplate(input_path)
doc.render(context, autoescape=True)
try:
doc.save(Path.cwd() / "media" / project_path(id) / "output_dir/hsm" / template_name)
return ChenResponse(status=200, code=200, message="文档生成成功!")
except PermissionError as e:
return ChenResponse(status=400, code=400, message="模版文件已打开,请关闭后再试,{0}".format(e))
def create_dg_docx(template_name: str, context: dict, id: int) -> ChenResponse:
"""生成最终大纲文档工具函数"""
input_path = Path.cwd() / 'media' / project_path(id) / 'form_template' / 'dg' / template_name

View File

@@ -15,7 +15,7 @@ from typing import List
from utils.chen_response import ChenResponse
from utils.chen_crud import multi_delete_design
from utils.codes import HTTP_INDEX_ERROR
from apps.project.models import Design, Dut, Round, Project
from apps.project.models import Design, Dut, Round, Project, JKDesignInfo
from apps.project.schemas.design import DeleteSchema, DesignFilterSchema, DesignModelOutSchema, \
DesignTreeReturnSchema, \
DesignTreeInputSchema, DesignCreateOutSchema, DesignCreateInputSchema, MultiDesignCreateInputSchema, \
@@ -25,6 +25,22 @@ from utils.smallTools.interfaceTools import conditionNoneToBlank
from apps.project.tools.auto_create_data import auto_create_renji
from apps.project.tool.dragAndDrop import DesignDrapAtoB
def _save_jk_direction_info(design: Design, direction: str, source: str, destination: str, description: str):
"""保存或更新 JKDesignInfo 记录"""
if not source and not destination and not description:
# 如果三个字段全为空,则删除可能存在的记录(避免冗余数据)
JKDesignInfo.objects.filter(jk=design, direction=direction).delete()
return
JKDesignInfo.objects.update_or_create(
jk=design,
direction=direction,
defaults={
'source': source or '',
'destination': destination or '',
'description': description or '',
}
)
@api_controller("/project", auth=JWTAuth(), permissions=[IsAuthenticated], tags=['设计需求数据'])
class DesignController(ControllerBase):
@route.get("/getDesignDemandList", response=List[DesignModelOutSchema], exclude_none=True,
@@ -97,7 +113,30 @@ class DesignController(ControllerBase):
{'key': key_string, 'round': round_instance, 'dut': dut_instance, 'title': payload.name})
asert_dict.pop("round_key")
asert_dict.pop("dut_key")
# 去掉Design不使用的字段
asert_dict.pop("forward_source", None)
asert_dict.pop("forward_destination", None)
asert_dict.pop("forward_description", None)
asert_dict.pop("reverse_source", None)
asert_dict.pop("reverse_destination", None)
asert_dict.pop("reverse_description", None)
qs = Design.objects.create(**asert_dict)
# 处理接口方向信息(仅当 demandType == '3' 且存在正向/反向数据时)
if payload.demandType == '3':
_save_jk_direction_info(
design=qs,
direction=JKDesignInfo.Direction.FORWARD,
source=payload.forward_source,
destination=payload.forward_destination,
description=payload.forward_description,
)
_save_jk_direction_info(
design=qs,
direction=JKDesignInfo.Direction.REVERSE,
source=payload.reverse_source,
destination=payload.reverse_destination,
description=payload.reverse_description,
)
return qs
# 批量增加设计需求对应前端批量增加页面modal
@@ -136,15 +175,36 @@ class DesignController(ControllerBase):
# 判断是否和同项目同轮次的标识重复
if len(design_search) > 1 and payload.ident != '':
return ChenResponse(code=400, status=400, message='研制需求的标识重复,请检查')
# 查到当前
design_qs = Design.objects.get(id=id)
for attr, value in payload.dict().items():
if attr == 'project_id' or attr == 'round_key' or attr == 'dut_key':
if attr in ('project_id', 'round_key', 'dut_key'):
continue
if attr == 'name':
setattr(design_qs, "title", value)
setattr(design_qs, attr, value)
design_qs.save()
# 处理接口方向信息更新
if payload.demandType == '3':
_save_jk_direction_info(
design=design_qs,
direction=JKDesignInfo.Direction.FORWARD,
source=payload.forward_source,
destination=payload.forward_destination,
description=payload.forward_description,
)
_save_jk_direction_info(
design=design_qs,
direction=JKDesignInfo.Direction.REVERSE,
source=payload.reverse_source,
destination=payload.reverse_destination,
description=payload.reverse_description,
)
else:
# 如果需求类型不再是接口,则删除已有的方向信息
JKDesignInfo.objects.filter(jk=design_qs).delete()
return design_qs
# 删除设计需求

View File

@@ -463,7 +463,7 @@ class ProjectController(ControllerBase):
return ChenResponse(status=200, code=25001, data={"table": item_obj.table, "fontnote": item_obj.fontnote})
return ChenResponse(status=200, code=25002, data=None)
# ~~~静态软件项、静态硬件项、动态软件项、动态硬件项 - 新增或修改~~~
# ~~~静态软件项、静态硬件项、动态软件项、动态硬件项、测评数据 - 新增或修改~~~
@route.post("/post_static_dynamic_item/")
@transaction.atomic
def post_static_dynamic_item(self, data: StaticDynamicData):

View File

@@ -0,0 +1,51 @@
# Generated by Django 6.0.4 on 2026-04-21 18:21
import django.db.models.deletion
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('project', '0032_alter_design_protocal'),
]
operations = [
migrations.RemoveField(
model_name='design',
name='protocal',
),
migrations.RemoveField(
model_name='design',
name='to',
),
migrations.RemoveField(
model_name='design',
name='type',
),
migrations.AlterField(
model_name='design',
name='source',
field=models.CharField(blank=True, default='', help_text='接口来源', max_length=256, null=True, verbose_name='接口来源'),
),
migrations.CreateModel(
name='JKDesignInfo',
fields=[
('id', models.BigAutoField(help_text='Id', primary_key=True, serialize=False, verbose_name='Id')),
('remark', models.CharField(blank=True, help_text='描述', max_length=255, null=True, verbose_name='描述')),
('update_datetime', models.DateField(auto_now=True, help_text='修改时间', null=True, verbose_name='修改时间')),
('create_datetime', models.DateField(auto_now_add=True, help_text='创建时间', null=True, verbose_name='创建时间')),
('sort', models.IntegerField(blank=True, default=1, help_text='显示排序', null=True, verbose_name='显示排序')),
('direction', models.CharField(choices=[('forward', '正向'), ('reverse', '反向')], max_length=10, verbose_name='方向')),
('description', models.TextField(blank=True, default='', max_length=1024, null=True, verbose_name='接口描述')),
('source', models.CharField(blank=True, default='', max_length=200, null=True, verbose_name='来源')),
('destination', models.CharField(blank=True, default='', max_length=200, null=True, verbose_name='目的地')),
('jk', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='jkField', to='project.design', verbose_name='所属接口Design')),
],
options={
'verbose_name': '接口一个方向的信息',
'verbose_name_plural': '接口一个方向的信息',
'unique_together': {('jk', 'direction')},
},
),
]

View File

@@ -0,0 +1,37 @@
# Generated by Django 6.0.4 on 2026-04-21 18:27
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('project', '0033_remove_design_protocal_remove_design_to_and_more'),
]
operations = [
migrations.RemoveField(
model_name='design',
name='source',
),
migrations.AddField(
model_name='design',
name='type',
field=models.CharField(blank=True, default='', help_text='接口类型', max_length=1024, null=True, verbose_name='接口类型'),
),
migrations.AlterField(
model_name='jkdesigninfo',
name='description',
field=models.TextField(blank=True, max_length=1024, null=True, verbose_name='接口描述'),
),
migrations.AlterField(
model_name='jkdesigninfo',
name='destination',
field=models.CharField(blank=True, max_length=200, null=True, verbose_name='目的地'),
),
migrations.AlterField(
model_name='jkdesigninfo',
name='source',
field=models.CharField(blank=True, max_length=200, null=True, verbose_name='来源'),
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 6.0.4 on 2026-04-21 18:38
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('project', '0034_remove_design_source_design_type_and_more'),
]
operations = [
migrations.AddField(
model_name='design',
name='is_bidirectional',
field=models.BooleanField(default=False, verbose_name='是否双向'),
),
]

View File

@@ -15,9 +15,9 @@ class Project(CoreModel):
help_text="项目标识", unique=True) # 唯一
name = models.CharField(max_length=100, blank=True, null=True, verbose_name="项目名称",
help_text="项目名称")
beginTime = models.DateField(auto_now_add=True, null=True, blank=True, help_text="开始时间",
beginTime = models.DateField(null=True, blank=True, help_text="开始时间",
verbose_name="开始时间")
endTime = models.DateField(auto_now_add=True, null=True, blank=True, help_text="结束时间",
endTime = models.DateField(null=True, blank=True, help_text="结束时间",
verbose_name="结束时间")
duty_person = models.CharField(max_length=64, verbose_name="负责人", help_text="负责人")
member = models.JSONField(null=True, blank=True, help_text="项目成员", verbose_name="项目成员",
@@ -198,15 +198,12 @@ class Design(CoreModel):
dut = models.ForeignKey(to="Dut", db_constraint=False, related_name="rsField", on_delete=models.CASCADE,
verbose_name='归属轮次', help_text='归属轮次', related_query_name='rsQuery')
# 如果是demandTye='3'则加上如下字段
source = models.CharField(max_length=64, blank=True, null=True, default='', verbose_name='接口来源',
help_text='接口来源')
to = models.CharField(max_length=64, blank=True, null=True, default='', verbose_name='接口目的地',
help_text='接口目的地')
type = models.CharField(max_length=64, blank=True, null=True, default='', verbose_name='接口类型',
type = models.CharField(max_length=1024, blank=True, null=True, default='', verbose_name='接口类型',
help_text='接口类型')
# 注意:该字段改为接口数据
protocal = models.CharField(max_length=1024, blank=True, null=True, default='', verbose_name='接口数据',
help_text='接口数据')
is_bidirectional = models.BooleanField(
default=False,
verbose_name="是否双向"
)
def __str__(self):
return f'设计需求:{self.name}'
@@ -217,6 +214,29 @@ class Design(CoreModel):
verbose_name_plural = verbose_name
ordering = ('key',)
class JKDesignInfo(CoreModel):
class Direction(models.TextChoices):
FORWARD = 'forward', '正向'
REVERSE = 'reverse', '反向'
jk = models.ForeignKey(Design, on_delete=models.CASCADE, related_name="jkField", verbose_name="所属接口Design")
direction = models.CharField(
max_length=10,
choices=Direction.choices, # type: ignore
verbose_name="方向"
)
description = models.TextField(max_length=1024, blank=True, null=True, verbose_name="接口描述")
source = models.CharField(max_length=200, blank=True, null=True, verbose_name="来源")
destination = models.CharField(max_length=200, blank=True, null=True, verbose_name="目的地")
class Meta:
unique_together = [['jk', 'direction']] # 同一个方向仅一条记录
verbose_name = "接口一个方向的信息"
verbose_name_plural = "接口一个方向的信息"
def __str__(self):
return f"{self.jk.name} - {self.get_direction_display()}"
class TestDemand(CoreModel):
"""测试项"""
objects = models.Manager()

View File

@@ -1,5 +1,5 @@
from typing import Optional
from apps.project.models import Design
from apps.project.models import Design, JKDesignInfo
from ninja import Field, Schema, ModelSchema
from typing import List, Union
from pydantic import AliasChoices
@@ -30,11 +30,54 @@ class DesignModelOutSchemaOrigin(ModelSchema):
class DesignModelOutSchema(ModelSchema):
# 新增字段 - 上级的dut对象
dut: Optional[DutModelOutSchema] = None
is_bidirectional: bool = Field(False, alias='is_bidirectional')
forward_source: str = Field("")
forward_destination: str = Field("")
forward_description: str = Field("")
reverse_source: str = Field("")
reverse_destination: str = Field("")
reverse_description: str = Field("")
class Meta:
model = Design
exclude = ['project', 'round', 'dut', 'remark', 'sort']
# ---------- 解析器方法 ----------
@staticmethod
def resolve_is_bidirectional(obj: Design) -> bool:
return obj.is_bidirectional
@staticmethod
def resolve_forward_source(obj: Design) -> str:
"""从 JKDesignInfo 正向记录中获取 source"""
info = obj.jkField.filter(direction=JKDesignInfo.Direction.FORWARD).first()
return info.source if info else ""
@staticmethod
def resolve_forward_destination(obj: Design) -> str:
info = obj.jkField.filter(direction=JKDesignInfo.Direction.FORWARD).first()
return info.destination if info else ""
@staticmethod
def resolve_forward_description(obj: Design) -> str:
info = obj.jkField.filter(direction=JKDesignInfo.Direction.FORWARD).first()
return info.description if info else ""
@staticmethod
def resolve_reverse_source(obj: Design) -> str:
info = obj.jkField.filter(direction=JKDesignInfo.Direction.REVERSE).first()
return info.source if info else ""
@staticmethod
def resolve_reverse_destination(obj: Design) -> str:
info = obj.jkField.filter(direction=JKDesignInfo.Direction.REVERSE).first()
return info.destination if info else ""
@staticmethod
def resolve_reverse_description(obj: Design) -> str:
info = obj.jkField.filter(direction=JKDesignInfo.Direction.REVERSE).first()
return info.description if info else ""
# 处理树状结构的schema
class DesignTreeReturnSchema(Schema):
title: str = Field(..., alias='title')
@@ -66,11 +109,15 @@ class DesignCreateInputSchema(Schema):
demandType: str = Field(None, alias="demandType")
description: str = Field("", alias="description")
chapter: str = Field(None, alias='chapter')
# 接口独有的4个字段
source: str = Field('', alias='source')
to: str = Field('', alias='to')
# 接口类型包含
type: str = Field('', alias='type')
protocal: str = Field('', alias='protocal')
is_bidirectional: bool = Field(False, alias='is_bidirectional')
forward_source: str = Field("")
forward_destination: str = Field("")
forward_description: str = Field("")
reverse_source: str = Field("")
reverse_destination: str = Field("")
reverse_description: str = Field("")
class SingleDesignSchema(Schema):
ident: str = Field(None, alias="ident")

View File

@@ -1,334 +1,8 @@
[WARNING][2026-03-14 10:35:20,046][log.py:249]Unauthorized: /api/system/getInfo
[WARNING][2026-03-14 10:35:20,146][log.py:249]Unauthorized: /api/system/logout
[WARNING][2026-03-14 10:35:24,335][backend.py:91]Caught LDAPError looking up user: SERVER_DOWN({'result': -1, 'desc': "Can't contact LDAP server", 'ctrls': []})
[WARNING][2026-04-07 09:27:09,901][log.py:249]Not Found: /
[WARNING][2026-04-07 09:27:10,065][log.py:249]Not Found: /favicon.ico
[WARNING][2026-04-07 18:03:09,337][backend.py:91]Caught LDAPError looking up user: SERVER_DOWN({'result': -1, 'desc': "Can't contact LDAP server", 'ctrls': []})
[WARNING][2026-04-15 18:38:48,504][log.py:249]Unauthorized: /api/system/getInfo
[WARNING][2026-04-15 18:38:48,566][log.py:249]Unauthorized: /api/system/logout
[WARNING][2026-04-15 18:38:55,114][backend.py:91]Caught LDAPError looking up user: SERVER_DOWN({'result': -1, 'desc': "Can't contact LDAP server", 'ctrls': []})
[WARNING][2026-04-16 09:18:04,544][log.py:249]Unauthorized: /api/system/getInfo
[WARNING][2026-04-16 09:18:04,605][log.py:249]Unauthorized: /api/system/logout
[WARNING][2026-04-16 09:18:08,604][backend.py:91]Caught LDAPError looking up user: SERVER_DOWN({'result': -1, 'desc': "Can't contact LDAP server", 'ctrls': []})
[WARNING][2026-04-16 09:27:24,231][backend.py:91]Caught LDAPError looking up user: SERVER_DOWN({'result': -1, 'desc': "Can't contact LDAP server", 'ctrls': []})
[WARNING][2026-04-16 09:36:04,828][backend.py:91]Caught LDAPError looking up user: SERVER_DOWN({'result': -1, 'desc': "Can't contact LDAP server", 'ctrls': []})
[ERROR][2026-04-16 10:57:10,857][log.py:249]Internal Server Error: /api/project/testDemand/save
[WARNING][2026-04-16 13:38:39,790][backend.py:91]Caught LDAPError looking up user: SERVER_DOWN({'result': -1, 'desc': "Can't contact LDAP server", 'ctrls': []})
[ERROR][2026-04-16 14:05:52,897][log.py:249]Internal Server Error: /api/project/testDemand/save
[WARNING][2026-04-16 14:28:36,656][operation.py:136]"POST - GenerateSeitaiController[create_smDocument] /api/create/smDocument" ('rId15',)
[ERROR][2026-04-16 14:28:36,656][errors.py:131]'rId15'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 105, in create_smDocument
result = generate_temp_doc('sm', payload.id, frag_list=payload.frag)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\docXmlUtils.py", line 199, in generate_temp_doc
related_part: ImagePart = doc_copied.part.related_parts[embed]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
KeyError: 'rId15'
[ERROR][2026-04-16 14:28:36,662][log.py:249]Internal Server Error: /api/create/smDocument
[WARNING][2026-04-16 14:30:45,351][operation.py:136]"POST - GenerateSeitaiController[create_hsmDocument] /api/create/hsmDocument" ('rId15',)
[ERROR][2026-04-16 14:30:45,351][errors.py:131]'rId15'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 190, in create_hsmDocument
result = generate_temp_doc('hsm', payload.id, round_num=cname, frag_list=payload.frag)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\docXmlUtils.py", line 199, in generate_temp_doc
related_part: ImagePart = doc_copied.part.related_parts[embed]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
KeyError: 'rId15'
[ERROR][2026-04-16 14:30:45,352][log.py:249]Internal Server Error: /api/create/hsmDocument
[WARNING][2026-04-16 14:31:17,977][operation.py:136]"POST - GenerateSeitaiController[create_bgDocument] /api/create/bgDocument" ('rId15',)
[ERROR][2026-04-16 14:31:17,977][errors.py:131]'rId15'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 314, in create_bgDocument
result = generate_temp_doc('bg', payload.id, frag_list=payload.frag)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\docXmlUtils.py", line 199, in generate_temp_doc
related_part: ImagePart = doc_copied.part.related_parts[embed]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
KeyError: 'rId15'
[ERROR][2026-04-16 14:31:17,978][log.py:249]Internal Server Error: /api/create/bgDocument
[WARNING][2026-04-16 15:42:36,466][operation.py:136]"POST - GenerateSeitaiController[create_smDocument] /api/create/smDocument" ('rId15',)
[ERROR][2026-04-16 15:42:36,466][errors.py:131]'rId15'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 105, in create_smDocument
result = generate_temp_doc('sm', payload.id, frag_list=payload.frag)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\docXmlUtils.py", line 199, in generate_temp_doc
related_part: ImagePart = doc_copied.part.related_parts[embed]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
KeyError: 'rId15'
[ERROR][2026-04-16 15:42:36,470][log.py:249]Internal Server Error: /api/create/smDocument
[WARNING][2026-04-16 15:53:58,706][operation.py:136]"POST - GenerateSeitaiController[create_smDocument] /api/create/smDocument" ('rId15',)
[ERROR][2026-04-16 15:53:58,706][errors.py:131]'rId15'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 105, in create_smDocument
result = generate_temp_doc('sm', payload.id, frag_list=payload.frag)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\docXmlUtils.py", line 199, in generate_temp_doc
related_part: ImagePart = doc_copied.part.related_parts[embed]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
KeyError: 'rId15'
[ERROR][2026-04-16 15:53:58,707][log.py:249]Internal Server Error: /api/create/smDocument
[WARNING][2026-04-16 15:56:20,961][operation.py:136]"POST - GenerateSeitaiController[create_smDocument] /api/create/smDocument" ('rId15',)
[ERROR][2026-04-16 15:56:20,961][errors.py:131]'rId15'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 105, in create_smDocument
result = generate_temp_doc('sm', payload.id, frag_list=payload.frag)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\docXmlUtils.py", line 200, in generate_temp_doc
related_part: ImagePart = doc_copied.part.related_parts[embed]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
KeyError: 'rId15'
[ERROR][2026-04-16 15:56:20,964][log.py:249]Internal Server Error: /api/create/smDocument
[WARNING][2026-04-16 15:56:53,464][operation.py:136]"POST - GenerateSeitaiController[create_smDocument] /api/create/smDocument" ('rId15',)
[ERROR][2026-04-16 15:56:53,464][errors.py:131]'rId15'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 105, in create_smDocument
result = generate_temp_doc('sm', payload.id, frag_list=payload.frag)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\docXmlUtils.py", line 201, in generate_temp_doc
related_part: ImagePart = doc_copied.part.related_parts[embed]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
KeyError: 'rId15'
[ERROR][2026-04-16 15:56:53,497][log.py:249]Internal Server Error: /api/create/smDocument
[WARNING][2026-04-16 16:20:18,046][operation.py:136]"POST - GenerateSeitaiController[create_smDocument] /api/create/smDocument" ('rId15',)
[ERROR][2026-04-16 16:20:18,046][errors.py:131]'rId15'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 105, in create_smDocument
result = generate_temp_doc('sm', payload.id, frag_list=payload.frag)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\docXmlUtils.py", line 199, in generate_temp_doc
related_part: ImagePart = doc_copied.part.related_parts[embed]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
KeyError: 'rId15'
[ERROR][2026-04-16 16:20:18,050][log.py:249]Internal Server Error: /api/create/smDocument
[WARNING][2026-04-16 16:23:25,686][operation.py:136]"POST - GenerateSeitaiController[create_smDocument] /api/create/smDocument" ('rId15',)
[ERROR][2026-04-16 16:23:25,686][errors.py:131]'rId15'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 105, in create_smDocument
result = generate_temp_doc('sm', payload.id, frag_list=payload.frag)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\docXmlUtils.py", line 200, in generate_temp_doc
related_part: ImagePart = doc_copied.part.related_parts[embed]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
KeyError: 'rId15'
[ERROR][2026-04-16 16:23:25,824][log.py:249]Internal Server Error: /api/create/smDocument
[WARNING][2026-04-16 16:29:41,449][operation.py:136]"POST - GenerateSeitaiController[create_smDocument] /api/create/smDocument" ('rId15',)
[ERROR][2026-04-16 16:29:41,449][errors.py:131]'rId15'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 105, in create_smDocument
result = generate_temp_doc('sm', payload.id, frag_list=payload.frag)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\docXmlUtils.py", line 200, in generate_temp_doc
related_part: ImagePart = doc_copied.part.related_parts[embed]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
KeyError: 'rId15'
[ERROR][2026-04-16 16:29:41,452][log.py:249]Internal Server Error: /api/create/smDocument
[WARNING][2026-04-16 17:14:40,599][operation.py:136]"POST - UploadDocumentController[upload_file] /api/documentUpload/file" ("'DocumentPart' object has no attribute 'get_or_add_image_part'",)
[ERROR][2026-04-16 17:14:40,600][errors.py:131]'DocumentPart' object has no attribute 'get_or_add_image_part'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 459, in upload_file
self.get_dg_to_reuse_dir(target_dir.parent.parent / 'reuse')
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 486, in get_dg_to_reuse_dir
self._copy_element_with_images(child, src_doc, new_doc)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 515, in _copy_element_with_images
new_image_part = dst_doc.part.get_or_add_image_part(image_blob)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'DocumentPart' object has no attribute 'get_or_add_image_part'. Did you mean: 'get_or_add_image'?
[ERROR][2026-04-16 17:14:40,603][log.py:249]Internal Server Error: /api/documentUpload/file
[WARNING][2026-04-16 17:15:14,670][operation.py:136]"POST - UploadDocumentController[upload_file] /api/documentUpload/file" ("'bytes' object has no attribute 'seek'",)
[ERROR][2026-04-16 17:15:14,671][errors.py:131]'bytes' object has no attribute 'seek'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 459, in upload_file
self.get_dg_to_reuse_dir(target_dir.parent.parent / 'reuse')
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 486, in get_dg_to_reuse_dir
self._copy_element_with_images(child, src_doc, new_doc)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 515, in _copy_element_with_images
new_image_part = dst_doc.part.get_or_add_image(image_blob)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\parts\story.py", line 37, in get_or_add_image
image_part = package.get_or_add_image_part(image_descriptor)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\package.py", line 31, in get_or_add_image_part
return self.image_parts.get_or_add_image_part(image_descriptor)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\package.py", line 74, in get_or_add_image_part
image = Image.from_file(image_descriptor)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\image\image.py", line 47, in from_file
stream.seek(0)
^^^^^^^^^^^
AttributeError: 'bytes' object has no attribute 'seek'
[ERROR][2026-04-16 17:15:14,679][log.py:249]Internal Server Error: /api/documentUpload/file
[WARNING][2026-04-16 17:15:34,677][operation.py:136]"POST - UploadDocumentController[upload_file] /api/documentUpload/file" ("'DocumentPart' object has no attribute 'get_or_add_image_part'",)
[ERROR][2026-04-16 17:15:34,677][errors.py:131]'DocumentPart' object has no attribute 'get_or_add_image_part'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 459, in upload_file
self.get_dg_to_reuse_dir(target_dir.parent.parent / 'reuse')
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 486, in get_dg_to_reuse_dir
self._copy_element_with_images(child, src_doc, new_doc)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 515, in _copy_element_with_images
new_image_part = dst_doc.part.get_or_add_image_part(image_blob)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'DocumentPart' object has no attribute 'get_or_add_image_part'. Did you mean: 'get_or_add_image'?
[ERROR][2026-04-16 17:15:34,681][log.py:249]Internal Server Error: /api/documentUpload/file
[WARNING][2026-04-16 17:17:47,027][operation.py:136]"POST - UploadDocumentController[upload_file] /api/documentUpload/file" ("BaseOxmlElement.xpath() got an unexpected keyword argument 'namespaces'",)
[ERROR][2026-04-16 17:17:47,027][errors.py:131]BaseOxmlElement.xpath() got an unexpected keyword argument 'namespaces'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 462, in upload_file
self.get_dg_to_reuse_dir(target_dir.parent.parent / 'reuse')
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 489, in get_dg_to_reuse_dir
self._copy_element_with_images(child, src_doc, new_doc)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 510, in _copy_element_with_images
pic_nodes = new_element.xpath('.//pic:pic', namespaces=namespaces)
TypeError: BaseOxmlElement.xpath() got an unexpected keyword argument 'namespaces'
[ERROR][2026-04-16 17:17:47,029][log.py:249]Internal Server Error: /api/documentUpload/file
[WARNING][2026-04-16 17:19:37,022][operation.py:136]"POST - UploadDocumentController[upload_file] /api/documentUpload/file" ("'lxml.etree._Element' object has no attribute 'xml'",)
[ERROR][2026-04-16 17:19:37,022][errors.py:131]'lxml.etree._Element' object has no attribute 'xml'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 462, in upload_file
self.get_dg_to_reuse_dir(target_dir.parent.parent / 'reuse')
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 489, in get_dg_to_reuse_dir
self._copy_element_with_images(child, src_doc, new_doc)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 497, in _copy_element_with_images
new_element = parse_xml(element.xml)
^^^^^^^^^^^
AttributeError: 'lxml.etree._Element' object has no attribute 'xml'
[ERROR][2026-04-16 17:19:37,024][log.py:249]Internal Server Error: /api/documentUpload/file
[WARNING][2026-04-16 17:21:20,339][operation.py:136]"POST - UploadDocumentController[upload_file] /api/documentUpload/file" ("BaseOxmlElement.xpath() got an unexpected keyword argument 'namespaces'",)
[ERROR][2026-04-16 17:21:20,339][errors.py:131]BaseOxmlElement.xpath() got an unexpected keyword argument 'namespaces'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 462, in upload_file
self.get_dg_to_reuse_dir(target_dir.parent.parent / 'reuse')
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 489, in get_dg_to_reuse_dir
self._copy_element_with_images(child, src_doc, new_doc)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createSeiTaiDocument\controllers.py", line 511, in _copy_element_with_images
pic_nodes = new_element.xpath('.//pic:pic', namespaces=nsmap)
TypeError: BaseOxmlElement.xpath() got an unexpected keyword argument 'namespaces'
[ERROR][2026-04-16 17:21:20,341][log.py:249]Internal Server Error: /api/documentUpload/file
[WARNING][2026-04-17 13:45:31,769][log.py:249]Unauthorized: /api/system/getInfo
[WARNING][2026-04-17 13:45:31,835][log.py:249]Unauthorized: /api/system/logout
[WARNING][2026-04-17 13:45:36,826][backend.py:91]Caught LDAPError looking up user: SERVER_DOWN({'result': -1, 'desc': "Can't contact LDAP server", 'ctrls': []})
[WARNING][2026-04-17 14:20:04,514][logger.py:25][回归测试记录模块][字典数据缺失]片段:字典数据runtime数据缺失请检查相应数据是否存在
[WARNING][2026-04-17 14:20:04,518][logger.py:25][回归测试记录模块][字典数据缺失]片段:字典数据devplant数据缺失请检查相应数据是否存在
[WARNING][2026-04-17 16:18:06,060][operation.py:136]"PUT - TestDemandController[update_testDemand] /api/project/testDemand/update/670" (1406, "Data too long for column 'adequacy' at row 1")
[ERROR][2026-04-17 16:18:06,060][errors.py:131](1406, "Data too long for column 'adequacy' at row 1")
[WARNING][2026-04-22 09:45:35,603][log.py:249]Unauthorized: /api/system/getInfo
[WARNING][2026-04-22 09:45:35,677][log.py:249]Unauthorized: /api/system/logout
[WARNING][2026-04-22 09:45:39,967][backend.py:91]Caught LDAPError looking up user: SERVER_DOWN({'result': -1, 'desc': "Can't contact LDAP server", 'ctrls': []})
[WARNING][2026-04-22 11:03:49,239][operation.py:136]"PUT - DesignController[update_design] /api/project/editDesignDemand/4030" (1048, "Column 'is_bidirectional' cannot be null")
[ERROR][2026-04-22 11:03:49,239][errors.py:131](1048, "Column 'is_bidirectional' cannot be null")
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 105, in _execute
return self.cursor.execute(sql, params)
@@ -344,7 +18,7 @@ Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\connections.py", line 286, in query
_mysql.connection.query(self, query)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
MySQLdb.DataError: (1406, "Data too long for column 'adequacy' at row 1")
MySQLdb.IntegrityError: (1048, "Column 'is_bidirectional' cannot be null")
The above exception was the direct cause of the following exception:
@@ -357,9 +31,9 @@ Traceback (most recent call last):
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\project\controllers\testDemand.py", line 270, in update_testDemand
testDemand_qs.save()
~~~~~~~~~~~~~~~~~~^^
File "E:\pycharmProjects\cdtestplant_v1\apps\project\controllers\design.py", line 148, in update_design
design_qs.save()
~~~~~~~~~~~~~~^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 874, in save
self.save_base(
~~~~~~~~~~~~~~^
@@ -426,168 +100,10 @@ Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\connections.py", line 286, in query
_mysql.connection.query(self, query)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
django.db.utils.DataError: (1406, "Data too long for column 'adequacy' at row 1")
[ERROR][2026-04-17 16:18:06,071][log.py:249]Internal Server Error: /api/project/testDemand/update/670
[WARNING][2026-04-17 16:35:01,341][log.py:249]Bad Request: /api/testmanage/project/save
[WARNING][2026-04-17 16:45:59,963][log.py:249]Bad Request: /api/testmanage/project/save
[WARNING][2026-04-17 16:46:01,209][log.py:249]Bad Request: /api/testmanage/project/save
[WARNING][2026-04-17 17:01:10,991][log.py:249]Bad Request: /api/testmanage/project/save
[WARNING][2026-04-20 09:31:28,826][log.py:249]Unauthorized: /api/system/getInfo
[WARNING][2026-04-20 09:31:28,893][log.py:249]Unauthorized: /api/system/logout
[WARNING][2026-04-20 09:31:36,102][backend.py:91]Caught LDAPError looking up user: SERVER_DOWN({'result': -1, 'desc': "Can't contact LDAP server", 'ctrls': []})
[ERROR][2026-04-20 09:34:09,062][log.py:249]Internal Server Error: /api/project/testDemand/save
[ERROR][2026-04-20 09:34:10,386][log.py:249]Internal Server Error: /api/project/testDemand/save
[ERROR][2026-04-20 09:34:10,841][log.py:249]Internal Server Error: /api/project/testDemand/save
[WARNING][2026-04-20 10:25:04,532][operation.py:136]"GET - GenerateControllerDG[create_static_hard] /api/generate/create/static_hard" ('All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters',)
[ERROR][2026-04-20 10:25:04,532][errors.py:131]All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "E:\pycharmProjects\cdtestplant_v1\apps\createDocument\controllers\dg.py", line 567, in create_static_hard
res = self.uniform_static_dynamic_response(id, '静态硬件和固件项_2.docx', '静态硬件和固件项.docx', StaticSoftHardware)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createDocument\controllers\dg.py", line 535, in uniform_static_dynamic_response
subdoc = cls.create_table_context(table_data, doc)
File "E:\pycharmProjects\cdtestplant_v1\apps\createDocument\controllers\dg.py", line 498, in create_table_context
cell.text = cell.text.replace("\n", "\a")
^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\table.py", line 284, in text
r.text = text
^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 143, in text
_RunContentAppender.append_to_run_from_text(self, text)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 279, in append_to_run_from_text
appender.add_text(text)
~~~~~~~~~~~~~~~~~^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 285, in add_text
self.flush()
~~~~~~~~~~^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 306, in flush
self._r.add_t(text)
~~~~~~~~~~~~~^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 42, in add_t
t = self._add_t(text=text)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\xmlchemy.py", line 288, in _add_child
setattr(child, key, value)
~~~~~~~^^^^^^^^^^^^^^^^^^^
File "src/lxml/etree.pyx", line 1168, in lxml.etree._Element.text.__set__
File "src/lxml/apihelpers.pxi", line 763, in lxml.etree._setNodeText
File "src/lxml/apihelpers.pxi", line 751, in lxml.etree._createTextNode
File "src/lxml/apihelpers.pxi", line 1556, in lxml.etree._utf8
ValueError: All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters
[ERROR][2026-04-20 10:25:04,710][log.py:249]Internal Server Error: /api/generate/create/static_hard
[WARNING][2026-04-20 10:25:26,146][operation.py:136]"GET - GenerateControllerDG[create_static_hard] /api/generate/create/static_hard" ('All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters',)
[ERROR][2026-04-20 10:25:26,150][errors.py:131]All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "E:\pycharmProjects\cdtestplant_v1\apps\createDocument\controllers\dg.py", line 567, in create_static_hard
res = self.uniform_static_dynamic_response(id, '静态硬件和固件项_2.docx', '静态硬件和固件项.docx', StaticSoftHardware)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createDocument\controllers\dg.py", line 535, in uniform_static_dynamic_response
subdoc = cls.create_table_context(table_data, doc)
File "E:\pycharmProjects\cdtestplant_v1\apps\createDocument\controllers\dg.py", line 498, in create_table_context
cell.text = cell.text.replace("\n", "\a")
^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\table.py", line 284, in text
r.text = text
^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 143, in text
_RunContentAppender.append_to_run_from_text(self, text)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 279, in append_to_run_from_text
appender.add_text(text)
~~~~~~~~~~~~~~~~~^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 285, in add_text
self.flush()
~~~~~~~~~~^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 306, in flush
self._r.add_t(text)
~~~~~~~~~~~~~^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 42, in add_t
t = self._add_t(text=text)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\xmlchemy.py", line 288, in _add_child
setattr(child, key, value)
~~~~~~~^^^^^^^^^^^^^^^^^^^
File "src/lxml/etree.pyx", line 1168, in lxml.etree._Element.text.__set__
File "src/lxml/apihelpers.pxi", line 763, in lxml.etree._setNodeText
File "src/lxml/apihelpers.pxi", line 751, in lxml.etree._createTextNode
File "src/lxml/apihelpers.pxi", line 1556, in lxml.etree._utf8
ValueError: All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters
[ERROR][2026-04-20 10:25:26,215][log.py:249]Internal Server Error: /api/generate/create/static_hard
[WARNING][2026-04-20 10:25:46,224][operation.py:136]"GET - GenerateControllerDG[create_static_hard] /api/generate/create/static_hard" ('All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters',)
[ERROR][2026-04-20 10:25:46,224][errors.py:131]All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "E:\pycharmProjects\cdtestplant_v1\apps\createDocument\controllers\dg.py", line 565, in create_static_hard
res = self.uniform_static_dynamic_response(id, '静态硬件和固件项_2.docx', '静态硬件和固件项.docx', StaticSoftHardware)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\apps\createDocument\controllers\dg.py", line 533, in uniform_static_dynamic_response
subdoc = cls.create_table_context(table_data, doc)
File "E:\pycharmProjects\cdtestplant_v1\apps\createDocument\controllers\dg.py", line 496, in create_table_context
cell.text = table_data[row][col - 1].replace("\n", "\a")
^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\table.py", line 284, in text
r.text = text
^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 143, in text
_RunContentAppender.append_to_run_from_text(self, text)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 279, in append_to_run_from_text
appender.add_text(text)
~~~~~~~~~~~~~~~~~^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 285, in add_text
self.flush()
~~~~~~~~~~^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 306, in flush
self._r.add_t(text)
~~~~~~~~~~~~~^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\text\run.py", line 42, in add_t
t = self._add_t(text=text)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\docx\oxml\xmlchemy.py", line 288, in _add_child
setattr(child, key, value)
~~~~~~~^^^^^^^^^^^^^^^^^^^
File "src/lxml/etree.pyx", line 1168, in lxml.etree._Element.text.__set__
File "src/lxml/apihelpers.pxi", line 763, in lxml.etree._setNodeText
File "src/lxml/apihelpers.pxi", line 751, in lxml.etree._createTextNode
File "src/lxml/apihelpers.pxi", line 1556, in lxml.etree._utf8
ValueError: All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters
[ERROR][2026-04-20 10:25:46,266][log.py:249]Internal Server Error: /api/generate/create/static_hard
[WARNING][2026-04-20 10:34:26,463][operation.py:136]"POST - DesignController[create_design] /api/project/designDemand/save" (1406, "Data too long for column 'protocal' at row 1")
[ERROR][2026-04-20 10:34:26,463][errors.py:131](1406, "Data too long for column 'protocal' at row 1")
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 105, in _execute
return self.cursor.execute(sql, params)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\mysql\base.py", line 78, in execute
return self.cursor.execute(query, args)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 179, in execute
res = self._query(mogrified_query)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 330, in _query
db.query(q)
~~~~~~~~^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\connections.py", line 286, in query
_mysql.connection.query(self, query)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
MySQLdb.DataError: (1406, "Data too long for column 'protocal' at row 1")
The above exception was the direct cause of the following exception:
django.db.utils.IntegrityError: (1048, "Column 'is_bidirectional' cannot be null")
[ERROR][2026-04-22 11:03:49,254][log.py:249]Internal Server Error: /api/project/editDesignDemand/4030
[WARNING][2026-04-22 11:23:22,342][operation.py:136]"POST - DesignController[create_design] /api/project/designDemand/save" ("Design() got unexpected keyword arguments: 'forward_source', 'forward_destination', 'forward_description', 'reverse_source', 'reverse_destination', 'reverse_description'",)
[ERROR][2026-04-22 11:23:22,342][errors.py:131]Design() got unexpected keyword arguments: 'forward_source', 'forward_destination', 'forward_description', 'reverse_source', 'reverse_destination', 'reverse_description'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
@@ -597,107 +113,21 @@ Traceback (most recent call last):
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\project\controllers\design.py", line 100, in create_design
File "E:\pycharmProjects\cdtestplant_v1\apps\project\controllers\design.py", line 116, in create_design
qs = Design.objects.create(**asert_dict)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\manager.py", line 87, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\query.py", line 669, in create
obj.save(force_insert=True, using=self.db)
~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 874, in save
self.save_base(
~~~~~~~~~~~~~~^
using=using,
^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\query.py", line 667, in create
obj = self.model(**kwargs)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 590, in __init__
raise TypeError(
...<2 lines>...
update_fields=update_fields,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 966, in save_base
updated = self._save_table(
raw,
...<4 lines>...
update_fields,
)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 1169, in _save_table
results = self._do_insert(
cls._base_manager, using, insert_fields, returning_fields, raw
)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 1220, in _do_insert
return manager._insert(
~~~~~~~~~~~~~~~^
[self],
^^^^^^^
...<3 lines>...
raw=raw,
^^^^^^^^
)
^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\manager.py", line 87, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\query.py", line 1918, in _insert
return query.get_compiler(using=using).execute_sql(returning_fields)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\sql\compiler.py", line 1925, in execute_sql
cursor.execute(sql, params)
~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 122, in execute
return super().execute(sql, params)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 79, in execute
return self._execute_with_wrappers(
~~~~~~~~~~~~~~~~~~~~~~~~~~~^
sql, params, many=False, executor=self._execute
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 92, in _execute_with_wrappers
return executor(sql, params, many, context)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 100, in _execute
with self.db.wrap_database_errors:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\utils.py", line 94, in __exit__
raise dj_exc_value.with_traceback(traceback) from exc_value
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 105, in _execute
return self.cursor.execute(sql, params)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\mysql\base.py", line 78, in execute
return self.cursor.execute(query, args)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 179, in execute
res = self._query(mogrified_query)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 330, in _query
db.query(q)
~~~~~~~~^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\connections.py", line 286, in query
_mysql.connection.query(self, query)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
django.db.utils.DataError: (1406, "Data too long for column 'protocal' at row 1")
[ERROR][2026-04-20 10:34:26,484][log.py:249]Internal Server Error: /api/project/designDemand/save
[WARNING][2026-04-20 10:35:26,599][operation.py:136]"POST - DesignController[create_design] /api/project/designDemand/save" (1406, "Data too long for column 'protocal' at row 1")
[ERROR][2026-04-20 10:35:26,599][errors.py:131](1406, "Data too long for column 'protocal' at row 1")
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 105, in _execute
return self.cursor.execute(sql, params)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\mysql\base.py", line 78, in execute
return self.cursor.execute(query, args)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 179, in execute
res = self._query(mogrified_query)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 330, in _query
db.query(q)
~~~~~~~~^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\connections.py", line 286, in query
_mysql.connection.query(self, query)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
MySQLdb.DataError: (1406, "Data too long for column 'protocal' at row 1")
The above exception was the direct cause of the following exception:
TypeError: Design() got unexpected keyword arguments: 'forward_source', 'forward_destination', 'forward_description', 'reverse_source', 'reverse_destination', 'reverse_description'
[ERROR][2026-04-22 11:23:22,347][log.py:249]Internal Server Error: /api/project/designDemand/save
[WARNING][2026-04-22 13:13:59,640][operation.py:136]"GET - GenerateControllerDG[create_interface] /api/generate/create/interface" ("'Design' object has no attribute 'source'",)
[ERROR][2026-04-22 13:13:59,640][errors.py:131]'Design' object has no attribute 'source'
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
@@ -705,307 +135,8 @@ Traceback (most recent call last):
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\project\controllers\design.py", line 100, in create_design
qs = Design.objects.create(**asert_dict)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\manager.py", line 87, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\query.py", line 669, in create
obj.save(force_insert=True, using=self.db)
~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 874, in save
self.save_base(
~~~~~~~~~~~~~~^
using=using,
^^^^^^^^^^^^
...<2 lines>...
update_fields=update_fields,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 966, in save_base
updated = self._save_table(
raw,
...<4 lines>...
update_fields,
)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 1169, in _save_table
results = self._do_insert(
cls._base_manager, using, insert_fields, returning_fields, raw
)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 1220, in _do_insert
return manager._insert(
~~~~~~~~~~~~~~~^
[self],
^^^^^^^
...<3 lines>...
raw=raw,
^^^^^^^^
)
^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\manager.py", line 87, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\query.py", line 1918, in _insert
return query.get_compiler(using=using).execute_sql(returning_fields)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\sql\compiler.py", line 1925, in execute_sql
cursor.execute(sql, params)
~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 122, in execute
return super().execute(sql, params)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 79, in execute
return self._execute_with_wrappers(
~~~~~~~~~~~~~~~~~~~~~~~~~~~^
sql, params, many=False, executor=self._execute
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 92, in _execute_with_wrappers
return executor(sql, params, many, context)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 100, in _execute
with self.db.wrap_database_errors:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\utils.py", line 94, in __exit__
raise dj_exc_value.with_traceback(traceback) from exc_value
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 105, in _execute
return self.cursor.execute(sql, params)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\mysql\base.py", line 78, in execute
return self.cursor.execute(query, args)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 179, in execute
res = self._query(mogrified_query)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 330, in _query
db.query(q)
~~~~~~~~^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\connections.py", line 286, in query
_mysql.connection.query(self, query)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
django.db.utils.DataError: (1406, "Data too long for column 'protocal' at row 1")
[ERROR][2026-04-20 10:35:26,608][log.py:249]Internal Server Error: /api/project/designDemand/save
[WARNING][2026-04-20 10:35:27,464][operation.py:136]"POST - DesignController[create_design] /api/project/designDemand/save" (1406, "Data too long for column 'protocal' at row 1")
[ERROR][2026-04-20 10:35:27,464][errors.py:131](1406, "Data too long for column 'protocal' at row 1")
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 105, in _execute
return self.cursor.execute(sql, params)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\mysql\base.py", line 78, in execute
return self.cursor.execute(query, args)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 179, in execute
res = self._query(mogrified_query)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 330, in _query
db.query(q)
~~~~~~~~^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\connections.py", line 286, in query
_mysql.connection.query(self, query)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
MySQLdb.DataError: (1406, "Data too long for column 'protocal' at row 1")
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\project\controllers\design.py", line 100, in create_design
qs = Design.objects.create(**asert_dict)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\manager.py", line 87, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\query.py", line 669, in create
obj.save(force_insert=True, using=self.db)
~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 874, in save
self.save_base(
~~~~~~~~~~~~~~^
using=using,
^^^^^^^^^^^^
...<2 lines>...
update_fields=update_fields,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 966, in save_base
updated = self._save_table(
raw,
...<4 lines>...
update_fields,
)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 1169, in _save_table
results = self._do_insert(
cls._base_manager, using, insert_fields, returning_fields, raw
)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 1220, in _do_insert
return manager._insert(
~~~~~~~~~~~~~~~^
[self],
^^^^^^^
...<3 lines>...
raw=raw,
^^^^^^^^
)
^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\manager.py", line 87, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\query.py", line 1918, in _insert
return query.get_compiler(using=using).execute_sql(returning_fields)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\sql\compiler.py", line 1925, in execute_sql
cursor.execute(sql, params)
~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 122, in execute
return super().execute(sql, params)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 79, in execute
return self._execute_with_wrappers(
~~~~~~~~~~~~~~~~~~~~~~~~~~~^
sql, params, many=False, executor=self._execute
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 92, in _execute_with_wrappers
return executor(sql, params, many, context)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 100, in _execute
with self.db.wrap_database_errors:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\utils.py", line 94, in __exit__
raise dj_exc_value.with_traceback(traceback) from exc_value
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 105, in _execute
return self.cursor.execute(sql, params)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\mysql\base.py", line 78, in execute
return self.cursor.execute(query, args)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 179, in execute
res = self._query(mogrified_query)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 330, in _query
db.query(q)
~~~~~~~~^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\connections.py", line 286, in query
_mysql.connection.query(self, query)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
django.db.utils.DataError: (1406, "Data too long for column 'protocal' at row 1")
[ERROR][2026-04-20 10:35:27,473][log.py:249]Internal Server Error: /api/project/designDemand/save
[WARNING][2026-04-20 10:35:27,981][operation.py:136]"POST - DesignController[create_design] /api/project/designDemand/save" (1406, "Data too long for column 'protocal' at row 1")
[ERROR][2026-04-20 10:35:27,981][errors.py:131](1406, "Data too long for column 'protocal' at row 1")
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 105, in _execute
return self.cursor.execute(sql, params)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\mysql\base.py", line 78, in execute
return self.cursor.execute(query, args)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 179, in execute
res = self._query(mogrified_query)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 330, in _query
db.query(q)
~~~~~~~~^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\connections.py", line 286, in query
_mysql.connection.query(self, query)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
MySQLdb.DataError: (1406, "Data too long for column 'protocal' at row 1")
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\operation.py", line 217, in run
result = self.view_func(request, **ctx.kwargs["view_func_kwargs"])
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\ninja_extra\controllers\route\route_functions.py", line 108, in as_view
result = self.route.view_func(
ctx.controller_instance, *args, **ctx.view_func_kwargs
)
File "D:\programs\uv\python\cpython-3.13.11-windows-x86_64-none\Lib\contextlib.py", line 85, in inner
return func(*args, **kwds)
File "E:\pycharmProjects\cdtestplant_v1\apps\project\controllers\design.py", line 100, in create_design
qs = Design.objects.create(**asert_dict)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\manager.py", line 87, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\query.py", line 669, in create
obj.save(force_insert=True, using=self.db)
~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 874, in save
self.save_base(
~~~~~~~~~~~~~~^
using=using,
^^^^^^^^^^^^
...<2 lines>...
update_fields=update_fields,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 966, in save_base
updated = self._save_table(
raw,
...<4 lines>...
update_fields,
)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 1169, in _save_table
results = self._do_insert(
cls._base_manager, using, insert_fields, returning_fields, raw
)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\base.py", line 1220, in _do_insert
return manager._insert(
~~~~~~~~~~~~~~~^
[self],
^^^^^^^
...<3 lines>...
raw=raw,
^^^^^^^^
)
^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\manager.py", line 87, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\query.py", line 1918, in _insert
return query.get_compiler(using=using).execute_sql(returning_fields)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\models\sql\compiler.py", line 1925, in execute_sql
cursor.execute(sql, params)
~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 122, in execute
return super().execute(sql, params)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 79, in execute
return self._execute_with_wrappers(
~~~~~~~~~~~~~~~~~~~~~~~~~~~^
sql, params, many=False, executor=self._execute
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 92, in _execute_with_wrappers
return executor(sql, params, many, context)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 100, in _execute
with self.db.wrap_database_errors:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\utils.py", line 94, in __exit__
raise dj_exc_value.with_traceback(traceback) from exc_value
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\utils.py", line 105, in _execute
return self.cursor.execute(sql, params)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\django\db\backends\mysql\base.py", line 78, in execute
return self.cursor.execute(query, args)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 179, in execute
res = self._query(mogrified_query)
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\cursors.py", line 330, in _query
db.query(q)
~~~~~~~~^^^
File "E:\pycharmProjects\cdtestplant_v1\.venv\Lib\site-packages\MySQLdb\connections.py", line 286, in query
_mysql.connection.query(self, query)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
django.db.utils.DataError: (1406, "Data too long for column 'protocal' at row 1")
[ERROR][2026-04-20 10:35:27,991][log.py:249]Internal Server Error: /api/project/designDemand/save
[WARNING][2026-04-20 10:45:28,053][log.py:249]Bad Request: /api/project/editDesignDemand/4028
[ERROR][2026-04-20 17:05:17,173][log.py:249]Internal Server Error: /api/project/case/create_by_demand
File "E:\pycharmProjects\cdtestplant_v1\apps\createDocument\controllers\dg.py", line 417, in create_interface
'source': interface.source,
^^^^^^^^^^^^^^^^
AttributeError: 'Design' object has no attribute 'source'
[ERROR][2026-04-22 13:13:59,650][log.py:249]Internal Server Error: /api/generate/create/interface

Some files were not shown because too many files have changed in this diff Show More