|
|
|
@ -1,12 +1,15 @@ |
|
|
|
package org.springblade.desk.jobtransfer.service.impl; |
|
|
|
package org.springblade.desk.jobtransfer.service.impl; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import com.alibaba.nacos.common.utils.CollectionUtils; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|
|
|
import jakarta.annotation.Resource; |
|
|
|
import jakarta.annotation.Resource; |
|
|
|
import org.springblade.core.tool.api.R; |
|
|
|
import org.springblade.core.tool.api.R; |
|
|
|
import org.springblade.desk.jobtransfer.mapper.CertificateTypeMapper; |
|
|
|
import org.springblade.desk.jobtransfer.mapper.CertificateTypeMapper; |
|
|
|
import org.springblade.desk.jobtransfer.mapper.PostHandleMapper; |
|
|
|
import org.springblade.desk.jobtransfer.mapper.PostHandleMapper; |
|
|
|
import org.springblade.desk.jobtransfer.pojo.entity.CertificateMaintenanceEntity; |
|
|
|
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.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.PostHandleStatusEnum; |
|
|
|
import org.springblade.desk.jobtransfer.pojo.enums.StaffTypeEnum; |
|
|
|
import org.springblade.desk.jobtransfer.pojo.enums.StaffTypeEnum; |
|
|
|
import org.springblade.desk.jobtransfer.pojo.excel.CertificateMaintenanceExcel; |
|
|
|
import org.springblade.desk.jobtransfer.pojo.excel.CertificateMaintenanceExcel; |
|
|
|
@ -72,6 +75,7 @@ public class CertificateMaintenanceServiceImpl extends BaseServiceImpl<Certifica |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public R saveExcelData(List<CertificateMaintenanceImport> certificateMaintenanceImports) { |
|
|
|
public R saveExcelData(List<CertificateMaintenanceImport> certificateMaintenanceImports) { |
|
|
|
//获取全部用户codes,通过code获取用户ID,
|
|
|
|
//获取全部用户codes,通过code获取用户ID,
|
|
|
|
Set<String> codes = certificateMaintenanceImports.stream().map(CertificateMaintenanceImport::getUserCode) |
|
|
|
Set<String> codes = certificateMaintenanceImports.stream().map(CertificateMaintenanceImport::getUserCode) |
|
|
|
@ -106,8 +110,30 @@ public class CertificateMaintenanceServiceImpl extends BaseServiceImpl<Certifica |
|
|
|
//获取全部证书类型
|
|
|
|
//获取全部证书类型
|
|
|
|
Set<String> certificateType = certificateMaintenanceImports.stream().map(CertificateMaintenanceImport::getCertificateType) |
|
|
|
Set<String> certificateType = certificateMaintenanceImports.stream().map(CertificateMaintenanceImport::getCertificateType) |
|
|
|
.collect(Collectors.toSet()); |
|
|
|
.collect(Collectors.toSet()); |
|
|
|
|
|
|
|
LambdaQueryWrapper<CertificateTypeEntity> certificateTypeEntityLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
|
|
|
return null; |
|
|
|
certificateTypeEntityLambdaQueryWrapper.in(CollectionUtils.isNotEmpty(certificateType), CertificateTypeEntity::getName, certificateType); // [8](@ref)
|
|
|
|
|
|
|
|
List<CertificateTypeEntity> certificateTypeEntities = certificateTypeMapper.selectList(certificateTypeEntityLambdaQueryWrapper); |
|
|
|
|
|
|
|
Map<String, Long> 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<CertificateMaintenanceEntity> 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); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|