- models: 3张表JSON迁入(sd_projects全产线项目容器/pipeline_deliverables被bidding+service+core写681行实证/sd_project_role_models被pipeline-service三处消费)——分层倒置修复:core的agent_config.py裸查sd_projects/pipeline_deliverables,低层查高层表
- json: sd_project_list.json/pipeline_deliverables_list.json迁入,subtables迭代/仓库页改绝对路径/pipeline-sdlc/**(跨模块相对路径会解析到core不存在的目录)
- api: 15个CRUD页面依赖的dspy迁入(get_project_options等,entire_url('../api/')相对解析跟页面走);get_module_dbname('pipeline_sdlc')→pipeline_core(app层一律返pipeline,行为不变仅语义归位)
- init/data.json: 4组字典随表迁(sd_project_status/sd_project_type/deliverable_type/review_status)——normalize幂等键{parentid}_{k}不变,import_init重跑无副作用
- .gitignore: 补wwwroot/sd_projects/+wwwroot/pipeline_deliverables/(xls2ui生成目录,build.sh第7步清单已含pipeline_core,重生成不脏工作树)
27 lines
1.2 KiB
Plaintext
27 lines
1.2 KiB
Plaintext
user_id = await get_user()
|
|
if not user_id:
|
|
return {"widgettype":"Error","options":{"title":"操作失败","message":'未登录',"cwidth":16,"cheight":9,"timeout":3}}
|
|
|
|
data = {
|
|
'id': getID(),
|
|
'project_id': params_kw.get('project_id', ''),
|
|
'task_id': params_kw.get('task_id', ''),
|
|
'title': params_kw.get('title', ''),
|
|
'deliverable_type': params_kw.get('deliverable_type', 'code'),
|
|
'repo_name': params_kw.get('repo_name', ''),
|
|
'target_path': params_kw.get('target_path', ''),
|
|
'file_path': params_kw.get('file_path', ''),
|
|
'content': params_kw.get('content', ''),
|
|
'quality_score': params_kw.get('quality_score', 80),
|
|
'review_status': params_kw.get('review_status', 'pending'),
|
|
'created_by': user_id,
|
|
'created_at': curDateString(),
|
|
}
|
|
|
|
try:
|
|
async with get_sor_context(request._run_ns, 'pipeline') as sor:
|
|
await sor.C('pipeline_deliverables', data)
|
|
return {"widgettype":"Message","options":{"title":"创建成功","message":"ok","cwidth":16,"cheight":9,"timeout":3,"user_data": data}}
|
|
except Exception as e:
|
|
return {"widgettype":"Error","options":{"title":"操作失败","message":str(e),"cwidth":16,"cheight":9,"timeout":3}}
|