|
|
|
@ -131,8 +131,7 @@ public class GetInformationForExcelServiceImpl extends ServiceImpl<GetInformatio |
|
|
|
params.add(fileNo); |
|
|
|
List<Map<String, Object>> resultList = procedureDao.getProcedureData("Equipment_batch_no", params); |
|
|
|
|
|
|
|
|
|
|
|
Integer batchNo ; |
|
|
|
Integer batchNo =null; |
|
|
|
//在所有的数据新增玩之后 , 对应的获取批次号进行新增或者修改(数据第一次就新增) |
|
|
|
if (CollectionUtils.isEmpty(resultList)) { |
|
|
|
EquipmentFolderSortEntity equipmentFolderSortEntity = new EquipmentFolderSortEntity(); |
|
|
|
@ -144,6 +143,15 @@ public class GetInformationForExcelServiceImpl extends ServiceImpl<GetInformatio |
|
|
|
equipmentFolderSortService.save(equipmentFolderSortEntity); |
|
|
|
//对应的批次号为1 |
|
|
|
batchNo = 1; |
|
|
|
} else if ((Integer)resultList.get(0).get("batchNo")==null){ |
|
|
|
EquipmentFolderSortEntity equipmentFolderSortEntity = new EquipmentFolderSortEntity(); |
|
|
|
equipmentFolderSortEntity.setId((int)resultList.get(0).get("id")); |
|
|
|
equipmentFolderSortEntity.setSite(equipmentFolderLocation.getSite()); |
|
|
|
equipmentFolderSortEntity.setBuNo(equipmentFolderLocation.getBuNo()); |
|
|
|
equipmentFolderSortEntity.setBatchNo(2); |
|
|
|
equipmentFolderSortEntity.setFileNo(equipmentFolderLocation.getFileNo()); |
|
|
|
equipmentFolderSortEntity.setCreateDate(new Date()); |
|
|
|
equipmentFolderSortService.updateById(equipmentFolderSortEntity); |
|
|
|
} else { |
|
|
|
Date createDate = (Date)resultList.get(0).get("createDate");//获取最近新增一条信息的时间 |
|
|
|
Date date = new Date(); |
|
|
|
@ -295,7 +303,7 @@ public class GetInformationForExcelServiceImpl extends ServiceImpl<GetInformatio |
|
|
|
|
|
|
|
//判断什么时候开一开始获取数据的一个桥梁 |
|
|
|
boolean value = false; |
|
|
|
//获取值 |
|
|
|
//获取值(根据某个字段对比或者从某一行开始获取值) |
|
|
|
for (int i = 0; i < list.size(); i++) { |
|
|
|
if (StringUtils.isNotEmpty(equipmentFolderLocation.getExcelCompareFieldsX())) { |
|
|
|
if (equipmentFolderLocation.getExcelCompareFieldsY() == 0 && equipmentFolderLocation.getExcelCompareFieldsY() == null) { |
|
|
|
@ -314,12 +322,22 @@ public class GetInformationForExcelServiceImpl extends ServiceImpl<GetInformatio |
|
|
|
equipmentDataDetail.setItemNo(equipmentFolderLocation.getItemNo()); |
|
|
|
equipmentDataDetail.setFileNo(equipmentFolderLocation.getFileNo()); |
|
|
|
equipmentDataDetail.setCreateDate(new Date()); |
|
|
|
insertByEntity(equipmentDataDetail, list.get(i), null); |
|
|
|
//如果数据在一个单元格里面那么需要切割数据 |
|
|
|
if (StringUtils.isNotEmpty(equipmentFolderLocation.getCuttingSymbol())){ |
|
|
|
if (equipmentFolderLocation.getExcelCompareFieldsY()==null){ |
|
|
|
throw new RuntimeException("读取设备信息为配置"); |
|
|
|
} |
|
|
|
String data = list.get(i).get(equipmentFolderLocation.getExcelCompareFieldsY()-1); |
|
|
|
String[] split = data.split(equipmentFolderLocation.getCuttingSymbol()); |
|
|
|
insertByEntity(equipmentDataDetail, new HashMap<>(), split); |
|
|
|
}else { |
|
|
|
insertByEntity(equipmentDataDetail, list.get(i), null); |
|
|
|
} |
|
|
|
equipmentDataDetail.setNum(index); |
|
|
|
equipmentDataDetails.add(equipmentDataDetail); |
|
|
|
index++; |
|
|
|
} |
|
|
|
} else if (equipmentFolderLocation.getInitialLine() != null) { |
|
|
|
} else if (equipmentFolderLocation.getInitialLine() != null & equipmentFolderLocation.getDataRow()==null) { |
|
|
|
if (i == equipmentFolderLocation.getInitialLine() - 1) { |
|
|
|
value = true; |
|
|
|
} |
|
|
|
@ -332,13 +350,76 @@ public class GetInformationForExcelServiceImpl extends ServiceImpl<GetInformatio |
|
|
|
equipmentDataDetail.setItemNo(equipmentFolderLocation.getItemNo()); |
|
|
|
equipmentDataDetail.setFileNo(equipmentFolderLocation.getFileNo()); |
|
|
|
equipmentDataDetail.setCreateDate(new Date()); |
|
|
|
insertByEntity(equipmentDataDetail, list.get(i), null); |
|
|
|
if (StringUtils.isNotEmpty(equipmentFolderLocation.getCuttingSymbol())){ |
|
|
|
if (equipmentFolderLocation.getExcelCompareFieldsY()==null){ |
|
|
|
throw new RuntimeException("读取设备信息为配置"); |
|
|
|
} |
|
|
|
String data = list.get(i).get(equipmentFolderLocation.getExcelCompareFieldsY()-1); |
|
|
|
String[] split = data.split(equipmentFolderLocation.getCuttingSymbol()); |
|
|
|
insertByEntity(equipmentDataDetail, new HashMap<>(), split); |
|
|
|
}else { |
|
|
|
insertByEntity(equipmentDataDetail, list.get(i), null); |
|
|
|
} |
|
|
|
equipmentDataDetail.setNum(index); |
|
|
|
equipmentDataDetails.add(equipmentDataDetail); |
|
|
|
index++; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
//从某一行开始获取多少行的值 |
|
|
|
if (equipmentFolderLocation.getDataRow()!=null && equipmentFolderLocation.getSkipLine()!=null){ |
|
|
|
List<Map<Integer, String>> record=new ArrayList<>(); |
|
|
|
Integer dataRow = equipmentFolderLocation.getDataRow(); |
|
|
|
Integer skipLine = equipmentFolderLocation.getSkipLine(); |
|
|
|
Integer initialLine = equipmentFolderLocation.getInitialLine(); |
|
|
|
|
|
|
|
while (initialLine < list.size()) { |
|
|
|
// 取三个数据 |
|
|
|
if (initialLine + dataRow <= list.size()) { |
|
|
|
List<Map<Integer, String>> threeItems = list.subList(initialLine, initialLine + dataRow); |
|
|
|
record.addAll(threeItems); // 将取到的三个数据加入结果集合 |
|
|
|
} else { |
|
|
|
for (int i = 1; i <= dataRow; i++) { |
|
|
|
if (initialLine + i> list.size()){ |
|
|
|
dataRow=i-1; |
|
|
|
if (dataRow!=0){ |
|
|
|
List<Map<Integer, String>> threeItems = list.subList(initialLine, initialLine + dataRow); |
|
|
|
record.addAll(threeItems); // 将取到的三个数据加入结果集合 |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
// 跳过两个数据 |
|
|
|
initialLine += dataRow+skipLine; // 跳过两个已取的数据,继续下一个循环 |
|
|
|
} |
|
|
|
|
|
|
|
for (int i = 0; i < record.size(); i++) { |
|
|
|
EquipmentDataDetail equipmentDataDetail = new EquipmentDataDetail(); |
|
|
|
equipmentDataDetail.setEquipmentNo(equipmentFolderLocation.getEquipmentNo()); |
|
|
|
equipmentDataDetail.setBuNo(equipmentFolderLocation.getBuNo()); |
|
|
|
equipmentDataDetail.setSite(equipmentFolderLocation.getSite()); |
|
|
|
equipmentDataDetail.setBatchNo(batchNo); |
|
|
|
equipmentDataDetail.setItemNo(equipmentFolderLocation.getItemNo()); |
|
|
|
equipmentDataDetail.setFileNo(equipmentFolderLocation.getFileNo()); |
|
|
|
equipmentDataDetail.setCreateDate(new Date()); |
|
|
|
if (StringUtils.isNotEmpty(equipmentFolderLocation.getCuttingSymbol())){ |
|
|
|
if (equipmentFolderLocation.getExcelCompareFieldsY()==null){ |
|
|
|
throw new RuntimeException("读取设备信息为配置"); |
|
|
|
} |
|
|
|
String data = record.get(i).get(equipmentFolderLocation.getExcelCompareFieldsY()-1); |
|
|
|
String[] split = data.split(equipmentFolderLocation.getCuttingSymbol()); |
|
|
|
insertByEntity(equipmentDataDetail, new HashMap<>(), split); |
|
|
|
}else { |
|
|
|
insertByEntity(equipmentDataDetail, record.get(i), null); |
|
|
|
} |
|
|
|
equipmentDataDetail.setNum(index); |
|
|
|
equipmentDataDetails.add(equipmentDataDetail); |
|
|
|
index++; |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (CollectionUtils.isNotEmpty(equipmentDataDetails)) { |
|
|
|
equipmentDataDetails.get(equipmentDataDetails.size() - 1).setFileValue1(file); |
|
|
|
} else { |
|
|
|
@ -381,7 +462,7 @@ public class GetInformationForExcelServiceImpl extends ServiceImpl<GetInformatio |
|
|
|
} |
|
|
|
for (String s : list) { |
|
|
|
EquipmentDataDetail equipmentDataDetail = new EquipmentDataDetail(); |
|
|
|
String[] data = s.split("\t"); |
|
|
|
String[] data = s.split(equipmentFolderLocation.getCuttingSymbol()); |
|
|
|
equipmentDataDetail.setEquipmentNo(equipmentFolderLocation.getEquipmentNo()); |
|
|
|
equipmentDataDetail.setBuNo(equipmentFolderLocation.getBuNo()); |
|
|
|
equipmentDataDetail.setSite(equipmentFolderLocation.getSite()); |
|
|
|
@ -440,7 +521,7 @@ public class GetInformationForExcelServiceImpl extends ServiceImpl<GetInformatio |
|
|
|
} |
|
|
|
//对数据进行切割封装 |
|
|
|
for (String info : list) { |
|
|
|
String[] data = info.split("\t"); |
|
|
|
String[] data = info.split(equipmentFolderLocation.getCuttingSymbol()); |
|
|
|
EquipmentDataDetail equipmentDataDetail = new EquipmentDataDetail(); |
|
|
|
equipmentDataDetail.setEquipmentNo(equipmentFolderLocation.getEquipmentNo()); |
|
|
|
equipmentDataDetail.setBuNo(equipmentFolderLocation.getBuNo()); |
|
|
|
@ -494,6 +575,7 @@ public class GetInformationForExcelServiceImpl extends ServiceImpl<GetInformatio |
|
|
|
//保存数据到对应位置 |
|
|
|
private static void insertByEntity(EquipmentDataDetail equipmentDataDetail, Map<Integer, String> hashMap, String[] strings) { |
|
|
|
if (!hashMap.isEmpty() && hashMap != null) { |
|
|
|
|
|
|
|
if (hashMap.get(0) != null) { |
|
|
|
equipmentDataDetail.setValue0(hashMap.get(0).trim()); |
|
|
|
} |
|
|
|
|