mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/per-boe/java-servers.git
synced 2025-12-09 02:46:50 +08:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
package com.xboe.data.dto;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author : civism
|
||||
* @version 1.0
|
||||
* @date 2023/6/23 17:32
|
||||
*/
|
||||
@Data
|
||||
public class ImportData {
|
||||
|
||||
private String importId;
|
||||
|
||||
|
||||
private List<String> caseIdList;
|
||||
|
||||
|
||||
private List<CasesTitle> caseTitleList;
|
||||
|
||||
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public static class CasesTitle {
|
||||
|
||||
private String caseId;
|
||||
|
||||
private String caseTitle;
|
||||
}
|
||||
}
|
||||
@@ -10,6 +10,7 @@ import cn.hutool.poi.excel.ExcelWriter;
|
||||
import com.xboe.common.PageList;
|
||||
import com.xboe.core.JsonResponse;
|
||||
import com.xboe.core.api.ApiBaseController;
|
||||
import com.xboe.data.dto.ImportData;
|
||||
import com.xboe.enums.CasesRecommendLaunchTypeEnum;
|
||||
import com.xboe.module.boecase.entity.CasesRecommend;
|
||||
import com.xboe.module.boecase.entity.CasesRecommendLaunchImport;
|
||||
@@ -108,11 +109,11 @@ public class CasesRecommendApi extends ApiBaseController {
|
||||
* @throws Exception
|
||||
*/
|
||||
@PostMapping("/import")
|
||||
public JsonResponse<String> excelImport(@RequestParam("file") MultipartFile file) throws Exception {
|
||||
public JsonResponse<ImportData> excelImport(@RequestParam("file") MultipartFile file) throws Exception {
|
||||
ExcelReader reader = ExcelUtil.getReader(file.getInputStream());
|
||||
List<List<Object>> read = reader.read();
|
||||
String s = iCasesRecommendLaunchImportService.importData(read);
|
||||
return success(s);
|
||||
ImportData importData = iCasesRecommendLaunchImportService.importData(read);
|
||||
return success(importData);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.xboe.module.boecase.service;
|
||||
|
||||
|
||||
import com.xboe.data.dto.ImportData;
|
||||
import com.xboe.module.boecase.entity.CasesRecommendLaunchImport;
|
||||
|
||||
import java.util.List;
|
||||
@@ -13,7 +14,7 @@ public interface ICasesRecommendLaunchImportService {
|
||||
* @param dataList
|
||||
* @return
|
||||
*/
|
||||
String importData(List<List<Object>> dataList);
|
||||
ImportData importData(List<List<Object>> dataList);
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -4,6 +4,7 @@ package com.xboe.module.boecase.service.impl;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import com.xboe.core.orm.FieldFilters;
|
||||
import com.xboe.data.dto.ImportData;
|
||||
import com.xboe.module.boecase.dao.CasesDao;
|
||||
import com.xboe.module.boecase.dao.CasesRecommendLaunchImportDao;
|
||||
import com.xboe.module.boecase.dao.CasesRecommendLaunchImportDataDao;
|
||||
@@ -15,6 +16,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@@ -32,7 +34,7 @@ public class CasesRecommendLaunchImportServiceImpl implements ICasesRecommendLau
|
||||
private CasesDao casesDao;
|
||||
|
||||
@Override
|
||||
public String importData(List<List<Object>> dataList) {
|
||||
public ImportData importData(List<List<Object>> dataList) {
|
||||
if (CollectionUtil.isEmpty(dataList) || dataList.size() < 1) {
|
||||
throw new RuntimeException("导入数据为空");
|
||||
}
|
||||
@@ -40,9 +42,14 @@ public class CasesRecommendLaunchImportServiceImpl implements ICasesRecommendLau
|
||||
int successNum = 0;
|
||||
int failNum = 0;
|
||||
String importId = IdUtil.getSnowflakeNextId() + "";
|
||||
ImportData importData = new ImportData();
|
||||
importData.setImportId(importId);
|
||||
List<String> caseIds = new ArrayList<>();
|
||||
|
||||
List<ImportData.CasesTitle> caseTitleList = new ArrayList<>();
|
||||
for (int i = 1; i < dataList.size(); i++) {
|
||||
String caseTitle = dataList.get(i).get(0).toString();
|
||||
|
||||
CasesRecommendLaunchImportData casesRecommendLaunchImportData = new CasesRecommendLaunchImportData();
|
||||
casesRecommendLaunchImportData.setImportId(importId);
|
||||
casesRecommendLaunchImportData.setCaseTitle(caseTitle);
|
||||
@@ -51,12 +58,18 @@ public class CasesRecommendLaunchImportServiceImpl implements ICasesRecommendLau
|
||||
failNum++;
|
||||
casesRecommendLaunchImportData.setStatus(2);
|
||||
} else {
|
||||
if (caseTitleList.size() < 10) {
|
||||
caseTitleList.add(new ImportData.CasesTitle(cases.getId(), cases.getTitle()));
|
||||
}
|
||||
caseIds.add(cases.getId());
|
||||
casesRecommendLaunchImportData.setStatus(1);
|
||||
casesRecommendLaunchImportData.setCaseTitle(caseTitle);
|
||||
successNum++;
|
||||
}
|
||||
casesRecommendLaunchImportDataDao.save(casesRecommendLaunchImportData);
|
||||
successNum++;
|
||||
}
|
||||
importData.setCaseTitleList(caseTitleList);
|
||||
importData.setCaseIdList(caseIds);
|
||||
CasesRecommendLaunchImport casesRecommendLaunchImport = new CasesRecommendLaunchImport();
|
||||
casesRecommendLaunchImport.setFailNum(failNum);
|
||||
casesRecommendLaunchImport.setImportId(importId);
|
||||
@@ -64,14 +77,15 @@ public class CasesRecommendLaunchImportServiceImpl implements ICasesRecommendLau
|
||||
casesRecommendLaunchImport.setTotalNum(totalNum);
|
||||
casesRecommendLaunchImport.setProcessStatus(1);
|
||||
casesRecommendLaunchImportDao.save(casesRecommendLaunchImport);
|
||||
return importId;
|
||||
return importData;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public List<String> downFailData(String importId) {
|
||||
|
||||
List<CasesRecommendLaunchImportData> dataList = casesRecommendLaunchImportDataDao.findList(FieldFilters.eq("importId", importId));
|
||||
List<CasesRecommendLaunchImportData> dataList = casesRecommendLaunchImportDataDao.findList(FieldFilters.eq("importId", importId)
|
||||
, FieldFilters.eq("status", 2));
|
||||
if (CollectionUtil.isEmpty(dataList)) {
|
||||
return null;
|
||||
}
|
||||
@@ -80,7 +94,7 @@ public class CasesRecommendLaunchImportServiceImpl implements ICasesRecommendLau
|
||||
|
||||
@Override
|
||||
public CasesRecommendLaunchImport getByImportId(String importId) {
|
||||
return casesRecommendLaunchImportDao.findOne(FieldFilters.eq("import_id", importId));
|
||||
return casesRecommendLaunchImportDao.findOne(FieldFilters.eq("importId", importId));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user