feat: add kuaidi100 logistics sync

This commit is contained in:
wushumin
2026-05-26 17:08:33 +08:00
parent 09d9fcbe69
commit a5f00d7e31
31 changed files with 2596 additions and 67 deletions

View File

@@ -26,6 +26,7 @@ $pdo = new PDO(
);
$tables = [
'kuaidi100_express_company_catalog',
'express_companies',
'shipping_warehouses',
'order_shipping_targets',
@@ -39,6 +40,7 @@ $tables = [
'upload_template_items', 'upload_templates',
'report_verifies', 'report_contents', 'reports',
'appraisal_task_key_points', 'appraisal_task_results', 'appraisal_task_reviews', 'appraisal_task_logs', 'appraisal_tasks',
'order_logistics_syncs', 'order_logistics_nodes', 'order_logistics',
'order_supplement_task_items', 'order_supplement_tasks', 'order_timelines', 'order_extras', 'order_products', 'orders',
'catalog_brand_categories', 'catalog_brands', 'catalog_categories',
'user_addresses', 'user_auths', 'users',
@@ -64,7 +66,7 @@ INSERT INTO shipping_warehouses (id, warehouse_name, warehouse_code, warehouse_t
(2, '中检合作鉴定中心', 'ZJ-WH-DEFAULT', 'detection_center', 'zhongjian', '中检合作鉴定中心', '400-800-1314', '广东省', '深圳市', '南山区', '科技园鉴定路 88 号 安心验中检收件中心', '周一至周日 09:30-18:30', '中检鉴定订单请优先附上鉴定单号,寄出后尽快填写运单号。', NULL, NULL, NULL, 'enabled', 1, 1, '默认仓库', '{$now}', '{$now}');
INSERT INTO express_companies (id, company_name, company_code, status, is_default, sort_order, remark, created_at, updated_at) VALUES
(1, '顺丰速运', 'sf_express', 'enabled', 1, 1, '系统默认快递公司', '{$now}', '{$now}');
(1, '顺丰速运', 'shunfeng', 'enabled', 1, 1, '系统默认快递公司', '{$now}', '{$now}');
INSERT INTO catalog_categories (id, name, code, sort_order, is_enabled, need_shipping, supported_service_types, created_at, updated_at) VALUES
(1, '奢侈品箱包', 'luxury_bag', 1, 1, 1, JSON_ARRAY('anxinyan', 'zhongjian'), '{$now}', '{$now}'),

View File

@@ -45,14 +45,18 @@ CREATE TABLE IF NOT EXISTS express_companies (
SQL);
$now = date('Y-m-d H:i:s');
$stmt = $pdo->prepare('SELECT id FROM express_companies WHERE company_name = ? LIMIT 1');
$stmt = $pdo->prepare('SELECT id, company_code FROM express_companies WHERE company_name = ? LIMIT 1');
$stmt->execute(['顺丰速运']);
$exists = $stmt->fetch();
if (!$exists) {
$insert = $pdo->prepare('INSERT INTO express_companies (company_name, company_code, status, is_default, sort_order, remark, created_at, updated_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?)');
$insert->execute(['顺丰速运', 'sf_express', 'enabled', 1, 1, '系统默认快递公司', $now, $now]);
$insert->execute(['顺丰速运', 'shunfeng', 'enabled', 1, 1, '系统默认快递公司', $now, $now]);
echo "SEED_DEFAULT_EXPRESS_COMPANY\n";
} elseif (in_array((string)($exists['company_code'] ?? ''), ['', 'sf_express'], true) || str_starts_with((string)($exists['company_code'] ?? ''), 'express_')) {
$update = $pdo->prepare('UPDATE express_companies SET company_code = ?, updated_at = ? WHERE id = ?');
$update->execute(['shunfeng', $now, (int)$exists['id']]);
echo "UPDATE_DEFAULT_EXPRESS_COMPANY_CODE\n";
}
$defaultCount = (int)$pdo->query("SELECT COUNT(*) FROM express_companies WHERE status = 'enabled' AND is_default = 1")->fetchColumn();