فهرست منبع

修改时间取值问题

wangjiang 2 سال پیش
والد
کامیت
266e1a7dff

+ 3 - 0
src/main/java/platform/common/util/BokeWordUtils.java

@@ -1,5 +1,6 @@
 package platform.common.util;
 
+import lombok.extern.slf4j.Slf4j;
 import org.apache.poi.POIXMLDocument;
 import org.apache.poi.xwpf.usermodel.*;
 
@@ -16,6 +17,7 @@ import java.util.*;
  * @author kevin
  * @since 2019/9/3 4:10 PM
  */
+@Slf4j
 public class BokeWordUtils {
 
     private XWPFDocument document;
@@ -209,6 +211,7 @@ public class BokeWordUtils {
                     for (XWPFParagraph paragraph : paragraphs) {
                         List<XWPFRun> runs = paragraph.getRuns();
                         for (XWPFRun run : runs) {
+                            log.info("paragraph.run:"+ run.toString());
                             run.setText(changeValue(run.toString(), textMap), 0);
                         }
                     }

+ 30 - 1
src/main/java/platform/common/util/DateUtil.java

@@ -4,6 +4,7 @@ package platform.common.util;
 import java.text.DateFormat;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
+import java.time.LocalDate;
 import java.util.*;
 
 import org.apache.commons.lang3.StringUtils;
@@ -26,6 +27,19 @@ public class DateUtil {
         return sdf.format(new Date());
     }
 
+
+    // 判断今天是否超过给定日期
+    public static boolean isTodayAfterGivenDate(String givenDate) {
+        // 解析给定日期
+        LocalDate givenLocalDate = LocalDate.parse(givenDate);
+
+        // 获取今天的日期
+        LocalDate today = LocalDate.now();
+
+        // 使用compareTo方法比较日期
+        return today.isAfter(givenLocalDate);
+    }
+
     public static String getCurrentDateString() {
         return getCurrentDateString(YYYY_MM_DD);
     }
@@ -198,7 +212,7 @@ public class DateUtil {
 
     public static void main(String args[]) {
         try {
-            System.out.println(getMinuteDiff("2023-09-23 09:00:00", "2023-09-24 09:00:00"));
+            System.out.println(getMinuteDiff("2023-09-24 09:00:00", "2023-09-23 09:00:00") >0);
             System.out.println(getCurrentYear());
         } catch (ParseException e) {
             e.printStackTrace();
@@ -690,4 +704,19 @@ public class DateUtil {
 
         return yearList;
     }
+
+    /**
+     * 根据日期字符串 获取当前年
+     * @param dateString 如: 2023-12-31 23:59:00
+     * @return
+     */
+    public static int getYearFromDataString(String dateString) throws ParseException {
+        // 解析给定日期
+
+        Date date = parseTimeStringToDate(dateString, "yyyy-MM-dd HH:mm:ss");
+        Calendar calendar = Calendar.getInstance(); // 创建Calendar对象
+        calendar.setTime(date); // 设置日期到Calendar对象中
+        int year = calendar.get(Calendar.YEAR); //
+        return year;
+    }
 }

+ 35 - 1
src/main/java/platform/modules/company/service/ProjectApplicationService.java

@@ -1,6 +1,7 @@
 package platform.modules.company.service;
 
 import java.io.File;
+import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
@@ -301,6 +302,39 @@ public class ProjectApplicationService extends BaseService<ProjectApplication> {
         }
     }
 
+
+    public Object getOperationsInfo(Integer companyId,  ProjectApplication apply, String applyStartTime) {
+        if (null != apply) {
+            //已经申请的取新数据
+            List<ProjectApplicationOperationsInfo> infos = projectApplicationOperationsInfoService.findOperationsInfoByApply(apply, Constant.DictionaryType.PROJECT_APPLICATION);
+            return infos;
+        } else {
+            List<ProjectApplicationOperationsInfo> operationsInfo = new ArrayList<ProjectApplicationOperationsInfo>();
+            int year = Integer.parseInt(DateUtil.getCurrentDateString("yyyy"));
+            try {
+                year = DateUtil.getYearFromDataString(applyStartTime);
+            } catch (ParseException e) {
+                throw new RuntimeException(e);
+            }
+            for (int i = 1; i <= 3; i++) {
+                int dataYear = year - i;
+                ProjectApplicationOperationsInfo info = new ProjectApplicationOperationsInfo();
+                info.setCid(companyId);
+                info.setYear(String.valueOf(dataYear));
+                //企业在数据填报处已经填报的经营信息,带出来
+                CompanyOprationsInfo beforeInfo = companyOprationsInfoService.findCompanyOprationsByCidAndYear(companyId, String.valueOf(dataYear), Constant.DictionaryType.PROJECT_APPLICATION);
+                if (null != beforeInfo) {
+                    info.setCurrOperationInfoId(beforeInfo.getId());
+                    if (beforeInfo.getOperation_income() != null) {
+                        info.setOperation_income(beforeInfo.getOperation_income().toString());
+                    }
+                }
+                operationsInfo.add(info);
+            }
+            return operationsInfo;
+        }
+    }
+
     private void saveMessage(ProjectApplication apply) {
         try {
             Message messages = new Message();
@@ -1050,7 +1084,7 @@ public class ProjectApplicationService extends BaseService<ProjectApplication> {
      *
      * @param apply
      */
-    private FileDown annexOne(ProjectApplication apply) {
+    public FileDown annexOne(ProjectApplication apply) {
 //        final String annexName = "2019年苏州高新区工业经济发展专项扶持资金申请资料";
         String currentYear = "2022";
         try {

+ 6 - 2
src/main/java/platform/modules/company/web/ProjectApplicationController.java

@@ -156,6 +156,11 @@ public class ProjectApplicationController extends BaseController {
             noticesAcceptService.updateReadStatus(declarationId);
         }
 
+        ProjectDeclaration projectDeclaration = projectDeclarationService.selectById(String.valueOf(declarationId));
+        if (CommonUtils.isNull(projectDeclaration)) {
+            throw new RuntimeException("项目申报记录不存在");
+        }
+
         modelMap.put("companyId", companyId);
         Company company = companyService.findCompanyInfo(companyId);
         List<CompanyContact> list = new ArrayList<CompanyContact>();
@@ -174,8 +179,7 @@ public class ProjectApplicationController extends BaseController {
         modelMap.put("instructionUrl", setFileUrl() + "/docs/annex_template/项目类别说明.xlsx");
 
         //经营数据年份
-        modelMap.put("operationsInfo", projectApplicationService.getOperationsInfo(companyId, null));
-
+        modelMap.put("operationsInfo", projectApplicationService.getOperationsInfo(companyId, null, projectDeclaration.getCreate_time()));
         projectApplicationService.getDictInfo(modelMap);
         //查询行业类型
         List<DictionaryItem> industryTypeList = dictionaryItemService.findListByTypeName(Constant.DictionaryType.INDUSTRY_TYPE);