52 lines
1.4 KiB
Plaintext
52 lines
1.4 KiB
Plaintext
DELIMITER //
|
|
|
|
CREATE PROCEDURE zen_get_picker (
|
|
IN functiontag VARCHAR(100), -- pickerId, basm501=product, basm610=customer
|
|
IN fieldname VARCHAR(100), -- return correct field name
|
|
IN formsize VARCHAR(10) -- form size 可以由此控制
|
|
)
|
|
/*
|
|
因為 picker 是統一的需求, 為了統一控管, 改為 service + schemaApi, 同時也可以大幅縮端程式碼
|
|
目前測試時有一個 issue 尚待處理, 原定義在 picker 內的 label 會因改為 service + schemaApi 而不顯示, 影響排版
|
|
|
|
這樣的寫法可以執行, 但無法 update picker.name 傳參數會有問題
|
|
{
|
|
"type": "service",
|
|
"schemaApi": "get:/pages/zen_picker_basm601.json"
|
|
},
|
|
|
|
以下的寫法測試仍有問題(不會報錯, 但 picker 未顯示)
|
|
{
|
|
"type": "service",
|
|
"schemaApi": {
|
|
"method": "post",
|
|
"url": "http://127.0.0.1:5050/xapi/v2/zenWizard/zen_get_picker/3/",
|
|
"data": {
|
|
"para01": "basm61",
|
|
"para02": "para05",
|
|
"para03": "lg"
|
|
},
|
|
"dataType": "form"
|
|
}
|
|
},
|
|
|
|
CALL zen_get_picker('basm601', 'para05');
|
|
*/
|
|
BEGIN
|
|
DECLARE picker TEXT;
|
|
DECLARE version VARCHAR(20);
|
|
|
|
SET version = 'picker';
|
|
|
|
-- get and replace data
|
|
SELECT jsoncode INTO picker FROM zen_jsoncode WHERE functiontag = functiontag AND version = version;
|
|
SET picker = REPLACE(picker, '@fieldname@', fieldname);
|
|
SET picker = REPLACE(picker, '@formsize@', formsize);
|
|
|
|
-- return ds
|
|
SELECT 0 AS code, 'OK' AS msg;
|
|
SELECT picker AS jsoncode;
|
|
END //
|
|
|
|
DELIMITER ;
|