Commit 6b952b3e authored by liwei's avatar liwei

修改了单位开课的导入bug

parent 524b7876
...@@ -306,9 +306,9 @@ public class TeaTrialCourseController extends CyPaginationController<TeaTrialCou ...@@ -306,9 +306,9 @@ public class TeaTrialCourseController extends CyPaginationController<TeaTrialCou
// 开课类型列 第五列 // 开课类型列 第五列
ExcelUtil.XSSFSetDropDownAndHidden(applicantTypeList, workbook, sheet, 2, 10000, 4, 4); ExcelUtil.XSSFSetDropDownAndHidden(applicantTypeList, workbook, sheet, 2, 10000, 4, 4);
// 岗位分类列 第六列 // 岗位分类列 第六列
ExcelUtil.XSSFSetDropDownAndHidden(jobClassificationStrs, workbook, sheet, 2, 10000, 5, 5); // ExcelUtil.XSSFSetDropDownAndHidden(jobClassificationStrs, workbook, sheet, 2, 10000, 5, 5);
// 技术分类列 第七列 // 技术分类列 第七列
ExcelUtil.XSSFSetDropDownAndHidden(technicalClassificationStrs, workbook, sheet, 2, 10000, 6, 6); // ExcelUtil.XSSFSetDropDownAndHidden(technicalClassificationStrs, workbook, sheet, 2, 10000, 6, 6);
outputStream = response.getOutputStream(); outputStream = response.getOutputStream();
workbook.write(outputStream); workbook.write(outputStream);
} catch (IOException var12) { } catch (IOException var12) {
......
...@@ -338,20 +338,20 @@ public class TeaTrialCourseServiceImpl extends ServiceImpl<TeaTrialCourseReposit ...@@ -338,20 +338,20 @@ public class TeaTrialCourseServiceImpl extends ServiceImpl<TeaTrialCourseReposit
} }
} }
if (savedList.size() > 0) { if (savedList.size() > 0) {
TeaTrialCourse delTeaTrialCourse = new TeaTrialCourse(); // TeaTrialCourse delTeaTrialCourse = new TeaTrialCourse();
Set<String> stringSet = savedList.stream() // Set<String> stringSet = savedList.stream()
.map(teaTrialCourse -> teaTrialCourse.getApplicantUnit() + "_" + teaTrialCourse.getApplicantType()) // .map(teaTrialCourse -> teaTrialCourse.getApplicantUnit() + "_" + teaTrialCourse.getApplicantType())
.collect(Collectors.toCollection(HashSet::new)); // .collect(Collectors.toCollection(HashSet::new));
for (String str : stringSet) { // for (String str : stringSet) {
String[] strings = str.split("_"); // String[] strings = str.split("_");
delTeaTrialCourse.setApplicantUnit(Integer.valueOf(strings[0])); // delTeaTrialCourse.setApplicantUnit(Integer.valueOf(strings[0]));
delTeaTrialCourse.setApplicantType(Integer.valueOf(strings[1])); // delTeaTrialCourse.setApplicantType(Integer.valueOf(strings[1]));
List<TeaTrialCourse> delTeaTrialCourseList = baseMapper.queryTeaTrialCourses(delTeaTrialCourse); // List<TeaTrialCourse> delTeaTrialCourseList = baseMapper.queryTeaTrialCourses(delTeaTrialCourse);
// 批量删除 // // 批量删除
if (!delTeaTrialCourseList.isEmpty()) { // if (!delTeaTrialCourseList.isEmpty()) {
baseMapper.deleteBatch(delTeaTrialCourseList); // baseMapper.deleteBatch(delTeaTrialCourseList);
} // }
} // }
saveBatch(savedList); saveBatch(savedList);
} }
return savedList.size() + "条数据导入成功;" + (trialCourseDTOList.size() - savedList.size()) + "条数据导入失败。"; return savedList.size() + "条数据导入成功;" + (trialCourseDTOList.size() - savedList.size()) + "条数据导入失败。";
......
...@@ -324,39 +324,32 @@ public class ExcelUtil { ...@@ -324,39 +324,32 @@ public class ExcelUtil {
DataValidationHelper dvHelper = sheet.getDataValidationHelper(); DataValidationHelper dvHelper = sheet.getDataValidationHelper();
if (totalBytes > 255) { if (totalBytes > 255) {
// 当总选项字节数大于 255 时创建隐藏工作表用于存放下拉选项 // 当总选项字节数大于 255 时创建隐藏工作表用于存放下拉选项
// 创建sheet,写入枚举项 String sheetName = "hiddenSheet_" + firstCol;
//判断当前sheet不存在则创建 String nameName = "hidden_" + firstCol;
Sheet hideSheet = workbook.getSheet("hiddenSheet");
if (workbook.getSheet("hiddenSheet") == null) { // 创建隐藏工作表
hideSheet = workbook.createSheet("hiddenSheet"); Sheet hideSheet = workbook.getSheet(sheetName);
if (hideSheet == null) {
hideSheet = workbook.createSheet(sheetName);
} }
// 写入下拉选项
for (int i = 0; i < formulaString.length; i++) { for (int i = 0; i < formulaString.length; i++) {
// 将下拉选项值存放在目标工作表下拉项目相同列 hideSheet.createRow(i).createCell(0).setCellValue(formulaString[i]);
hideSheet.createRow(i).createCell(firstCol).setCellValue(formulaString[i]);
} }
// 创建名称,可被其他单元格引用
//判断当前名称不存在则创建 // 创建名称定义
Name hiddenSheetName = workbook.getName("hidden"); Name hiddenSheetName = workbook.getName(nameName);
if (workbook.getName("hidden") == null) { if (hiddenSheetName == null) {
hiddenSheetName = workbook.createName(); hiddenSheetName = workbook.createName();
hiddenSheetName.setNameName("hidden"); hiddenSheetName.setNameName(nameName);
} }
// 设置名称引用的公式 // 设置名称引用的公式
// 使用像'A1:B1'这样的相对值会导致在Microsoft Excel中使用工作簿时名称所指向的单元格的意外移动, hiddenSheetName.setRefersToFormula(sheetName + "!$A$1:$A$" + formulaString.length);
// 通常使用绝对引用,例如'$A$1:$B$1'可以避免这种情况。
// 根据 firstCol 计算引用索引字母 // 创建数据验证约束
StringBuilder columnLetter = new StringBuilder(); DataValidationConstraint constraint = dvHelper.createFormulaListConstraint(nameName);
int columnIndex = firstCol;
while (columnIndex >= 0) {
int rem = columnIndex % 26;
columnLetter.append((char) ('A' + rem));
columnIndex = (columnIndex / 26) - 1;
}
columnLetter.reverse();
hiddenSheetName.setRefersToFormula("hiddenSheet!$" + columnLetter + "$1:$" + columnLetter + "$" + formulaString.length);
// 获取上文名称内数据
DataValidationConstraint constraint = dvHelper.createFormulaListConstraint("hidden");
// 设置下拉框位置 // 设置下拉框位置
CellRangeAddressList addressList = new CellRangeAddressList(firstRow, lastRow, firstCol, lastCol); CellRangeAddressList addressList = new CellRangeAddressList(firstRow, lastRow, firstCol, lastCol);
DataValidation dataValidation = dvHelper.createValidation(constraint, addressList); DataValidation dataValidation = dvHelper.createValidation(constraint, addressList);
...@@ -370,7 +363,7 @@ public class ExcelUtil { ...@@ -370,7 +363,7 @@ public class ExcelUtil {
} }
// 作用在目标sheet上 // 作用在目标sheet上
sheet.addValidationData(dataValidation); sheet.addValidationData(dataValidation);
// 设置hiddenSheet隐藏 // 设置隐藏工作表隐藏
int hideSheetIndex = workbook.getSheetIndex(hideSheet); int hideSheetIndex = workbook.getSheetIndex(hideSheet);
workbook.setSheetHidden(hideSheetIndex, true); workbook.setSheetHidden(hideSheetIndex, true);
} else { } else {
......
...@@ -58,8 +58,8 @@ ...@@ -58,8 +58,8 @@
WHERE WHERE
tln.del_flag = 0 tln.del_flag = 0
AND tln.flag = 1 AND tln.flag = 1
AND cl.del_flag = 0 # AND cl.del_flag = 0
AND cl.flag = 1 # AND cl.flag = 1
AND tlbc.del_flag = 0 AND tlbc.del_flag = 0
<if test="dto.deptId !=null and dto.deptId != '' "> <if test="dto.deptId !=null and dto.deptId != '' ">
AND tlbc.applicant_unit = #{dto.deptId} AND tlbc.applicant_unit = #{dto.deptId}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment