✨ feat: add auto table creation and per-PK sync verification
- Add new Access table mappings for transmitter contracts (25/26年变送器) and tube bending workshop (弯管车间烘洗) - Add auto-create target table from Access schema when table does not exist (db_utils + init_full_sync) - Implement per-primary-key verification in incremental sync: verify deletes are gone and inserts are present before marking Synced=1 - Add post-commit re-verification with Synced rollback on failure for automatic retry - Batch IN clause parameters to stay under SQL Server limit - Adjust poll interval from 5s to 30s - Improve IDENTITY_INSERT cleanup in finally blocks Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -45,7 +45,7 @@ EXCEL_SYNC_UPTIME_KUMA_CONFIG = {
|
||||
|
||||
# ================= 运行参数 =================
|
||||
# 合并原 config.py 和 update_config.py 的配置
|
||||
POLL_INTERVAL = 5 # 轮询间隔(秒)
|
||||
POLL_INTERVAL = 30 # 轮询间隔(秒)
|
||||
EXCEL_SYNC_INTERVAL = 600 # Excel 同步周期(秒),默认 10 分钟
|
||||
BATCH_SIZE = 10000 # 批量处理大小
|
||||
CACHE_DIR = os.path.join(os.getcwd(), "temp") # Excel 缓存目录
|
||||
|
||||
@@ -26,6 +26,16 @@ SYNC_MAPPING = {
|
||||
"target_schema": "productionContractData",
|
||||
"target_table": "25年温度计合同数据",
|
||||
"pk_col": "ID"
|
||||
},
|
||||
"25年变送器合同数据": {
|
||||
"target_schema": "productionContractData",
|
||||
"target_table": "25年变送器合同数据",
|
||||
"pk_col": "ID"
|
||||
},
|
||||
"26年变送器合同数据": {
|
||||
"target_schema": "productionContractData",
|
||||
"target_table": "26年变送器合同数据",
|
||||
"pk_col": "ID"
|
||||
}
|
||||
},
|
||||
r"\\192.168.110.114\生产进度表\2026年数据\成品入库.accdb": {
|
||||
@@ -301,6 +311,13 @@ SYNC_MAPPING = {
|
||||
"target_table": "执行卡下发记录_YEAR2026",
|
||||
"pk_col": "ID"
|
||||
}
|
||||
},
|
||||
r"\\192.168.110.114\生产进度表\2026年数据\弯管车间.accdb": {
|
||||
"执行卡下发记录": {
|
||||
"target_schema": "tubeBending",
|
||||
"target_table": "烘洗_YEAR2026",
|
||||
"pk_col": "ID"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user