diff --git a/src/main/java/com/celnet/datadump/config/mybatis/MyMetaObjectHandler.java b/src/main/java/com/celnet/datadump/config/mybatis/MyMetaObjectHandler.java index d74cdee..bf8b0fb 100644 --- a/src/main/java/com/celnet/datadump/config/mybatis/MyMetaObjectHandler.java +++ b/src/main/java/com/celnet/datadump/config/mybatis/MyMetaObjectHandler.java @@ -5,6 +5,7 @@ import org.apache.ibatis.reflection.MetaObject; import org.springframework.stereotype.Component; import java.time.LocalDateTime; +import java.util.Date; /** * @author Red @@ -19,11 +20,14 @@ public class MyMetaObjectHandler implements MetaObjectHandler { // 起始版本 3.3.0(推荐使用) this.strictInsertFill(metaObject, "createdDate", LocalDateTime.class, LocalDateTime.now()); this.strictInsertFill(metaObject, "lastModifiedDate", LocalDateTime.class, LocalDateTime.now()); + this.strictInsertFill(metaObject, "createdDate", Date.class,new Date()); + this.strictInsertFill(metaObject, "lastModifiedDate", Date.class, new Date()); } @Override public void updateFill(MetaObject metaObject) { // 起始版本 3.3.0(推荐使用) this.strictInsertFill(metaObject, "lastModifiedDate", LocalDateTime.class, LocalDateTime.now()); + this.strictInsertFill(metaObject, "lastModifiedDate", Date.class, new Date()); } } diff --git a/src/main/java/com/celnet/datadump/service/impl/DataImportBatchServiceImpl.java b/src/main/java/com/celnet/datadump/service/impl/DataImportBatchServiceImpl.java index 3f707d1..ee9f825 100644 --- a/src/main/java/com/celnet/datadump/service/impl/DataImportBatchServiceImpl.java +++ b/src/main/java/com/celnet/datadump/service/impl/DataImportBatchServiceImpl.java @@ -357,7 +357,7 @@ public class DataImportBatchServiceImpl implements DataImportBatchService { continue; } if (dataField.getIsCreateable() !=null && dataField.getIsCreateable() && !dataField.getIsNillable() && !dataField.getIsDefaultedOnCreate()) { - if ("reference".equals(dataField.getSfType())){ + if ("reference".equals(dataField.getSfType()) && data.get(j - 1).get(dataField.getField()) != null){ //引用类型 String reference = dataField.getReferenceTo(); //引用类型字段 @@ -744,7 +744,7 @@ public class DataImportBatchServiceImpl implements DataImportBatchService { continue; } else if ( "WhoId".equals(field) ||"WhatId".equals(field)){ continue; - } else if ("reference".equals(dataField.getSfType())) { + } else if ("reference".equals(dataField.getSfType()) && map.get(dataField.getField()) != null ) { if (!"null".equals(value) && StringUtils.isNotEmpty(value)) { //引用类型字段 @@ -1118,7 +1118,7 @@ public class DataImportBatchServiceImpl implements DataImportBatchService { continue; } if (dataField.getIsCreateable() !=null && dataField.getIsCreateable()) { - if ("reference".equals(dataField.getSfType())){ + if ("reference".equals(dataField.getSfType()) && data.get(j - 1).get(dataField.getField()) != null){ //引用类型 String reference_to = dataField.getReferenceTo(); //引用类型字段 @@ -1146,7 +1146,7 @@ public class DataImportBatchServiceImpl implements DataImportBatchService { } }else { if (data.get(j - 1).get(dataField.getField()) != null && StringUtils.isNotBlank(dataField.getSfType())) { - account.put(dataField.getField(), DataUtil.localDataToSfData(dataField.getSfType(), data.get(j - 1).get(dataField.getField()).toString())); + account.put(dataField.getField(), DataUtil.localBulkDataToSfData(dataField.getSfType(), data.get(j - 1).get(dataField.getField()).toString())); }else { account.put(dataField.getField(), data.get(j - 1).get(dataField.getField()) ); } diff --git a/src/main/java/com/celnet/datadump/service/impl/DataImportNewServiceImpl.java b/src/main/java/com/celnet/datadump/service/impl/DataImportNewServiceImpl.java index 550db64..c48408e 100644 --- a/src/main/java/com/celnet/datadump/service/impl/DataImportNewServiceImpl.java +++ b/src/main/java/com/celnet/datadump/service/impl/DataImportNewServiceImpl.java @@ -773,7 +773,7 @@ public class DataImportNewServiceImpl implements DataImportNewService { account.setId(String.valueOf(map.get("new_id"))); } else if (!DataUtil.isUpdate(field) || (dataField.getIsCreateable() != null && !dataField.getIsCreateable())) { continue; - } else if ("reference".equals(dataField.getSfType())) { + } else if ("reference".equals(dataField.getSfType()) && map.get(dataField.getField()) != null) { if (!"null".equals(value) && StringUtils.isNotEmpty(value)) { //引用类型字段 diff --git a/src/main/java/com/celnet/datadump/service/impl/DataImportServiceImpl.java b/src/main/java/com/celnet/datadump/service/impl/DataImportServiceImpl.java index 89bee0d..68763c6 100644 --- a/src/main/java/com/celnet/datadump/service/impl/DataImportServiceImpl.java +++ b/src/main/java/com/celnet/datadump/service/impl/DataImportServiceImpl.java @@ -266,7 +266,6 @@ public class DataImportServiceImpl implements DataImportService { Date endDate = param.getEndCreateDate(); String beginDateStr = DateUtil.format(beginDate, "yyyy-MM-dd HH:mm:ss"); String endDateStr = DateUtil.format(endDate, "yyyy-MM-dd HH:mm:ss"); - //表内数据总量 Integer count = customMapper.countBySQL(api, "where new_id is null and CreatedDate >= '" + beginDateStr + "' and CreatedDate < '" + endDateStr + "'"); log.error("总Insert数据 count:{};-开始时间:{};-结束时间:{};-api:{};", count, beginDateStr, endDateStr, api); @@ -331,7 +330,8 @@ public class DataImportServiceImpl implements DataImportService { continue; } if (dataField.getIsCreateable() != null && dataField.getIsCreateable() && !dataField.getIsNillable() && !dataField.getIsDefaultedOnCreate()) { - if ("reference".equals(dataField.getSfType())){ + + if ("reference".equals(dataField.getSfType()) && data.get(j - 1).get(dataField.getField()) != null){ //引用类型 String reference = dataField.getReferenceTo(); //引用类型字段 @@ -344,7 +344,7 @@ public class DataImportServiceImpl implements DataImportService { if (reference == null){ continue; } - log.info("----------" + dataField.getField() + "的引用类型 ------------" + reference); +// log.info("----------" + dataField.getField() + "的引用类型 ------------" + reference); List> referenceMap = customMapper.list("new_id", reference, "new_id is not null limit 1"); if (referenceMap.isEmpty()){