@ -2,6 +2,7 @@ package com.xujie.sys.modules.reader.service.impl;
import com.alibaba.excel.EasyExcel ;
import com.alibaba.excel.EasyExcel ;
import com.alibaba.excel.support.ExcelTypeEnum ;
import com.alibaba.excel.support.ExcelTypeEnum ;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper ;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl ;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl ;
import com.xujie.sys.modules.reader.dao.GetInformationForExcelMapper ;
import com.xujie.sys.modules.reader.dao.GetInformationForExcelMapper ;
import com.xujie.sys.modules.reader.entity.EquipmentDataDetail ;
import com.xujie.sys.modules.reader.entity.EquipmentDataDetail ;
@ -59,17 +60,37 @@ public class GetInformationForExcelServiceImpl extends ServiceImpl<GetInformatio
}
}
private void saveInformation ( String folderFiler , EquipmentFolderLocation excel ) {
private void saveInformation ( String folderFiler , EquipmentFolderLocation excel ) {
List < EquipmentDataDetail > equipmentDataDetails = new ArrayList < > ( ) ;
/ / 获取文件夹下所有文件
/ / 获取文件夹下所有文件
List < File > files = getExcelFiles ( folderFiler ) ;
List < File > files = getExcelFiles ( folderFiler ) ;
if ( CollectionUtils . isEmpty ( files ) ) {
if ( CollectionUtils . isEmpty ( files ) ) {
return ;
return ;
}
}
/ / 判断这个批次号应该是多少
LambdaQueryWrapper < EquipmentDataDetail > queryWrapper = new LambdaQueryWrapper < > ( ) ;
queryWrapper . eq ( EquipmentDataDetail : : getBuNo , excel . getBuNo ( ) ) ;
queryWrapper . eq ( EquipmentDataDetail : : getSite , excel . getSite ( ) ) ;
queryWrapper . eq ( EquipmentDataDetail : : getFileNo , excel . getFileNo ( ) ) ;
List < EquipmentDataDetail > equipments = this . list ( queryWrapper ) ;
/ / 定义批次号
Integer batchNo ;
if ( CollectionUtils . isEmpty ( equipments ) ) {
batchNo = 1 ;
} else {
batchNo = equipments . get ( equipments . size ( ) - 1 ) . getBatchNo ( ) + 1 ;
}
List < EquipmentDataDetail > equipmentDataDetails = new ArrayList < > ( ) ;
/ / 创建一个list用来存储所有的的excel文件路径
/ / 创建一个list用来存储所有的的excel文件路径
List < String > fileName = new ArrayList < > ( ) ;
List < String > fileName = new ArrayList < > ( ) ;
for ( File file : files ) {
for ( File file : files ) {
/ / 找到 . 的索引
int dotIndex = file . getName ( ) . lastIndexOf ( "." ) ;
String s = file . getName ( ) . substring ( dotIndex + 1 ) ;
if ( s . equals ( "csv" ) ) {
fileName . add ( folderFiler + "\\" + file . getName ( ) ) ;
fileName . add ( folderFiler + "\\" + file . getName ( ) ) ;
}
}
}
/ / 获取每个excel下的所有关于Test的两个值并保存
/ / 获取每个excel下的所有关于Test的两个值并保存
for ( String s : fileName ) {
for ( String s : fileName ) {
File excelFile = new File ( s ) ;
File excelFile = new File ( s ) ;
@ -90,7 +111,9 @@ public class GetInformationForExcelServiceImpl extends ServiceImpl<GetInformatio
equipmentDataDetail . setEquipmentNo ( excel . getEquipmentNo ( ) ) ;
equipmentDataDetail . setEquipmentNo ( excel . getEquipmentNo ( ) ) ;
equipmentDataDetail . setBuNo ( excel . getBuNo ( ) ) ;
equipmentDataDetail . setBuNo ( excel . getBuNo ( ) ) ;
equipmentDataDetail . setSite ( excel . getSite ( ) ) ;
equipmentDataDetail . setSite ( excel . getSite ( ) ) ;
equipmentDataDetail . setBatchNo ( batchNo ) ;
equipmentDataDetail . setItemNo ( excel . getItemNo ( ) ) ;
equipmentDataDetail . setItemNo ( excel . getItemNo ( ) ) ;
equipmentDataDetail . setFileNo ( excel . getFileNo ( ) ) ;
equipmentDataDetail . setValue0 ( list . get ( i ) . get ( 1 ) ) ;
equipmentDataDetail . setValue0 ( list . get ( i ) . get ( 1 ) ) ;
equipmentDataDetail . setValue1 ( list . get ( i ) . get ( 3 ) ) ;
equipmentDataDetail . setValue1 ( list . get ( i ) . get ( 3 ) ) ;
equipmentDataDetails . add ( equipmentDataDetail ) ;
equipmentDataDetails . add ( equipmentDataDetail ) ;