使用oracle做的数据上传系统后台
kongdeqiang
2026-03-23 0d3f0dc4931e2a8cd379c5b7e9a9c70276ebc1cf
src/main/java/com/example/service/impl/DataExcelServiceImpl.java
@@ -22,12 +22,12 @@
public class DataExcelServiceImpl extends ServiceImpl<DataExcelMapper, DataExcel> implements DataExcelService {
    @Override
    public IPage<DataExcel> getDataExcelPage(Long current, Long size, String unitName, String transactionNo, String accountingPeriod, List<String> permissionDeptCodes) {
    public IPage<DataExcel> getDataExcelPage(Long current, Long size, String unitCode, String transactionNo, String accountingPeriod, List<String> permissionDeptCodes) {
        Page<DataExcel> page = new Page<>(current, size);
        page.setOptimizeJoinOfCountSql(false);
        page.setOptimizeCountSql(false);
        LambdaQueryWrapper<DataExcel> wrapper = new LambdaQueryWrapper<>();
        wrapper.like(unitName != null && !unitName.isEmpty(), DataExcel::getUnitName, unitName)
        wrapper.eq(unitCode != null && !unitCode.isEmpty(), DataExcel::getUnitCode, unitCode)
                .like(transactionNo != null && !transactionNo.isEmpty(), DataExcel::getTransactionNo, transactionNo)
                .eq(accountingPeriod != null && !accountingPeriod.isEmpty(), DataExcel::getAccountingPeriod, accountingPeriod)
                .in(permissionDeptCodes != null && !permissionDeptCodes.isEmpty(), DataExcel::getUnitCode, permissionDeptCodes)
@@ -41,6 +41,7 @@
        List<DataExcel> updateList = new ArrayList<>();
        List<String> errorMsgs = new ArrayList<>();
        int[] counts = new int[2];
        int[] counts2 = new int[2];
        try {
            EasyExcel.read(file.getInputStream(), DataExcelImport.class, new ReadListener<DataExcelImport>() {
@@ -54,7 +55,7 @@
                        errorMsgs.add("第" + data.getSeqNo() + "行无权限导入部门编码: " + data.getUnitCode());
                        return;
                    }
                    DataExcel entity = new DataExcel();
                    entity.setSortNo(data.getSortNo());
                    entity.setSeqNo(data.getSeqNo());
@@ -73,13 +74,13 @@
                    entity.setBusinessRelation(data.getBusinessRelation());
                    entity.setRemark(data.getRemark());
                    entity.setStatus(1);
                    if (data.getSortNo() != null) {
                        DataExcel existData = baseMapper.selectBySortNo(data.getSortNo());
                        if (existData != null) {
                            entity.setId(existData.getId());
                            updateList.add(entity);
                            counts[1]++;
                            counts2[0]++;
                        } else {
                            insertList.add(entity);
                            counts[0]++;
@@ -109,11 +110,11 @@
        if (counts[0] > 0) {
            result.append("成功新增 ").append(counts[0]).append(" 条记录");
        }
        if (counts[1] > 0) {
        if (counts2[0] > 0) {
            if (result.length() > 0) {
                result.append(",");
            }
            result.append("成功更新 ").append(counts[1]).append(" 条记录");
            result.append("成功更新 ").append(counts2[0]).append(" 条记录");
        }
        if (!errorMsgs.isEmpty()) {
            if (result.length() > 0) {
@@ -121,11 +122,11 @@
            }
            result.append("导入部分失败: ").append(String.join(", ", errorMsgs));
        }
        if (result.length() == 0) {
            return "导入失败";
        }
        return result.toString();
    }
}