From 1566392c19b46b54963594a99fb454d5d2e4a855 Mon Sep 17 00:00:00 2001 From: TsMask <340112800@qq.com> Date: Tue, 24 Jun 2025 17:13:57 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20AMF/MME=E5=AF=B9=E5=BA=94=E7=9A=84IMEI?= =?UTF-8?q?=E7=99=BD=E5=90=8D=E5=8D=95=E6=A8=A1=E6=9D=BF=E5=8E=BB=E9=99=A4?= =?UTF-8?q?index?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../import_amf_imeiWhitelist_template.xlsx | Bin 11068 -> 10953 bytes .../import_amf_whitelist_template.xlsx | Bin 11207 -> 11104 bytes .../import_mme_imeiWhitelist_template.xlsx | Bin 11058 -> 10947 bytes .../ne/neConfig/hooks/useArrayBatchDel.ts | 3 +- src/views/ne/neConfig/hooks/useArrayImport.ts | 32 +++++++++++------- 5 files changed, 22 insertions(+), 13 deletions(-) diff --git a/public/neDataImput/import_amf_imeiWhitelist_template.xlsx b/public/neDataImput/import_amf_imeiWhitelist_template.xlsx index 3cf6169b7c9887ba336ed67ec02736516c04bfdf..8716464a7b0754dedb92a9149e0311a2552f38c9 100644 GIT binary patch delta 4761 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 D`;;Ne diff --git a/public/neDataImput/import_amf_whitelist_template.xlsx b/public/neDataImput/import_amf_whitelist_template.xlsx index 509ba8f78d8e015f75c4955e1907c84ff97eaefa..26b66e5a2701c73ffe54036e896ebe1d49837f66 100644 GIT binary patch delta 5169 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 delta 5251 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 delta 5213 zcmZ9QWmFqVw}we@C{pZD+$9i5A-EMSQe2C>HMmO&P~0In6bn+^y+D!Tu7w_)7K#>k zxSXDK@3+1?Ki(gEKO<|;teHK#SG!K9CJulvsT)!X1)!ja0Z~w%qagBGh~c4$>Po#3 zlF(K3N9iHItOgGYTn7x0pDUf7xFl87@f9P=(2q~hot<2eSvCC zm7_=GbVwdngRNDi7qf5G{4r2=+zsqAW6w7AoJzlTuUv{8q>mfl#Ao^*j|+$C;1h&- z$$K?K&~y)E+P1-)Cv7q=m?0WkPd&^HgG=^xTD2@+qcv%*W( zXItjq>jDY)ZtYr5v($bxVfgr2UgIgu03XS4*u!kK^wwxBNm8dY8-(jml2(^>-}Uh% zjhQEXwNy`J{s?BLcS09$@Au&c%(dK`Y>1A_%bw(QPZ)0C+ENAh*j?Sfii9N{E7j;tk`raB^_4a&&il$>r?;Yg8XoM14uviQCzmfRJ+V z{H|}XXr!*Cr$%_!IN`DN%y9S`I7wDD>zNaE+dlFk5(Q^Cwak+Yt~tdJiGX>rvS+`vMFj}dBu9ZlzSbsd zY1xvTF9X3g*5j0<9fSiPRq*P{*Cb zJElnjP`tB?HlSpabK6!R21kmTb%u%UFmB(llrqhiq)8b{Hqzk|tH$ChCJUD8?5ZvB z{LOXSv7w`8`VognJVM_}`x>Rw2%6vz!QXA$Ww1!4#-xL?0Q^+HZ}PMx&tEyEue1#Y zug{Gy$(-0G4J0imyE5*leX56(dc<)Utp(M4;O^@mqxoH*JKz(PSu13sj4?Eb4OVlz zwycBqtjFr2`}!~QPswT|BrvSLuULwbh-E)RPOY0dH#|1?RL+n0feZF=5$d=Uh*fkN z9D=!=>5-?6xx++YV$j16QYM_1AS44v^0%}MmlSl^91ScAd>)%k%1gordKrC$&2c6q z5>h)RUE54rR!hQM?Qf#d1SbL{x@e=XiouNwgG(R?HZCjRv~Y+{*E*}l$*cUB^pq0^ zfr}@{vQGzYS6GcP-+oPNArujEVBhPYGpO;+rL>NM6Xu*PIRrPWSI^jDkeF??!gNGA%Aa%9&P9%`Jc4HVu-_+!#Y`TSsha3+YUQ7H~Nx8l|p2 zeE5dBMqcj){3?j%;#QM&Rg&Ya@QG*|{yXpF71Y?d4N1)%jr@wzrhwJ2r%jE6DbR1{ z*zwqm=z%t-F{6`nnKhX@xbrecd9Z!0Xc@nZuIcewkIy=5c@ztk8@)$$SZvVbaj zKT&iI__wI7^5xh!--;(fLyjr*ck7W1x+-R@ANqY4>%~`Wznuc@&(SbKjZ?|``SM;3 zePEu-E&sW5)Ds)3V}SGOq?Jl$IDskFAfTMu?8vAicYz>zuWECbn66gwmNq|em6WVm zX?AA>p^O{%UvszRMn3jL&7OUBJ zMf(poS))qoy9t3ao1DMk(c9NQ_5>%YOg5;Dxo;L8WgeAe!e1BIJQ!elwg^V=;Gakk zi50;Q&oKX-^Cc`gY&q7vqkryoBmxzi9=`1KosJNm+wcfDHs17JUXrOT=T~n~%+m5O znLx{RAc4>%2wop~t@Vv%iq8`8Qw=zDvPIKDgUQ zbmM+y{aQ}tF36ab5@txodxEf15WA^epN{k%CLwN=-|P{^Vk_}dr~hBZc0TdOs=nh) zT;VCtom}7Nt16kr@}{VUOu-U7f4L49KVHvn0C!@|?HmQZAL0awK$}w)Z=@Uih|nI; zOO9>}j|>@>kWuwOWk>R>uk$|0H2B|c`lFlJqHlFZl_IsDy;kMa66(kurQwM>PCqt~ zIvVfqJ3S{*qZ3X321*Vg)1$1%j*KT)MD=`w6=CSz`T?CSWd?K96V8Z7=7kFrNQR%vbmV`TR^wR zK<|(AQ6A1XtnORFSWC8LGk4uWx29g<2n&qV9glv?QPT)9qP!CUEZ|&~_ac$qu_-E> zRD8oC$K<*i1}1g&x=3>)j9NlnZ9NCt+RgAif2+4Ii;JNucHl6o7sE*~Zv@)CHB1iA zG+hjD)PA<1B{}wW-FqzJ;}B2DMQse;VE?MpF+sgLt|caR3j5E@rXHrd_A`Rp`uF#^rl*%T%Ff;9ZB z@}F&zCeD#;wbPrNS$jLELBpC#+~#J$vLfeqF1J=Tf`W{Puh7L~$ZXCG{I^`ZuDp=P zmcm)wspTe<%danif1YPEc8dBU;&TA{`na_dE+Utd3jSUG#baFGqiJg}!A@PA$w^c5 z;`CTm5dz;`BRT}_(=dz5d{3=gljcEig73l}m-zgeSo$eX<;N$SD^+ZbDT_#?{WTI$tHO;Na67T z>;!9dwpqJII%1VPsA2ba&K+Pz*lw}uH|p!k8GTQ|4nI)mCP1h!JRVyb{_;V(2s98l z4B)FmxZhHoH?5Ml<*bUiznZh?B6SPv6`E&khj04@31Bq`rflG0cur)_s8w=wdW^`e z*bTLd99mk&^}O2kAr^p*$hj&oc&+U8%4(-ZOi@=8*#Di}$!z3vFr2ch{L91rt{2De zVyv0f_{ul*ZjEfUlYK~$GwMfq(KS)QW59U=RgL*i$6AeT$0Xd=cd2}pv`ffY<>q>O%#B%KZ=;y9iFPNha568c_*(LDd6~t8SAEHSlI(ks=uuw#) zO}L4g-~bK?tw;wdMC#y$E2U3Um$7&rWV zW>`1-8B+V!?zH<|`i?}}V0P!$XgR3^4J%%ImAsAXG`WqOnE%&&gFwaQ*)ch4Aunws zx{-!Y2*w~^7eO=s7ue8hzKe2>gDoXa=Zo8Q+4qTPQSS_i8orX-+_zO37@0ZyVcOVEnc*% zP@V5KF1MwU^TEE%2hyiUBuY_=73(%rRO*zM&S#BTk4(;;k5mWUrLMr{_|%a4P_6BQ z1xbIT&b#^9RO?T&C4uq}nWGg$S$MpRa7HuhEhnZ??+6`#rz$7G(U`l~5O_vnS0Y3J zr^-it+7|Y&?T=}by?n!uw*mxf;O9LNAhMQwkn8zeOpn6(1qS`oGb8a49`-_FvWM|3 zfBVv`Q6)+zZ?b@-wV{1e?*m~D<9k2vkN|0?m>f_CB;-fs^2g3)YG22NAZg~}2>5g6 zij(eOV*`A6ys0EtPGcNR#3l4B9w#t3Q;x?~!}NWPun_jEW4)tnlD@$o{J{W*qdpBe zozKYmbyo=|#FX|F-Oa4-OYWPd&MqpX;?Hvs70qwH4~c z+4X?vjkN={E}vG<%<(lV$fedu}PN#>57xuHf!C?fnK9o*^-*RP2qdEVqHJKNqbq= zqB&g~!)?!{KARQd40~;|*wQN4UQXip5U_F9RlFCKFOOQd;tnlS>)KRHUM}@s7%Flu z3lgX^#L>>Eibyt|E$tL}L9O2z=_N9CXi?Sf_L2e_r$fP7)zvn7GRUAkbN@bB++IWk#;Rm>>m1=Y(6YfGAk$cRm)jEYF5*^ zPDs@%<&}IeZZgk8`u=Q1Cg$53P7seQKGkdKcEOB&(nt6HVuIqTpgqMhCe0-}=`<~c zVz_5sp`i+xuh=k;^F4M$NQ03I*bE`7;j4XUR;(qKJ(omDpRAySpJwR6Rheqo%7sX! z;uYgOp+wL7fdC@-}Ik@3}(9Yu}WDUom<^9LEz6&OHKa7NFWcH4OTbVwy2brY5 zmR>9xx#k`sX-f*Up&*GSW!5yaG>+RZdNmHbgxr!`8R10oGM^dS8{~-lxIXNNUG+=t zC-g=hd7I^oCsk@Dl$T{OzMpNWa-IM@LJ zX^i0Que3Qq35%;l^jHze7+vWJ#Th(p_jxx+Jqn6+HO0>hV#*4$7Pga+py{>P88_%- zr=QE?;=V3{h0rHkO^TBZ?_s=|2?-I2+ue=s#b|<65!D%_tKzTYi}8lhMTtjOmm5h= zLT!FU6gWbo2FaxC@^CdVV*-cVF8|s`cJ;e|nuoZP3)!_T4wU?rdnaD}h1mF6t@>H>EBS2qDt&z$v%ZZreK*XQPdJ7#QynnXl#Uc%%`3jS(!;F!^V0(&L-J& z$(e|V0Zhv`iF>)rxhu+(`6s^vH4-FUZ)6!lU&GNvHJ<|TaJI28Db-^E6!)j6%XshW zcQFt?B58c{rq}uA zx7~D3cnC{K-`Qz>p;$bIazt44_akxmi6H%YZ60T2m)(bLAql@Zyw*|Dj@!uNPW2Rs2wH+H==yAmb=fFs>e~qG zGmP_L-dnp;Th>q9dg42*M2;_tNpC&iH1)rkSpe3&PviVf552bs^8btW;41^N-c&Qe zzTm+=;hA}oc%z$3?c&|gk)rZTM=ZXnR^u17#-snY;~-zi;Mf_C73zaoED?k58fl>3 z7OCl19zt{e8IEMU_{GfsUBUdnU@v2HSfUbbuqoV@w!jIwE;cyyjpp}UGsbcx@rt}- zla=os^_@OippgA}>iZGgm(fjc;uScasq6{*^9DA{tm$T6c^W+Y>NZ9;!cFZ{tUapV zzH~3wv75WN;NU~nH+MNTmFYL0@!pO8^Dw5M9hX zKtnpjDRUC~pUN2`ibV^!2}A%;NfGBPAb>c6juiq3L8!Cx1IiH*tYFIjUkQ3jo>2fO zbWdu6m}C_LJRtDdXsP~Fl0ZSB{0Dhz|59ui2wV(mgf$x>)&C{mPfn6Q$p1q0#E2v| z7S=y$Ee;9_mnsSh-hTl=vOhH_H+LVHl^f!ig%0t^h7TA);Is1sP7t!}uK@RmFm_QO zCpMywT^KNdkOcjO7+@wuuz)Cl0LCN`8A1<4OZ9(0N;DJ{^8cDZ4;z61fiSw6|FQlL D3In%3 diff --git a/src/views/ne/neConfig/hooks/useArrayBatchDel.ts b/src/views/ne/neConfig/hooks/useArrayBatchDel.ts index 148dd7c9..78857c28 100644 --- a/src/views/ne/neConfig/hooks/useArrayBatchDel.ts +++ b/src/views/ne/neConfig/hooks/useArrayBatchDel.ts @@ -39,7 +39,7 @@ export default function useArrayBatch({ batchState.loading = false; batchState.startIndex = 1; batchState.num = 1; - fnActiveConfigNode('#') + fnActiveConfigNode('#'); } async function modalBatchOk() { @@ -73,6 +73,7 @@ export default function useArrayBatch({ duration: 3, }); } + modalBatchClose(); } return { diff --git a/src/views/ne/neConfig/hooks/useArrayImport.ts b/src/views/ne/neConfig/hooks/useArrayImport.ts index 53114a6e..2dd28b68 100644 --- a/src/views/ne/neConfig/hooks/useArrayImport.ts +++ b/src/views/ne/neConfig/hooks/useArrayImport.ts @@ -22,21 +22,23 @@ export default function useArrayImport({ imeiWhitelist: { filename: 'import_amf_imeiWhitelist_template', fileetx: '.xlsx', + itemKey: 'imeiPrefixValue', item: (row: Record) => { return { imeiPrefixValue: row['IMEI Prefix'], - index: row['Index'], + index: 0, }; }, }, whitelist: { filename: 'import_amf_whitelist_template', fileetx: '.xlsx', + itemKey: 'imsiValue', item: (row: Record) => { return { imsiValue: row['IMSI Value'], imeiValue: row['IMEI Value/Prefix'], - index: row['Index'], + index: 0, }; }, }, @@ -45,10 +47,11 @@ export default function useArrayImport({ white_list: { filename: 'import_mme_imeiWhitelist_template', fileetx: '.xlsx', + itemKey: 'imei', item: (row: Record) => { return { imei: row['IMEI'], - index: row['Index'], + index: 0, }; }, }, @@ -60,7 +63,8 @@ export default function useArrayImport({ open: false, msgArr: [] as string[], loading: false, //开始导入 - item: null as any, + itemKey: '', // 解析item的key + item: null as any, // 解析item方法 paramName: '', filename: '', fileetx: '', @@ -69,6 +73,7 @@ export default function useArrayImport({ /**对话框表格信息导入弹出窗口 */ function modalImportOpen(neType: string, paramName: string) { const tmpM = m[neType][paramName]; + importState.itemKey = tmpM.itemKey; importState.item = tmpM.item; importState.paramName = paramName; importState.filename = tmpM.filename; @@ -98,7 +103,7 @@ export default function useArrayImport({ // 获取最大index let index = 0; if (arrayState.columnsData.length <= 0) { - index = 1; + index = 0; } else { const last = arrayState.columnsData[arrayState.columnsData.length - 1]; index = last.index.value + 1; @@ -120,12 +125,15 @@ export default function useArrayImport({ importState.loading = true; for (const row of rows) { const rowItem = importState.item(row); + const rowKey = rowItem[importState.itemKey]; let result: any = null; // 检查index是否定义 - const hasIndex = arrayState.columnsData.find( - (item: any) => item.index.value === rowItem.index + const has = arrayState.columnsData.find( + (item: any) => item[importState.itemKey].value === rowKey ); - if (hasIndex) { + if (has) { + // 已定义则更新 + rowItem.index = has.index.value; result = await editNeConfigData({ neType: neType, neId: neId, @@ -133,9 +141,9 @@ export default function useArrayImport({ paramData: rowItem, loc: `${rowItem.index}`, }); - let msg = `update ${rowItem.index} fail`; + let msg = `index:${rowItem.index} update fail`; if (result.code === RESULT_CODE_SUCCESS) { - msg = `update ${rowItem.index} success`; + msg = `index:${rowItem.index} update success`; } importState.msgArr.push(msg); } else { @@ -147,10 +155,10 @@ export default function useArrayImport({ paramData: Object.assign(rowItem, { index }), loc: `${index}`, }); - let msg = `add ${index} fail`; + let msg = `index:${index} add fail`; if (result.code === RESULT_CODE_SUCCESS) { + msg = `index:${index} add success`; index += 1; - msg = `add ${index} success`; } importState.msgArr.push(msg); }