|
@@ -7,6 +7,7 @@ import com.rongwe.zhsw.system.domain.SwWaterUsageEntryDo;
|
|
|
import com.rongwe.zhsw.system.vo.ImportMeterReadingRecordVo;
|
|
|
import com.rongwei.rwadmincommon.system.vo.SysUserVo;
|
|
|
import com.rongwei.rwcommon.base.R;
|
|
|
+import com.rongwei.rwcommon.base.exception.CustomException;
|
|
|
import com.rongwei.rwcommoncomponent.file.dao.SysFileItemDao;
|
|
|
import com.rongwei.rwcommonentity.commonservers.domain.SysFileItemDo;
|
|
|
import com.rongwei.zhsw.system.config.ContextHolder;
|
|
@@ -24,7 +25,6 @@ import org.springframework.stereotype.Service;
|
|
|
import java.io.File;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
-import java.util.concurrent.CompletableFuture;
|
|
|
import java.util.concurrent.Executor;
|
|
|
|
|
|
import static com.rongwei.rwcommon.utils.UtilsChecks.parameterCheck;
|
|
@@ -67,14 +67,19 @@ public class ImportExcelServiceImpl implements ImportExcelService {
|
|
|
File file = readFile(fileId);
|
|
|
// 数据读取
|
|
|
long startTime = System.currentTimeMillis();
|
|
|
- MeterReadingRecordListener meterReadingRecordListener = new MeterReadingRecordListener(userManagementService, waterUsageEntryService);
|
|
|
- EasyExcel.read(file, ImportMeterReadingRecordVo.class, meterReadingRecordListener).sheet().doRead();
|
|
|
+ MeterReadingRecordListener meterReadingRecordListener;
|
|
|
+ try {
|
|
|
+ meterReadingRecordListener = new MeterReadingRecordListener(userManagementService, waterUsageEntryService);
|
|
|
+ EasyExcel.read(file, ImportMeterReadingRecordVo.class, meterReadingRecordListener).sheet().doRead();
|
|
|
+ } catch (Exception e) {
|
|
|
+ return R.error(e.getMessage());
|
|
|
+ }
|
|
|
// 获取处理之后的数据
|
|
|
long entTime = System.currentTimeMillis();
|
|
|
log.error("excel解析时长:{}", startTime - entTime);
|
|
|
List<SwWaterUsageEntryDo> saveList = meterReadingRecordListener.getData();
|
|
|
- if(saveList.isEmpty()) {
|
|
|
- return R.error("excel为空或excel中的数据已导入过");
|
|
|
+ if (saveList.isEmpty()) {
|
|
|
+ return R.error("excel为空或excel中的数据已导入过");
|
|
|
}
|
|
|
Map<String, SwUserManagementDo> ownerMap = meterReadingRecordListener.getOwnerMap();
|
|
|
SysUserVo currentUser = ZHSWCommonUtils.getCurrentUser();
|
|
@@ -106,9 +111,9 @@ public class ImportExcelServiceImpl implements ImportExcelService {
|
|
|
// .toArray(CompletableFuture[]::new)
|
|
|
// );
|
|
|
// allFutures.thenRun(() -> {
|
|
|
- ContextHolder.setValue("dsKey", dskey);
|
|
|
- billGenerationService.asyncGenerateBill(saveList, ownerMap); // 同步生成账单
|
|
|
- log.debug("数据保存总耗时: {}ms", System.currentTimeMillis() - asyncTasksStart);
|
|
|
+ ContextHolder.setValue("dsKey", dskey);
|
|
|
+ billGenerationService.asyncGenerateBill(saveList, ownerMap); // 同步生成账单
|
|
|
+ log.debug("数据保存总耗时: {}ms", System.currentTimeMillis() - asyncTasksStart);
|
|
|
// });
|
|
|
}
|
|
|
|