From 4253da96a80b36aa66a1322b0379ec624e01101c Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期二, 26 十二月 2023 17:38:36 +0800 Subject: [PATCH] 修复表单FYForm不传入初始数据时报错问题 --- src/enum/location.js | 100 ++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 84 insertions(+), 16 deletions(-) diff --git a/src/enum/location.js b/src/enum/location.js index ff9fb5a..6463c40 100644 --- a/src/enum/location.js +++ b/src/enum/location.js @@ -1,10 +1,24 @@ -// 琛屾斂鍖哄垝 +/** + * 鑾峰彇琛屾斂鍖哄垝 + * @param {Boolean} allOption 鏄惁鍦ㄥご閮ㄦ坊鍔犫�滃叏閮ㄢ�濋�夐」 + * @param {Number} level 鑾峰彇鐨勫垎绫绘繁搴︼紝鑼冨洿 1 - 4 + * @returns + */ +function enumLocation(allOption = true, level = 4) { + const l = _enumLocation(); + if (!allOption) { + l.shift(); + } + _deleteByLevel(l, level, 1); -function enumLocation() { + return l; +} + +function _enumLocation() { return [ { label: '鍏ㄩ儴', - value: ['0', '鍏ㄩ儴'], + value: [null, '鍏ㄩ儴'], }, { label: '涓婃捣甯�', @@ -25,7 +39,12 @@ { label: '楂樻柊鍖�', value: ['310116503', '楂樻柊鍖�'] }, { label: '閲戝北鍗晣', value: ['310116109', '閲戝北鍗晣'] }, { label: '婕曟尘闀�', value: ['310116112', '婕曟尘闀�'] }, - { label: '灞遍槼闀�', value: ['310116113', '灞遍槼闀�'] }, + { label: '灞遍槼闀�', value: ['310116113', '灞遍槼闀�'] , children:[ + { + label: '涓囪揪骞垮満', + value: ['31011611301', '涓囪揪骞垮満'], + }, + ]}, { label: '鐭冲寲琛楅亾', value: ['310116001', '鐭冲寲琛楅亾'] }, { label: '鏈辨尘闀�', value: ['310116101', '鏈辨尘闀�'] }, { label: '鏋尘闀�', value: ['310116102', '鏋尘闀�'] }, @@ -46,9 +65,19 @@ { label: '鏋灄璺閬�', value: ['310104008', '鏋灄璺閬�'] }, { label: '鏂滃湡璺閬�', value: ['310104007', '鏂滃湡璺閬�'] }, { label: '闀挎ˉ琛楅亾', value: ['310104010', '闀挎ˉ琛楅亾'] }, - { label: '鐢版灄琛楅亾', value: ['310104011', '鐢版灄琛楅亾'] }, + { label: '鐢版灄琛楅亾', value: ['310104011', '鐢版灄琛楅亾'] , children:[ + { + label: '鐢板皻鍧�', + value: ['31010401101', '鐢板皻鍧�'], + }, + ]}, { label: '搴峰仴鏂版潙琛楅亾', value: ['310104013', '搴峰仴鏂版潙琛楅亾'] }, - { label: '寰愬姹囪閬�', value: ['310104014', '寰愬姹囪閬�'] }, + { label: '寰愬姹囪閬�', value: ['310104014', '寰愬姹囪閬�'] , children:[ + { + label: '澶╅挜妗�', + value: ['31010401401', '澶╅挜妗�'], + }, + ]}, { label: '鍑屼簯璺閬�', value: ['310104015', '鍑屼簯璺閬�'] }, { label: '榫欏崕琛楅亾', value: ['310104016', '榫欏崕琛楅亾'] }, { label: '婕曟渤娉捐閬�', value: ['310104017', '婕曟渤娉捐閬�'] }, @@ -59,18 +88,43 @@ label: '闈欏畨鍖�', value: ['310106', '闈欏畨鍖�'], children: [ - { label: '澶у畞璺閬�', value: ['310106019', '澶у畞璺閬�'] }, + { label: '澶у畞璺閬�', value: ['310106019', '澶у畞璺閬�'] , children:[ + { + label: '涔呭厜涓績', + value: ['31010601901', '涔呭厜涓績'], + }, + ]}, { label: '褰郸鏂版潙琛楅亾', value: ['310106020', '褰郸鏂版潙琛楅亾'] }, { label: '涓存本璺閬�', value: ['310106021', '涓存本璺閬�'] }, { label: '鑺锋睙瑗胯矾琛楅亾', value: ['310106022', '鑺锋睙瑗胯矾琛楅亾'] }, - { label: '褰郸闀�', value: ['310106101', '褰郸闀�'] }, + { label: '褰郸闀�', value: ['310106101', '褰郸闀�'] , children:[ + { + label: '澶ц瀺鍩�', + value: ['31010610101', '澶ц瀺鍩�'], + }, + ]}, { label: '姹熷畞璺閬�', value: ['310106006', '姹熷畞璺閬�'] }, { label: '鐭抽棬浜岃矾琛楅亾', value: ['310106011', '鐭抽棬浜岃矾琛楅亾'] }, - { label: '鍗椾含瑗胯矾琛楅亾', value: ['310106012', '鍗椾含瑗胯矾琛楅亾'] }, + { label: '鍗椾含瑗胯矾琛楅亾', value: ['310106012', '鍗椾含瑗胯矾琛楅亾'] , children:[ + { + label: 'X88', + value: ['31010601201', 'X88'], + }, + ]}, { label: '闈欏畨瀵鸿閬�', value: ['310106013', '闈欏畨瀵鸿閬�'] }, - { label: '鏇瑰娓¤閬�', value: ['310106014', '鏇瑰娓¤閬�'] }, + { label: '鏇瑰娓¤閬�', value: ['310106014', '鏇瑰娓¤閬�'] , children:[ + { + label: '889', + value: ['31010601401', '889'], + }, + ]}, { label: '澶╃洰瑗胯矾琛楅亾', value: ['310106015', '澶╃洰瑗胯矾琛楅亾'] }, - { label: '鍖楃珯琛楅亾', value: ['310106016', '鍖楃珯琛楅亾'] }, + { label: '鍖楃珯琛楅亾', value: ['310106016', '鍖楃珯琛楅亾'] , children:[ + { + label: '澶ф偊鍩�', + value: ['31010601601', '澶ф偊鍩�'], + }, + ]}, { label: '瀹濆北璺閬�', value: ['310106017', '瀹濆北璺閬�'] }, { label: '鍏卞拰鏂拌矾琛楅亾', value: ['310106018', '鍏卞拰鏂拌矾琛楅亾'] }, ], @@ -127,10 +181,24 @@ }, ]; } -function enumLocationNA() { - const l = enumLocation(); - l.shift(); - return l; + +// 鎸夌収闇�姹傜殑瀹氫綅绮惧害杩斿洖瀵瑰簲鏁版嵁 +function _deleteByLevel(locations, level, step) { + if (step == level) { + locations.forEach((l) => { + if (l.children) { + l.children = undefined; + } + }); + return; + } else { + step++; + locations.forEach((l) => { + if (l.children) { + _deleteByLevel(l.children, level, step); + } + }); + } } -export { enumLocation, enumLocationNA }; +export { enumLocation }; -- Gitblit v1.9.3