Bläddra i källkod

日期格式转化bug

QuYueTing 2 veckor sedan
förälder
incheckning
e46decccc6

+ 4 - 3
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/ErpOrderInfo.java

@@ -2,8 +2,8 @@ package com.management.platform.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
+import java.time.LocalDate;
 import com.baomidou.mybatisplus.annotation.TableId;
-import java.time.LocalDateTime;
 import com.baomidou.mybatisplus.annotation.TableField;
 import java.io.Serializable;
 import lombok.Data;
@@ -16,7 +16,7 @@ import lombok.experimental.Accessors;
  * </p>
  *
  * @author Seyason
- * @since 2025-04-29
+ * @since 2025-05-03
  */
 @Data
 @EqualsAndHashCode(callSuper = false)
@@ -68,7 +68,7 @@ public class ErpOrderInfo extends Model<ErpOrderInfo> {
      * 生产工单日期
      */
     @TableField("rels_date")
-    private LocalDateTime relsDate;
+    private LocalDate relsDate;
 
     /**
      * 外部系统部门id,也是code
@@ -85,6 +85,7 @@ public class ErpOrderInfo extends Model<ErpOrderInfo> {
     @TableField(exist = false)
     private String trueProjectId;
 
+
     @Override
     protected Serializable pkVal() {
         return this.id;

+ 14 - 13
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/task/DataCollectTask.java

@@ -6,10 +6,7 @@ import com.management.platform.controller.ReportController;
 import com.management.platform.entity.*;
 import com.management.platform.entity.vo.TisTimeVO;
 import com.management.platform.mapper.*;
-import com.management.platform.service.LeaveSheetService;
-import com.management.platform.service.StagesService;
-import com.management.platform.service.TaskService;
-import com.management.platform.service.UserSalaryService;
+import com.management.platform.service.*;
 import com.management.platform.util.MessageUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -47,6 +44,8 @@ public class DataCollectTask {
 
     @Resource
     private ErpOrderInfoMapper erpOrderInfoMapper;
+    @Resource
+    private ErpOrderInfoService erpOrderInfoService;
 
     @Resource
     private ProjectMapper projectMapper;
@@ -203,6 +202,7 @@ public class DataCollectTask {
 
 
     @Scheduled(cron = "0 0 1 * * ?")
+//    @Scheduled(cron = "0 46 7 * * ?")
     @Async
     public void sqlServerTask() {
         if(isDev){return;}
@@ -246,20 +246,21 @@ public class DataCollectTask {
                         List<ErpOrderInfo> dataList = listResponse.getBody();
                         if(org.apache.commons.collections.CollectionUtils.isNotEmpty(dataList)){
                             List<String> collect = dataList.stream().map(ErpOrderInfo::getMoDId).distinct().collect(Collectors.toList());
-                            List<String> existIds = erpOrderInfoMapper.getExistIds(collect);
-                            if(!CollectionUtils.isEmpty(existIds)){
-                                toUpdateList.addAll(dataList.stream().filter(t -> existIds.contains(t.getMoDId())).collect(Collectors.toList()));
-                                toAddList.addAll(dataList.stream().filter(t -> !existIds.contains(t.getMoDId())).collect(Collectors.toList()));
-                            }else{
-                                toAddList.addAll(dataList);
+                            List<ErpOrderInfo> erpOrderInfos = erpOrderInfoMapper.selectList(new LambdaQueryWrapper<ErpOrderInfo>().in(ErpOrderInfo::getMoDId, collect));
+                            for (ErpOrderInfo item : dataList) {
+                                Optional<ErpOrderInfo> first = erpOrderInfos.stream().filter(t -> t.getMoDId().equals(item.getMoDId())).findFirst();
+                                if(first.isPresent()){
+                                    item.setId(first.get().getId());
+                                    toUpdateList.add(item);
+                                } else {
+                                    toAddList.add(item);
+                                }
                             }
                             if(!CollectionUtils.isEmpty(toAddList)){
                                 erpOrderInfoMapper.batchInsert(toAddList);
                             }
                             if(!CollectionUtils.isEmpty(toUpdateList)){
-                                for (ErpOrderInfo orderInfo : toUpdateList) {
-                                    erpOrderInfoMapper.updateById(orderInfo);
-                                }
+                                erpOrderInfoService.updateBatchById(toUpdateList);
                             }
                             toUpdateList.clear();
                             toAddList.clear();