From 958431d28214bbfc2d9ef392e8bb245c0ca83f08 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Mon, 3 Aug 2026 17:40:30 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20CRUD=20dspy=20=E2=80=94=20move=20return?= =?UTF-8?q?=20outside=20async=20with,=20fix=20dbname=20underscore?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../add_sd_org_setting_list.dspy | 8 ++++++++ .../delete_sd_org_setting_list.dspy | 5 +++++ .../get_sd_org_setting_list.dspy | 11 +++++++++++ .../update_sd_org_setting_list.dspy | 5 +++++ .../add_sd_project_repo_list.dspy | 8 ++++++++ .../delete_sd_project_repo_list.dspy | 5 +++++ .../get_sd_project_repo_list.dspy | 16 ++++++++++++++++ .../update_sd_project_repo_list.dspy | 5 +++++ 8 files changed, 63 insertions(+) create mode 100644 wwwroot/sd_org_setting_list/add_sd_org_setting_list.dspy create mode 100644 wwwroot/sd_org_setting_list/delete_sd_org_setting_list.dspy create mode 100644 wwwroot/sd_org_setting_list/get_sd_org_setting_list.dspy create mode 100644 wwwroot/sd_org_setting_list/update_sd_org_setting_list.dspy create mode 100644 wwwroot/sd_project_repo_list/add_sd_project_repo_list.dspy create mode 100644 wwwroot/sd_project_repo_list/delete_sd_project_repo_list.dspy create mode 100644 wwwroot/sd_project_repo_list/get_sd_project_repo_list.dspy create mode 100644 wwwroot/sd_project_repo_list/update_sd_project_repo_list.dspy diff --git a/wwwroot/sd_org_setting_list/add_sd_org_setting_list.dspy b/wwwroot/sd_org_setting_list/add_sd_org_setting_list.dspy new file mode 100644 index 0000000..153e660 --- /dev/null +++ b/wwwroot/sd_org_setting_list/add_sd_org_setting_list.dspy @@ -0,0 +1,8 @@ +db = DBPools() +dbname = get_module_dbname('pipeline_sdlc') +ns = dict(params_kw) +ns['id'] = getID() +ns['org_id'] = (await get_userorgid()) or '0' +async with db.sqlorContext(dbname) as sor: + await sor.C('sd_org_settings', ns) +return {'success': True} diff --git a/wwwroot/sd_org_setting_list/delete_sd_org_setting_list.dspy b/wwwroot/sd_org_setting_list/delete_sd_org_setting_list.dspy new file mode 100644 index 0000000..2b0a4a6 --- /dev/null +++ b/wwwroot/sd_org_setting_list/delete_sd_org_setting_list.dspy @@ -0,0 +1,5 @@ +db = DBPools() +dbname = get_module_dbname('pipeline_sdlc') +async with db.sqlorContext(dbname) as sor: + await sor.D('sd_org_settings', dict(params_kw)) +return {'success': True} diff --git a/wwwroot/sd_org_setting_list/get_sd_org_setting_list.dspy b/wwwroot/sd_org_setting_list/get_sd_org_setting_list.dspy new file mode 100644 index 0000000..02cbe79 --- /dev/null +++ b/wwwroot/sd_org_setting_list/get_sd_org_setting_list.dspy @@ -0,0 +1,11 @@ +db = DBPools() +dbname = get_module_dbname('pipeline_sdlc') +rows = [] +total = 0 +async with db.sqlorContext(dbname) as sor: + recs = await sor.sqlExe('SELECT * FROM sd_org_settings ORDER BY created_at DESC') + for r in (recs or []): + rows.append({'id': r.id, 'org_id': r.org_id, 'workspace_root': r.workspace_root, + 'skills_dir': getattr(r, 'skills_dir', '') or ''}) + total = len(rows) +return {'total': total, 'rows': rows} diff --git a/wwwroot/sd_org_setting_list/update_sd_org_setting_list.dspy b/wwwroot/sd_org_setting_list/update_sd_org_setting_list.dspy new file mode 100644 index 0000000..1b1be1c --- /dev/null +++ b/wwwroot/sd_org_setting_list/update_sd_org_setting_list.dspy @@ -0,0 +1,5 @@ +db = DBPools() +dbname = get_module_dbname('pipeline_sdlc') +async with db.sqlorContext(dbname) as sor: + await sor.U('sd_org_settings', dict(params_kw)) +return {'success': True} diff --git a/wwwroot/sd_project_repo_list/add_sd_project_repo_list.dspy b/wwwroot/sd_project_repo_list/add_sd_project_repo_list.dspy new file mode 100644 index 0000000..fa26eab --- /dev/null +++ b/wwwroot/sd_project_repo_list/add_sd_project_repo_list.dspy @@ -0,0 +1,8 @@ +db = DBPools() +dbname = get_module_dbname('pipeline_sdlc') +ns = dict(params_kw) +ns['id'] = getID() +ns['org_id'] = (await get_userorgid()) or '0' +async with db.sqlorContext(dbname) as sor: + await sor.C('sd_project_repos', ns) +return {'success': True} diff --git a/wwwroot/sd_project_repo_list/delete_sd_project_repo_list.dspy b/wwwroot/sd_project_repo_list/delete_sd_project_repo_list.dspy new file mode 100644 index 0000000..d085364 --- /dev/null +++ b/wwwroot/sd_project_repo_list/delete_sd_project_repo_list.dspy @@ -0,0 +1,5 @@ +db = DBPools() +dbname = get_module_dbname('pipeline_sdlc') +async with db.sqlorContext(dbname) as sor: + await sor.D('sd_project_repos', dict(params_kw)) +return {'success': True} diff --git a/wwwroot/sd_project_repo_list/get_sd_project_repo_list.dspy b/wwwroot/sd_project_repo_list/get_sd_project_repo_list.dspy new file mode 100644 index 0000000..4b5d994 --- /dev/null +++ b/wwwroot/sd_project_repo_list/get_sd_project_repo_list.dspy @@ -0,0 +1,16 @@ +db = DBPools() +dbname = get_module_dbname('pipeline_sdlc') +rows = [] +total = 0 +async with db.sqlorContext(dbname) as sor: + pid = params_kw.get('project_id', '') + if pid: + recs = await sor.sqlExe('SELECT * FROM sd_project_repos WHERE project_id=$ ORDER BY created_at DESC', {'pid': pid}) + else: + recs = await sor.sqlExe('SELECT * FROM sd_project_repos ORDER BY created_at DESC') + for r in (recs or []): + rows.append({'id': r.id, 'project_id': r.project_id, 'repo_name': r.repo_name, + 'repo_url': r.repo_url, 'default_branch': r.default_branch, + 'local_path': getattr(r, 'local_path', '') or ''}) + total = len(rows) +return {'total': total, 'rows': rows} diff --git a/wwwroot/sd_project_repo_list/update_sd_project_repo_list.dspy b/wwwroot/sd_project_repo_list/update_sd_project_repo_list.dspy new file mode 100644 index 0000000..c4bcb7c --- /dev/null +++ b/wwwroot/sd_project_repo_list/update_sd_project_repo_list.dspy @@ -0,0 +1,5 @@ +db = DBPools() +dbname = get_module_dbname('pipeline_sdlc') +async with db.sqlorContext(dbname) as sor: + await sor.U('sd_project_repos', dict(params_kw)) +return {'success': True}