use of de.metas.handlingunits.reservation.HUReservationService in project metasfresh-webui-api by metasfresh.
the class HUEditorViewFactoryTemplate method createView.
@Override
public final HUEditorView createView(final CreateViewRequest request) {
final ViewId viewId = request.getViewId();
//
// Referencing documentPaths and tableName (i.e. from where are we coming, e.g. receipt schedule)
final Set<DocumentPath> referencingDocumentPaths = request.getReferencingDocumentPaths();
final String referencingTableName = extractReferencingTablename(referencingDocumentPaths);
final SqlViewBinding sqlViewBinding = getSqlViewBinding();
//
// HUEditorView rows repository
final HUEditorViewRepository huEditorViewRepository;
{
final WindowId windowId = viewId.getWindowId();
final boolean attributesAlwaysReadonly = rowAttributesAlwaysReadonlyByReferencingTableName.getOrDefault(referencingTableName, Boolean.TRUE);
final SqlHUEditorViewRepositoryBuilder huEditorViewRepositoryBuilder = SqlHUEditorViewRepository.builder().windowId(windowId).rowProcessedPredicate(getRowProcessedPredicate(referencingTableName)).attributesProvider(HUEditorRowAttributesProvider.builder().readonly(attributesAlwaysReadonly).build()).sqlViewBinding(sqlViewBinding).huReservationService(huReservationService);
customizeHUEditorViewRepository(huEditorViewRepositoryBuilder);
huEditorViewRepository = huEditorViewRepositoryBuilder.build();
}
//
// HUEditorView
{
// Filters
// as long as the deprecated getFilterOnlyIds() is around we can't ignore it
@SuppressWarnings("deprecation") final DocumentFilterList stickyFilters = extractStickyFilters(request.getStickyFilters(), request.getFilterOnlyIds());
final DocumentFilterDescriptorsProvider filterDescriptors = getViewFilterDescriptors();
final DocumentFilterList userFilters = request.getFiltersUnwrapped(filterDescriptors);
// Start building the HUEditorView
final HUEditorViewBuilder huViewBuilder = HUEditorView.builder().setParentViewId(request.getParentViewId()).setParentRowId(request.getParentRowId()).setViewId(viewId).setViewType(request.getViewType()).setStickyFilters(stickyFilters).setFilters(userFilters).setFilterDescriptors(filterDescriptors).setReferencingDocumentPaths(referencingTableName, referencingDocumentPaths).orderBys(sqlViewBinding.getDefaultOrderBys()).setActions(request.getActions()).addAdditionalRelatedProcessDescriptors(request.getAdditionalRelatedProcessDescriptors()).setHUEditorViewRepository(huEditorViewRepository).setUseAutoFilters(request.isUseAutoFilters()).setParameters(request.getParameters());
//
// Call view customizers
getViewCustomizers(referencingTableName).forEach(viewCustomizer -> viewCustomizer.beforeCreate(huViewBuilder));
customizeHUEditorView(huViewBuilder);
return huViewBuilder.build();
}
}
use of de.metas.handlingunits.reservation.HUReservationService in project metasfresh-webui-api by metasfresh.
the class PickingV2TestHelper method createProductsToPickRowsDataFactory.
public ProductsToPickRowsDataFactory createProductsToPickRowsDataFactory() {
final IBPartnerBL bpartnersService = createAndRegisterBPartnerBL();
final HUReservationRepository huReservationRepository = new HUReservationRepository();
final HUReservationService huReservationService = new HUReservationService(huReservationRepository);
final PickingCandidateRepository pickingCandidateRepository = new PickingCandidateRepository();
final HUTraceRepository huTraceRepository = new HUTraceRepository();
final HuId2SourceHUsService sourceHUsRepository = new HuId2SourceHUsService(huTraceRepository);
final PickingCandidateService pickingCandidateService = new PickingCandidateService(new PickingConfigRepository(), pickingCandidateRepository, sourceHUsRepository);
return ProductsToPickRowsDataFactory.builder().bpartnersService(bpartnersService).huReservationService(huReservationService).pickingCandidateService(pickingCandidateService).locatorLookup(this::generateLocatorLookupById).build();
}
Aggregations