From 97c484d25d4b698df7fcc2a6efcf1740156d26e2 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期五, 10 一月 2025 22:54:39 +0800 Subject: [PATCH] 2025-01-10 --- src/utils/utils-custom.js | 141 +++++++++++++++++++++++++++++------------------ 1 files changed, 87 insertions(+), 54 deletions(-) diff --git a/src/utils/utils-custom.js b/src/utils/utils-custom.js index 0164b7c..12e86d5 100644 --- a/src/utils/utils-custom.js +++ b/src/utils/utils-custom.js @@ -652,7 +652,7 @@ */ static resetBtn (btn, commonId) { if (btn.OpenType === 'pop' || (btn.OpenType === 'funcbutton' && btn.execMode === 'pop')) { - if (btn.modal && btn.modal.fields.length > 0) { + if (btn.modal && btn.modal.fields && btn.modal.fields.length > 0) { btn.modal.fields = btn.modal.fields.map(m => { m.uuid = this.getuuid() return m @@ -666,6 +666,15 @@ btn.anchors = btn.anchors.map(m => md5(commonId + m)) } if (btn.syncComponent && btn.syncComponent[0] === 'multiComponent' && btn.syncComponents) { + if (btn.syncComponents[0] && Array.isArray(btn.syncComponents[0])) { + btn.syncComponents = btn.syncComponents.map((item, i) => { + return { + syncComId: item, + label: '', + uuid: 'fixed' + i + } + }) + } btn.syncComponents = btn.syncComponents.map(m => { m.syncComId = m.syncComId.map(n => { if (/\$focus/.test(n)) { @@ -684,6 +693,10 @@ return md5(commonId + m) }) + } + + if (btn.OpenType === 'popview' && btn.config && btn.config.components) { + btn.config.components = this.resetConfig(btn.config.components, commonId) } } @@ -771,14 +784,7 @@ if (cell.eleType === 'button') { cell.uuid = md5(commonId + cell.uuid) - if (cell.OpenType === 'pop' || (cell.OpenType === 'funcbutton' && cell.execMode === 'pop')) { - if (cell.modal && cell.modal.fields.length > 0) { - cell.modal.fields = cell.modal.fields.map(m => { - m.uuid = this.getuuid() - return m - }) - } - } + this.resetBtn(cell, commonId) } else { cell.uuid = this.getuuid() } @@ -792,14 +798,8 @@ card.backElements = card.backElements.map(cell => { if (cell.eleType === 'button') { cell.uuid = md5(commonId + cell.uuid) - if (cell.OpenType === 'pop' || (cell.OpenType === 'funcbutton' && cell.execMode === 'pop')) { - if (cell.modal && cell.modal.fields.length > 0) { - cell.modal.fields = cell.modal.fields.map(m => { - m.uuid = this.getuuid() - return m - }) - } - } + + this.resetBtn(cell, commonId) } else { cell.uuid = this.getuuid() } @@ -818,14 +818,8 @@ item.elements = item.elements.map(cell => { if (cell.eleType === 'button') { cell.uuid = md5(commonId + cell.uuid) - if (cell.OpenType === 'pop' || (cell.OpenType === 'funcbutton' && cell.execMode === 'pop')) { - if (cell.modal && cell.modal.fields.length > 0) { - cell.modal.fields = cell.modal.fields.map(m => { - m.uuid = this.getuuid() - return m - }) - } - } + + this.resetBtn(cell, commonId) } else { cell.uuid = this.getuuid() } @@ -850,14 +844,7 @@ col.elements = col.elements.map(cell => { cell.uuid = md5(commonId + cell.uuid) if (cell.eleType === 'button') { - if (cell.OpenType === 'pop' || (cell.OpenType === 'funcbutton' && cell.execMode === 'pop')) { - if (cell.modal && cell.modal.fields.length > 0) { - cell.modal.fields = cell.modal.fields.map(m => { - m.uuid = this.getuuid() - return m - }) - } - } + this.resetBtn(cell, commonId) } return cell }) @@ -902,14 +889,7 @@ } item.action = item.action.map(cell => { cell.uuid = md5(commonId + cell.uuid) - if (cell.OpenType === 'pop' || (cell.OpenType === 'funcbutton' && cell.execMode === 'pop')) { - if (cell.modal && cell.modal.fields.length > 0) { - cell.modal.fields = cell.modal.fields.map(m => { - m.uuid = this.getuuid() - return m - }) - } - } + this.resetBtn(cell, commonId) return cell }) @@ -1963,6 +1943,10 @@ }) } let emptys = [] + if (cell.Ot !== 'notRequired') { + forms.push(...columns) + } + cell.verify.uniques.forEach(m => { if (m.status === 'false') return @@ -1974,7 +1958,11 @@ }) if (emptys.length) { - errors.push({ level: 0, detail: `鎸夐挳鈥�${cell.label}鈥濆敮涓�鎬ч獙璇佸瓧娈�${emptys.join('銆�')}锛屽湪琛ㄥ崟涓笉瀛樺湪锛乣}) + if (cell.Ot === 'notRequired') { + errors.push({ level: 0, detail: `鎸夐挳鈥�${cell.label}鈥濆敮涓�鎬ч獙璇佸瓧娈�${emptys.join('銆�')}锛屽湪琛ㄥ崟涓笉瀛樺湪锛乣}) + } else { + errors.push({ level: 0, detail: `鎸夐挳鈥�${cell.label}鈥濆敮涓�鎬ч獙璇佸瓧娈�${emptys.join('銆�')}锛屽湪琛ㄥ崟涓庡瓧娈甸泦涓笉瀛樺湪锛乣}) + } } } @@ -3089,6 +3077,13 @@ item.$menuname = (config.MenuName || '') + label + '-' + (item.name || '') if (item.type === 'tabs') { + if (config.Template === 'BaseTable') { + item.subtabs.forEach(tab => { + if (tab.permission !== 'true' && tab.components[0] && tab.components[0].wrap) { + tab.components[0].wrap.permission = 'false' + } + }) + } item.subtabs.forEach(tab => { let _mainSearch = mainSearch || [] @@ -3099,6 +3094,7 @@ _mainSearch = com.search || [] }) } + filterComponent(tab.components, _mainSearch, label, ispop) }) } else if (item.type === 'group') { @@ -3323,7 +3319,7 @@ } else if (form.type === 'popSelect') { let msg = getPopSelectSql(form) - sqls.push({uuid: form.uuid, type: 'popSource', ...msg}) + sqls.push({uuid: md5(cell.uuid + form.uuid), type: 'popSource', ...msg}) } }) } @@ -3366,7 +3362,7 @@ } else if (form.type === 'popSelect') { let msg = getPopSelectSql(form) - sqls.push({uuid: form.uuid, type: 'popSource', ...msg}) + sqls.push({uuid: md5(cell.uuid + form.uuid), type: 'popSource', ...msg}) } }) } @@ -3406,7 +3402,9 @@ }) } - filterComponent(cell.config.components, _mainSearch, '-' + cell.label, true) + let label = (item.name ? '-' + item.name : '') + '-' + cell.label + + filterComponent(cell.config.components, _mainSearch, label, true) } } } @@ -3815,24 +3813,26 @@ let _val2 = '' arr.push(_key) - if (_key === 'bid') { // 琛ㄥ崟涓病鏈塨id鍒欎娇鐢ㄧ郴缁焍id鍙橀噺 + if (_key === 'bid') { _val = BID } else { - _val = `'@mk_${_key}_mk@'` + // _val = `'@mk_${_key}_mk@'` + _val = `@${_field}` } _fieldValue.push(`${_key}=${_val}`) - if (_key === 'bid') { // 琛ㄥ崟涓病鏈塨id鍒欎娇鐢ㄧ郴缁焍id鍙橀噺 + if (_key === 'bid') { _val2 = `' + ${BID} + '` } else { - _val2 = `@mk_${_key}_mk@` + // _val2 = `@mk_${_key}_mk@` + _val2 = `' + @${_field} + '` } _value.push(`${_labels[index] || ''}锛�${_val2}`) }) - if (!arr.includes(primaryKey.toLowerCase())) { + if (!arr.includes(primaryKey.toLowerCase()) && btn.Ot !== 'notRequired') { _fieldValue.push(`${primaryKey} !=${primaryId}`) } @@ -4086,7 +4086,9 @@ _sql += ` /* 宸ヤ綔娴佸紓甯竤ql */ if @works_flow_error@ != '' - select @ErrorCode='E',@retmsg=@works_flow_error@ goto aaa + begin + select @ErrorCode='E',@retmsg=@works_flow_error@ goto aaa + end /* 宸ヤ綔娴侀粯璁ql */ insert into s_my_works_flow (works_flow_id,works_flow_code,works_flow_name,works_flow_param,status,statusname,work_group,works_flow_detail_id,work_grade,bid,createuserid,CreateUser,CreateStaff,upid) @@ -4105,7 +4107,9 @@ _sql += ` /* 宸ヤ綔娴佸紓甯竤ql */ if @works_flow_error@ != '' - select @ErrorCode='E',@retmsg=@works_flow_error@ goto aaa + begin + select @ErrorCode='E',@retmsg=@works_flow_error@ goto aaa + end if @works_flow_countersign@ = 'Y' begin @@ -4699,7 +4703,7 @@ } else if (['mk_address'].includes(s)) { decSql.push(`@mk_address nvarchar(100)`) } else if (['mk_deleted'].includes(s)) { - secSql.push(`@mk_deleted int`) + decSql.push(`@mk_deleted int`) } else { decSql.push(`@${s} nvarchar(50)`) } @@ -5237,7 +5241,9 @@ sql += ` /* 宸ヤ綔娴佸紓甯竤ql */ if @works_flow_error@ != '' - select @ErrorCode='E',@retmsg=@works_flow_error@ goto aaa + begin + select @ErrorCode='E',@retmsg=@works_flow_error@ goto aaa + end /* 宸ヤ綔娴侀粯璁ql */ insert into s_my_works_flow (works_flow_id,works_flow_code,works_flow_name,works_flow_param,status,statusname,work_group,works_flow_detail_id,work_grade,bid,createuserid,CreateUser,CreateStaff,upid) @@ -6442,5 +6448,32 @@ filterComponent(config.components, _mainSearch) + let keys = sqls.map(item => item.uuid) + if (keys.length > Array.from(new Set(keys)).length) { + if (window.backend) { + let m = new Map() + let n = new Map() + sqls.forEach(item => { + if (m.has(item.uuid)) { + if (!n.has(item.uuid)) { + window.mkInfo(m.get(item.uuid)) + n.set(item.uuid, true) + } + window.mkInfo(item) + } else { + m.set(item.uuid, item) + } + }) + + notification.warning({ + top: 92, + message: '瀛樺湪閲嶅鐨勫悗绔剼鏈琁D锛�', + duration: 5 + }) + } + + return [] + } + return sqls } \ No newline at end of file -- Gitblit v1.8.0