fix: replace uuid.uuid4() with getID() from appPublic.uniqueID for all table ID generation

This commit is contained in:
yumoqing 2026-05-08 15:47:21 +08:00
parent cb90bc6d2a
commit d388769ef1
5 changed files with 21 additions and 13 deletions

View File

@ -23,7 +23,7 @@ async def save_ai_config(request_data: dict, org_id: str) -> dict:
INSERT INTO contract_ai_config (id, ai_service_url, api_key, org_id, created_at, updated_at) INSERT INTO contract_ai_config (id, ai_service_url, api_key, org_id, created_at, updated_at)
VALUES (%(id)s, %(ai_service_url)s, %(api_key)s, %(org_id)s, NOW(), NOW()) VALUES (%(id)s, %(ai_service_url)s, %(api_key)s, %(org_id)s, NOW(), NOW())
""" """
request_data['id'] = str(uuid.uuid4()).replace('-', '') request_data['id'] = getID()
request_data['org_id'] = org_id request_data['org_id'] = org_id
await sor.doTransaction([{'sql': sql, 'params': request_data}]) await sor.doTransaction([{'sql': sql, 'params': request_data}])

View File

@ -1,5 +1,6 @@
import os import os
import uuid import uuid
from appPublic.uniqueID import getID
from datetime import datetime from datetime import datetime
from typing import List, Dict, Optional from typing import List, Dict, Optional
from appPublic.jsonConfig import getConfig from appPublic.jsonConfig import getConfig
@ -28,7 +29,7 @@ class ContractAttachmentManager:
user_id: str, org_id: str, user_id: str, org_id: str,
description: Optional[str] = None) -> str: description: Optional[str] = None) -> str:
"""上传合同附件""" """上传合同附件"""
attachment_id = str(uuid.uuid4()).replace('-', '') attachment_id = getID()
dbp = await self.get_db_connection(org_id) dbp = await self.get_db_connection(org_id)
org_dir = await self.ensure_upload_dir(org_id) org_dir = await self.ensure_upload_dir(org_id)

View File

@ -1,6 +1,7 @@
import os import os
import json import json
import uuid import uuid
from appPublic.uniqueID import getID
from datetime import datetime from datetime import datetime
from typing import List, Dict, Optional, Tuple from typing import List, Dict, Optional, Tuple
from appPublic.jsonConfig import getConfig from appPublic.jsonConfig import getConfig
@ -17,7 +18,7 @@ class ContractManager:
async def create_contract(self, contract_data: Dict, user_id: str, org_id: str) -> str: async def create_contract(self, contract_data: Dict, user_id: str, org_id: str) -> str:
"""创建合同""" """创建合同"""
contract_id = str(uuid.uuid4()).replace('-', '') contract_id = getID()
dbp = await self.get_db_connection(org_id) dbp = await self.get_db_connection(org_id)
# 插入合同数据 # 插入合同数据

View File

@ -1,6 +1,7 @@
import os import os
import json import json
import uuid import uuid
from appPublic.uniqueID import getID
from datetime import datetime, date, timedelta from datetime import datetime, date, timedelta
from typing import List, Dict, Optional, Tuple from typing import List, Dict, Optional, Tuple
from appPublic.jsonConfig import getConfig from appPublic.jsonConfig import getConfig
@ -48,7 +49,7 @@ class EnhancedContractManager:
async def create_contract(self, contract_data: Dict, user_id: str, org_id: str) -> str: async def create_contract(self, contract_data: Dict, user_id: str, org_id: str) -> str:
"""创建合同(增强版)""" """创建合同(增强版)"""
contract_id = str(uuid.uuid4()).replace('-', '') contract_id = getID()
dbp = await self.get_db_connection(org_id) dbp = await self.get_db_connection(org_id)
# 插入合同数据 # 插入合同数据
@ -99,7 +100,7 @@ class EnhancedContractManager:
async def create_contract_version(self, contract_id: str, content: str, user_id: str, org_id: str, async def create_contract_version(self, contract_id: str, content: str, user_id: str, org_id: str,
version_number: str, modified_reason: str = '') -> str: version_number: str, modified_reason: str = '') -> str:
"""创建合同版本""" """创建合同版本"""
version_id = str(uuid.uuid4()).replace('-', '') version_id = getID()
dbp = await self.get_db_connection(org_id) dbp = await self.get_db_connection(org_id)
# 将之前的当前版本标记为非当前 # 将之前的当前版本标记为非当前
@ -160,7 +161,7 @@ class EnhancedContractManager:
# 插入里程碑 # 插入里程碑
for milestone in milestones: for milestone in milestones:
milestone_id = str(uuid.uuid4()).replace('-', '') milestone_id = getID()
milestone_data = { milestone_data = {
"id": milestone_id, "id": milestone_id,
"contract_id": contract_id, "contract_id": contract_id,
@ -201,7 +202,7 @@ class EnhancedContractManager:
# 创建订单 # 创建订单
for i, order in enumerate(orders): for i, order in enumerate(orders):
order_id = str(uuid.uuid4()).replace('-', '') order_id = getID()
order_number = f"{contract_data['contract_number']}-ORD-{i+1:02d}" order_number = f"{contract_data['contract_number']}-ORD-{i+1:02d}"
order_data = { order_data = {
"id": order_id, "id": order_id,
@ -242,7 +243,7 @@ class EnhancedContractManager:
raise ValueError(f"订单金额不能超过合同剩余未收款金额 {remaining_amount}") raise ValueError(f"订单金额不能超过合同剩余未收款金额 {remaining_amount}")
# 创建订单 # 创建订单
order_id = str(uuid.uuid4()).replace('-', '') order_id = getID()
order_number = f"{contract['contract_number']}-MANUAL-{datetime.now().strftime('%Y%m%d%H%M%S')}" order_number = f"{contract['contract_number']}-MANUAL-{datetime.now().strftime('%Y%m%d%H%M%S')}"
final_order_data = { final_order_data = {
"id": order_id, "id": order_id,

View File

@ -70,27 +70,32 @@
{ {
"field": "id", "field": "id",
"title": "合同附件", "title": "合同附件",
"url": "{{entire_url('contract_attachment')}}", "url": "{{entire_url('../contract_attachment')}}",
"subtable": "contract_attachment" "subtable": "contract_attachment"
}, },
{ {
"field": "id", "field": "id",
"title": "合同版本", "title": "合同版本",
"url": "{{entire_url('contract_versions_list')}}", "url": "{{entire_url('../contract_versions_list')}}",
"subtable": "contract_versions" "subtable": "contract_versions"
}, },
{ {
"field": "id", "field": "id",
"title": "里程碑", "title": "里程碑",
"url": "{{entire_url('contract_milestones_list')}}", "url": "{{entire_url('../contract_milestones_list')}}",
"subtable": "contract_milestones" "subtable": "contract_milestones"
}, },
{ {
"field": "id", "field": "id",
"title": "订单", "title": "订单",
"url": "{{entire_url('orders_list')}}", "url": "{{entire_url('../orders_list')}}",
"subtable": "orders" "subtable": "orders"
} }
] ],
"editable": {
"new_data_url": "{{entire_url('../api/contracts_create.dspy')}}",
"update_data_url": "{{entire_url('../api/contracts_update.dspy')}}",
"delete_data_url": "{{entire_url('../api/contracts_delete.dspy')}}"
}
} }
} }