From 4d36eeaac3925e2cbd6d30c25e7ff14e0208fa53 Mon Sep 17 00:00:00 2001 From: qinyulong Date: Sat, 17 Jan 2026 14:20:21 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E5=B2=97=E8=AF=81=E7=BB=B4=E6=8A=A4?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CertificateMaintenanceServiceImpl.java | 30 ++++++++++++++++-- .../岗位处理导入模板下载.xls | Bin 21504 -> 21504 bytes .../jobTransfer/证书维护导入模板.xls | Bin 20480 -> 20480 bytes 3 files changed, 28 insertions(+), 2 deletions(-) diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobtransfer/service/impl/CertificateMaintenanceServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobtransfer/service/impl/CertificateMaintenanceServiceImpl.java index b65316f9..4b30b14e 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobtransfer/service/impl/CertificateMaintenanceServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobtransfer/service/impl/CertificateMaintenanceServiceImpl.java @@ -1,12 +1,15 @@ package org.springblade.desk.jobtransfer.service.impl; +import com.alibaba.nacos.common.utils.CollectionUtils; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import jakarta.annotation.Resource; import org.springblade.core.tool.api.R; import org.springblade.desk.jobtransfer.mapper.CertificateTypeMapper; import org.springblade.desk.jobtransfer.mapper.PostHandleMapper; import org.springblade.desk.jobtransfer.pojo.entity.CertificateMaintenanceEntity; +import org.springblade.desk.jobtransfer.pojo.entity.CertificateTypeEntity; import org.springblade.desk.jobtransfer.pojo.entity.PostHandleEntity; +import org.springblade.desk.jobtransfer.pojo.enums.MaintenanceStatusEnum; import org.springblade.desk.jobtransfer.pojo.enums.PostHandleStatusEnum; import org.springblade.desk.jobtransfer.pojo.enums.StaffTypeEnum; import org.springblade.desk.jobtransfer.pojo.excel.CertificateMaintenanceExcel; @@ -72,6 +75,7 @@ public class CertificateMaintenanceServiceImpl extends BaseServiceImpl certificateMaintenanceImports) { //获取全部用户codes,通过code获取用户ID, Set codes = certificateMaintenanceImports.stream().map(CertificateMaintenanceImport::getUserCode) @@ -106,8 +110,30 @@ public class CertificateMaintenanceServiceImpl extends BaseServiceImpl certificateType = certificateMaintenanceImports.stream().map(CertificateMaintenanceImport::getCertificateType) .collect(Collectors.toSet()); - - return null; + LambdaQueryWrapper certificateTypeEntityLambdaQueryWrapper = new LambdaQueryWrapper<>(); + certificateTypeEntityLambdaQueryWrapper.in(CollectionUtils.isNotEmpty(certificateType), CertificateTypeEntity::getName, certificateType); // [8](@ref) + List certificateTypeEntities = certificateTypeMapper.selectList(certificateTypeEntityLambdaQueryWrapper); + Map certificateTypeNameIds = certificateTypeEntities.stream().collect(Collectors.toMap( + entity -> entity.getName(), + entity -> entity.getId())); + certificateType.removeAll(certificateTypeNameIds.keySet()); + if (certificateType.size() > 0) { + return R.fail("证书:" + String.join(",", certificateType) + "不存在。"); + } + List saves = new ArrayList<>(); + certificateMaintenanceImports.forEach(e -> { + CertificateMaintenanceEntity entity = new CertificateMaintenanceEntity(); + entity.setPhId(codePostHandleIdMap.get(e.getUserCode())); + entity.setCertificateId(certificateTypeNameIds.get(e.getCertificateType())); + entity.setCertificateDate(e.getCertificateDate()); + entity.setAstronautDate(e.getAstronautDate()); + entity.setAirworthinessDate(e.getAirworthinessDate()); + entity.setCertificateCode(e.getCertificateCode()); + entity.setMaintenanceStatus(MaintenanceStatusEnum.NORMAL.getCode().shortValue()); + saves.add(entity); + }); + boolean saved = this.saveBatch(saves); + return R.status(saved); } diff --git a/blade-service/blade-desk/src/main/resources/Excel/jobTransfer/岗位处理导入模板下载.xls b/blade-service/blade-desk/src/main/resources/Excel/jobTransfer/岗位处理导入模板下载.xls index af6fc61bb5bbb59f27b7ad606af7ba019bfa902e..335e4a9b14fbfaa1549fdc95d5c4c853fb059826 100644 GIT binary patch delta 1036 zcmaKr%WD%+6vn?BCvnouBgsT!U04?)_1U`6DoJBP6w+E!Z2}6~Dnjf+aiOLlsmZvo zF1iseZbT)xX;)GimxAISPy}@sf-WMsR$NqKJU2;a@+i(Qcji04^SXyS<|;E++1gFX z^YPQ+_`OH`wzTBRCan!A>5-2G$x>n4_=9xBGJVe(tMc7ynAY^>I#_kFO%E}K<9O?8$5y*(1zl9rdNNB;nwgoX8|$SE zvXl8%KlM8FMK1*goSxVFY1E;A`)SOfM|3eanhC9Q;@eu#>jz!e$9X=omr49-B*9+u zO5`Np6CE>#^R?N+;_?Lv%)C}NCkiV?{w$g*`QY}`h&Ij-JEo%&`|E+I&{1rbhsb>uJ`}~FvD>>e-J^+=V${Ver58Zu2H=@9R<*kPebQFCo?6n z`Ib#4o7+}iQlj4$8z8maRz6a)trSvTTd6oh-E78bNH*)WvgpKuHuF=Q?}RM_NWrjG jkYLDG1}Vi>AyO)@pZ%%`fAOO>P8o*vV`|*>@|^S!I|JD~ delta 792 zcmZoz!Pu~ZaYGIZo4_?ehOV~BMJ#PhRZg3Ku{g7F>}&tu*>;DKd2*n?_2vfdxr~f5 zljV5DfutXdl$2p&?2ZohH)IfD*uucT@V|ZnBamWflbKw{D-M$NtlnP-lDz{I z;6k|h9Hy)dLiQh~tQ|sDj~^6nz%T)laUk~QGXB5XOnYo5ms+bZ3QV45?a0VJ`Hr63+QtX!{VOZk0E{W6t>fl;IMX>4^(cQ_jZJpd$m*WaYG6V-_6avzW-b9FgC0g^{Q;2T*T7G7_|8(OEVj1!`#`PmF;&JnI{W+ zTW>zV9m~k*Jz0)d97y`XNJ(!d#_s4~e?tZlhAj*X4FBsVFajxtHt)%Gyy75P&+7ek zAlW-WQBDT9>^f9g9Y#h5Glo4(P`&q1W$!Sc$nx=_nask#12&lvWUn2%EF%L4!sI+m zSx$uPJakzG1}=n~&tb~iAY}hx%Gx1h_4q;I1`HD*83$r-F5};(&17UVSjeWF z(B~jLd4Y9gJvRfZ0FZsKJI(KDs(iWzLrI)I14p_(!_!nvU{LTdurio~LJAC^ikT*8 zH4&}2JsO|l%>p)GxLG}H85pK*=Je2HWM^ea5Ori=o9yXX?+&u_FECUXfDUm6Vi=E! z!G!@7eGoZj23H1VIFAL$V}bKnfjrj9{9Y}5oIsC&%;5w=R@Ti6y<`~|`LF;0_C|`K delta 598 zcmZozz}T>WaYG6VUqsX8ssCE;Ffu6Iwqa$u6I}9kYe0*povoP?0O=bkyYlkk&$iRUxIS*5o z6CpbfU6z4?3*qK-n6fqq*?*X_b_iKLeo(jp!vsjif!LeN__t{@J+PjvXC0(4je!m5 za}Z`>U}T!0)$}w~J{`zxkA^TOcUedBvoNp<09739PV)mvZ;rD0!_E55hJhhubF_yh zqc{sggNP#oCK))~mL(-Xn8O~#3Z~