From 18891c60ab1c06a4acc85d0ec54dee50d1b1a19f Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期一, 07 四月 2025 17:20:07 +0800
Subject: [PATCH] bug修改

---
 finance-system/src/main/java/com/finance/system/service/impl/TbBasicDataServiceImpl.java |   26 ++++++++++++++++++++------
 1 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/finance-system/src/main/java/com/finance/system/service/impl/TbBasicDataServiceImpl.java b/finance-system/src/main/java/com/finance/system/service/impl/TbBasicDataServiceImpl.java
index bc7243a..cf1145e 100644
--- a/finance-system/src/main/java/com/finance/system/service/impl/TbBasicDataServiceImpl.java
+++ b/finance-system/src/main/java/com/finance/system/service/impl/TbBasicDataServiceImpl.java
@@ -29,6 +29,7 @@
 import com.finance.common.utils.EasyExcelUtil;
 import com.finance.common.utils.SecurityUtils;
 import com.finance.common.utils.StringUtils;
+import com.finance.system.constants.QuarterConstant;
 import com.finance.system.domain.TbBasicData;
 import com.finance.system.domain.TbBasicDataConfig;
 import com.finance.system.domain.TbBasicDataConfigDetail;
@@ -128,6 +129,8 @@
             if (tbBasicDataField != null) {
                 field.setValue(
                         tbBasicDataField.getFieldValue());
+            } else {
+                field.setValue("");
             }
             if (field.getChildren() != null && !field.getChildren().isEmpty()) {
                 setFieldValues(field.getChildren(), fieldMap);
@@ -155,7 +158,7 @@
         LocalDate fifteenDaysLimit = quarterStartLocalDate.plusDays(14);
         LocalDate now = LocalDate.now();
         String previousQuarter = DateUtils.getPreviousQuarter();
-        previousQuarter = "2024年一季度";
+        previousQuarter = QuarterConstant.CURRENT_QUARTER;
         DateUtils.getQuarterDate(previousQuarter);
         vo.setQuarter(previousQuarter);
         vo.setStatus(ReportingStatusEnum.UNFILLED);
@@ -230,7 +233,7 @@
             return;
         }
         String previousQuarter = DateUtils.getPreviousQuarter();
-        previousQuarter = "2024年一季度";
+        previousQuarter = QuarterConstant.CURRENT_QUARTER;
         // 查询需要填写的动态字段
         List<TbField> fieldList =
                 tbFieldService.lambdaQuery().eq(TbField::getStatus, ShowStatusEnum.SHOW).list();
@@ -240,6 +243,8 @@
                 .eq(TbBasicData::getDeptAreaCode, areaCode)
                 .eq(TbBasicData::getQuarter, previousQuarter).oneOpt();
         TbBasicData tbBasicData = BeanUtils.copyBean(dto, TbBasicData.class);
+        tbBasicData.setCurrentGdp(tbBasicData.getCurrentGdp().replace(",", ""));
+        tbBasicData.setTransferPaymentScale(tbBasicData.getTransferPaymentScale().replace(",", ""));
         if (basicDataOpt.isPresent()) {
             tbBasicData.setId(basicDataOpt.get().getId());
             tbBasicData.setDeptAreaCode(areaCode);
@@ -493,7 +498,7 @@
         LoginUser loginUser = SecurityUtils.getLoginUser();
         String areaCode = loginUser.getUser().getAreaCode();
         String previousQuarter = DateUtils.getPreviousQuarter();
-        previousQuarter = "2024年一季度";
+        previousQuarter = QuarterConstant.CURRENT_QUARTER;
         EasyExcel.read(
                         file.getInputStream(),
                         new BasicDataListener(
@@ -613,7 +618,7 @@
         Date quarterStart = DateUtil.beginOfQuarter(date);
         Date quarterEnd = DateUtil.endOfQuarter(date);
         String previousQuarter = DateUtils.getPreviousQuarter();
-        previousQuarter = "2024年一季度";
+        // previousQuarter = "2024年一季度";
         // 查询是否有当前季度的填报记录
         TbBasicData basicData =
                 this.getOne(
@@ -784,7 +789,7 @@
         roots.add(remark);
         vo.setFields(roots);
         String previousQuarter = DateUtils.getPreviousQuarter();
-        previousQuarter = "2024年一季度";
+        // previousQuarter = "2024年一季度";
         // 查询上报的基础数据
         List<TbBasicData> basicDataList =
                 this.lambdaQuery()
@@ -952,7 +957,7 @@
         if (quarterLocalDate.isAfter(dateLocalDate) || quarterLocalDate.equals(dateLocalDate)) {
             throw new ServiceException("请导入过去季度的数据。");
         }
-
+        long start = System.currentTimeMillis();
         EasyExcel.read(
                         file.getInputStream(),
                         new HistoryDataListener(
@@ -966,6 +971,7 @@
                 .sheet()
                 .headRowNumber(0)
                 .doRead();
+        log.info("历史数据导入完成,耗时{}毫秒", System.currentTimeMillis() - start);
     }
 
     @Override
@@ -1142,6 +1148,8 @@
         // 查询需要填写的动态字段
         List<TbField> fieldList =
                 tbFieldService.lambdaQuery().eq(TbField::getStatus, ShowStatusEnum.SHOW).list();
+        Map<Long, TbField> allFieldMap = fieldList.stream()
+                .collect(Collectors.toMap(TbField::getId, e -> e));
         List<TbBasicDataField> originFields = tbBasicDataFieldService.lambdaQuery()
                 .eq(TbBasicDataField::getBasicDataId, basicData.getId()).list();
         Set<Long> fieldIdList = originFields.stream().map(TbBasicDataField::getFieldId)
@@ -1153,6 +1161,8 @@
                         BeanUtils.copyBean(dto, BasicDataDTO.class),
                         fieldMap));
         TbBasicData tbBasicData = BeanUtils.copyBean(dto, TbBasicData.class);
+        tbBasicData.setCurrentGdp(tbBasicData.getCurrentGdp().replace(",", ""));
+        tbBasicData.setTransferPaymentScale(tbBasicData.getTransferPaymentScale().replace(",", ""));
         tbBasicData.setDeptAreaCode(basicData.getDeptAreaCode());
         tbBasicData.setQuarter(basicData.getQuarter());
         // 保存基础数据动态字段数据
@@ -1194,6 +1204,10 @@
                         if (StringUtils.isNotBlank(item.getFieldValue())) {
                             item.setFieldValue(item.getFieldValue().replace(",", ""));
                         }
+                    } else {
+                        TbField field = allFieldMap.get(item.getFieldId());
+                        item.setFieldName(field.getFieldName());
+                        item.setBasicDataId(basicData.getId());
                     }
 
                 }).collect(Collectors.toList());

--
Gitblit v1.7.1