description template common model import backend
This commit is contained in:
parent
cb0d95fc3c
commit
31f01b04f8
|
@ -7,6 +7,7 @@ import gr.cite.tools.exception.MyNotFoundException;
|
|||
import gr.cite.tools.exception.MyValidationException;
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
import jakarta.xml.bind.JAXBException;
|
||||
import org.opencdmp.commonmodels.models.descriptiotemplate.DescriptionTemplateModel;
|
||||
import org.opencdmp.commons.types.descriptiontemplate.importexport.DescriptionTemplateImportExport;
|
||||
import org.opencdmp.model.descriptiontemplate.DescriptionTemplate;
|
||||
import org.opencdmp.model.persist.DescriptionTemplatePersist;
|
||||
|
@ -35,4 +36,5 @@ public interface DescriptionTemplateService {
|
|||
|
||||
ResponseEntity<byte[]> exportXml(UUID id) throws MyForbiddenException, MyNotFoundException, JAXBException, ParserConfigurationException, IOException, InstantiationException, IllegalAccessException, SAXException, TransformerException, InvalidApplicationException;
|
||||
|
||||
DescriptionTemplate importCommonModel(DescriptionTemplateModel commonModel, FieldSet fields) throws MyForbiddenException, MyNotFoundException, JAXBException, ParserConfigurationException, TransformerException, InvalidApplicationException, IOException;
|
||||
}
|
||||
|
|
|
@ -20,12 +20,11 @@ import org.apache.commons.lang3.NotImplementedException;
|
|||
import org.jetbrains.annotations.NotNull;
|
||||
import org.opencdmp.authorization.AuthorizationFlags;
|
||||
import org.opencdmp.authorization.Permission;
|
||||
import org.opencdmp.commonmodels.models.DescriptionTemplateTypeModel;
|
||||
import org.opencdmp.commonmodels.models.descriptiotemplate.*;
|
||||
import org.opencdmp.commons.JsonHandlingService;
|
||||
import org.opencdmp.commons.XmlHandlingService;
|
||||
import org.opencdmp.commons.enums.DescriptionTemplateStatus;
|
||||
import org.opencdmp.commons.enums.DescriptionTemplateVersionStatus;
|
||||
import org.opencdmp.commons.enums.FieldType;
|
||||
import org.opencdmp.commons.enums.IsActive;
|
||||
import org.opencdmp.commons.enums.*;
|
||||
import org.opencdmp.commons.notification.NotificationProperties;
|
||||
import org.opencdmp.commons.scope.tenant.TenantScope;
|
||||
import org.opencdmp.commons.scope.user.UserScope;
|
||||
|
@ -43,18 +42,22 @@ import org.opencdmp.data.UserEntity;
|
|||
import org.opencdmp.errorcode.ErrorThesaurusProperties;
|
||||
import org.opencdmp.integrationevent.outbox.notification.NotifyIntegrationEvent;
|
||||
import org.opencdmp.integrationevent.outbox.notification.NotifyIntegrationEventHandler;
|
||||
import org.opencdmp.model.DescriptionTemplateType;
|
||||
import org.opencdmp.model.builder.descriptiontemplate.DescriptionTemplateBuilder;
|
||||
import org.opencdmp.model.deleter.DescriptionTemplateDeleter;
|
||||
import org.opencdmp.model.deleter.UserDescriptionTemplateDeleter;
|
||||
import org.opencdmp.model.descriptiontemplate.*;
|
||||
import org.opencdmp.model.persist.DescriptionTemplatePersist;
|
||||
import org.opencdmp.model.persist.DescriptionTemplateTypePersist;
|
||||
import org.opencdmp.model.persist.NewVersionDescriptionTemplatePersist;
|
||||
import org.opencdmp.model.persist.UserDescriptionTemplatePersist;
|
||||
import org.opencdmp.model.persist.descriptiontemplatedefinition.*;
|
||||
import org.opencdmp.model.persist.descriptiontemplatedefinition.fielddata.BaseFieldDataPersist;
|
||||
import org.opencdmp.model.user.User;
|
||||
import org.opencdmp.query.DescriptionTemplateQuery;
|
||||
import org.opencdmp.query.DescriptionTemplateTypeQuery;
|
||||
import org.opencdmp.query.UserDescriptionTemplateQuery;
|
||||
import org.opencdmp.service.descriptiontemplatetype.DescriptionTemplateTypeService;
|
||||
import org.opencdmp.service.fielddatahelper.FieldDataHelperService;
|
||||
import org.opencdmp.service.fielddatahelper.FieldDataHelperServiceProvider;
|
||||
import org.opencdmp.service.responseutils.ResponseUtilsService;
|
||||
|
@ -114,24 +117,25 @@ public class DescriptionTemplateServiceImpl implements DescriptionTemplateServic
|
|||
private final NotificationProperties notificationProperties;
|
||||
|
||||
private final ValidatorFactory validatorFactory;
|
||||
private final DescriptionTemplateTypeService descriptionTemplateTypeService;
|
||||
|
||||
@Autowired
|
||||
public DescriptionTemplateServiceImpl(
|
||||
TenantEntityManager entityManager,
|
||||
UserScope userScope, AuthorizationService authorizationService,
|
||||
DeleterFactory deleterFactory,
|
||||
BuilderFactory builderFactory,
|
||||
ConventionService conventionService,
|
||||
MessageSource messageSource,
|
||||
XmlHandlingService xmlHandlingService,
|
||||
FieldDataHelperServiceProvider fieldDataHelperServiceProvider,
|
||||
QueryFactory queryFactory, ErrorThesaurusProperties errors,
|
||||
TenantScope tenantScope,
|
||||
ResponseUtilsService responseUtilsService,
|
||||
JsonHandlingService jsonHandlingService,
|
||||
NotifyIntegrationEventHandler eventHandler,
|
||||
NotificationProperties notificationProperties,
|
||||
ValidatorFactory validatorFactory) {
|
||||
TenantEntityManager entityManager,
|
||||
UserScope userScope, AuthorizationService authorizationService,
|
||||
DeleterFactory deleterFactory,
|
||||
BuilderFactory builderFactory,
|
||||
ConventionService conventionService,
|
||||
MessageSource messageSource,
|
||||
XmlHandlingService xmlHandlingService,
|
||||
FieldDataHelperServiceProvider fieldDataHelperServiceProvider,
|
||||
QueryFactory queryFactory, ErrorThesaurusProperties errors,
|
||||
TenantScope tenantScope,
|
||||
ResponseUtilsService responseUtilsService,
|
||||
JsonHandlingService jsonHandlingService,
|
||||
NotifyIntegrationEventHandler eventHandler,
|
||||
NotificationProperties notificationProperties,
|
||||
ValidatorFactory validatorFactory, DescriptionTemplateTypeService descriptionTemplateTypeService) {
|
||||
this.entityManager = entityManager;
|
||||
this.userScope = userScope;
|
||||
this.authorizationService = authorizationService;
|
||||
|
@ -149,6 +153,7 @@ public class DescriptionTemplateServiceImpl implements DescriptionTemplateServic
|
|||
this.eventHandler = eventHandler;
|
||||
this.notificationProperties = notificationProperties;
|
||||
this.validatorFactory = validatorFactory;
|
||||
this.descriptionTemplateTypeService = descriptionTemplateTypeService;
|
||||
}
|
||||
|
||||
//region Persist
|
||||
|
@ -725,7 +730,7 @@ public class DescriptionTemplateServiceImpl implements DescriptionTemplateServic
|
|||
return this.importXml(importXml, groupId, label, fields);
|
||||
}
|
||||
|
||||
public DefinitionPersist xmlDefinitionToPersist(DescriptionTemplateImportExport importExport) {
|
||||
private DefinitionPersist xmlDefinitionToPersist(DescriptionTemplateImportExport importExport) {
|
||||
DefinitionPersist definitionPersist = new DefinitionPersist();
|
||||
if (importExport == null)
|
||||
return null;
|
||||
|
@ -741,7 +746,7 @@ public class DescriptionTemplateServiceImpl implements DescriptionTemplateServic
|
|||
return definitionPersist;
|
||||
}
|
||||
|
||||
public PagePersist xmlPageToPersist(DescriptionTemplatePageImportExport importExport) {
|
||||
private PagePersist xmlPageToPersist(DescriptionTemplatePageImportExport importExport) {
|
||||
PagePersist pageEntity = new PagePersist();
|
||||
pageEntity.setId(importExport.getId());
|
||||
pageEntity.setOrdinal(importExport.getOrdinal());
|
||||
|
@ -757,7 +762,7 @@ public class DescriptionTemplateServiceImpl implements DescriptionTemplateServic
|
|||
return pageEntity;
|
||||
}
|
||||
|
||||
public SectionPersist xmlSectionToPersist(DescriptionTemplateSectionImportExport importExport) {
|
||||
private SectionPersist xmlSectionToPersist(DescriptionTemplateSectionImportExport importExport) {
|
||||
SectionPersist sectionEntity = new SectionPersist();
|
||||
List<SectionPersist> sectionsListEntity = new LinkedList<>();
|
||||
|
||||
|
@ -782,7 +787,7 @@ public class DescriptionTemplateServiceImpl implements DescriptionTemplateServic
|
|||
return sectionEntity;
|
||||
}
|
||||
|
||||
public FieldSetPersist toFieldSetModel(DescriptionTemplateFieldSetImportExport importExport) {
|
||||
private FieldSetPersist toFieldSetModel(DescriptionTemplateFieldSetImportExport importExport) {
|
||||
FieldSetPersist fieldSet1Entity = new FieldSetPersist();
|
||||
fieldSet1Entity.setId(importExport.getId());
|
||||
fieldSet1Entity.setOrdinal(importExport.getOrdinal());
|
||||
|
@ -804,7 +809,7 @@ public class DescriptionTemplateServiceImpl implements DescriptionTemplateServic
|
|||
return fieldSet1Entity;
|
||||
}
|
||||
|
||||
public FieldPersist xmlFieldToPersist(DescriptionTemplateFieldImportExport importExport) {
|
||||
private FieldPersist xmlFieldToPersist(DescriptionTemplateFieldImportExport importExport) {
|
||||
FieldPersist fieldEntity = new FieldPersist();
|
||||
fieldEntity.setId(importExport.getId());
|
||||
fieldEntity.setOrdinal(importExport.getOrdinal());
|
||||
|
@ -828,7 +833,7 @@ public class DescriptionTemplateServiceImpl implements DescriptionTemplateServic
|
|||
return fieldEntity;
|
||||
}
|
||||
|
||||
public RulePersist toRuleModel(DescriptionTemplateRuleImportExport importExport) {
|
||||
private RulePersist toRuleModel(DescriptionTemplateRuleImportExport importExport) {
|
||||
RulePersist ruleEntity = new RulePersist();
|
||||
ruleEntity.setTarget(importExport.getTarget());
|
||||
ruleEntity.setDateValue(importExport.getDateValue());
|
||||
|
@ -838,7 +843,7 @@ public class DescriptionTemplateServiceImpl implements DescriptionTemplateServic
|
|||
return ruleEntity;
|
||||
}
|
||||
|
||||
public DefaultValuePersist toRuleModel(DescriptionTemplateDefaultValueImportExport importExport) {
|
||||
private DefaultValuePersist toRuleModel(DescriptionTemplateDefaultValueImportExport importExport) {
|
||||
if (importExport == null) return null;
|
||||
DefaultValuePersist ruleEntity = new DefaultValuePersist();
|
||||
ruleEntity.setDateValue(importExport.getDateValue());
|
||||
|
@ -847,7 +852,7 @@ public class DescriptionTemplateServiceImpl implements DescriptionTemplateServic
|
|||
return ruleEntity;
|
||||
}
|
||||
|
||||
public MultiplicityPersist xmlMultiplicityToPersist(DescriptionTemplateMultiplicityImportExport importXml) {
|
||||
private MultiplicityPersist xmlMultiplicityToPersist(DescriptionTemplateMultiplicityImportExport importXml) {
|
||||
MultiplicityPersist multiplicityEntity = new MultiplicityPersist();
|
||||
multiplicityEntity.setMax(importXml.getMax());
|
||||
multiplicityEntity.setMin(importXml.getMin());
|
||||
|
@ -1019,5 +1024,223 @@ public class DescriptionTemplateServiceImpl implements DescriptionTemplateServic
|
|||
}
|
||||
|
||||
//endregion
|
||||
|
||||
//region Import Common Model
|
||||
|
||||
@Override
|
||||
public DescriptionTemplate importCommonModel(DescriptionTemplateModel commonModel, FieldSet fields) throws MyForbiddenException, MyNotFoundException, JAXBException, ParserConfigurationException, TransformerException, InvalidApplicationException, IOException {
|
||||
logger.debug(new MapLogEntry("import data").And("importCommonModel", commonModel).And("fields", fields));
|
||||
|
||||
this.authorizationService.authorizeForce(Permission.ImportDescriptionTemplate);
|
||||
|
||||
long activeDescriptionTemplatesForTheGroup = commonModel.getGroupId() != null ? this.queryFactory.query(DescriptionTemplateQuery.class).disableTracking()
|
||||
.isActive(IsActive.Active)
|
||||
.groupIds(commonModel.getGroupId())
|
||||
.count() : 0;
|
||||
|
||||
if (activeDescriptionTemplatesForTheGroup == 0) {
|
||||
DescriptionTemplatePersist persist = new DescriptionTemplatePersist();
|
||||
persist.setLabel(commonModel.getLabel());
|
||||
persist.setStatus(DescriptionTemplateStatus.Draft);
|
||||
persist.setDescription(commonModel.getDescription());
|
||||
persist.setLanguage(commonModel.getLanguage());
|
||||
persist.setType(this.commonModelDescriptionTemplateTypeToPersist(commonModel.getType()));
|
||||
persist.setDefinition(this.commonModelDefinitionToPersist(commonModel.getDefinition()));
|
||||
this.validatorFactory.validator(DescriptionTemplatePersist.DescriptionTemplatePersistValidator.class).validateForce(persist);
|
||||
return this.persist(persist, commonModel.getGroupId(), fields);
|
||||
} else {
|
||||
DescriptionTemplateEntity latestVersionDescriptionTemplate = this.queryFactory.query(DescriptionTemplateQuery.class).disableTracking()
|
||||
.versionStatuses(DescriptionTemplateVersionStatus.Current)
|
||||
.isActive(IsActive.Active)
|
||||
.statuses(DescriptionTemplateStatus.Finalized)
|
||||
.groupIds(commonModel.getGroupId())
|
||||
.first();
|
||||
if (latestVersionDescriptionTemplate == null) throw new MyValidationException(this.errors.getDescriptionTemplateIsNotFinalized().getCode(), this.errors.getDescriptionTemplateIsNotFinalized().getMessage());
|
||||
|
||||
NewVersionDescriptionTemplatePersist persist = new NewVersionDescriptionTemplatePersist();
|
||||
persist.setId(latestVersionDescriptionTemplate.getId());
|
||||
persist.setLabel(commonModel.getLabel());
|
||||
persist.setStatus(DescriptionTemplateStatus.Draft);
|
||||
persist.setDescription(commonModel.getDescription());
|
||||
persist.setLanguage(commonModel.getLanguage());
|
||||
persist.setDefinition(this.commonModelDefinitionToPersist(commonModel.getDefinition()));
|
||||
persist.setType(this.commonModelDescriptionTemplateTypeToPersist(commonModel.getType()));
|
||||
persist.setHash(this.conventionService.hashValue(latestVersionDescriptionTemplate.getUpdatedAt()));
|
||||
|
||||
this.validatorFactory.validator(NewVersionDescriptionTemplatePersist.NewVersionDescriptionTemplatePersistValidator.class).validateForce(persist);
|
||||
return this.createNewVersion(persist, fields);
|
||||
}
|
||||
}
|
||||
|
||||
private UUID commonModelDescriptionTemplateTypeToPersist(DescriptionTemplateTypeModel commonModel) throws InvalidApplicationException {
|
||||
long descriptionTemplateTypeCount = this.queryFactory.query(DescriptionTemplateTypeQuery.class).disableTracking()
|
||||
.isActive(IsActive.Active)
|
||||
.ids(commonModel.getId())
|
||||
.count();
|
||||
|
||||
if (descriptionTemplateTypeCount > 0) return commonModel.getId();
|
||||
|
||||
DescriptionTemplateTypePersist descriptionTemplateType = new DescriptionTemplateTypePersist();
|
||||
descriptionTemplateType.setName(commonModel.getName());
|
||||
descriptionTemplateType.setStatus(DescriptionTemplateTypeStatus.Finalized);
|
||||
this.validatorFactory.validator(DescriptionTemplateTypePersist.DescriptionTemplateTypePersistValidator.class).validateForce(descriptionTemplateType);
|
||||
return this.descriptionTemplateTypeService.persist(descriptionTemplateType, new BaseFieldSet().ensure(DescriptionTemplateType._id)).getId();
|
||||
}
|
||||
|
||||
|
||||
private DefinitionPersist commonModelDefinitionToPersist(DefinitionModel commonModel) {
|
||||
DefinitionPersist definitionPersist = new DefinitionPersist();
|
||||
if (commonModel == null)
|
||||
return null;
|
||||
|
||||
List<PagePersist> pagesDatasetEntity = new LinkedList<>();
|
||||
if (!this.conventionService.isListNullOrEmpty(commonModel.getPages())) {
|
||||
for (PageModel pageModel : commonModel.getPages()) {
|
||||
pagesDatasetEntity.add(this.commonModelPageToPersist(pageModel));
|
||||
}
|
||||
}
|
||||
definitionPersist.setPages(pagesDatasetEntity);
|
||||
|
||||
return definitionPersist;
|
||||
}
|
||||
|
||||
private PagePersist commonModelPageToPersist(PageModel commonModel) {
|
||||
PagePersist pageEntity = new PagePersist();
|
||||
pageEntity.setId(commonModel.getId());
|
||||
pageEntity.setOrdinal(commonModel.getOrdinal());
|
||||
pageEntity.setTitle(commonModel.getTitle());
|
||||
if (!this.conventionService.isListNullOrEmpty(commonModel.getSections())) {
|
||||
List<SectionPersist> sectionsListEntity = new LinkedList<>();
|
||||
for (SectionModel sectionModel : commonModel.getSections()) {
|
||||
sectionsListEntity.add(this.commonModelSectionToPersist(sectionModel));
|
||||
}
|
||||
pageEntity.setSections(sectionsListEntity);
|
||||
|
||||
}
|
||||
return pageEntity;
|
||||
}
|
||||
|
||||
private SectionPersist commonModelSectionToPersist(SectionModel commonModel) {
|
||||
SectionPersist sectionEntity = new SectionPersist();
|
||||
List<SectionPersist> sectionsListEntity = new LinkedList<>();
|
||||
|
||||
if (!this.conventionService.isListNullOrEmpty(commonModel.getSections())) {
|
||||
for (SectionModel sectionModel : commonModel.getSections()) {
|
||||
sectionsListEntity.add(this.commonModelSectionToPersist(sectionModel));
|
||||
}
|
||||
}
|
||||
sectionEntity.setId(commonModel.getId());
|
||||
sectionEntity.setOrdinal(commonModel.getOrdinal());
|
||||
sectionEntity.setTitle(commonModel.getTitle());
|
||||
sectionEntity.setDescription(commonModel.getDescription());
|
||||
List<FieldSetPersist> fieldSetEntity = new LinkedList<>();
|
||||
if (!this.conventionService.isListNullOrEmpty(commonModel.getFieldSets())) {
|
||||
for (FieldSetModel fieldSetModel : commonModel.getFieldSets()) {
|
||||
fieldSetEntity.add(this.commonModelToFieldSetModel(fieldSetModel));
|
||||
}
|
||||
}
|
||||
sectionEntity.setFieldSets(fieldSetEntity);
|
||||
|
||||
sectionEntity.setSections(sectionsListEntity);
|
||||
return sectionEntity;
|
||||
}
|
||||
|
||||
private FieldSetPersist commonModelToFieldSetModel(FieldSetModel commonModel) {
|
||||
FieldSetPersist fieldSet1Entity = new FieldSetPersist();
|
||||
fieldSet1Entity.setId(commonModel.getId());
|
||||
fieldSet1Entity.setOrdinal(commonModel.getOrdinal());
|
||||
// fieldSet1Entity.setHasCommentField(commonModel.getHasCommentField() != null ? commonModel.getHasCommentField() : false);//TODO add to common model
|
||||
fieldSet1Entity.setMultiplicity(commonModel.getMultiplicity() != null ? this.commonModelMultiplicityToPersist(commonModel.getMultiplicity()) : null);
|
||||
fieldSet1Entity.setHasMultiplicity(commonModel.getMultiplicity() != null); //TODO add to common model
|
||||
fieldSet1Entity.setTitle(commonModel.getTitle());
|
||||
fieldSet1Entity.setDescription(commonModel.getDescription());
|
||||
fieldSet1Entity.setExtendedDescription(commonModel.getExtendedDescription());
|
||||
fieldSet1Entity.setAdditionalInformation(commonModel.getAdditionalInformation());
|
||||
|
||||
List<FieldPersist> fieldsEntity = new LinkedList<>();
|
||||
if (!this.conventionService.isListNullOrEmpty(commonModel.getFields())) {
|
||||
for (FieldModel fieldModel : commonModel.getFields()) {
|
||||
fieldsEntity.add(this.commonModelFieldToPersist(fieldModel));
|
||||
}
|
||||
}
|
||||
fieldSet1Entity.setFields(fieldsEntity);
|
||||
return fieldSet1Entity;
|
||||
}
|
||||
|
||||
private FieldPersist commonModelFieldToPersist(FieldModel commonModel) {
|
||||
FieldPersist fieldEntity = new FieldPersist();
|
||||
fieldEntity.setId(commonModel.getId());
|
||||
fieldEntity.setOrdinal(commonModel.getOrdinal());
|
||||
fieldEntity.setValidations(this.commonModelValidationsToPersist(commonModel.getValidations()));
|
||||
fieldEntity.setIncludeInExport(commonModel.getIncludeInExport());
|
||||
fieldEntity.setDefaultValue(this.commonModelRuleToPersist(commonModel.getDefaultValue()));
|
||||
List<RulePersist> rulePersists = new ArrayList<>();
|
||||
// if (commonModel.getVisibilityRules() != null) { //TODO add to common model
|
||||
// for (DescriptionTemplateRuleImportExport xmlRule : commonModel.getVisibilityRules()) {
|
||||
// rulePersists.add(this.toRuleModel(xmlRule));
|
||||
// }
|
||||
// }
|
||||
fieldEntity.setVisibilityRules(rulePersists);
|
||||
FieldType fieldType;
|
||||
switch (commonModel.getData().getFieldType()){
|
||||
case SELECT -> fieldType = FieldType.SELECT;
|
||||
case BOOLEAN_DECISION -> fieldType = FieldType.BOOLEAN_DECISION;
|
||||
case RADIO_BOX -> fieldType = FieldType.RADIO_BOX;
|
||||
case INTERNAL_ENTRIES_DMPS -> fieldType = FieldType.INTERNAL_ENTRIES_DMPS;
|
||||
case INTERNAL_ENTRIES_DESCRIPTIONS -> fieldType = FieldType.INTERNAL_ENTRIES_DESCRIPTIONS;
|
||||
case CHECK_BOX -> fieldType = FieldType.CHECK_BOX;
|
||||
case FREE_TEXT -> fieldType = FieldType.FREE_TEXT;
|
||||
case TEXT_AREA -> fieldType = FieldType.TEXT_AREA;
|
||||
case RICH_TEXT_AREA -> fieldType = FieldType.RICH_TEXT_AREA;
|
||||
case UPLOAD -> fieldType = FieldType.UPLOAD;
|
||||
case DATE_PICKER -> fieldType = FieldType.DATE_PICKER;
|
||||
case TAGS -> fieldType = FieldType.TAGS;
|
||||
case REFERENCE_TYPES -> fieldType = FieldType.REFERENCE_TYPES;
|
||||
case DATASET_IDENTIFIER -> fieldType = FieldType.DATASET_IDENTIFIER;
|
||||
case VALIDATION -> fieldType = FieldType.VALIDATION;
|
||||
default -> throw new InternalError("unknown type: " + commonModel.getData().getFieldType());
|
||||
}
|
||||
|
||||
if (commonModel.getData() != null) {
|
||||
FieldDataHelperService fieldDataHelperService = this.fieldDataHelperServiceProvider.get(fieldType);
|
||||
fieldEntity.setData(fieldDataHelperService.commonModelMapDataToPersist(commonModel.getData()));
|
||||
}
|
||||
fieldEntity.setSemantics(commonModel.getSemantics());
|
||||
return fieldEntity;
|
||||
}
|
||||
|
||||
private List<FieldValidationType> commonModelValidationsToPersist(List<org.opencdmp.commonmodels.enums.FieldValidationType> commonModel) {
|
||||
if (this.conventionService.isListNullOrEmpty(commonModel)) return null;
|
||||
List<FieldValidationType> validationTypes = new ArrayList<>();
|
||||
for (org.opencdmp.commonmodels.enums.FieldValidationType fieldValidationType : commonModel){
|
||||
switch (fieldValidationType){
|
||||
case Url -> validationTypes.add(FieldValidationType.Url);
|
||||
case Required -> validationTypes.add(FieldValidationType.Required);
|
||||
case None -> validationTypes.add(FieldValidationType.None);
|
||||
default -> throw new InternalError("unknown type: " + fieldValidationType);
|
||||
}
|
||||
}
|
||||
return validationTypes;
|
||||
}
|
||||
|
||||
private DefaultValuePersist commonModelRuleToPersist(DefaultValueModel commonModel) {
|
||||
if (commonModel == null) return null;
|
||||
DefaultValuePersist ruleEntity = new DefaultValuePersist();
|
||||
ruleEntity.setDateValue(commonModel.getDateValue());
|
||||
ruleEntity.setBooleanValue(commonModel.getBooleanValue());
|
||||
ruleEntity.setTextValue(commonModel.getTextValue());
|
||||
return ruleEntity;
|
||||
}
|
||||
|
||||
private MultiplicityPersist commonModelMultiplicityToPersist(MultiplicityModel commonModel) {
|
||||
MultiplicityPersist multiplicityEntity = new MultiplicityPersist();
|
||||
multiplicityEntity.setMax(commonModel.getMax());
|
||||
multiplicityEntity.setMin(commonModel.getMin());
|
||||
multiplicityEntity.setPlaceholder(commonModel.getPlaceholder());
|
||||
multiplicityEntity.setTableView(commonModel.getTableView());
|
||||
return multiplicityEntity;
|
||||
}
|
||||
|
||||
//endregion
|
||||
}
|
||||
|
||||
|
|
|
@ -806,7 +806,7 @@ public class DmpBlueprintServiceImpl implements DmpBlueprintService {
|
|||
|
||||
//endregion
|
||||
|
||||
//region Import RDA Json
|
||||
//region Import Common Model
|
||||
|
||||
@Override
|
||||
public DmpBlueprint importCommonModel(DmpBlueprintModel dmpDefinition, FieldSet fields) throws MyForbiddenException, MyNotFoundException, JAXBException, ParserConfigurationException, TransformerException, InvalidApplicationException, IOException, InstantiationException, IllegalAccessException, SAXException {
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package org.opencdmp.service.fielddatahelper;
|
||||
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
import org.opencdmp.authorization.AuthorizationFlags;
|
||||
import org.opencdmp.commonmodels.models.descriptiotemplate.fielddata.BaseFieldDataModel;
|
||||
import org.opencdmp.commons.enums.FieldType;
|
||||
|
@ -7,7 +8,6 @@ import org.opencdmp.commons.types.descriptiontemplate.fielddata.BaseFieldDataEnt
|
|||
import org.opencdmp.commons.types.descriptiontemplate.importexport.fielddata.BaseFieldDataImportExport;
|
||||
import org.opencdmp.model.descriptiontemplate.fielddata.BaseFieldData;
|
||||
import org.opencdmp.model.persist.descriptiontemplatedefinition.fielddata.BaseFieldDataPersist;
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
|
||||
import java.util.EnumSet;
|
||||
import java.util.List;
|
||||
|
@ -25,13 +25,14 @@ public abstract class BaseFieldDataHelperService<M extends BaseFieldData, PM ext
|
|||
protected abstract List<M> buildInternal(FieldSet fieldSet, List<D> data, EnumSet<AuthorizationFlags> authorizationFlags);
|
||||
protected abstract D applyPersistInternal(PM persist, D data);
|
||||
protected abstract PM importExportMapDataToPersistInternal(IE data, PM persist);
|
||||
protected abstract PM commonModelMapDataToPersistInternal(CM data, PM persist);
|
||||
protected abstract IE dataToImportExportXmlInternal(D data, IE xml);
|
||||
protected abstract boolean isMultiValueInternal(D data);
|
||||
protected abstract List<CM> buildCommonModelInternal(List<D> data, EnumSet<AuthorizationFlags> authorizationFlags);
|
||||
|
||||
@Override
|
||||
public FieldType getFieldType() {
|
||||
return fieldType;
|
||||
return this.fieldType;
|
||||
}
|
||||
|
||||
public void setFieldType(FieldType fieldType) {
|
||||
|
@ -71,6 +72,16 @@ public abstract class BaseFieldDataHelperService<M extends BaseFieldData, PM ext
|
|||
return this.importExportMapDataToPersistInternal((IE)data, model);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public BaseFieldDataPersist commonModelMapDataToPersist(BaseFieldDataModel data) {
|
||||
PM model = this.newPersistModelInstanceInternal();
|
||||
model.setFieldType(this.getFieldType());
|
||||
model.setLabel(data.getLabel());
|
||||
return this.commonModelMapDataToPersistInternal((CM)data, model);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseFieldDataImportExport dataToImportExportXml(BaseFieldDataEntity data){
|
||||
IE xml = this.newImportExportInstanceInternal();
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
package org.opencdmp.service.fielddatahelper;
|
||||
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
import gr.cite.tools.validation.Validator;
|
||||
import org.opencdmp.authorization.AuthorizationFlags;
|
||||
import org.opencdmp.commonmodels.models.descriptiotemplate.fielddata.BaseFieldDataModel;
|
||||
import org.opencdmp.commons.enums.FieldType;
|
||||
|
@ -7,8 +9,6 @@ import org.opencdmp.commons.types.descriptiontemplate.fielddata.BaseFieldDataEnt
|
|||
import org.opencdmp.commons.types.descriptiontemplate.importexport.fielddata.BaseFieldDataImportExport;
|
||||
import org.opencdmp.model.descriptiontemplate.fielddata.BaseFieldData;
|
||||
import org.opencdmp.model.persist.descriptiontemplatedefinition.fielddata.BaseFieldDataPersist;
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
import gr.cite.tools.validation.Validator;
|
||||
|
||||
import java.util.EnumSet;
|
||||
import java.util.List;
|
||||
|
@ -32,6 +32,7 @@ public interface FieldDataHelperService {
|
|||
BaseFieldDataEntity applyPersist(BaseFieldDataPersist persist);
|
||||
BaseFieldDataEntity applyPersist(BaseFieldDataPersist persist, BaseFieldDataEntity data);
|
||||
BaseFieldDataPersist importExportMapDataToPersist(BaseFieldDataImportExport xml);
|
||||
BaseFieldDataPersist commonModelMapDataToPersist(BaseFieldDataModel commonModel);
|
||||
BaseFieldDataImportExport dataToImportExportXml(BaseFieldDataEntity data);
|
||||
boolean isMultiValue(BaseFieldDataEntity data);
|
||||
}
|
||||
|
|
|
@ -1,5 +1,9 @@
|
|||
package org.opencdmp.service.fielddatahelper;
|
||||
|
||||
import gr.cite.tools.data.builder.BuilderFactory;
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
import gr.cite.tools.validation.Validator;
|
||||
import gr.cite.tools.validation.ValidatorFactory;
|
||||
import org.opencdmp.authorization.AuthorizationFlags;
|
||||
import org.opencdmp.commonmodels.models.descriptiotemplate.fielddata.LabelAndMultiplicityDataModel;
|
||||
import org.opencdmp.commons.types.descriptiontemplate.fielddata.LabelAndMultiplicityDataEntity;
|
||||
|
@ -8,10 +12,6 @@ import org.opencdmp.model.builder.commonmodels.descriptiontemplate.fielddata.Lab
|
|||
import org.opencdmp.model.builder.descriptiontemplate.fielddata.LabelAndMultiplicityDataBuilder;
|
||||
import org.opencdmp.model.descriptiontemplate.fielddata.LabelAndMultiplicityData;
|
||||
import org.opencdmp.model.persist.descriptiontemplatedefinition.fielddata.LabelAndMultiplicityDataPersist;
|
||||
import gr.cite.tools.data.builder.BuilderFactory;
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
import gr.cite.tools.validation.Validator;
|
||||
import gr.cite.tools.validation.ValidatorFactory;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
@ -109,6 +109,12 @@ public class LabelAndMultiplicityFieldDataHelperService extends BaseFieldDataHel
|
|||
return xml;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected LabelAndMultiplicityDataPersist commonModelMapDataToPersistInternal(LabelAndMultiplicityDataModel data, LabelAndMultiplicityDataPersist persist){
|
||||
persist.setMultipleSelect(data.getMultipleSelect());
|
||||
return persist;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean isMultiValueInternal(LabelAndMultiplicityDataEntity data) {
|
||||
return data.getMultipleSelect();
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
package org.opencdmp.service.fielddatahelper;
|
||||
|
||||
import org.opencdmp.commonmodels.models.descriptiotemplate.fielddata.LabelDataModel;
|
||||
import gr.cite.tools.data.builder.BuilderFactory;
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
import gr.cite.tools.validation.Validator;
|
||||
import gr.cite.tools.validation.ValidatorFactory;
|
||||
import org.opencdmp.authorization.AuthorizationFlags;
|
||||
import org.opencdmp.commonmodels.models.descriptiotemplate.fielddata.LabelDataModel;
|
||||
import org.opencdmp.commons.types.descriptiontemplate.fielddata.LabelDataEntity;
|
||||
import org.opencdmp.commons.types.descriptiontemplate.importexport.fielddata.LabelDataImportExport;
|
||||
import org.opencdmp.model.builder.commonmodels.descriptiontemplate.fielddata.LabelDataCommonModelBuilder;
|
||||
|
@ -101,6 +101,11 @@ public class LabelFieldDataHelperService extends BaseFieldDataHelperService<Labe
|
|||
return persist;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected LabelDataPersist commonModelMapDataToPersistInternal(LabelDataModel data, LabelDataPersist persist) {
|
||||
return persist;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected LabelDataImportExport dataToImportExportXmlInternal(LabelDataEntity data, LabelDataImportExport xml) {
|
||||
return xml;
|
||||
|
|
|
@ -1,5 +1,10 @@
|
|||
package org.opencdmp.service.fielddatahelper;
|
||||
|
||||
import gr.cite.tools.data.builder.BuilderFactory;
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
import gr.cite.tools.validation.Validator;
|
||||
import gr.cite.tools.validation.ValidatorFactory;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.opencdmp.authorization.AuthorizationFlags;
|
||||
import org.opencdmp.commonmodels.models.descriptiotemplate.fielddata.RadioBoxDataModel;
|
||||
import org.opencdmp.commons.types.descriptiontemplate.fielddata.RadioBoxDataEntity;
|
||||
|
@ -8,12 +13,7 @@ import org.opencdmp.convention.ConventionService;
|
|||
import org.opencdmp.model.builder.commonmodels.descriptiontemplate.fielddata.RadioBoxDataCommonModelBuilder;
|
||||
import org.opencdmp.model.builder.descriptiontemplate.fielddata.RadioBoxDataBuilder;
|
||||
import org.opencdmp.model.descriptiontemplate.fielddata.RadioBoxData;
|
||||
import org.opencdmp.model.persist.descriptiontemplatedefinition.fielddata.*;
|
||||
import gr.cite.tools.data.builder.BuilderFactory;
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
import gr.cite.tools.validation.Validator;
|
||||
import gr.cite.tools.validation.ValidatorFactory;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.opencdmp.model.persist.descriptiontemplatedefinition.fielddata.RadioBoxDataPersist;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
@ -139,6 +139,29 @@ public class RadioBoxFieldDataHelperService extends BaseFieldDataHelperService<R
|
|||
return persist;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
protected RadioBoxDataPersist commonModelMapDataToPersistInternal(RadioBoxDataModel data, RadioBoxDataPersist persist){
|
||||
if (!this.conventionService.isListNullOrEmpty(data.getOptions())){
|
||||
persist.setOptions(new ArrayList<>());
|
||||
for (RadioBoxDataModel.RadioBoxOptionModel radioBoxOption: data.getOptions()) {
|
||||
persist.getOptions().add(this.buildOption(radioBoxOption));
|
||||
}
|
||||
}
|
||||
return persist;
|
||||
}
|
||||
|
||||
private @NotNull RadioBoxDataPersist.RadioBoxOptionPersist buildOption(RadioBoxDataModel.RadioBoxOptionModel data){
|
||||
RadioBoxDataPersist.RadioBoxOptionPersist persist = new RadioBoxDataPersist.RadioBoxOptionPersist();
|
||||
if (data == null) return persist;
|
||||
|
||||
persist.setLabel(data.getLabel());
|
||||
persist.setValue(data.getValue());
|
||||
|
||||
return persist;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected RadioBoxDataImportExport dataToImportExportXmlInternal(RadioBoxDataEntity data, RadioBoxDataImportExport xml) {
|
||||
if (!this.conventionService.isListNullOrEmpty(data.getOptions())){
|
||||
|
|
|
@ -125,6 +125,18 @@ public class ReferenceTypeFieldDataHelperService extends BaseFieldDataHelperServ
|
|||
return persist;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected ReferenceTypeDataPersist commonModelMapDataToPersistInternal(ReferenceTypeDataModel data, ReferenceTypeDataPersist persist){
|
||||
ReferenceTypeEntity referenceTypeEntity = data.getReferenceType() != null && data.getReferenceType().getId() != null ? this.queryFactory.query(ReferenceTypeQuery.class).disableTracking().ids(data.getReferenceType().getId()).disableTracking().firstAs(new BaseFieldSet().ensure(ReferenceType._id)) : null;
|
||||
if (referenceTypeEntity == null){
|
||||
if (!this.conventionService.isNullOrEmpty(data.getReferenceType().getCode())) referenceTypeEntity = this.queryFactory.query(ReferenceTypeQuery.class).disableTracking().codes(data.getReferenceType().getCode()).disableTracking().firstAs(new BaseFieldSet().ensure(ReferenceType._id));
|
||||
if (referenceTypeEntity == null) throw new MyNotFoundException(this.messageSource.getMessage("General_ItemNotFound", new Object[]{data.getReferenceType().getId(), ReferenceType.class.getSimpleName()}, LocaleContextHolder.getLocale()));
|
||||
}
|
||||
persist.setMultipleSelect(data.getMultipleSelect());
|
||||
persist.setReferenceTypeId(referenceTypeEntity.getId());
|
||||
return persist;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected ReferenceTypeDataImportExport dataToImportExportXmlInternal(ReferenceTypeDataEntity data, ReferenceTypeDataImportExport xml) {
|
||||
ReferenceTypeEntity referenceTypeEntity = this.queryFactory.query(ReferenceTypeQuery.class).disableTracking().ids(data.getReferenceTypeId()).disableTracking().firstAs(new BaseFieldSet().ensure(ReferenceType._code));
|
||||
|
|
|
@ -1,5 +1,10 @@
|
|||
package org.opencdmp.service.fielddatahelper;
|
||||
|
||||
import gr.cite.tools.data.builder.BuilderFactory;
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
import gr.cite.tools.validation.Validator;
|
||||
import gr.cite.tools.validation.ValidatorFactory;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.opencdmp.authorization.AuthorizationFlags;
|
||||
import org.opencdmp.commonmodels.models.descriptiotemplate.fielddata.SelectDataModel;
|
||||
import org.opencdmp.commons.types.descriptiontemplate.fielddata.SelectDataEntity;
|
||||
|
@ -8,12 +13,7 @@ import org.opencdmp.convention.ConventionService;
|
|||
import org.opencdmp.model.builder.commonmodels.descriptiontemplate.fielddata.SelectDataCommonModelBuilder;
|
||||
import org.opencdmp.model.builder.descriptiontemplate.fielddata.SelectDataBuilder;
|
||||
import org.opencdmp.model.descriptiontemplate.fielddata.SelectData;
|
||||
import org.opencdmp.model.persist.descriptiontemplatedefinition.fielddata.*;
|
||||
import gr.cite.tools.data.builder.BuilderFactory;
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
import gr.cite.tools.validation.Validator;
|
||||
import gr.cite.tools.validation.ValidatorFactory;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.opencdmp.model.persist.descriptiontemplatedefinition.fielddata.SelectDataPersist;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
@ -142,6 +142,29 @@ public class SelectFieldDataHelperService extends BaseFieldDataHelperService<Sel
|
|||
return persist;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected SelectDataPersist commonModelMapDataToPersistInternal(SelectDataModel data, SelectDataPersist persist) {
|
||||
persist.setMultipleSelect(data.getMultipleSelect());
|
||||
if (!this.conventionService.isListNullOrEmpty(data.getOptions())){
|
||||
persist.setOptions(new ArrayList<>());
|
||||
for (SelectDataModel.OptionModel option: data.getOptions()) {
|
||||
persist.getOptions().add(this.buildOption(option));
|
||||
}
|
||||
}
|
||||
return persist;
|
||||
}
|
||||
|
||||
private @NotNull SelectDataPersist.OptionPersist buildOption(SelectDataModel.OptionModel data){
|
||||
SelectDataPersist.OptionPersist persist = new SelectDataPersist.OptionPersist();
|
||||
if (data == null) return persist;
|
||||
|
||||
persist.setLabel(data.getLabel());
|
||||
persist.setValue(data.getValue());
|
||||
|
||||
return persist;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected SelectDataImportExport dataToImportExportXmlInternal(SelectDataEntity data, SelectDataImportExport xml) {
|
||||
xml.setMultipleSelect(data.getMultipleSelect());
|
||||
|
|
|
@ -1,19 +1,19 @@
|
|||
package org.opencdmp.service.fielddatahelper;
|
||||
|
||||
import gr.cite.tools.data.builder.BuilderFactory;
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
import gr.cite.tools.validation.Validator;
|
||||
import gr.cite.tools.validation.ValidatorFactory;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.opencdmp.authorization.AuthorizationFlags;
|
||||
import org.opencdmp.commonmodels.models.descriptiotemplate.fielddata.SelectDataModel;
|
||||
import org.opencdmp.commonmodels.models.descriptiotemplate.fielddata.UploadDataModel;
|
||||
import org.opencdmp.commons.types.descriptiontemplate.fielddata.UploadDataEntity;
|
||||
import org.opencdmp.commons.types.descriptiontemplate.importexport.fielddata.UploadDataImportExport;
|
||||
import org.opencdmp.convention.ConventionService;
|
||||
import org.opencdmp.model.builder.commonmodels.descriptiontemplate.fielddata.UploadDataCommonModelBuilder;
|
||||
import org.opencdmp.model.builder.descriptiontemplate.fielddata.UploadDataBuilder;
|
||||
import org.opencdmp.model.descriptiontemplate.fielddata.UploadData;
|
||||
import org.opencdmp.model.persist.descriptiontemplatedefinition.fielddata.*;
|
||||
import gr.cite.tools.data.builder.BuilderFactory;
|
||||
import gr.cite.tools.fieldset.FieldSet;
|
||||
import gr.cite.tools.validation.Validator;
|
||||
import gr.cite.tools.validation.ValidatorFactory;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.opencdmp.model.persist.descriptiontemplatedefinition.fielddata.UploadDataPersist;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
@ -21,7 +21,7 @@ import java.util.EnumSet;
|
|||
import java.util.List;
|
||||
|
||||
@Component
|
||||
public class UploadFieldDataHelperService extends BaseFieldDataHelperService<UploadData, UploadDataPersist, UploadDataEntity, UploadDataImportExport, SelectDataModel> {
|
||||
public class UploadFieldDataHelperService extends BaseFieldDataHelperService<UploadData, UploadDataPersist, UploadDataEntity, UploadDataImportExport, UploadDataModel> {
|
||||
|
||||
private final ConventionService conventionService;
|
||||
private final BuilderFactory builderFactory;
|
||||
|
@ -55,8 +55,8 @@ public class UploadFieldDataHelperService extends BaseFieldDataHelperService<Upl
|
|||
}
|
||||
|
||||
@Override
|
||||
protected SelectDataModel newCommonModelInstanceInternal() {
|
||||
return new SelectDataModel();
|
||||
protected UploadDataModel newCommonModelInstanceInternal() {
|
||||
return new UploadDataModel();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -79,7 +79,7 @@ public class UploadFieldDataHelperService extends BaseFieldDataHelperService<Upl
|
|||
|
||||
@Override
|
||||
public Class<?> getCommonModelClass() {
|
||||
return SelectDataModel.class;
|
||||
return UploadDataModel.class;
|
||||
}
|
||||
|
||||
|
||||
|
@ -94,7 +94,7 @@ public class UploadFieldDataHelperService extends BaseFieldDataHelperService<Upl
|
|||
}
|
||||
|
||||
@Override
|
||||
protected List<SelectDataModel> buildCommonModelInternal(List<UploadDataEntity> data, EnumSet<AuthorizationFlags> authorizationFlags) {
|
||||
protected List<UploadDataModel> buildCommonModelInternal(List<UploadDataEntity> data, EnumSet<AuthorizationFlags> authorizationFlags) {
|
||||
return this.builderFactory.builder(UploadDataCommonModelBuilder.class).authorize(authorizationFlags).build(data);
|
||||
}
|
||||
|
||||
|
@ -141,6 +141,27 @@ public class UploadFieldDataHelperService extends BaseFieldDataHelperService<Upl
|
|||
|
||||
return persist;
|
||||
}
|
||||
|
||||
protected UploadDataPersist commonModelMapDataToPersistInternal(UploadDataModel data, UploadDataPersist persist) {
|
||||
if (!this.conventionService.isListNullOrEmpty(data.getTypes())){
|
||||
persist.setTypes(new ArrayList<>());
|
||||
for (UploadDataModel.UploadOptionModel option: data.getTypes()) {
|
||||
persist.getTypes().add(this.buildOption(option));
|
||||
}
|
||||
}
|
||||
// persist.setMaxFileSizeInMB(data.getMaxFileSizeInMB()); //TODO: Add to common model ?
|
||||
return persist;
|
||||
}
|
||||
|
||||
private @NotNull UploadDataPersist.UploadOptionPersist buildOption(UploadDataModel.UploadOptionModel data){
|
||||
UploadDataPersist.UploadOptionPersist persist = new UploadDataPersist.UploadOptionPersist();
|
||||
if (data == null) return persist;
|
||||
|
||||
persist.setLabel(data.getLabel());
|
||||
persist.setValue(data.getValue());
|
||||
|
||||
return persist;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected UploadDataImportExport dataToImportExportXmlInternal(UploadDataEntity data, UploadDataImportExport xml) {
|
||||
|
|
Loading…
Reference in New Issue