feat: 打包下载license文件
This commit is contained in:
1 parent
19ebf11ae9
commit
04a9071a6f
5 files changed
+121
-91
No files matched your search
+8
@@ -23,6 +23,14 @@ public class LicenseNeCodeVO {
|
|||||||
@Schema(description = "文件url")
|
@Schema(description = "文件url")
|
||||||
private String fileUrl;
|
private String fileUrl;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 文件URL
|
||||||
|
*/
|
||||||
|
private String fileUrlLegacy;
|
||||||
|
|
||||||
|
@Schema(description = "文件url列表")
|
||||||
|
private List<String> fileUrlList;
|
||||||
|
|
||||||
@Schema(description = "提供者ID")
|
@Schema(description = "提供者ID")
|
||||||
private Long providerId;
|
private Long providerId;
|
||||||
}
|
}
|
||||||
+4
@@ -55,6 +55,10 @@ public class LicenseDetailDO extends BaseDO {
|
|||||||
* 文件URL
|
* 文件URL
|
||||||
*/
|
*/
|
||||||
private String fileUrl;
|
private String fileUrl;
|
||||||
|
/**
|
||||||
|
* 文件URL-Legacy
|
||||||
|
*/
|
||||||
|
private String fileUrlLegacy;
|
||||||
/**
|
/**
|
||||||
* 提供者ID
|
* 提供者ID
|
||||||
*/
|
*/
|
||||||
|
|||||||
+4
-1
@@ -108,5 +108,8 @@ public class LicenseProviderDO extends BaseDO {
|
|||||||
* 备注
|
* 备注
|
||||||
*/
|
*/
|
||||||
private String remark;
|
private String remark;
|
||||||
|
/**
|
||||||
|
* 审批人
|
||||||
|
*/
|
||||||
|
private Long approver;
|
||||||
}
|
}
|
||||||
+104
-89
@@ -3,6 +3,7 @@ package org.agt.module.license.service.license;
|
|||||||
import cn.hutool.core.io.FileUtil;
|
import cn.hutool.core.io.FileUtil;
|
||||||
import cn.hutool.core.io.resource.ResourceUtil;
|
import cn.hutool.core.io.resource.ResourceUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import cn.hutool.core.util.ZipUtil;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@@ -30,8 +31,11 @@ import org.agt.module.system.api.mail.dto.MailSendSingleToUserReqDTO;
|
|||||||
import org.agt.module.system.api.notify.NotifyMessageSendApi;
|
import org.agt.module.system.api.notify.NotifyMessageSendApi;
|
||||||
import org.agt.module.system.api.notify.dto.NotifySendSingleToUserReqDTO;
|
import org.agt.module.system.api.notify.dto.NotifySendSingleToUserReqDTO;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
||||||
|
import java.io.ByteArrayInputStream;
|
||||||
|
import java.io.File;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -78,6 +82,7 @@ public class LicenseServiceImpl implements LicenseService {
|
|||||||
private LicenseDetailMapper licenseDetailMapper;
|
private LicenseDetailMapper licenseDetailMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public Long createLicense(LicenseSaveReqVO createReqVO) {
|
public Long createLicense(LicenseSaveReqVO createReqVO) {
|
||||||
// 校验项目Sn是否唯一
|
// 校验项目Sn是否唯一
|
||||||
if (!validateLicenseSnUnique(createReqVO.getSerialNo(), createReqVO.getId())) {
|
if (!validateLicenseSnUnique(createReqVO.getSerialNo(), createReqVO.getId())) {
|
||||||
@@ -171,6 +176,7 @@ public class LicenseServiceImpl implements LicenseService {
|
|||||||
licenseProviderDO.setOperationType(1);
|
licenseProviderDO.setOperationType(1);
|
||||||
licenseProviderDO.setState(1);
|
licenseProviderDO.setState(1);
|
||||||
licenseProviderDO.setRemark(updateReqVO.getRemark());
|
licenseProviderDO.setRemark(updateReqVO.getRemark());
|
||||||
|
licenseProviderDO.setApprover(updateReqVO.getApprover());
|
||||||
|
|
||||||
licenseProviderMapper.insert(licenseProviderDO);
|
licenseProviderMapper.insert(licenseProviderDO);
|
||||||
neCodeVO.setProviderId(licenseProviderDO.getId());
|
neCodeVO.setProviderId(licenseProviderDO.getId());
|
||||||
@@ -187,12 +193,11 @@ public class LicenseServiceImpl implements LicenseService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public String generate(Long id) {
|
public String generate(Long id) {
|
||||||
LicenseDO licenseDO = licenseMapper.selectById(id);
|
LicenseDO licenseDO = licenseMapper.selectById(id);
|
||||||
|
|
||||||
// List<LicenseNeCodeVO> neCodeList = licenseDO.getNeCodeList();
|
|
||||||
List<LicenseDetailDO> licenseDetailDOS = licenseDetailMapper.selectList(Wrappers.<LicenseDetailDO>lambdaQuery().eq(LicenseDetailDO::getLicenseId, licenseDO.getId()));
|
List<LicenseDetailDO> licenseDetailDOS = licenseDetailMapper.selectList(Wrappers.<LicenseDetailDO>lambdaQuery().eq(LicenseDetailDO::getLicenseId, licenseDO.getId()));
|
||||||
// List<LicenseNeCodeVO> neCodeList = BeanUtils.toBean(licenseDetailDOS, LicenseNeCodeVO.class);
|
|
||||||
|
|
||||||
for (LicenseDetailDO neCodeVO : licenseDetailDOS) {
|
for (LicenseDetailDO neCodeVO : licenseDetailDOS) {
|
||||||
LicenseProviderDO licenseProviderDO = licenseProviderMapper.selectById(neCodeVO.getProviderId());
|
LicenseProviderDO licenseProviderDO = licenseProviderMapper.selectById(neCodeVO.getProviderId());
|
||||||
@@ -200,65 +205,6 @@ public class LicenseServiceImpl implements LicenseService {
|
|||||||
licenseProviderMapper.updateById(licenseProviderDO);
|
licenseProviderMapper.updateById(licenseProviderDO);
|
||||||
}
|
}
|
||||||
|
|
||||||
// try {
|
|
||||||
// System.out.println("线程开始睡眠...");
|
|
||||||
// Thread.sleep(8000); // 暂停2000毫秒,即2秒
|
|
||||||
// System.out.println("线程醒来!");
|
|
||||||
// } catch (InterruptedException e) {
|
|
||||||
// log.error("睡眠失败");
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// for (LicenseDetailDO neCodeVO : licenseDetailDOS) {
|
|
||||||
// LicenseProviderDO licenseProviderDO = licenseProviderMapper.selectById(neCodeVO.getProviderId());
|
|
||||||
// if (licenseProviderDO.getState() != 3) {
|
|
||||||
//// continue;
|
|
||||||
// }
|
|
||||||
// String newFilePath1 = licenseProviderDO.getNewFilePath1();
|
|
||||||
//
|
|
||||||
// List<Integer> neList = neCodeVO.getNeList();
|
|
||||||
// List<String> neLabels = new ArrayList<>();
|
|
||||||
// for (Integer ne : neList) {
|
|
||||||
// String label = DictFrameworkUtils.parseDictDataLabel("lic_ne_all", ne.toString());
|
|
||||||
// if (StrUtil.isBlank(label)) {
|
|
||||||
// label = DictFrameworkUtils.parseDictDataLabel("lic_ne_5g", ne.toString());
|
|
||||||
// if (StrUtil.isBlank(label)) {
|
|
||||||
// label = DictFrameworkUtils.parseDictDataLabel("lic_ne_4g", ne.toString());
|
|
||||||
// if (StrUtil.isBlank(label)) {
|
|
||||||
// label = DictFrameworkUtils.parseDictDataLabel("lic_ne_23g", ne.toString());
|
|
||||||
// if (StrUtil.isBlank(label)) {
|
|
||||||
// label = DictFrameworkUtils.parseDictDataLabel("lic_ne_add", ne.toString());
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// neLabels.add(label);
|
|
||||||
// }
|
|
||||||
// String neListStr = StrUtil.join("_", neLabels);
|
|
||||||
// if (StrUtil.isNotBlank(neListStr)) {
|
|
||||||
// neListStr = neListStr + "_";
|
|
||||||
// }
|
|
||||||
// String fileName = neListStr + licenseDO.getSerialNo() + "_" + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "_system.ini";
|
|
||||||
//
|
|
||||||
// // 上传到文件服务
|
|
||||||
// byte[] fileContent = null;
|
|
||||||
// try {
|
|
||||||
// log.info("下载License文件路径为:{}", newFilePath1);
|
|
||||||
// fileContent = FileUtil.readBytes(newFilePath1);
|
|
||||||
// } catch (Exception e) {
|
|
||||||
// log.error("读取文件失败", e);
|
|
||||||
// }
|
|
||||||
// if (fileContent == null) {
|
|
||||||
// log.error("读取文件失败为空");
|
|
||||||
// fileContent = ResourceUtil.readBytes("file/MME_13750602_2024-08-02_system.ini");
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// String fileURL = fileApi.createFile(fileContent, fileName);
|
|
||||||
//
|
|
||||||
// neCodeVO.setFileUrl(fileURL);
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// licenseDetailMapper.updateBatch(licenseDetailDOS);
|
|
||||||
// licenseDO.setNeCodeList(neCodeList);
|
|
||||||
licenseDO.setStatus(LicenseStatusEnum.GENERATING.getCode());
|
licenseDO.setStatus(LicenseStatusEnum.GENERATING.getCode());
|
||||||
licenseMapper.updateById(licenseDO);
|
licenseMapper.updateById(licenseDO);
|
||||||
return "";
|
return "";
|
||||||
@@ -270,43 +216,21 @@ public class LicenseServiceImpl implements LicenseService {
|
|||||||
List<LicenseDetailDO> licenseDetails = licenseDetailMapper.selectList(Wrappers.<LicenseDetailDO>lambdaQuery().eq(LicenseDetailDO::getLicenseId, licenseDO.getId()));
|
List<LicenseDetailDO> licenseDetails = licenseDetailMapper.selectList(Wrappers.<LicenseDetailDO>lambdaQuery().eq(LicenseDetailDO::getLicenseId, licenseDO.getId()));
|
||||||
|
|
||||||
for (LicenseDetailDO detail : licenseDetails) {
|
for (LicenseDetailDO detail : licenseDetails) {
|
||||||
if (StrUtil.isNotBlank(detail.getFileUrl())) {
|
if (StrUtil.isNotBlank(detail.getFileUrl()) && StrUtil.isNotBlank(detail.getFileUrlLegacy())) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
LicenseProviderDO licenseProviderDO = licenseProviderMapper.selectById(detail.getProviderId());
|
LicenseProviderDO licenseProviderDO = licenseProviderMapper.selectById(detail.getProviderId());
|
||||||
if (licenseProviderDO.getState() != 3) {
|
if (licenseProviderDO == null || licenseProviderDO.getState() != 3) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
String newFilePath1 = licenseProviderDO.getNewFilePath1();
|
|
||||||
|
|
||||||
List<Integer> neList = detail.getNeList();
|
String fileName = getFileName(licenseDO.getSerialNo(), detail.getNeList());
|
||||||
List<String> neLabels = new ArrayList<>();
|
|
||||||
for (Integer ne : neList) {
|
|
||||||
String label = DictFrameworkUtils.parseDictDataLabel("lic_ne_all", ne.toString());
|
|
||||||
if (StrUtil.isBlank(label)) {
|
|
||||||
label = DictFrameworkUtils.parseDictDataLabel("lic_ne_5g", ne.toString());
|
|
||||||
if (StrUtil.isBlank(label)) {
|
|
||||||
label = DictFrameworkUtils.parseDictDataLabel("lic_ne_4g", ne.toString());
|
|
||||||
if (StrUtil.isBlank(label)) {
|
|
||||||
label = DictFrameworkUtils.parseDictDataLabel("lic_ne_23g", ne.toString());
|
|
||||||
if (StrUtil.isBlank(label)) {
|
|
||||||
label = DictFrameworkUtils.parseDictDataLabel("lic_ne_add", ne.toString());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
neLabels.add(label);
|
|
||||||
}
|
|
||||||
String neListStr = StrUtil.join("_", neLabels);
|
|
||||||
if (StrUtil.isNotBlank(neListStr)) {
|
|
||||||
neListStr = neListStr + "_";
|
|
||||||
}
|
|
||||||
String fileName = neListStr + licenseDO.getSerialNo() + "_" + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "_system.ini";
|
|
||||||
|
|
||||||
// 上传到文件服务
|
// 上传到文件服务
|
||||||
byte[] fileContent = null;
|
byte[] fileContent = null;
|
||||||
try {
|
try {
|
||||||
log.info("下载License文件路径为:{}", newFilePath1);
|
String newFilePath1 = licenseProviderDO.getNewFilePath1();
|
||||||
|
log.info("45G_下载License文件路径为:{}", newFilePath1);
|
||||||
fileContent = FileUtil.readBytes(newFilePath1);
|
fileContent = FileUtil.readBytes(newFilePath1);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("读取文件失败", e);
|
log.error("读取文件失败", e);
|
||||||
@@ -316,15 +240,61 @@ public class LicenseServiceImpl implements LicenseService {
|
|||||||
fileContent = ResourceUtil.readBytes("file/MME_13750602_2024-08-02_system.ini");
|
fileContent = ResourceUtil.readBytes("file/MME_13750602_2024-08-02_system.ini");
|
||||||
}
|
}
|
||||||
|
|
||||||
String fileURL = fileApi.createFile(fileContent, fileName);
|
String fileURL = fileApi.createFile(fileContent, "45G_" + fileName);
|
||||||
|
|
||||||
detail.setFileUrl(fileURL);
|
detail.setFileUrl(fileURL);
|
||||||
|
|
||||||
|
// 上传到文件服务
|
||||||
|
byte[] fileContent0 = null;
|
||||||
|
try {
|
||||||
|
String newFilePath0 = licenseProviderDO.getNewFilePath0();
|
||||||
|
log.info("下载Legacy_License文件路径为:{}", newFilePath0);
|
||||||
|
fileContent0 = FileUtil.readBytes(newFilePath0);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("读取文件失败", e);
|
||||||
|
}
|
||||||
|
if (fileContent0 == null) {
|
||||||
|
log.error("读取文件失败为空");
|
||||||
|
fileContent0 = ResourceUtil.readBytes("file/MME_13750602_2024-08-02_system.ini");
|
||||||
|
}
|
||||||
|
|
||||||
|
String fileURL0 = fileApi.createFile(fileContent0, "Legacy_" + fileName);
|
||||||
|
|
||||||
|
detail.setFileUrlLegacy(fileURL0);
|
||||||
licenseDetailMapper.updateById(detail);
|
licenseDetailMapper.updateById(detail);
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean isCompleted = licenseDetails.stream().allMatch(c -> StrUtil.isNotBlank(c.getFileUrl()));
|
boolean isCompleted = licenseDetails.stream().allMatch(c -> StrUtil.isNotBlank(c.getFileUrl()));
|
||||||
|
|
||||||
if (isCompleted) {
|
if (isCompleted) {
|
||||||
|
// 打包压缩上传
|
||||||
|
List<String> pathList = new ArrayList<>();
|
||||||
|
List<ByteArrayInputStream> inputStreamList = new ArrayList<>();
|
||||||
|
for (LicenseDetailDO detail : licenseDetails) {
|
||||||
|
LicenseProviderDO licenseProviderDO = licenseProviderMapper.selectById(detail.getProviderId());
|
||||||
|
String fileName = getFileName(licenseDO.getSerialNo(), detail.getNeList());
|
||||||
|
if (StrUtil.isNotBlank(licenseProviderDO.getNewFilePath1())) {
|
||||||
|
pathList.add("45G_" + fileName);
|
||||||
|
inputStreamList.add(new ByteArrayInputStream(FileUtil.readBytes(licenseProviderDO.getNewFilePath1())));
|
||||||
|
} else {
|
||||||
|
pathList.add("45G_" + fileName);
|
||||||
|
inputStreamList.add(new ByteArrayInputStream(FileUtil.readBytes("file/MME_13750602_2024-08-02_system.ini")));
|
||||||
|
}
|
||||||
|
if (StrUtil.isNotBlank(licenseProviderDO.getNewFilePath0())) {
|
||||||
|
pathList.add("Legacy_" + fileName);
|
||||||
|
inputStreamList.add(new ByteArrayInputStream(FileUtil.readBytes(licenseProviderDO.getNewFilePath0())));
|
||||||
|
} else {
|
||||||
|
pathList.add("Legacy_" + fileName);
|
||||||
|
inputStreamList.add(new ByteArrayInputStream(FileUtil.readBytes("file/MME_13750602_2024-08-02_system.ini")));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
File tempFile = new File("D:/temp/temp.zip");
|
||||||
|
// File tempFile = new File("/usr/local/licGen");
|
||||||
|
ZipUtil.zip(tempFile, pathList.toArray(new String[0]), inputStreamList.toArray(new ByteArrayInputStream[inputStreamList.size()]));
|
||||||
|
String fileURL = fileApi.createFile(FileUtil.readBytes(tempFile), licenseDO.getSerialNo() + "_" + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))+".zip");
|
||||||
|
|
||||||
|
licenseDO.setFileUrl(fileURL);
|
||||||
licenseDO.setStatus(LicenseStatusEnum.COMPLETED.getCode());
|
licenseDO.setStatus(LicenseStatusEnum.COMPLETED.getCode());
|
||||||
licenseMapper.updateById(licenseDO);
|
licenseMapper.updateById(licenseDO);
|
||||||
}
|
}
|
||||||
@@ -333,6 +303,31 @@ public class LicenseServiceImpl implements LicenseService {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static String getFileName(String serialNo, List<Integer> neList) {
|
||||||
|
List<String> neLabels = new ArrayList<>();
|
||||||
|
for (Integer ne : neList) {
|
||||||
|
String label = DictFrameworkUtils.parseDictDataLabel("lic_ne_all", ne.toString());
|
||||||
|
if (StrUtil.isBlank(label)) {
|
||||||
|
label = DictFrameworkUtils.parseDictDataLabel("lic_ne_5g", ne.toString());
|
||||||
|
if (StrUtil.isBlank(label)) {
|
||||||
|
label = DictFrameworkUtils.parseDictDataLabel("lic_ne_4g", ne.toString());
|
||||||
|
if (StrUtil.isBlank(label)) {
|
||||||
|
label = DictFrameworkUtils.parseDictDataLabel("lic_ne_23g", ne.toString());
|
||||||
|
if (StrUtil.isBlank(label)) {
|
||||||
|
label = DictFrameworkUtils.parseDictDataLabel("lic_ne_add", ne.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
neLabels.add(label);
|
||||||
|
}
|
||||||
|
String neListStr = StrUtil.join("_", neLabels);
|
||||||
|
if (StrUtil.isNotBlank(neListStr)) {
|
||||||
|
neListStr = neListStr + "_";
|
||||||
|
}
|
||||||
|
return neListStr + serialNo + "_" + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "_system.ini";
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void deleteLicense(Long id) {
|
public void deleteLicense(Long id) {
|
||||||
// 校验存在
|
// 校验存在
|
||||||
@@ -352,6 +347,16 @@ public class LicenseServiceImpl implements LicenseService {
|
|||||||
LicenseDO licenseDO = licenseMapper.selectById(id);
|
LicenseDO licenseDO = licenseMapper.selectById(id);
|
||||||
List<LicenseDetailDO> licenseDetailDOS = licenseDetailMapper.selectList(Wrappers.<LicenseDetailDO>lambdaQuery().eq(LicenseDetailDO::getLicenseId, licenseDO.getId()));
|
List<LicenseDetailDO> licenseDetailDOS = licenseDetailMapper.selectList(Wrappers.<LicenseDetailDO>lambdaQuery().eq(LicenseDetailDO::getLicenseId, licenseDO.getId()));
|
||||||
List<LicenseNeCodeVO> details = BeanUtils.toBean(licenseDetailDOS, LicenseNeCodeVO.class);
|
List<LicenseNeCodeVO> details = BeanUtils.toBean(licenseDetailDOS, LicenseNeCodeVO.class);
|
||||||
|
for (LicenseNeCodeVO detail : details) {
|
||||||
|
List<String> fileUrlList = new ArrayList<>();
|
||||||
|
if (StrUtil.isNotBlank(detail.getFileUrl())) {
|
||||||
|
fileUrlList.add(detail.getFileUrl());
|
||||||
|
}
|
||||||
|
if (StrUtil.isNotBlank(detail.getFileUrlLegacy())) {
|
||||||
|
fileUrlList.add(detail.getFileUrlLegacy());
|
||||||
|
}
|
||||||
|
detail.setFileUrlList(fileUrlList);
|
||||||
|
}
|
||||||
licenseDO.setNeCodeList(details);
|
licenseDO.setNeCodeList(details);
|
||||||
return licenseDO;
|
return licenseDO;
|
||||||
}
|
}
|
||||||
@@ -362,6 +367,16 @@ public class LicenseServiceImpl implements LicenseService {
|
|||||||
for (LicenseDO licenseDO : pageResult.getList()) {
|
for (LicenseDO licenseDO : pageResult.getList()) {
|
||||||
List<LicenseDetailDO> licenseDetailDOS = licenseDetailMapper.selectList(Wrappers.<LicenseDetailDO>lambdaQuery().eq(LicenseDetailDO::getLicenseId, licenseDO.getId()));
|
List<LicenseDetailDO> licenseDetailDOS = licenseDetailMapper.selectList(Wrappers.<LicenseDetailDO>lambdaQuery().eq(LicenseDetailDO::getLicenseId, licenseDO.getId()));
|
||||||
List<LicenseNeCodeVO> details = BeanUtils.toBean(licenseDetailDOS, LicenseNeCodeVO.class);
|
List<LicenseNeCodeVO> details = BeanUtils.toBean(licenseDetailDOS, LicenseNeCodeVO.class);
|
||||||
|
for (LicenseNeCodeVO detail : details) {
|
||||||
|
List<String> fileUrlList = new ArrayList<>();
|
||||||
|
if (StrUtil.isNotBlank(detail.getFileUrl())) {
|
||||||
|
fileUrlList.add(detail.getFileUrl());
|
||||||
|
}
|
||||||
|
if (StrUtil.isNotBlank(detail.getFileUrlLegacy())) {
|
||||||
|
fileUrlList.add(detail.getFileUrlLegacy());
|
||||||
|
}
|
||||||
|
detail.setFileUrlList(fileUrlList);
|
||||||
|
}
|
||||||
licenseDO.setNeCodeList(details);
|
licenseDO.setNeCodeList(details);
|
||||||
}
|
}
|
||||||
return pageResult;
|
return pageResult;
|
||||||
|
|||||||
+1
-1
@@ -15,7 +15,7 @@ public class LicenseTask {
|
|||||||
@Resource
|
@Resource
|
||||||
private LicenseServiceImpl licenseService;
|
private LicenseServiceImpl licenseService;
|
||||||
|
|
||||||
@Scheduled(cron ="*/5 * * * * ?")
|
@Scheduled(cron ="*/8 * * * * ?")
|
||||||
public void task() {
|
public void task() {
|
||||||
licenseService.genLicenseTask();
|
licenseService.genLicenseTask();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user