Sostituito check di annotation Master tramite il nuovo scan mapping
This commit is contained in:
@@ -18,7 +18,6 @@ import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
|
||||
import it.integry.ems.sync.SyncManager;
|
||||
import it.integry.ems.user.UtilityUser;
|
||||
import it.integry.ems.utility.UtilityDebug;
|
||||
import it.integry.ems_model.annotation.Master;
|
||||
import it.integry.ems_model.base.EntityBase;
|
||||
import it.integry.ems_model.base.EntityInterface;
|
||||
import it.integry.ems_model.base.EntityPropertyHolder;
|
||||
@@ -38,7 +37,6 @@ import org.springframework.context.annotation.Scope;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.io.StringWriter;
|
||||
import java.lang.annotation.Annotation;
|
||||
import java.sql.*;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
@@ -177,15 +175,7 @@ public class EntityProcessor {
|
||||
|
||||
|
||||
private void checkEntityChildsUsage(EntityInterface entityInterface, MultiDBTransactionManager multiDBTransactionManager) throws Exception {
|
||||
|
||||
|
||||
List<Class> annotationClasses = new ArrayList<>();
|
||||
|
||||
for (Annotation annotation : Arrays.asList(entityInterface.getClass().getDeclaredAnnotations())) {
|
||||
annotationClasses.add(annotation.annotationType());
|
||||
}
|
||||
|
||||
boolean isMaster = annotationClasses.contains(Master.class);
|
||||
boolean isMaster = entityPropertyHolder.isEntityMaster(((EntityBase) entityInterface).getClass());;
|
||||
OperationType operationType = entityInterface.getOperation();
|
||||
|
||||
if (!isMaster && (operationType != OperationType.SELECT_OBJECT && operationType != OperationType.SELECT)) {
|
||||
@@ -300,7 +290,7 @@ public class EntityProcessor {
|
||||
if (syncDetail != null) {
|
||||
if (!UtilityString.isNullOrEmpty(syncDetail.getRecalcColumnsField()))
|
||||
entityCloned.setRecalcColumns(Arrays.asList(syncDetail.getRecalcColumnsField().split(",")));
|
||||
|
||||
|
||||
whereCond = syncDetail.getWhereCondSql();
|
||||
}
|
||||
|
||||
|
||||
@@ -68,6 +68,13 @@ public class EntityPropertyHolder {
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
|
||||
public boolean isEntityMaster(Class<? extends EntityBase> clazz) {
|
||||
return entityHierarchyMap.stream()
|
||||
.filter(x -> x.getClazz().equals(clazz))
|
||||
.map(EntityHierarchy::isMaster)
|
||||
.findFirst().orElse(false);
|
||||
}
|
||||
|
||||
public List<EntityHierarchy> getEntityHierarchyMap() {
|
||||
return entityHierarchyMap;
|
||||
}
|
||||
@@ -532,7 +539,7 @@ public class EntityPropertyHolder {
|
||||
return null;
|
||||
}
|
||||
|
||||
public List<EntityHierarchy> getEntityChildren(Class<? extends EntityBase> entity) {
|
||||
private List<EntityHierarchy> getEntityChildren(Class<? extends EntityBase> entity) {
|
||||
List<EntityHierarchy> children = new ArrayList<>();
|
||||
Field[] fields = entity.getDeclaredFields();
|
||||
for (Field field : fields) {
|
||||
|
||||
Reference in New Issue
Block a user