'use strict'; var fnPageInit = function () { var canDo = new CanDo({ /** * 當前程式所有ID名稱集合 */ idKeys: ['OrgID', 'TemplID'], /** * 當前程式所有參數名稱集合 */ paramKeys: ['TemplID'], /** * 當前程式所有參數名稱集合 */ jsonStrKeys: ['TemplKeys'], /** * 處理新增資料參數 * @param {Object} pargs CanDo 對象 * @param {Object} data 當前表單資料 */ getInsertParams: function (pargs, data) { data.FileID = pargs.data.FileID; data.TemplKeys = JSON.stringify(pargs.data.TemplKeys); return data; }, /** * 處理修改資料參數 * @param {Object} pargs CanDo 對象 * @param {Object} data 當前表單資料 */ getUpdateParams: function (pargs, data) { return pargs.options.getInsertParams(pargs, data); }, /** * 客製化驗證規則 * @param {Object} pargs CanDo 對象 */ validRulesCus: function (pargs) { $.validator.addMethod("templidrule", function (value) { var bRetn = true; if (value) { g_api.ConnectLite(pargs.ProgramId, pargs._api.getcout, { TemplID: value, }, function (res) { if (res.RESULT && res.DATA.rel > 0) { bRetn = false; } }, null, false); } return bRetn; }); }, /** * 驗證規則 */ validRules: function (pargs) { return { onfocusout: false, rules: { TemplID: { templidrule: pargs.action === 'add' ? true : false }, }, messages: { TemplID: { templidrule: i18next.t("message.Data_Repeat") }// ╠message.Data_Repeat⇒此筆資料已建檔╣ } }; }, /** * 頁面初始化 * @param {Object} pargs CanDo 對象 */ pageInit: function (pargs) { if (pargs.action === 'upd') { $('#TemplID').prop('disabled', true); pargs._getOne().done(function (res) { pargs.data.FileID = pargs.data.FileID || guid(); fnBindKeys(); fnGetUploadFiles(pargs.data.FileID, fnUpload); }); } else { pargs.data.FileID = guid(); pargs.data.TemplKeys = []; fnUpload(); } $('.plustemplkey').on('click', function () { var oNewKey = {}; oNewKey.guid = guid(); oNewKey.TemplKey = ''; oNewKey.TemplKeyValue = ''; oNewKey.TemplName = ''; oNewKey.Memo = ''; canDo.data.TemplKeys.push(oNewKey); fnBindKeys(); }); } }), /** * 綁定模版參數 * @param {Array} files 上傳的文件 */ fnBindKeys = function () { var sKeysHtml = ''; $.each(canDo.data.TemplKeys, function (idx, item) { sKeysHtml += '