Merged PR 754: REMI - Artikel zur REMI Liste hinzufügen

Related work items: #1999
This commit is contained in:
Lorenz Hilpert
2021-07-19 16:29:44 +00:00
parent 0b29647e9c
commit 708650cb55
212 changed files with 1024 additions and 1396 deletions

View File

@@ -1,7 +1,5 @@
import { StringDictionary } from '@cmf/core';
export interface ApplicationProcess {
id: number;
name: string;
data: StringDictionary<any>;
data: { [key: string]: any };
}

View File

@@ -1,5 +1,4 @@
import { Injectable } from '@angular/core';
import { StringDictionary } from '@cmf/core';
import { Store } from '@ngrx/store';
import {
AddToShoppingCartDTO,
@@ -606,8 +605,8 @@ export class DomainCheckoutService {
customerFeatures,
}: {
processId: number;
customerFeatures?: StringDictionary<string>;
}): Observable<{ ok?: boolean; filter?: StringDictionary<string>; message?: string; create?: InputDTO }> {
customerFeatures?: { [key: string]: string };
}): Observable<{ ok?: boolean; filter?: { [key: string]: string }; message?: string; create?: InputDTO }> {
return this.getShoppingCart({ processId }).pipe(
first(),
mergeMap((shoppingCart) =>
@@ -644,10 +643,10 @@ export class DomainCheckoutService {
return this.store.select(DomainCheckoutSelectors.selectBuyerCommunicationDetails, { processId });
}
getSetableCustomerTypes(processId: number): Observable<StringDictionary<boolean>> {
getSetableCustomerTypes(processId: number): Observable<{ [key: string]: boolean }> {
return this.canSetCustomer({ processId, customerFeatures: undefined }).pipe(
map((res) => {
let setableTypes: StringDictionary<boolean> = {
let setableTypes: { [key: string]: boolean } = {
store: true,
guest: true,
webshop: true,
@@ -699,11 +698,11 @@ export class DomainCheckoutService {
);
}
setCustomerFeatures({ processId, customerFeatures }: { processId: number; customerFeatures: StringDictionary<string> }) {
setCustomerFeatures({ processId, customerFeatures }: { processId: number; customerFeatures: { [key: string]: string } }) {
this.store.dispatch(DomainCheckoutActions.setCustomerFeatures({ processId, customerFeatures }));
}
getCustomerFeatures({ processId }: { processId: number }): Observable<StringDictionary<string>> {
getCustomerFeatures({ processId }: { processId: number }): Observable<{ [key: string]: string }> {
return this.store.select(DomainCheckoutSelectors.selectCustomerFeaturesByProcessId, { processId });
}

View File

@@ -1,4 +1,3 @@
import { StringDictionary } from '@cmf/core';
import { BuyerDTO, CheckoutDTO, NotificationChannel, PayerDTO, ShippingAddressDTO, ShoppingCartDTO } from '@swagger/checkout';
import { DisplayOrderDTO } from '@swagger/oms';
@@ -6,7 +5,7 @@ export interface CheckoutEntity {
processId: number;
checkout: CheckoutDTO;
shoppingCart: ShoppingCartDTO;
customerFeatures: StringDictionary<string>;
customerFeatures: { [key: string]: string };
payer: PayerDTO;
buyer: BuyerDTO;
shippingAddress: ShippingAddressDTO;

View File

@@ -1,4 +1,3 @@
import { StringDictionary } from '@cmf/core';
import { createAction, props } from '@ngrx/store';
import {
ShoppingCartDTO,
@@ -41,7 +40,7 @@ export const setCheckoutDestination = createAction(
export const setCustomerFeatures = createAction(
`${prefix} Set Customer Features`,
props<{ processId: number; customerFeatures: StringDictionary<string> }>()
props<{ processId: number; customerFeatures: { [key: string]: string } }>()
);
export const setShippingAddress = createAction(

View File

@@ -5,7 +5,6 @@ import * as DomainCheckoutActions from './domain-checkout.actions';
import { Dictionary } from '@ngrx/entity';
import { CheckoutEntity } from './defs/checkout.entity';
import { isNullOrUndefined } from '@utils/common';
import { NotificationChannel } from '@cmf/core';
const _domainCheckoutReducer = createReducer(
initialCheckoutState,
@@ -94,7 +93,7 @@ function getOrCreateCheckoutEntity({ entities, processId }: { entities: Dictiona
payer: undefined,
buyer: undefined,
specialComment: '',
notificationChannels: NotificationChannel.NotSet,
notificationChannels: 0,
};
}

View File

@@ -1,5 +1,4 @@
import { Injectable } from '@angular/core';
import { StringDictionary } from '@cmf/core';
import {
AddressDTO,
AssignedPayerDTO,
@@ -26,7 +25,7 @@ import { catchError, map, mergeMap, retry } from 'rxjs/operators';
export class CrmCustomerService {
constructor(private customerService: CustomerService, private payerService: PayerService) {}
complete(queryString: string, filter?: StringDictionary<string>): Observable<Result<AutocompleteDTO[]>> {
complete(queryString: string, filter?: { [key: string]: string }): Observable<Result<AutocompleteDTO[]>> {
return this.customerService.CustomerCustomerAutocomplete({
input: queryString,
filter: filter || {},
@@ -44,7 +43,7 @@ export class CrmCustomerService {
getCustomers(
queryString: string,
options: { take?: number; skip?: number; filter?: StringDictionary<string> } = { take: 20, skip: 0 }
options: { take?: number; skip?: number; filter?: { [key: string]: string } } = { take: 20, skip: 0 }
): Observable<PagedResult<CustomerInfoDTO>> {
return this.customerService.CustomerListCustomers({
input: !!queryString ? { qs: queryString } : undefined,

View File

@@ -1,7 +1,7 @@
import { Injectable } from '@angular/core';
import { Mapper } from './mapper';
import { ItemDTO } from '@isa/catsearch-api';
import { Product } from '../models/product';
import { ItemDTO } from '@swagger/cat';
@Injectable()
export class ItemDtoToProductMapping implements Mapper<ItemDTO, Product> {
@@ -36,6 +36,6 @@ export class ItemDtoToProductMapping implements Mapper<ItemDTO, Product> {
sourcePrice:
(source.storeAvailabilities && source.storeAvailabilities[0] && source.storeAvailabilities[0].price) ||
(source.catalogAvailability && source.catalogAvailability.price),
} as Product;
} as any;
}
}

View File

@@ -1,7 +1,7 @@
import { Injectable } from '@angular/core';
import { PriceDTO } from '@cmf/inventory-api';
import { Mapper } from './mapper';
import { Product } from '../models/product';
import { PriceDTO } from '@swagger/remi';
@Injectable()
export class ProductToPriceDTOMapping implements Mapper<Product, PriceDTO> {

View File

@@ -1,7 +1,7 @@
import { Injectable } from '@angular/core';
import { ProductDTO } from '@cmf/inventory-api';
import { Mapper } from './mapper';
import { Product } from '../models/product';
import { ProductDTO } from '@swagger/remi';
@Injectable()
export class ProductToProductDTOMapping implements Mapper<Product, ProductDTO> {

View File

@@ -1,13 +1,12 @@
import { Injectable } from '@angular/core';
import { Mapper } from './mapper';
import { ReceiptDTO } from '@cmf/inventory-api';
import { ReceiptItemDtoToRemissionProductMapping } from './receipt-item-dto-to-remission-product.mapping';
import { MappingService } from './mapping.service';
import { ShippingDocument } from '../models/shipping-document';
import { ReceiptDTO } from '@swagger/remi';
@Injectable()
export class ReceiptDTOToShippingDocumentMapping
implements Mapper<ReceiptDTO, ShippingDocument> {
export class ReceiptDTOToShippingDocumentMapping implements Mapper<ReceiptDTO, ShippingDocument> {
constructor(private mappingService: MappingService) {}
get sourceName() {
@@ -19,20 +18,12 @@ export class ReceiptDTOToShippingDocumentMapping
}
map(source: ReceiptDTO): ShippingDocument {
const productMapper = this.mappingService.get<
ReceiptItemDtoToRemissionProductMapping
>('ReceiptItemDTO', 'RemissionProduct');
const productMapper = this.mappingService.get<ReceiptItemDtoToRemissionProductMapping>('ReceiptItemDTO', 'RemissionProduct');
return {
id: source.id,
shippingDocumentNumber: source.receiptNumber,
packageNumber:
source.packages &&
source.packages[0] &&
source.packages[0].data &&
source.packages[0].data.packageNumber,
products: source.items.map((item) =>
productMapper.map(item.data || item)
),
packageNumber: source.packages && source.packages[0] && source.packages[0].data && source.packages[0].data.packageNumber,
products: source.items.map((item) => productMapper.map(item.data || item)),
isCompleted: !!source.completed || source.status === 4 ? true : false,
isDeleted: source.status === 4,
};

View File

@@ -1,7 +1,7 @@
import { Mapper } from './mapper';
import { ReceiptItemDTO } from '@cmf/inventory-api';
import { Injectable } from '@angular/core';
import { RemissionProduct } from '../models/remission-product';
import { ReceiptItemDTO } from '@swagger/remi';
@Injectable()
export class ReceiptItemDtoToRemissionProductMapping implements Mapper<ReceiptItemDTO, RemissionProduct> {

View File

@@ -1,7 +1,7 @@
import { Injectable } from '@angular/core';
import { ReturnItemDTO } from '@cmf/inventory-api';
import { Mapper } from './mapper';
import { RemissionProduct } from '../models/remission-product';
import { ReturnItemDTO } from '@swagger/remi';
@Injectable()
export class ReturnItemDtoToRemissionProductMapping implements Mapper<ReturnItemDTO, RemissionProduct> {

View File

@@ -1,7 +1,7 @@
import { ReturnSuggestionDTO } from '@cmf/inventory-api';
import { Injectable } from '@angular/core';
import { Mapper } from './mapper';
import { RemissionProduct } from '../models/remission-product';
import { ReturnSuggestionDTO } from '@swagger/remi';
@Injectable()
export class ReturnSuggestionDtoToRemissionProductMapping implements Mapper<ReturnSuggestionDTO, RemissionProduct> {

View File

@@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { SupplierDTO } from '@cmf/inventory-api';
import { SupplierDTO } from '@swagger/remi';
import { RemissionSupplier } from '../models';
import { Mapper } from './mapper';

View File

@@ -1,5 +1,4 @@
import { createRandomId } from '../util';
import { VATType } from '@cmf/trade-api';
import { Product } from '../../models/product';
export const product: Product = {
@@ -30,7 +29,7 @@ export const product: Product = {
},
vat: {
inPercent: 7,
vatType: VATType.MediumRate,
vatType: 4, // MediumRate = 4,
},
},
sourceProduct: {

View File

@@ -1,8 +1,6 @@
import { StringDictionary } from '@cmf/core';
export interface ActionResult<T> {
error?: boolean;
errorReasons?: StringDictionary<string>;
errorReasons?: { [key: string]: string };
http?: {
code: number;
};

View File

@@ -1,4 +1,4 @@
import { PriceDTO, ProductDTO } from '@cmf/inventory-api';
import { PriceDTO, ProductDTO } from '@swagger/remi';
export interface Product {
/**

View File

@@ -1,7 +1,4 @@
import { RemissionModuleOptions } from './remission-module.options';
import { CatsearchApiRequestOptions } from '@isa/catsearch-api';
import { RemiApiRequestOptions } from '@isa/remi-api';
import { PrintApiRequestOptions } from '@isa/print-api';
import { NgModule, ModuleWithProviders } from '@angular/core';
import { RestRemissionService } from './services/rest-remission.service';
import { MockRemissionService } from './mock/mock-remission.service';
@@ -14,30 +11,9 @@ import { ReturnItemDtoToRemissionProductMapping } from './mappings/return-item-d
import { ReceiptItemDtoToRemissionProductMapping } from './mappings/receipt-item-dto-to-remission-product.mapping';
import { ReceiptDTOToShippingDocumentMapping } from './mappings/receipt-dto-to-shipping-document.mapping';
import { RemissionService } from './services/remission.service';
import { BaseUrlInterceptor, CatchResponseArgsErrorInterceptor, LogErrorInterceptor } from '@cmf/core';
import { HTTP_INTERCEPTORS } from '@angular/common/http';
import { FeaturesToAssortmentMapping } from './mappings/features-to-assortment.mapping';
import { SupplierDtoToRemissionSupplier } from './mappings/supplier-dto-to-remssion-supplier.mapping';
export function catsearchApiRequestOptionsFactory(options: RemissionModuleOptions): CatsearchApiRequestOptions {
return {
baseUrl: (options.endpoints && options.endpoints.catsearch) || '',
catchResponseArgsError: true,
};
}
export function remiApiRequestOptionsFactory(options: RemissionModuleOptions): RemiApiRequestOptions {
return {
baseUrl: (options.endpoints && options.endpoints.remi) || '',
catchResponseArgsError: true,
};
}
export function printApiRequestOptionsFactory(options: RemissionModuleOptions): PrintApiRequestOptions {
return {
baseUrl: (options.endpoints && options.endpoints.print) || '',
catchResponseArgsError: true,
};
}
export function remissionServiceFactory(options: RemissionModuleOptions, rest: RestRemissionService, mock: MockRemissionService) {
return options.useMock ? mock : rest;
}
@@ -56,21 +32,6 @@ export class RemissionModule {
provide: RemissionModuleOptions,
useValue: options,
},
{
provide: CatsearchApiRequestOptions,
useFactory: catsearchApiRequestOptionsFactory,
deps: [RemissionModuleOptions],
},
{
provide: RemiApiRequestOptions,
useFactory: remiApiRequestOptionsFactory,
deps: [RemissionModuleOptions],
},
{
provide: PrintApiRequestOptions,
useFactory: printApiRequestOptionsFactory,
deps: [RemissionModuleOptions],
},
{
provide: Mapper,
useClass: ReturnSuggestionDtoToRemissionProductMapping,
@@ -121,21 +82,6 @@ export class RemissionModule {
useFactory: remissionServiceFactory,
deps: [RemissionModuleOptions, RestRemissionService, MockRemissionService],
},
{
provide: HTTP_INTERCEPTORS,
useClass: BaseUrlInterceptor,
multi: true,
},
{
provide: HTTP_INTERCEPTORS,
useClass: CatchResponseArgsErrorInterceptor,
multi: true,
},
{
provide: HTTP_INTERCEPTORS,
useClass: LogErrorInterceptor,
multi: true,
},
],
};
}

View File

@@ -1,11 +1,10 @@
import { Injectable } from '@angular/core';
import { Observable, of } from 'rxjs';
import { StringDictionary, InputDTO, OptionDTO } from '@cmf/core';
import { RemiService, FilterParams } from '@isa/remi-api';
import { map, shareReplay } from 'rxjs/operators';
import { delay, map, shareReplay } from 'rxjs/operators';
import { FilterOption, Filter } from '../models/filter';
import { RemissionSourceType } from '../types/remission-source.type';
import { RemissionFilter, RemissionSelectedFilters } from '../models';
import { InputDTO, OptionDTO, RemiService } from '@swagger/remi';
@Injectable({ providedIn: 'root' })
export class RestFilterService {
@@ -59,8 +58,8 @@ export class RestFilterService {
remissionTargetName: string;
stockId: number;
filter: RemissionFilter;
}): Observable<StringDictionary<string>> {
const queryTokenFilter: StringDictionary<string> = {};
}): Observable<{ [key: string]: string }> {
const queryTokenFilter: { [key: string]: string } = {};
const filter =
params.filter.filter[params.remissionSourceType] && params.filter.filter[params.remissionSourceType][params.remissionTargetName];
@@ -88,15 +87,15 @@ export class RestFilterService {
stockId: number;
}): Observable<InputDTO[]> {
let filter$: Observable<InputDTO[]>;
const filterQuery: FilterParams = {
const filterQuery: RemiService.RemiGetPflichtremissionFilter2Params = {
stockId: params.stockId,
supplierId: params.supplierId,
};
if (params.remissionSourceType === 'zentral') {
filter$ = this.remiService.getPflichtremissionFilter(filterQuery).pipe(map((response) => response.result));
filter$ = this.remiService.RemiGetPflichtremissionFilter2(filterQuery).pipe(map((response) => response.result));
} else {
filter$ = this.remiService.getUeberlaufFilter(filterQuery).pipe(map((response) => response.result));
filter$ = this.remiService.RemiGetUeberlaufFilter(filterQuery).pipe(map((response) => response.result));
}
return filter$;

View File

@@ -1,22 +1,20 @@
import { Injectable } from '@angular/core';
import { Observable, combineLatest, BehaviorSubject, forkJoin, of } from 'rxjs';
import { RemiService, ReturnApiService } from '@isa/remi-api';
import { RestFilterService } from './rest-filter.service';
import { switchMap, map, flatMap, mergeMap, startWith, take, shareReplay } from 'rxjs/operators';
import { filter as rxjsFilter } from 'rxjs/operators';
import { MappingService } from '../mappings/mapping.service';
import { Mapper } from '../mappings/mapper';
import { ReturnSuggestionDTO, ReturnItemDTO } from '@cmf/inventory-api';
import { RemissionFilter } from '../models/remission-filter';
import { RemissionProduct } from '../models/remission-product';
import { KeyValueDTO } from '@cmf/core';
import { isNumber } from 'util';
import { RemiService, ReturnItemDTO, ReturnSuggestionDTO, KeyValueDTOOfStringAndString, ReturnService } from '@swagger/remi';
@Injectable({ providedIn: 'root' })
export class RestRemissionProductsService {
constructor(
private remiService: RemiService,
private returnApi: ReturnApiService,
private returnService: ReturnService,
private restFilterService: RestFilterService,
private mapping: MappingService
) {}
@@ -27,7 +25,7 @@ export class RestRemissionProductsService {
[2, new BehaviorSubject<number[]>([])],
]);
productGroupNames$: Observable<KeyValueDTO<string, string>[]>;
productGroupNames$: Observable<KeyValueDTOOfStringAndString[]>;
// Products that should be shown on top right after adding to remission list
updatePriorityProducts(productId: number, supplierId: number) {
@@ -64,10 +62,10 @@ export class RestRemissionProductsService {
applicablePriorityProducts2$.next(applicablePriorityProducts$.value.filter((id) => productId !== id));
}
getProductGroupNames(stockId: number): Observable<KeyValueDTO<string, string>[]> {
getProductGroupNames(stockId: number): Observable<KeyValueDTOOfStringAndString[]> {
if (!this.productGroupNames$) {
this.productGroupNames$ = this.remiService
.productgroups({ stockId })
.RemiProductgroups({ stockId })
.pipe(map((response) => response.result))
.pipe(shareReplay());
}
@@ -96,7 +94,7 @@ export class RestRemissionProductsService {
const regularProducts$ = filter$.pipe(
switchMap((qtFilter) =>
this.remiService.ueberlauf({
this.remiService.RemiUeberlauf({
queryToken: {
stockId,
supplierId: filter.target.id,
@@ -147,7 +145,7 @@ export class RestRemissionProductsService {
const priorityItems$ = applicablePriorityProducts$.pipe(
switchMap((ids) => (!!showPriorityProducts(ids) ? of(ids) : of([]))),
mergeMap((ids) => forkJoin(ids.map((id) => this.returnApi.getReturnItemById({ itemId: id })))),
mergeMap((ids) => forkJoin(ids.map((id) => this.returnService.ReturnGetReturnItemById({ itemId: id })))),
map((products) => products.map((product) => product.result)),
startWith([]),
map((products) => products.slice(filter.skip))
@@ -155,7 +153,7 @@ export class RestRemissionProductsService {
const regularProducts$ = filter$.pipe(
switchMap((qtFilter) =>
this.remiService.pflichtremissionsartikel({
this.remiService.RemiPflichtremissionsartikel({
queryToken: {
stockId,
supplierId: filter.target.id,
@@ -198,7 +196,7 @@ export class RestRemissionProductsService {
!result.items.length
? of({ items: [], completed: true })
: this.remiService
.inStock({
.RemiInStock({
stockId,
articleIds:
result.items &&

View File

File diff suppressed because it is too large Load Diff

View File

@@ -1,12 +1,9 @@
import { Injectable } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { StringDictionary } from '@cmf/core';
import { ApplicationService } from '@core/application';
import { Router } from '@angular/router';
import { BreadcrumbService } from '@core/breadcrumb';
import { ComponentStore, tapResponse } from '@ngrx/component-store';
import { isEqual } from 'lodash';
import { combineLatest, Observable, Subject, Subscription } from 'rxjs';
import { first, map, tap, switchMap, withLatestFrom, debounceTime, finalize } from 'rxjs/operators';
import { combineLatest, Observable, Subject } from 'rxjs';
import { first, map, tap, switchMap, withLatestFrom, debounceTime } from 'rxjs/operators';
import { DomainCatalogService } from '@domain/catalog';
import {
fromInputDto,
@@ -74,7 +71,7 @@ export class ArticleSearchStore extends ComponentStore<ArticleSearchState> {
readonly searchState$ = this.select(this.searchStateSelector);
private queryParamsSelector = (s: ArticleSearchState) =>
Object.keys(s.params).reduce((dic, key) => ({ ...dic, [key]: s.params[key] }), {} as StringDictionary<string>);
Object.keys(s.params).reduce((dic, key) => ({ ...dic, [key]: s.params[key] }), {} as { [key: string]: string });
readonly queryParams$ = this.select(this.queryParamsSelector);
get queryParams() {
return this.get(this.queryParamsSelector);
@@ -123,7 +120,7 @@ export class ArticleSearchStore extends ComponentStore<ArticleSearchState> {
readonly queryTokenInput$ = combineLatest([this.queryParamsQuery$, this.inputSelectorFilter$]).pipe(
map(([query, inputSelector]) => {
const dic: StringDictionary<string> = {};
const dic: { [key: string]: string } = {};
inputSelector.forEach((filter) =>
filter.options.forEach((option) => {
@@ -262,7 +259,7 @@ export class ArticleSearchStore extends ComponentStore<ArticleSearchState> {
}
}
setQueryParams({ params }: { params: StringDictionary<string> }) {
setQueryParams({ params }: { params: { [key: string]: string } }) {
this.patchState({ params });
}

View File

@@ -1,4 +1,3 @@
import { StringDictionary } from '@cmf/core';
import { InputDTO, OptionDTO, InputType } from '@swagger/cat';
import { SelectFilter, SelectFilterOption, FilterType, Filter, FilterOption, RangeFilter } from '@ui/filter';
import { RangeFilterOption } from 'apps/ui/filter/src/lib/models/range-filter-option';
@@ -70,8 +69,8 @@ export function inputTypeToType(type: InputType): FilterType {
}
}
export function mapFilterArrayToStringDictionary(source: Filter[]): StringDictionary<string> {
const dict: StringDictionary<string> = {};
export function mapFilterArrayToStringDictionary(source: Filter[]): { [key: string]: string } {
const dict: { [key: string]: string } = {};
for (const filter of source) {
const options: FilterOption[] = filter.options;
const selected = options.filter((o) => o.selected);
@@ -112,7 +111,7 @@ export function mapFilterArrayToStringDictionary(source: Filter[]): StringDictio
}
export function mapSelectedFilterToParams(source: Filter[]): string {
const dict: StringDictionary<string> = {};
const dict: { [key: string]: string } = {};
for (const filter of source) {
const options: FilterOption[] = filter.options;

View File

@@ -1,14 +1,13 @@
import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
import { Component, ChangeDetectionStrategy, OnInit, OnDestroy, ViewChild } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { StringDictionary } from '@cmf/core';
import { ApplicationService } from '@core/application';
import { BreadcrumbService } from '@core/breadcrumb';
import { ItemDTO } from '@swagger/cat';
import { CacheService } from 'apps/core/cache/src/public-api';
import { isEqual } from 'lodash';
import { BehaviorSubject, combineLatest, Subscription } from 'rxjs';
import { debounceTime, distinctUntilChanged, finalize, first, map, withLatestFrom } from 'rxjs/operators';
import { debounceTime, first, map } from 'rxjs/operators';
import { ArticleSearchStore } from '../article-search-new.store';
@Component({

View File

@@ -11,7 +11,6 @@ import { SsoService } from 'sso';
import { PurchasingOptionsModalComponent, PurchasingOptionsModalData } from '../modals/purchasing-options-modal';
import { PurchasingOptions } from '../modals/purchasing-options-modal/purchasing-options-modal.store';
import { Subject, NEVER } from 'rxjs';
import { StringDictionary } from '@cmf/core';
import { DomainCatalogService } from '@domain/catalog';
import { BreadcrumbService } from '@core/breadcrumb';
import { DomainPrinterService } from '@domain/printer';
@@ -213,7 +212,7 @@ export class CheckoutReviewComponent {
.toPromise();
let availableOptions: PurchasingOptions[] = [];
const availabilities: StringDictionary<AvailabilityDTO> = {};
const availabilities: { [key: string]: AvailabilityDTO } = {};
if (takeAwayAvailability && this.availabilityService.isAvailable({ availability: takeAwayAvailability })) {
availableOptions.push('take-away');

View File

@@ -1,6 +1,5 @@
import { Component, ChangeDetectionStrategy } from '@angular/core';
import { Router } from '@angular/router';
import { StringDictionary } from '@cmf/core';
import { ApplicationService } from '@core/application';
import { DomainCheckoutService } from '@domain/checkout';
import { AddToShoppingCartDTO, AvailabilityDTO } from '@swagger/checkout';
@@ -246,7 +245,7 @@ export class PurchasingOptionsModalComponent {
this.router.navigate(['/product', 'search']);
} else if (navigate === 'continue') {
// Set filter for navigation to customer search if customer is not set
let filter: StringDictionary<string>;
let filter: { [key: string]: string };
if (!customer) {
filter = await this.customerFeatures$
.pipe(

View File

@@ -5,7 +5,6 @@ import { CountryDTO, CustomerDTO, InputOptionsDTO } from '@swagger/crm';
import { Observable } from 'rxjs';
import { first, map } from 'rxjs/operators';
import { UiModalService } from '@ui/modal';
import { StringDictionary } from '@cmf/core';
import { BreadcrumbService } from '@core/breadcrumb';
import { ApplicationService } from '@core/application';
import { AddressSelectionModalService } from '../modals/address-selection-modal/address-selection-modal.service';
@@ -99,8 +98,8 @@ export abstract class CustomerCreateComponentBase {
// }
}
createCustomerDataQuery(customer: CustomerDTO): StringDictionary<string> {
const query: StringDictionary<string> = {
createCustomerDataQuery(customer: CustomerDTO): { [key: string]: string } {
const query: { [key: string]: string } = {
gender: String(customer.gender),
title: customer.title,
firstName: customer.firstName,
@@ -155,7 +154,7 @@ export abstract class CustomerCreateComponentBase {
};
}
setValidationError(invalidProperties: StringDictionary<string>, formGroup: AbstractControl) {
setValidationError(invalidProperties: { [key: string]: string }, formGroup: AbstractControl) {
this.control.enable();
this.control.reset(this.control.value);

View File

@@ -10,7 +10,6 @@ import { catchError, debounceTime, distinctUntilChanged, filter, map, shareRepla
import { CustomerSearchType, QueryFilter, ResultState } from './defs';
import { cloneFilter, Filter, FilterOption, UiFilterMappingService } from '@ui/filter';
import { NativeContainerService } from 'native-container';
import { StringDictionary } from '@cmf/core';
import { ApplicationService } from '@core/application';
import { BreadcrumbService } from '@core/breadcrumb';
@@ -18,7 +17,7 @@ import { BreadcrumbService } from '@core/breadcrumb';
export abstract class CustomerSearch implements OnInit, OnDestroy {
protected abstract customerSearch: CrmCustomerService;
private queryParams: StringDictionary<string>;
private queryParams: { [key: string]: string };
private destroy$ = new Subject();
@@ -117,12 +116,12 @@ export abstract class CustomerSearch implements OnInit, OnDestroy {
this.destroy$.complete();
}
setQueryParams({ params }: { params: StringDictionary<string> }): void {
setQueryParams({ params }: { params: { [key: string]: string } }): void {
this.queryParams = params;
this.parseQueryParams();
}
getQueryParams(): StringDictionary<string> {
getQueryParams(): { [key: string]: string } {
return this.queryParams || {};
}
@@ -199,7 +198,7 @@ export abstract class CustomerSearch implements OnInit, OnDestroy {
.subscribe(() => this.searchState$.next('init'));
}
createQueryParams(): StringDictionary<string> {
createQueryParams(): { [key: string]: string } {
return {
query: this.queryFilter.query,
...this.getSelecteFiltersAsDictionary(),
@@ -238,8 +237,8 @@ export abstract class CustomerSearch implements OnInit, OnDestroy {
return this.search();
}
getSelecteFiltersAsDictionary(): StringDictionary<string> {
const dict: StringDictionary<string> = {};
getSelecteFiltersAsDictionary(): { [key: string]: string } {
const dict: { [key: string]: string } = {};
for (const filter of this.queryFilter.filters) {
const options: FilterOption[] = filter.options;

View File

@@ -1,5 +1,4 @@
import { Component, ChangeDetectionStrategy } from '@angular/core';
import { StringDictionary } from '@cmf/core';
import { CustomerDTO } from '@swagger/crm';
import { UiModalRef } from '@ui/modal';
@@ -12,8 +11,8 @@ import { UiModalRef } from '@ui/modal';
export class CantSelectGuestModalComponent {
constructor(public ref: UiModalRef<any, CustomerDTO>) {}
createCustomerDataQuery(customer: CustomerDTO): StringDictionary<string> {
const query: StringDictionary<string> = {
createCustomerDataQuery(customer: CustomerDTO): { [key: string]: string } {
const query: { [key: string]: string } = {
gender: String(customer.gender),
title: customer?.title,
firstName: customer?.firstName,

View File

@@ -1,5 +1,4 @@
import { Injectable } from '@angular/core';
import { StringDictionary } from '@cmf/core';
import { DomainTaskCalendarService } from '@domain/task-calendar';
import { ComponentStore, tapResponse } from '@ngrx/component-store';
import { DisplayInfoDTO, InputDTO, ResponseArgsOfIEnumerableOfInputDTO } from '@swagger/eis';
@@ -204,8 +203,8 @@ export class TaskCalendarStore extends ComponentStore<TaskCalendarState> {
return mappedArr;
}
mapFilterArrayToStringDictionary(source: Filter[]): StringDictionary<string> {
const dict: StringDictionary<string> = {};
mapFilterArrayToStringDictionary(source: Filter[]): { [key: string]: string } {
const dict: { [key: string]: string } = {};
for (const filter of source) {
const options: FilterOption[] = filter.options;
const selected = options.filter((o) => o.selected);

View File

@@ -1,5 +1,4 @@
import { Injectable } from '@angular/core';
import { StringDictionary } from '@cmf/core';
import { AuthConfig } from 'angular-oauth2-oidc';
@Injectable()
@@ -7,7 +6,7 @@ export class AppConfiguration {
includeGoogleAnalytics = false;
title?: string;
cdn: StringDictionary<string>;
cdn: { [key: string]: string };
sso: AuthConfig;

View File

@@ -153,11 +153,6 @@ export function cdnProdutctPictures(config: AppConfiguration): string {
useFactory: remissionModuleOptionsFactory,
deps: [AppConfiguration],
},
{
provide: HTTP_INTERCEPTORS,
useClass: HttpErrorHandlerInterceptor,
multi: true,
},
DatePipe,
{
provide: ErrorHandler,

View File

@@ -10,7 +10,7 @@ import {
SetOnlineCustomerCreationStatus,
} from '../../core/store/actions/process.actions';
import { Breadcrumb } from '../../core/models/breadcrumb.model';
import { ResetBreadcrumbsTo, AddBreadcrumb } from '../../core/store/actions/breadcrumb.actions';
import { ResetBreadcrumbsTo } from '../../core/store/actions/breadcrumb.actions';
import { takeUntil, distinctUntilChanged } from 'rxjs/operators';
import { ProcessSelectors } from '../../core/store/selectors/process.selectors';
import { ResetFilters } from '../../core/store/actions/filter.actions';
@@ -22,7 +22,6 @@ import { RemissionSelectors } from '../../core/store/selectors/remission.selecto
import { RemissionFinishingProcessStatus } from '../../modules/remission/models/remission-finishing-process-status.enum';
import { DeleteFormState } from '../../core/store/actions/forms.actions';
import { USER_FORM_STATE_KEY, USER_EXTRAS_FORM_STATE_KEY, USER_ERRORS_FORM_STATE_KEY } from '../../core/utils/app.constants';
import { StringDictionary } from '@cmf/core';
@Component({
selector: 'app-menu',
@@ -39,7 +38,7 @@ export class MenuComponent implements OnInit, OnDestroy {
constructor(public router: Router, private store: Store, private moduleSwitcherService: ModuleSwitcherService) {}
activeMenu = '';
routeToMenu(menuPath: string, menuTag: string, queryParams?: StringDictionary<string>): void {
routeToMenu(menuPath: string, menuTag: string, queryParams?: { [key: string]: string }): void {
if (this.processes && this.processes.length < 1 && this.module === ModuleSwitcher.Customer) {
this.createProcess(menuPath);
}

View File

@@ -6,10 +6,11 @@ import { Injectable } from '@angular/core';
import { OAuthErrorEvent } from 'angular-oauth2-oidc';
import { LoggingService, LogType } from '../services/logging.service';
import { isWhiteList } from '../utils/http-interceptor-whitelist.utils';
import { UiMessageModalComponent, UiModalService } from '@ui/modal';
@Injectable()
export class HttpErrorHandlerInterceptor implements HttpInterceptor {
constructor(private errorService: ErrorService, private logger: LoggingService) {}
constructor(private errorService: ErrorService, private logger: LoggingService, private modal: UiModalService) {}
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
return next.handle(req).pipe(catchError((error: HttpErrorResponse, caught: any) => this.handleError(error)));
@@ -34,6 +35,15 @@ export class HttpErrorHandlerInterceptor implements HttpInterceptor {
}
private handleError(error: HttpErrorResponse) {
console.log(error.status);
if (error.status === 0) {
this.modal.open({
content: UiMessageModalComponent,
data: { title: 'Sie sind offline', message: 'Bitte überprüfen Sie Ihre Netzwerkverbindung.' },
});
return throwError(error);
}
if (!isWhiteList(error.url)) {
if (isWhiteList(error.url, error.status)) {
return throwError(error);

View File

@@ -32,6 +32,7 @@ const errorWhiteList: { url: string; codes: number[] }[] = [
{ url: '/shippingaddress', codes: [400] },
{ url: '/inventory', codes: [400] },
{ url: '/destination/canadd', codes: [400] },
{ url: '/remi', codes: [0, -1] },
];
const errorBlackList: { url: string; codes: number[] }[] = [{ url: '/order/checkout', codes: [400] }];

View File

@@ -15,6 +15,7 @@
<ng-container *ngIf="filtersByGroup$ | async as filters">
<div>
<app-selected-filter-options
*ngIf="filters?.length"
[value]="filters"
(filterChanged)="onFiltersChange($event)"
[showResetButton]="filters | hasSelectedFilters"
@@ -24,7 +25,7 @@
<div class="selection-container" #selectionContainer>
<app-filter-group
*ngIf="filters"
*ngIf="filters?.length"
[value]="filters"
[selected]="selectedFilter$ | async"
(valueChanged)="onFiltersChange($event)"
@@ -41,3 +42,5 @@
</div>
</div>
</div>
<ui-spinner [show]="!(filtersByGroup$ | async)?.length"></ui-spinner>

View File

@@ -4,6 +4,14 @@
:host {
@include overlay-host;
@apply relative;
}
ui-spinner {
@apply absolute block;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
}
.selection-container {

View File

@@ -10,6 +10,7 @@ import { RemissionUeberlaufCapacitiesModule } from '../../pages/remission-list-c
import { SharedModule } from 'apps/sales/src/app/shared/shared.module';
import { RemissionRequiredCapacitiesWidgetModule } from '../../components/remission-required-capacities-widget';
import { HasSelectedFiltersPipe } from '../../pipes';
import { UiSpinnerModule } from 'apps/ui/spinner/src/lib/ui-spinner.module';
@NgModule({
imports: [
@@ -21,6 +22,7 @@ import { HasSelectedFiltersPipe } from '../../pipes';
BrowserAnimationsModule,
RemissionUeberlaufCapacitiesModule,
RemissionRequiredCapacitiesWidgetModule,
UiSpinnerModule,
],
exports: [RemissionListFilterComponent, HasSelectedFiltersPipe],
declarations: [RemissionListFilterComponent, HasSelectedFiltersPipe],

View File

@@ -34,6 +34,7 @@ export class RemissionAddProductToRemissionListComponent implements OnInit, Afte
}
searchProduct(input: string) {
console.log(input);
this.validInput(input).ifTrue(() => {
this.remissionService
.searchProduct({ ean: input })

View File

@@ -13,7 +13,7 @@
<div class="headers">
<app-remission-list-page-header [source]="data.selectedSource"></app-remission-list-page-header>
<ng-container #actions *ngIf="(remissionSuppliers$ | async) && (remissionTargets$ | async); else loadFilters">
<ng-container #actions *ngIf="remissionTargets$ | async; else loadFilters">
<div class="filters">
<app-remission-sources-filter></app-remission-sources-filter>
<app-remission-suppliers-filter></app-remission-suppliers-filter>

View File

@@ -34,7 +34,6 @@ import { RemissionToTopToBottomActionsComponent } from '../../components/remissi
// tslint:disable-next-line: max-line-length
import { RemissionScanProductInvalidBarcodeComponent } from '../../components/remission-scan-product-invalid-barcode/remission-scan-product-invalid-barcode.component';
import { NativeContainerService } from 'shared/lib/remission-container-scanner/native-container.service';
import { SupplierDTO } from '@cmf/inventory-api';
import { fadeInWithDelay } from '../../animations/fadeIn.animation';
import {
RemissionProcess,
@@ -44,6 +43,7 @@ import {
RemissionSourceType,
RemissionSupplier,
} from '@isa/remission';
import { SupplierDTO } from '@swagger/remi';
@Component({
selector: 'app-remission-list-create',
@@ -69,7 +69,6 @@ export class RemissionListCreateComponent implements OnInit, OnDestroy {
isLoading$: Observable<boolean>;
remissionProcess$: Observable<RemissionProcess>;
remissionSuppliers$ = this.remissionService.getRemissionTargets();
remissionTargets$ = this.remissionService.getRemissionTargets();
remissionListHits$: Observable<number>;
listLoaded$: Observable<boolean>;

View File

@@ -1,5 +1,5 @@
import { Component, ChangeDetectionStrategy, Input } from '@angular/core';
import { HistoryDTO } from '@cmf/trade-api';
import { HistoryDTO } from '@swagger/oms';
@Component({
selector: 'app-shelf-history-log',

View File

@@ -1,7 +1,7 @@
import { Component, OnInit, ChangeDetectionStrategy, Input } from '@angular/core';
import { Observable } from 'rxjs';
import { HistoryDTO } from '@cmf/trade-api';
import { HistoryStateFacade } from '@shelf-store/history';
import { HistoryDTO } from '@swagger/oms';
@Component({
selector: 'app-shelf-history-logs',

View File

@@ -1,4 +1,4 @@
import { HistoryDTO } from '@cmf/trade-api';
import { HistoryDTO } from '@swagger/oms';
export function historyDtoToInfoText(history: HistoryDTO): string {
const baseDate = new Date(history.changed);

View File

@@ -1,4 +1,4 @@
import { HistoryDTO } from '@cmf/trade-api';
import { HistoryDTO } from '@swagger/oms';
export function historyDtoToStatusText(history: HistoryDTO): string {
return history.description || 'Status der Bestellung wurde geändert';

View File

@@ -1,5 +1,5 @@
import { Pipe, PipeTransform } from '@angular/core';
import { HistoryDTO } from '@cmf/trade-api';
import { HistoryDTO } from '@swagger/oms';
@Pipe({
name: 'filterHistoriesWithStatusChange',

View File

@@ -1,5 +1,5 @@
import { Pipe, PipeTransform } from '@angular/core';
import { HistoryDTO } from '@cmf/trade-api';
import { HistoryDTO } from '@swagger/oms';
import { historyDtoToStatusText } from '../mappings';
@Pipe({

View File

@@ -1,5 +1,5 @@
import { Pipe, PipeTransform } from '@angular/core';
import { HistoryDTO } from '@cmf/trade-api';
import { HistoryDTO } from '@swagger/oms';
import { historyDtoToInfoText } from '../mappings';
@Pipe({

View File

@@ -1,6 +1,5 @@
import { Injectable } from '@angular/core';
import { OrderItemListItemDTO, ReceiptDTO, ReceiptService } from '@swagger/oms';
import { ResponseArgs } from '@cmf/core';
import { OrderItemListItemDTO, ReceiptDTO, ReceiptService, ResponseArgs } from '@swagger/oms';
import { BehaviorSubject, Observable, of } from 'rxjs';
import { take } from 'rxjs/internal/operators/take';
@@ -162,7 +161,7 @@ export class ShelfShippingNoteService {
}
}
private handleRequest<K = any>(response$: Observable<ResponseArgs<K>>, statusObs$?: BehaviorSubject<boolean>): Promise<K> {
private handleRequest<K = any>(response$: Observable<ResponseArgs & { result?: K }>, statusObs$?: BehaviorSubject<boolean>): Promise<K> {
return response$
.pipe(
map((response) => {

View File

@@ -1,5 +1,4 @@
import { createSelector } from '@ngrx/store';
import { Dictionary } from '@cmf/core';
import { customersStateAdapter } from './customers.state';
import { selectCustomerState } from '../customer.selector';
import { Customer } from './defs';
@@ -8,28 +7,28 @@ export const selectCustomersState = createSelector(selectCustomerState, (s) => s
export const { selectAll, selectEntities } = customersStateAdapter.getSelectors(selectCustomersState);
export const selectCustomers = createSelector(selectEntities, (entities: Dictionary<Customer>) => entities);
export const selectCustomers = createSelector(selectEntities, (entities: { [key: number]: Customer }) => entities);
export const selectCustomer = createSelector(selectEntities, (entities: Dictionary<Customer>, id: number) => entities[id]);
export const selectCustomer = createSelector(selectEntities, (entities: { [key: number]: Customer }, id: number) => entities[id]);
export const selectAddresses = createSelector(
selectEntities,
(entities: Dictionary<Customer>, id: number) => entities[id] && entities[id].addresses
(entities: { [key: number]: Customer }, id: number) => entities[id] && entities[id].addresses
);
export const selectGeneralAddress = createSelector(
selectEntities,
(entities: Dictionary<Customer>, id: number) => entities[id] && entities[id].addresses && entities[id].addresses.generalAddress
(entities: { [key: number]: Customer }, id: number) => entities[id] && entities[id].addresses && entities[id].addresses.generalAddress
);
export const selectShippingAddresses = createSelector(
selectEntities,
(entities: Dictionary<Customer>, id: number) => entities[id] && entities[id].addresses.shippingAddresses
(entities: { [key: number]: Customer }, id: number) => entities[id] && entities[id].addresses.shippingAddresses
);
export const selectDefaultShippingAddress = createSelector(
selectEntities,
(entities: Dictionary<Customer>, id: number) =>
(entities: { [key: number]: Customer }, id: number) =>
entities[id] &&
entities[id].addresses.shippingAddresses &&
entities[id].addresses.shippingAddresses.find((address) => address.isDefault)
@@ -37,11 +36,11 @@ export const selectDefaultShippingAddress = createSelector(
export const selectPayerAddresses = createSelector(
selectEntities,
(entities: Dictionary<Customer>, id: number) => entities[id] && entities[id].addresses && entities[id].addresses.payerAddresses
(entities: { [key: number]: Customer }, id: number) => entities[id] && entities[id].addresses && entities[id].addresses.payerAddresses
);
export const selectDefaultPayerAddresses = createSelector(
selectEntities,
(entities: Dictionary<Customer>, id: number) =>
(entities: { [key: number]: Customer }, id: number) =>
entities[id] && entities[id].addresses && entities[id].addresses.payerAddresses.find((address) => address.isDefault)
);

View File

@@ -1,4 +1,4 @@
import { HistoryDTO } from '@cmf/trade-api';
import { HistoryDTO } from '@swagger/oms';
import { OrderHistoryStatus } from './order-history-status';
export interface OrderHistory {

View File

@@ -1,7 +1,6 @@
import { OrderHistory, OrderHistoryStatus } from '../defs';
import { props, createAction } from '@ngrx/store';
import { StrictHttpResponse, ResponseArgsOfHistoryDTO } from '@swagger/oms';
import { HistoryDTO } from '@cmf/trade-api';
import { StrictHttpResponse, ResponseArgsOfHistoryDTO, HistoryDTO } from '@swagger/oms';
const prefix = '[CUSTOMER] [SHELF] [HISTORY]';

View File

@@ -5,8 +5,8 @@ import { Dictionary } from '@ngrx/entity';
import { Observable } from 'rxjs';
import * as selectors from './history.selectors';
import * as actions from './history.actions';
import { HistoryDTO } from '@cmf/trade-api';
import { map } from 'rxjs/operators';
import { HistoryDTO } from '@swagger/oms';
@Injectable({ providedIn: 'root' })
export class HistoryStateFacade {

View File

@@ -1,4 +1,3 @@
import { Dictionary } from '@cmf/core';
import { PrimaryFilterOption } from 'apps/sales/src/app/modules/shelf/defs';
export function primaryFiltersToFiltersDictionary(primaryFilters: PrimaryFilterOption[]): { [key: string]: string[] } {

View File

@@ -4,14 +4,14 @@ export interface AddressDTO {
apartment?: string;
careOf?: string;
city?: string;
country?: string;
district?: string;
geoLocation?: GeoLocation;
info?: string;
po?: string;
region?: string;
state?: string;
street?: string;
streetNumber?: string;
zipCode?: string;
state?: string;
country?: string;
geoLocation?: GeoLocation;
region?: string;
}

View File

@@ -4,14 +4,14 @@ export interface Address {
apartment?: string;
careOf?: string;
city?: string;
country?: string;
district?: string;
geoLocation?: GeoLocation;
info?: string;
po?: string;
region?: string;
state?: string;
street?: string;
streetNumber?: string;
zipCode?: string;
state?: string;
country?: string;
geoLocation?: GeoLocation;
}

View File

@@ -1,16 +1,16 @@
/* tslint:disable */
import { ShopDTO } from './shop-dto';
import { PriceDTO } from './price-dto';
import { ShopDTO } from './shop-dto';
import { AvailabilityType } from './availability-type';
export interface AvailabilityDTO {
itemId?: number;
shop?: ShopDTO;
price?: PriceDTO;
supplier?: string;
ssc?: string;
qty?: number;
at?: string;
status: AvailabilityType;
itemId?: number;
price?: PriceDTO;
qty?: number;
rank?: number;
requested?: string;
shop?: ShopDTO;
ssc?: string;
status: AvailabilityType;
supplier?: string;
}

View File

@@ -1,23 +1,23 @@
/* tslint:disable */
import { AvailabilityType } from './availability-type';
import { EntityDTOContainerOfLogisticianDTO } from './entity-dtocontainer-of-logistician-dto';
import { PriceDTO } from './price-dto';
import { EntityDTOContainerOfShopItemDTO } from './entity-dtocontainer-of-shop-item-dto';
import { EntityDTOContainerOfSupplierDTO } from './entity-dtocontainer-of-supplier-dto';
import { EntityDTOContainerOfLogisticianDTO } from './entity-dtocontainer-of-logistician-dto';
export interface AvailabilityDTO2 {
availabilityType: AvailabilityType;
estimatedShippingDate?: string;
inStock?: number;
isPrebooked?: boolean;
logistician?: EntityDTOContainerOfLogisticianDTO;
price?: PriceDTO;
requestReference?: string;
shopItem?: EntityDTOContainerOfShopItemDTO;
ssc?: string;
sscText?: string;
supplier?: EntityDTOContainerOfSupplierDTO;
supplierInfo?: string;
isPrebooked?: boolean;
supplierProductNumber?: string;
supplierSSC?: string;
supplierSSCText?: string;
price?: PriceDTO;
estimatedShippingDate?: string;
shopItem?: EntityDTOContainerOfShopItemDTO;
supplier?: EntityDTOContainerOfSupplierDTO;
logistician?: EntityDTOContainerOfLogisticianDTO;
supplierProductNumber?: string;
requestReference?: string;
}

View File

@@ -1,19 +1,19 @@
/* tslint:disable */
import { ReadOnlyEntityDTOOfBranchDTOAndIReadOnlyBranch } from './read-only-entity-dtoof-branch-dtoand-iread-only-branch';
import { EntityDTOContainerOfLabelDTO } from './entity-dtocontainer-of-label-dto';
import { Address } from './address';
import { BranchType } from './branch-type';
export interface BranchDTO extends ReadOnlyEntityDTOOfBranchDTOAndIReadOnlyBranch {
label?: EntityDTOContainerOfLabelDTO;
parent?: number;
import { EntityDTOContainerOfLabelDTO } from './entity-dtocontainer-of-label-dto';
export interface BranchDTO extends ReadOnlyEntityDTOOfBranchDTOAndIReadOnlyBranch{
address?: Address;
branchNumber?: string;
name?: string;
shortName?: string;
key?: string;
branchType: BranchType;
isDefault?: string;
isOnline?: boolean;
isOrderingEnabled?: boolean;
isShippingEnabled?: boolean;
address?: Address;
branchType: BranchType;
isDefault?: string;
key?: string;
label?: EntityDTOContainerOfLabelDTO;
name?: string;
parent?: number;
shortName?: string;
}

View File

@@ -1,8 +1,8 @@
/* tslint:disable */
import { EntityDTOContainerOfBranchDTO } from './entity-dtocontainer-of-branch-dto';
export interface BranchTargetDTO {
target?: EntityDTOContainerOfBranchDTO;
isDefault?: string;
start?: string;
stop?: string;
isDefault?: string;
target?: EntityDTOContainerOfBranchDTO;
}

View File

@@ -1,21 +1,21 @@
/* tslint:disable */
import { EntityReferenceDTO } from './entity-reference-dto';
import { BuyerType } from './buyer-type';
import { Gender } from './gender';
import { CommunicationDetailsDTO } from './communication-details-dto';
import { OrganisationDTO } from './organisation-dto';
import { AddressDTO } from './address-dto';
export interface BuyerDTO extends EntityReferenceDTO {
import { BuyerType } from './buyer-type';
import { CommunicationDetailsDTO } from './communication-details-dto';
import { Gender } from './gender';
import { OrganisationDTO } from './organisation-dto';
export interface BuyerDTO extends EntityReferenceDTO{
address?: AddressDTO;
buyerNumber?: string;
buyerType: BuyerType;
isTemporaryAccount?: boolean;
locale?: string;
gender: Gender;
title?: string;
firstName?: string;
lastName?: string;
dateOfBirth?: string;
communicationDetails?: CommunicationDetailsDTO;
dateOfBirth?: string;
firstName?: string;
gender: Gender;
isTemporaryAccount?: boolean;
lastName?: string;
locale?: string;
organisation?: OrganisationDTO;
address?: AddressDTO;
title?: string;
}

View File

@@ -2,13 +2,13 @@
import { EntityDTOOfCategoryDTOAndICategory } from './entity-dtoof-category-dtoand-icategory';
import { EntityDTOContainerOfCategoryDTO } from './entity-dtocontainer-of-category-dto';
import { EntityDTOContainerOfTenantDTO } from './entity-dtocontainer-of-tenant-dto';
export interface CategoryDTO extends EntityDTOOfCategoryDTOAndICategory {
export interface CategoryDTO extends EntityDTOOfCategoryDTOAndICategory{
key?: string;
name?: string;
parent?: EntityDTOContainerOfCategoryDTO;
type?: string;
key?: string;
sort?: number;
start?: string;
stop?: string;
tenant?: EntityDTOContainerOfTenantDTO;
type?: string;
}

View File

@@ -2,18 +2,18 @@
import { ReadOnlyEntityDTOOfCheckoutDeliveryDTOAndICheckoutDelivery } from './read-only-entity-dtoof-checkout-delivery-dtoand-icheckout-delivery';
import { EntityDTOContainerOfCheckoutDTO } from './entity-dtocontainer-of-checkout-dto';
import { EntityDTOContainerOfDestinationDTO } from './entity-dtocontainer-of-destination-dto';
import { TermsOfDeliveryDTO } from './terms-of-delivery-dto';
import { EntityDTOContainerOfCheckoutItemDTO } from './entity-dtocontainer-of-checkout-item-dto';
import { DisplayItemDTO } from './display-item-dto';
import { PriceValueDTO } from './price-value-dto';
export interface CheckoutDeliveryDTO extends ReadOnlyEntityDTOOfCheckoutDeliveryDTOAndICheckoutDelivery {
import { DisplayItemDTO } from './display-item-dto';
import { EntityDTOContainerOfCheckoutItemDTO } from './entity-dtocontainer-of-checkout-item-dto';
import { TermsOfDeliveryDTO } from './terms-of-delivery-dto';
export interface CheckoutDeliveryDTO extends ReadOnlyEntityDTOOfCheckoutDeliveryDTOAndICheckoutDelivery{
checkout?: EntityDTOContainerOfCheckoutDTO;
destination?: EntityDTOContainerOfDestinationDTO;
discount?: PriceValueDTO;
displayItems?: Array<DisplayItemDTO>;
items?: Array<EntityDTOContainerOfCheckoutItemDTO>;
preferredShippingDate?: string;
termsOfDelivery?: TermsOfDeliveryDTO;
items?: Array<EntityDTOContainerOfCheckoutItemDTO>;
displayItems?: Array<DisplayItemDTO>;
total?: PriceValueDTO;
totalWithoutDiscount?: PriceValueDTO;
discount?: PriceValueDTO;
}

View File

@@ -1,30 +1,30 @@
/* tslint:disable */
import { ReadOnlyEntityDTOOfCheckoutDTOAndICheckout } from './read-only-entity-dtoof-checkout-dtoand-icheckout';
import { EntityDTOContainerOfBranchDTO } from './entity-dtocontainer-of-branch-dto';
import { UserAccountDTO } from './user-account-dto';
import { KeyValueDTOOfStringAndString } from './key-value-dtoof-string-and-string';
import { SelectionDTOOfShippingTarget } from './selection-dtoof-shipping-target';
import { BuyerDTO } from './buyer-dto';
import { PayerDTO } from './payer-dto';
import { EntityDTOContainerOfDestinationDTO } from './entity-dtocontainer-of-destination-dto';
import { EntityDTOContainerOfCheckoutDeliveryDTO } from './entity-dtocontainer-of-checkout-delivery-dto';
import { EntityDTOContainerOfDestinationDTO } from './entity-dtocontainer-of-destination-dto';
import { EntityDTOContainerOfCheckoutItemDTO } from './entity-dtocontainer-of-checkout-item-dto';
import { NotificationChannel } from './notification-channel';
import { SelectionDTOOfShippingTarget } from './selection-dtoof-shipping-target';
import { EntityDTOContainerOfBranchDTO } from './entity-dtocontainer-of-branch-dto';
import { PayerDTO } from './payer-dto';
import { PaymentDTO } from './payment-dto';
import { KeyValueDTOOfStringAndString } from './key-value-dtoof-string-and-string';
export interface CheckoutDTO extends ReadOnlyEntityDTOOfCheckoutDTOAndICheckout {
label?: string;
orderBranch?: EntityDTOContainerOfBranchDTO;
userAccount?: UserAccountDTO;
buyer?: BuyerDTO;
payer?: PayerDTO;
destinations?: Array<EntityDTOContainerOfDestinationDTO>;
deliveries?: Array<EntityDTOContainerOfCheckoutDeliveryDTO>;
items?: Array<EntityDTOContainerOfCheckoutItemDTO>;
notificationChannels: NotificationChannel;
availableShippingTargets?: Array<SelectionDTOOfShippingTarget>;
payment?: PaymentDTO;
shoppingCartUrl?: string;
checkoutUrl?: string;
shippingCostsUrl?: string;
import { UserAccountDTO } from './user-account-dto';
export interface CheckoutDTO extends ReadOnlyEntityDTOOfCheckoutDTOAndICheckout{
agreements?: Array<KeyValueDTOOfStringAndString>;
availableShippingTargets?: Array<SelectionDTOOfShippingTarget>;
buyer?: BuyerDTO;
checkoutUrl?: string;
deliveries?: Array<EntityDTOContainerOfCheckoutDeliveryDTO>;
destinations?: Array<EntityDTOContainerOfDestinationDTO>;
items?: Array<EntityDTOContainerOfCheckoutItemDTO>;
label?: string;
notificationChannels: NotificationChannel;
orderBranch?: EntityDTOContainerOfBranchDTO;
payer?: PayerDTO;
payment?: PaymentDTO;
shippingCostsUrl?: string;
shoppingCartUrl?: string;
userAccount?: UserAccountDTO;
}

View File

@@ -1,16 +1,16 @@
/* tslint:disable */
import { ReadOnlyEntityDTOOfCheckoutItemDTOAndICheckoutItem } from './read-only-entity-dtoof-checkout-item-dtoand-icheckout-item';
import { EntityDTOContainerOfCheckoutDTO } from './entity-dtocontainer-of-checkout-dto';
import { EntityDTOContainerOfShoppingCartItemDTO } from './entity-dtocontainer-of-shopping-cart-item-dto';
import { EntityDTOContainerOfCheckoutDTO } from './entity-dtocontainer-of-checkout-dto';
import { EntityDTOContainerOfCheckoutDeliveryDTO } from './entity-dtocontainer-of-checkout-delivery-dto';
import { PriceValueDTO } from './price-value-dto';
export interface CheckoutItemDTO extends ReadOnlyEntityDTOOfCheckoutItemDTOAndICheckoutItem {
checkout?: EntityDTOContainerOfCheckoutDTO;
shoppingCartItem?: EntityDTOContainerOfShoppingCartItemDTO;
delivery?: EntityDTOContainerOfCheckoutDeliveryDTO;
quantity?: number;
preferredShippingDate?: string;
export interface CheckoutItemDTO extends ReadOnlyEntityDTOOfCheckoutItemDTOAndICheckoutItem{
accessories?: Array<EntityDTOContainerOfShoppingCartItemDTO>;
total?: PriceValueDTO;
checkout?: EntityDTOContainerOfCheckoutDTO;
delivery?: EntityDTOContainerOfCheckoutDeliveryDTO;
orderedAtSupplier?: string;
preferredShippingDate?: string;
quantity?: number;
shoppingCartItem?: EntityDTOContainerOfShoppingCartItemDTO;
total?: PriceValueDTO;
}

View File

@@ -1,7 +1,7 @@
/* tslint:disable */
export interface CommunicationDetailsDTO {
phone?: string;
mobile?: string;
fax?: string;
email?: string;
fax?: string;
mobile?: string;
phone?: string;
}

View File

@@ -1,17 +1,17 @@
/* tslint:disable */
import { EntityDTOOfCompanyDTOAndICompany } from './entity-dtoof-company-dtoand-icompany';
import { EntityDTOContainerOfCompanyDTO } from './entity-dtocontainer-of-company-dto';
import { AddressDTO } from './address-dto';
export interface CompanyDTO extends EntityDTOOfCompanyDTOAndICompany {
parent?: EntityDTOContainerOfCompanyDTO;
import { EntityDTOContainerOfCompanyDTO } from './entity-dtocontainer-of-company-dto';
export interface CompanyDTO extends EntityDTOOfCompanyDTOAndICompany{
address?: AddressDTO;
costUnit?: string;
department?: string;
gln?: string;
legalForm?: string;
locale?: string;
name?: string;
nameSuffix?: string;
legalForm?: string;
department?: string;
costUnit?: string;
vatId?: string;
address?: AddressDTO;
gln?: string;
parent?: EntityDTOContainerOfCompanyDTO;
sector?: string;
vatId?: string;
}

View File

@@ -1,18 +1,18 @@
/* tslint:disable */
import { EntityDTOContainerOfItemDTO } from './entity-dtocontainer-of-item-dto';
import { EntityDTOContainerOfCategoryDTO } from './entity-dtocontainer-of-category-dto';
import { QuantityUnitType } from './quantity-unit-type';
import { ComponentItemDisplayType } from './component-item-display-type';
import { EntityDTOContainerOfItemDTO } from './entity-dtocontainer-of-item-dto';
import { QuantityUnitType } from './quantity-unit-type';
export interface ComponentItemDTO {
name?: string;
description?: string;
item?: EntityDTOContainerOfItemDTO;
category?: EntityDTOContainerOfCategoryDTO;
required?: boolean;
description?: string;
displayType: ComponentItemDisplayType;
item?: EntityDTOContainerOfItemDTO;
name?: string;
quantityMax?: number;
quantityUnitType: QuantityUnitType;
unit?: string;
displayType: ComponentItemDisplayType;
required?: boolean;
start?: string;
stop?: string;
unit?: string;
}

View File

@@ -1,14 +1,14 @@
/* tslint:disable */
import { EntityDTOOfComponentsDTOAndIComponents } from './entity-dtoof-components-dtoand-icomponents';
import { ComponentItemDTO } from './component-item-dto';
import { SetType } from './set-type';
import { QuantityUnitType } from './quantity-unit-type';
export interface ComponentsDTO extends EntityDTOOfComponentsDTOAndIComponents {
import { SetType } from './set-type';
export interface ComponentsDTO extends EntityDTOOfComponentsDTOAndIComponents{
items?: Array<ComponentItemDTO>;
type: SetType;
overallQuantityMin?: number;
overallQuantityMax?: number;
overallQuantityMin?: number;
quantityUnitType: QuantityUnitType;
unit?: string;
referenceQuantity?: number;
type: SetType;
unit?: string;
}

View File

@@ -1,11 +1,11 @@
/* tslint:disable */
import { EntityDTOOfContributorDTOAndIContributor } from './entity-dtoof-contributor-dtoand-icontributor';
import { PersonNamesDTO } from './person-names-dto';
import { OrganisationNamesDTO } from './organisation-names-dto';
import { PersonNamesDTO } from './person-names-dto';
import { EntityDTOContainerOfTenantDTO } from './entity-dtocontainer-of-tenant-dto';
export interface ContributorDTO extends EntityDTOOfContributorDTOAndIContributor {
person?: PersonNamesDTO;
organisation?: OrganisationNamesDTO;
export interface ContributorDTO extends EntityDTOOfContributorDTOAndIContributor{
friendlyName?: string;
organisation?: OrganisationNamesDTO;
person?: PersonNamesDTO;
tenant?: EntityDTOContainerOfTenantDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOContainerOfContributorDTO } from './entity-dtocontainer-of-contributor-dto';
export interface ContributorHelperDTO {
type?: string;
contributor?: EntityDTOContainerOfContributorDTO;
type?: string;
}

View File

@@ -1,8 +1,8 @@
/* tslint:disable */
import { ReadOnlyEntityDTOOfCountryDTOAndIReadOnlyCountry } from './read-only-entity-dtoof-country-dtoand-iread-only-country';
export interface CountryDTO extends ReadOnlyEntityDTOOfCountryDTOAndIReadOnlyCountry {
name?: string;
isO3166_A_3?: string;
export interface CountryDTO extends ReadOnlyEntityDTOOfCountryDTOAndIReadOnlyCountry{
isDefault?: string;
isO3166_A_3?: string;
name?: string;
sort?: number;
}

View File

@@ -1,8 +1,8 @@
/* tslint:disable */
import { EntityDTOContainerOfCountryDTO } from './entity-dtocontainer-of-country-dto';
export interface CountryTargetDTO {
target?: EntityDTOContainerOfCountryDTO;
isDefault?: string;
start?: string;
stop?: string;
isDefault?: string;
target?: EntityDTOContainerOfCountryDTO;
}

View File

@@ -2,12 +2,12 @@
import { ReadOnlyEntityDTOOfCouponDTOAndICoupon } from './read-only-entity-dtoof-coupon-dtoand-icoupon';
import { CouponType } from './coupon-type';
import { PriceValueDTO } from './price-value-dto';
export interface CouponDTO extends ReadOnlyEntityDTOOfCouponDTOAndICoupon {
couponType: CouponType;
label?: string;
export interface CouponDTO extends ReadOnlyEntityDTOOfCouponDTOAndICoupon{
code?: string;
exclusive?: boolean;
couponType: CouponType;
discount?: number;
exclusive?: boolean;
label?: string;
maxDiscounted?: PriceValueDTO;
value?: PriceValueDTO;
}

View File

@@ -1,8 +1,8 @@
/* tslint:disable */
import { EntityDTOOfCurrencyDTOAndICurrency } from './entity-dtoof-currency-dtoand-icurrency';
export interface CurrencyDTO extends EntityDTOOfCurrencyDTOAndICurrency {
export interface CurrencyDTO extends EntityDTOOfCurrencyDTOAndICurrency{
isO4217?: string;
number?: number;
name?: string;
number?: number;
symbol?: string;
}

View File

@@ -1,14 +1,14 @@
/* tslint:disable */
import { EntityDTOOfDestinationDTOAndIDestination } from './entity-dtoof-destination-dtoand-idestination';
import { EntityDTOContainerOfCheckoutDTO } from './entity-dtocontainer-of-checkout-dto';
import { ShippingTarget } from './shipping-target';
import { EntityDTOContainerOfBranchDTO } from './entity-dtocontainer-of-branch-dto';
import { EntityDTOContainerOfLogisticianDTO } from './entity-dtocontainer-of-logistician-dto';
import { ShippingAddressDTO } from './shipping-address-dto';
export interface DestinationDTO extends EntityDTOOfDestinationDTOAndIDestination {
import { ShippingTarget } from './shipping-target';
import { EntityDTOContainerOfBranchDTO } from './entity-dtocontainer-of-branch-dto';
export interface DestinationDTO extends EntityDTOOfDestinationDTOAndIDestination{
checkout?: EntityDTOContainerOfCheckoutDTO;
target?: ShippingTarget;
targetBranch?: EntityDTOContainerOfBranchDTO;
logistician?: EntityDTOContainerOfLogisticianDTO;
shippingAddress?: ShippingAddressDTO;
target?: ShippingTarget;
targetBranch?: EntityDTOContainerOfBranchDTO;
}

View File

@@ -1,18 +1,18 @@
/* tslint:disable */
import { Gender } from './gender';
import { OrganisationDTO } from './organisation-dto';
import { AddressDTO } from './address-dto';
import { CommunicationDetailsDTO } from './communication-details-dto';
import { ExternalReferenceDTO } from './external-reference-dto';
import { Gender } from './gender';
import { OrganisationDTO } from './organisation-dto';
export interface DisplayAddresseeDTO {
number?: string;
locale?: string;
gender: Gender;
title?: string;
firstName?: string;
lastName?: string;
organisation?: OrganisationDTO;
address?: AddressDTO;
communicationDetails?: CommunicationDetailsDTO;
externalReference?: ExternalReferenceDTO;
firstName?: string;
gender: Gender;
lastName?: string;
locale?: string;
number?: string;
organisation?: OrganisationDTO;
title?: string;
}

View File

@@ -2,11 +2,11 @@
import { ReadOnlyEntityDTOOfDisplayBranchDTOAndIReadOnlyBranch } from './read-only-entity-dtoof-display-branch-dtoand-iread-only-branch';
import { AddressDTO } from './address-dto';
import { CommunicationDetailsDTO } from './communication-details-dto';
export interface DisplayBranchDTO extends ReadOnlyEntityDTOOfDisplayBranchDTOAndIReadOnlyBranch {
name?: string;
key?: string;
branchNumber?: string;
export interface DisplayBranchDTO extends ReadOnlyEntityDTOOfDisplayBranchDTOAndIReadOnlyBranch{
address?: AddressDTO;
branchNumber?: string;
communicationDetails?: CommunicationDetailsDTO;
key?: string;
name?: string;
web?: string;
}

View File

@@ -1,15 +1,15 @@
/* tslint:disable */
import { ShopItemDTO } from './shop-item-dto';
import { PriceDTO } from './price-dto';
import { PromotionDTO } from './promotion-dto';
import { ShopItemDTO } from './shop-item-dto';
export interface DisplayItemDTO {
accessories?: Array<DisplayItemDTO>;
components?: Array<DisplayItemDTO>;
customProductName?: string;
price?: PriceDTO;
promotion?: PromotionDTO;
quantity?: number;
shopItem?: ShopItemDTO;
specialComment?: string;
customProductName?: string;
quantity?: number;
price?: PriceDTO;
components?: Array<DisplayItemDTO>;
accessories?: Array<DisplayItemDTO>;
total?: PriceDTO;
promotion?: PromotionDTO;
}

View File

@@ -1,7 +1,7 @@
/* tslint:disable */
import { ReadOnlyEntityDTOOfDisplayLogisticianDTOAndILogistician } from './read-only-entity-dtoof-display-logistician-dtoand-ilogistician';
export interface DisplayLogisticianDTO extends ReadOnlyEntityDTOOfDisplayLogisticianDTOAndILogistician {
name?: string;
logisticianNumber?: string;
export interface DisplayLogisticianDTO extends ReadOnlyEntityDTOOfDisplayLogisticianDTOAndILogistician{
gln?: string;
logisticianNumber?: string;
name?: string;
}

View File

@@ -1,39 +1,39 @@
/* tslint:disable */
import { ReadOnlyEntityDTOOfDisplayOrderDTOAndIOrder } from './read-only-entity-dtoof-display-order-dtoand-iorder';
import { OrderType } from './order-type';
import { EnvironmentChannel } from './environment-channel';
import { DisplayBranchDTO } from './display-branch-dto';
import { DisplayOrderItemDTO } from './display-order-item-dto';
import { DisplayAddresseeDTO } from './display-addressee-dto';
import { BuyerType } from './buyer-type';
import { EnvironmentChannel } from './environment-channel';
import { DisplayOrderItemDTO } from './display-order-item-dto';
import { DisplayLogisticianDTO } from './display-logistician-dto';
import { NotificationChannel } from './notification-channel';
import { DisplayBranchDTO } from './display-branch-dto';
import { OrderType } from './order-type';
import { DisplayOrderPaymentDTO } from './display-order-payment-dto';
import { TermsOfDeliveryDTO2 } from './terms-of-delivery-dto2';
import { NotificationChannel } from './notification-channel';
export interface DisplayOrderDTO extends ReadOnlyEntityDTOOfDisplayOrderDTOAndIOrder {
orderType: OrderType;
clientChannel?: EnvironmentChannel;
orderNumber?: string;
orderDate?: string;
orderBranch?: DisplayBranchDTO;
completedDate?: string;
items?: Array<DisplayOrderItemDTO>;
buyerNumber?: string;
buyerIsGuestAccount?: boolean;
export interface DisplayOrderDTO extends ReadOnlyEntityDTOOfDisplayOrderDTOAndIOrder{
buyer?: DisplayAddresseeDTO;
buyerComment?: string;
buyerIsGuestAccount?: boolean;
buyerNumber?: string;
buyerType?: BuyerType;
shippingAddress?: DisplayAddresseeDTO;
targetBranch?: DisplayBranchDTO;
clientChannel?: EnvironmentChannel;
completedDate?: string;
features?: {[key: string]: string};
items?: Array<DisplayOrderItemDTO>;
itemsCount?: number;
logistician?: DisplayLogisticianDTO;
payerNumber?: string;
payerIsGuestAccount?: boolean;
payer?: DisplayAddresseeDTO;
payment?: DisplayOrderPaymentDTO;
termsOfDelivery?: TermsOfDeliveryDTO2;
notificationChannels?: NotificationChannel;
orderBranch?: DisplayBranchDTO;
orderDate?: string;
orderNumber?: string;
orderType: OrderType;
orderValue?: number;
orderValueCurrency?: string;
itemsCount?: number;
features?: {[key: string]: string};
payer?: DisplayAddresseeDTO;
payerIsGuestAccount?: boolean;
payerNumber?: string;
payment?: DisplayOrderPaymentDTO;
shippingAddress?: DisplayAddresseeDTO;
targetBranch?: DisplayBranchDTO;
termsOfDelivery?: TermsOfDeliveryDTO2;
}

View File

@@ -1,23 +1,23 @@
/* tslint:disable */
import { ReadOnlyEntityDTOOfDisplayOrderItemDTOAndIOrderItem } from './read-only-entity-dtoof-display-order-item-dtoand-iorder-item';
import { DisplayOrderDTO } from './display-order-dto';
import { ProductDTO } from './product-dto';
import { DisplayOrderItemSubsetDTO } from './display-order-item-subset-dto';
import { QuantityUnitType } from './quantity-unit-type';
import { PriceDTO } from './price-dto';
import { ProductDTO } from './product-dto';
import { PromotionDTO } from './promotion-dto';
export interface DisplayOrderItemDTO extends ReadOnlyEntityDTOOfDisplayOrderItemDTOAndIOrderItem {
order?: DisplayOrderDTO;
product?: ProductDTO;
orderItemNumber?: string;
orderDate?: string;
subsetItems?: Array<DisplayOrderItemSubsetDTO>;
import { QuantityUnitType } from './quantity-unit-type';
import { DisplayOrderItemSubsetDTO } from './display-order-item-subset-dto';
export interface DisplayOrderItemDTO extends ReadOnlyEntityDTOOfDisplayOrderItemDTOAndIOrderItem{
buyerComment?: string;
quantity?: number;
quantityUnitType: QuantityUnitType;
quantityUnit?: string;
price?: PriceDTO;
description?: string;
promotion?: PromotionDTO;
features?: {[key: string]: string};
order?: DisplayOrderDTO;
orderDate?: string;
orderItemNumber?: string;
price?: PriceDTO;
product?: ProductDTO;
promotion?: PromotionDTO;
quantity?: number;
quantityUnit?: string;
quantityUnitType: QuantityUnitType;
subsetItems?: Array<DisplayOrderItemSubsetDTO>;
}

View File

@@ -2,22 +2,22 @@
import { ReadOnlyEntityDTOOfDisplayOrderItemSubsetDTOAndIOrderItemStatus } from './read-only-entity-dtoof-display-order-item-subset-dtoand-iorder-item-status';
import { DisplayOrderItemDTO } from './display-order-item-dto';
import { OrderItemProcessingStatusValue } from './order-item-processing-status-value';
export interface DisplayOrderItemSubsetDTO extends ReadOnlyEntityDTOOfDisplayOrderItemSubsetDTOAndIOrderItemStatus {
orderItem?: DisplayOrderItemDTO;
orderItemSubsetNumber?: string;
description?: string;
quantity?: number;
estimatedShippingDate?: string;
ssc?: string;
sscText?: string;
supplierName?: string;
supplierLabel?: string;
processingStatus: OrderItemProcessingStatusValue;
processingStatusDate?: string;
trackingNumber?: string;
specialComment?: string;
export interface DisplayOrderItemSubsetDTO extends ReadOnlyEntityDTOOfDisplayOrderItemSubsetDTOAndIOrderItemStatus{
compartmentCode?: string;
compartmentInfo?: string;
compartmentStart?: string;
compartmentStop?: string;
description?: string;
estimatedShippingDate?: string;
orderItem?: DisplayOrderItemDTO;
orderItemSubsetNumber?: string;
processingStatus: OrderItemProcessingStatusValue;
processingStatusDate?: string;
quantity?: number;
specialComment?: string;
ssc?: string;
sscText?: string;
supplierLabel?: string;
supplierName?: string;
trackingNumber?: string;
}

View File

@@ -1,17 +1,17 @@
/* tslint:disable */
import { ReadOnlyEntityDTOOfDisplayOrderPaymentDTOAndIReadOnlyPayment } from './read-only-entity-dtoof-display-order-payment-dtoand-iread-only-payment';
import { PaymentType } from './payment-type';
export interface DisplayOrderPaymentDTO extends ReadOnlyEntityDTOOfDisplayOrderPaymentDTOAndIReadOnlyPayment {
paymentActionRequired: boolean;
paymentType: PaymentType;
paymentNumber?: string;
paymentComment?: string;
total: number;
subtotal?: number;
shipping?: number;
tax?: number;
currency?: string;
dateOfPayment?: string;
export interface DisplayOrderPaymentDTO extends ReadOnlyEntityDTOOfDisplayOrderPaymentDTOAndIReadOnlyPayment{
cancelled?: string;
completed?: string;
currency?: string;
dateOfPayment?: string;
paymentActionRequired: boolean;
paymentComment?: string;
paymentNumber?: string;
paymentType: PaymentType;
shipping?: number;
subtotal?: number;
tax?: number;
total: number;
}

View File

@@ -1,10 +1,10 @@
/* tslint:disable */
import { EntityStatus } from './entity-status';
export interface EntityDTO {
id?: number;
created?: string;
changed?: string;
version?: number;
status?: EntityStatus;
created?: string;
id?: number;
pId?: string;
status?: EntityStatus;
version?: number;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { BranchDTO } from './branch-dto';
export interface EntityDTOContainerOfBranchDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfBranchDTO extends EntityDTOReferenceContainer{
data?: BranchDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { CategoryDTO } from './category-dto';
export interface EntityDTOContainerOfCategoryDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfCategoryDTO extends EntityDTOReferenceContainer{
data?: CategoryDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { CheckoutDeliveryDTO } from './checkout-delivery-dto';
export interface EntityDTOContainerOfCheckoutDeliveryDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfCheckoutDeliveryDTO extends EntityDTOReferenceContainer{
data?: CheckoutDeliveryDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { CheckoutDTO } from './checkout-dto';
export interface EntityDTOContainerOfCheckoutDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfCheckoutDTO extends EntityDTOReferenceContainer{
data?: CheckoutDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { CheckoutItemDTO } from './checkout-item-dto';
export interface EntityDTOContainerOfCheckoutItemDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfCheckoutItemDTO extends EntityDTOReferenceContainer{
data?: CheckoutItemDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { CompanyDTO } from './company-dto';
export interface EntityDTOContainerOfCompanyDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfCompanyDTO extends EntityDTOReferenceContainer{
data?: CompanyDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { ComponentsDTO } from './components-dto';
export interface EntityDTOContainerOfComponentsDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfComponentsDTO extends EntityDTOReferenceContainer{
data?: ComponentsDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { ContributorDTO } from './contributor-dto';
export interface EntityDTOContainerOfContributorDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfContributorDTO extends EntityDTOReferenceContainer{
data?: ContributorDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { CountryDTO } from './country-dto';
export interface EntityDTOContainerOfCountryDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfCountryDTO extends EntityDTOReferenceContainer{
data?: CountryDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { CouponDTO } from './coupon-dto';
export interface EntityDTOContainerOfCouponDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfCouponDTO extends EntityDTOReferenceContainer{
data?: CouponDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { CurrencyDTO } from './currency-dto';
export interface EntityDTOContainerOfCurrencyDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfCurrencyDTO extends EntityDTOReferenceContainer{
data?: CurrencyDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { DestinationDTO } from './destination-dto';
export interface EntityDTOContainerOfDestinationDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfDestinationDTO extends EntityDTOReferenceContainer{
data?: DestinationDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { FileDTO } from './file-dto';
export interface EntityDTOContainerOfFileDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfFileDTO extends EntityDTOReferenceContainer{
data?: FileDTO;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { ItemDTO2 } from './item-dto2';
export interface EntityDTOContainerOfItemDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfItemDTO extends EntityDTOReferenceContainer{
data?: ItemDTO2;
}

View File

@@ -1,6 +1,6 @@
/* tslint:disable */
import { EntityDTOReferenceContainer } from './entity-dtoreference-container';
import { LabelDTO } from './label-dto';
export interface EntityDTOContainerOfLabelDTO extends EntityDTOReferenceContainer {
export interface EntityDTOContainerOfLabelDTO extends EntityDTOReferenceContainer{
data?: LabelDTO;
}

Some files were not shown because too many files have changed in this diff Show More