first commit

This commit is contained in:
DATAEXPRESS\4734
2026-02-06 15:09:39 +08:00
commit 3f342cee87
35 changed files with 3572 additions and 0 deletions
+103
View File
@@ -0,0 +1,103 @@
DELIMITER //
CREATE PROCEDURE zen_codeinit (
IN p_new_ip VARCHAR(100),
IN p_new_db1 VARCHAR(100), -- Business
IN p_new_db2 VARCHAR(100) -- Wizard
)
/*
Function : 登入後設定 zen_jsoncode 的 ip 及 db
Description: 原本想自動化執行, 但穩妥起見, 目前先仍維持手動執行一次(切換環境時), 目前暫不使用, 手動改 ip 即可
Sample:
Build Date : 2023-12-10
Modify History
Item Who Date Modify Docs
==== ========== ========== ================================================
1 Michael 2023-12-10 改寫為 MySQL 版
*/
BEGIN
DECLARE v_cnt INT;
DECLARE v_org_ip VARCHAR(100);
DECLARE v_org_db1 VARCHAR(100); -- Business
DECLARE v_org_db2 VARCHAR(100); -- Wizard
/*
要先想辦法解析(或手工設定) 在 zen_jsoncode 內的 ip 及 db
目前僅先考慮出廠的變更, 也就是
org 的內容
ip 只會有 127.0.0.1 和 gcp-api.gex.com.tw 或 api.gex.com.tw
db 只會有 zenBusiness / zenWizard / zenEIS
db 二合一很簡單, 但是一分為二, 就麻煩了
*/
SET v_org_ip = '';
SELECT COUNT(*) INTO v_cnt FROM zen_jsoncode WHERE jsoncode LIKE '%127.0.0.1%';
IF v_cnt > 0 THEN
SET v_org_ip = '127.0.0.1';
ELSE
SELECT COUNT(*) INTO v_cnt FROM zen_jsoncode WHERE jsoncode LIKE '%gcp-api.gex.com.tw%';
IF v_cnt > 0 THEN
SET v_org_ip = 'gcp-api.gex.com.tw';
ELSE
SELECT COUNT(*) INTO v_cnt FROM zen_jsoncode WHERE jsoncode LIKE '%api.gex.com.tw%';
IF v_cnt > 0 THEN
SET v_org_ip = 'api.gex.com.tw';
END IF;
END IF;
END IF;
SET v_org_db1 = '';
SELECT COUNT(*) INTO v_cnt FROM zen_jsoncode WHERE jsoncode LIKE '%zenEIS%';
IF v_cnt > 0 THEN
SET v_org_db1 = 'zenEIS';
SET v_org_db2 = 'zenEIS';
ELSE
SET v_org_db1 = 'zenBusiness';
SET v_org_db2 = 'zenWizard';
END IF;
-- 如果是其他非出廠 SOP 的特殊作業, 只能手工設定
/*
SET v_org_ip = '127.0.0.1';
SET v_org_db1 = 'xxxdb1';
SET v_org_db2 = 'xxxdb2';
*/
-- update ip
UPDATE zen_jsoncode
SET jsoncode = REPLACE(jsoncode, v_org_ip, p_new_ip),
jsoncode2 = REPLACE(jsoncode2, v_org_ip, p_new_ip),
jsoncode3 = REPLACE(jsoncode3, v_org_ip, p_new_ip);
-- 如果 db 是一分為二, 要多判斷 sys
IF v_org_db1 = 'zenEIS' AND p_new_db1 <> 'zenEIS' THEN
UPDATE zen_jsoncode
SET jsoncode = REPLACE(jsoncode, v_org_db1, p_new_db1),
jsoncode2 = REPLACE(jsoncode2, v_org_db1, p_new_db1),
jsoncode3 = REPLACE(jsoncode3, v_org_db1, p_new_db1);
UPDATE zen_jsoncode
SET jsoncode = REPLACE(jsoncode, v_org_db2, p_new_db2),
jsoncode2 = REPLACE(jsoncode2, v_org_db2, p_new_db2),
jsoncode3 = REPLACE(jsoncode3, v_org_db2, p_new_db2);
ELSE
UPDATE zen_jsoncode
SET jsoncode = REPLACE(jsoncode, v_org_db1, p_new_db1),
jsoncode2 = REPLACE(jsoncode2, v_org_db1, p_new_db1),
jsoncode3 = REPLACE(jsoncode3, v_org_db1, p_new_db1);
UPDATE zen_jsoncode
SET jsoncode = REPLACE(jsoncode, v_org_db2, p_new_db2),
jsoncode2 = REPLACE(jsoncode2, v_org_db2, p_new_db2),
jsoncode3 = REPLACE(jsoncode3, v_org_db2, p_new_db2);
END IF;
-- 回傳 ds1
SELECT 0 AS code, 'ok' AS msg;
END //
DELIMITER ;