Search in sources :

Example 71 with Field

use of org.motechproject.mds.domain.Field in project motech by motech.

the class UserPreferencesServiceImpl method selectFields.

@Override
@Transactional
public void selectFields(Long id, String username) {
    Entity entity = getEntity(id);
    UserPreferences userPreferences = allUserPreferences.retrieveByClassNameAndUsername(entity.getClassName(), username);
    userPreferences = checkPreferences(userPreferences, entity, username);
    Set<Field> fields = new HashSet<>();
    fields.addAll(entity.getFields());
    userPreferences.setSelectedFields(fields);
    userPreferences.setUnselectedFields(new HashSet<Field>());
    allUserPreferences.update(userPreferences);
}
Also used : UserPreferences(org.motechproject.mds.domain.UserPreferences) AllUserPreferences(org.motechproject.mds.repository.internal.AllUserPreferences) Entity(org.motechproject.mds.domain.Entity) Field(org.motechproject.mds.domain.Field) HashSet(java.util.HashSet) Transactional(org.springframework.transaction.annotation.Transactional)

Example 72 with Field

use of org.motechproject.mds.domain.Field in project motech by motech.

the class UserPreferencesServiceImpl method selectField.

@Override
@Transactional
public void selectField(Long id, String username, String fieldName) {
    Entity entity = getEntity(id);
    UserPreferences userPreferences = allUserPreferences.retrieveByClassNameAndUsername(entity.getClassName(), username);
    userPreferences = checkPreferences(userPreferences, entity, username);
    Field field = entity.getField(fieldName);
    assertField(field, entity.getClassName(), fieldName);
    userPreferences.selectField(field);
    allUserPreferences.update(userPreferences);
}
Also used : UserPreferences(org.motechproject.mds.domain.UserPreferences) AllUserPreferences(org.motechproject.mds.repository.internal.AllUserPreferences) Entity(org.motechproject.mds.domain.Entity) Field(org.motechproject.mds.domain.Field) Transactional(org.springframework.transaction.annotation.Transactional)

Example 73 with Field

use of org.motechproject.mds.domain.Field in project motech by motech.

the class SwaggerGenerator method lookupParameters.

private List<Parameter> lookupParameters(Entity entity, Lookup lookup, Locale locale) {
    List<Parameter> parameters = new ArrayList<>();
    for (String lookupFieldName : lookup.getFieldsOrder()) {
        LookupFieldType lookupFieldType = lookup.getLookupFieldType(lookupFieldName);
        Field lookupField;
        if (lookupFieldName.contains(".")) {
            lookupField = getRelatedField(lookup.getLookupFieldByName(LookupName.getFieldName(lookupFieldName)).getMetadata(Constants.MetadataKeys.RELATED_CLASS).getValue(), LookupName.getRelatedFieldName(lookupFieldName));
        } else {
            lookupField = lookup.getLookupFieldByName(lookupFieldName);
        }
        String paramDesc = lookupParamDescription(lookupField, lookupFieldType, locale);
        Parameter parameter = SwaggerFieldConverter.lookupParameter(lookupFieldName, lookupField, lookupFieldType, paramDesc);
        parameters.add(parameter);
    }
    parameters.addAll(queryParamsParameters(entity.getFieldsExposedByRest(), locale));
    return parameters;
}
Also used : Field(org.motechproject.mds.domain.Field) ArrayList(java.util.ArrayList) Parameter(org.motechproject.mds.docs.swagger.model.Parameter) LookupFieldType(org.motechproject.mds.dto.LookupFieldType)

Aggregations

Field (org.motechproject.mds.domain.Field)73 Entity (org.motechproject.mds.domain.Entity)33 Test (org.junit.Test)24 Lookup (org.motechproject.mds.domain.Lookup)16 MdsEntity (org.motechproject.mds.domain.MdsEntity)15 MdsVersionedEntity (org.motechproject.mds.domain.MdsVersionedEntity)15 Type (org.motechproject.mds.domain.Type)14 ArrayList (java.util.ArrayList)13 Transactional (org.springframework.transaction.annotation.Transactional)13 FieldDto (org.motechproject.mds.dto.FieldDto)12 LookupFieldDto (org.motechproject.mds.dto.LookupFieldDto)12 HashSet (java.util.HashSet)8 Matchers.anyString (org.mockito.Matchers.anyString)6 FieldSetting (org.motechproject.mds.domain.FieldSetting)6 TypeSetting (org.motechproject.mds.domain.TypeSetting)6 UserPreferences (org.motechproject.mds.domain.UserPreferences)5 EntityDto (org.motechproject.mds.dto.EntityDto)5 AllUserPreferences (org.motechproject.mds.repository.internal.AllUserPreferences)5 FieldMetadata (org.motechproject.mds.domain.FieldMetadata)4 LookupDto (org.motechproject.mds.dto.LookupDto)4