use of org.motechproject.mds.domain.Entity in project motech by motech.
the class EntityServiceImpl method addNonEditableFields.
@Override
@Transactional
public void addNonEditableFields(EntityDto entityDto, Map<String, Boolean> nonEditableFields) {
Entity entity = allEntities.retrieveById(entityDto.getId());
assertEntityExists(entity, entityDto.getId());
List<Field> fields = entity.getFields();
for (Field field : fields) {
boolean isNonEditable = nonEditableFields.containsKey(field.getName());
Boolean display = nonEditableFields.get(field.getName());
field.setNonEditable(isNonEditable);
if (display != null) {
field.setNonDisplayable(!display);
} else {
field.setNonDisplayable(false);
}
}
}
use of org.motechproject.mds.domain.Entity in project motech by motech.
the class EntityServiceImpl method getDisplayFields.
@Override
@Transactional
public List<FieldDto> getDisplayFields(Long entityId) {
Entity entity = allEntities.retrieveById(entityId);
assertEntityExists(entity, entityId);
List<Field> displayFields = new ArrayList<>(entity.getFields());
CollectionUtils.filter(displayFields, new Predicate() {
@Override
public boolean evaluate(Object object) {
Field field = (Field) object;
return field.isUIDisplayable() && !field.isNonDisplayable();
}
});
return toFieldDtos(entity, displayFields, true);
}
use of org.motechproject.mds.domain.Entity in project motech by motech.
the class EntityServiceImpl method addLookups.
@Override
@Transactional
public void addLookups(Long entityId, Collection<LookupDto> lookups) {
Entity entity = allEntities.retrieveById(entityId);
assertEntityExists(entity, entityId);
removeLookup(entity, lookups);
addOrUpdateLookups(entity, lookups);
}
use of org.motechproject.mds.domain.Entity in project motech by motech.
the class EntityServiceImpl method removeRelatedFields.
private void removeRelatedFields(List<Field> fields, List<String> modulesToRefresh) {
for (Field field : fields) {
Entity entity = allEntities.retrieveByClassName(field.getMetadataValue(RELATED_CLASS));
Field relatedField = entity.getField(field.getMetadataValue(RELATED_FIELD));
entity.removeField(relatedField.getId());
entity.incrementVersion();
addModuleToRefresh(entity, modulesToRefresh);
}
}
use of org.motechproject.mds.domain.Entity in project motech by motech.
the class EntityServiceImpl method updateRestOptions.
@Override
@Transactional
public void updateRestOptions(Long entityId, RestOptionsDto restOptionsDto) {
Entity entity = allEntities.retrieveById(entityId);
assertEntityExists(entity, entityId);
entity.updateRestOptions(restOptionsDto);
}
Aggregations