Skip to content
Snippets Groups Projects
Commit a2c3d7ff authored by Florent Poittevin's avatar Florent Poittevin
Browse files

Rename 3 tiers actions

parent 8c800ded
No related branches found
No related tags found
No related merge requests found
......@@ -2,51 +2,51 @@ import {Relation3TiersNameSpace} from "@app/core/stores/relation-3-tiers/relatio
import {Relation3TiersAction} from "@app/core/stores/relation-3-tiers/relation-3-tiers.action";
export class Relation3TiersActionHelper {
static getAllSubResource(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.GetAllSubResource>): Relation3TiersAction.GetAllSubResource {
return new relation3TiersNameSpace.GetAllSubResource(...args);
static getAllSubResource(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.GetAll>): Relation3TiersAction.GetAll {
return new relation3TiersNameSpace.GetAll(...args);
}
static getAllSubResourceSuccess<T>(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.GetAllSubResourceSuccess>): Relation3TiersAction.GetAllSubResourceSuccess<T> {
return new relation3TiersNameSpace.GetAllSubResourceSuccess(...args);
static getAllSubResourceSuccess<T>(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.GetAllSuccess>): Relation3TiersAction.GetAllSuccess<T> {
return new relation3TiersNameSpace.GetAllSuccess(...args);
}
static getAllSubResourceFail(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.GetAllSubResourceFail>): Relation3TiersAction.GetAllSubResourceFail {
return new relation3TiersNameSpace.GetAllSubResourceFail(...args);
static getAllSubResourceFail(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.GetAllFail>): Relation3TiersAction.GetAllFail {
return new relation3TiersNameSpace.GetAllFail(...args);
}
static createSubResource(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.CreateSubResource>): Relation3TiersAction.CreateSubResource {
return new relation3TiersNameSpace.CreateSubResource(...args);
static createSubResource(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.Create>): Relation3TiersAction.Create {
return new relation3TiersNameSpace.Create(...args);
}
static createSubResourceSuccess(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.CreateSubResourceSuccess>): Relation3TiersAction.CreateSubResourceSuccess {
return new relation3TiersNameSpace.CreateSubResourceSuccess(...args);
static createSubResourceSuccess(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.CreateSuccess>): Relation3TiersAction.CreateSuccess {
return new relation3TiersNameSpace.CreateSuccess(...args);
}
static createSubResourceFail(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.CreateSubResourceFail>): Relation3TiersAction.CreateSubResourceFail {
return new relation3TiersNameSpace.CreateSubResourceFail(...args);
static createSubResourceFail(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.CreateFail>): Relation3TiersAction.CreateFail {
return new relation3TiersNameSpace.CreateFail(...args);
}
static deleteSubResource(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.DeleteSubResource>): Relation3TiersAction.DeleteSubResource {
return new relation3TiersNameSpace.DeleteSubResource(...args);
static deleteSubResource(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.Delete>): Relation3TiersAction.Delete {
return new relation3TiersNameSpace.Delete(...args);
}
static deleteSubResourceSuccess(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.DeleteSubResourceSuccess>): Relation3TiersAction.DeleteSubResourceSuccess {
return new relation3TiersNameSpace.DeleteSubResourceSuccess(...args);
static deleteSubResourceSuccess(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.DeleteSuccess>): Relation3TiersAction.DeleteSuccess {
return new relation3TiersNameSpace.DeleteSuccess(...args);
}
static deleteSubResourceFail(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.DeleteSubResourceFail>): Relation3TiersAction.DeleteSubResourceFail {
return new relation3TiersNameSpace.DeleteSubResourceFail(...args);
static deleteSubResourceFail(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.DeleteFail>): Relation3TiersAction.DeleteFail {
return new relation3TiersNameSpace.DeleteFail(...args);
}
static updateSubResource(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.UpdateSubResource>): Relation3TiersAction.UpdateSubResource {
return new relation3TiersNameSpace.UpdateSubResource(...args);
static updateSubResource(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.Update>): Relation3TiersAction.Update {
return new relation3TiersNameSpace.Update(...args);
}
static updateSubResourceSuccess(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.UpdateSubResourceSuccess>): Relation3TiersAction.UpdateSubResourceSuccess {
return new relation3TiersNameSpace.UpdateSubResourceSuccess(...args);
static updateSubResourceSuccess(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.UpdateSuccess>): Relation3TiersAction.UpdateSuccess {
return new relation3TiersNameSpace.UpdateSuccess(...args);
}
static updateSubResourceFail(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.UpdateSubResourceFail>): Relation3TiersAction.UpdateSubResourceFail {
return new relation3TiersNameSpace.UpdateSubResourceFail(...args);
static updateSubResourceFail(relation3TiersNameSpace: Relation3TiersNameSpace, ...args: ConstructorParameters<typeof Relation3TiersAction.UpdateFail>): Relation3TiersAction.UpdateFail {
return new relation3TiersNameSpace.UpdateFail(...args);
}
}
import {StoreActionClass} from "@app/core/models/stores/state-action.model";
import {BaseStoreNameSpace} from "@app/core/models/stores/base-store-namespace.model";
import {StoreActionClass} from "@app/core/models/stores/state-action.model";
export interface Relation3TiersNameSpace extends BaseStoreNameSpace {
GetAllSubResource: StoreActionClass;
GetAllSubResourceSuccess: StoreActionClass;
GetAllSubResourceFail: StoreActionClass;
CreateSubResource: StoreActionClass;
CreateSubResourceSuccess: StoreActionClass;
CreateSubResourceFail: StoreActionClass;
DeleteSubResource: StoreActionClass;
DeleteSubResourceSuccess: StoreActionClass;
DeleteSubResourceFail: StoreActionClass;
UpdateSubResource: StoreActionClass;
UpdateSubResourceSuccess: StoreActionClass;
UpdateSubResourceFail: StoreActionClass;
GetAll: StoreActionClass;
GetAllSuccess: StoreActionClass;
GetAllFail: StoreActionClass;
Create: StoreActionClass;
CreateSuccess: StoreActionClass;
CreateFail: StoreActionClass;
Delete: StoreActionClass;
DeleteSuccess: StoreActionClass;
DeleteFail: StoreActionClass;
Update: StoreActionClass;
UpdateSuccess: StoreActionClass;
UpdateFail: StoreActionClass;
}
......@@ -3,76 +3,69 @@ import {CollectionTypedModel} from "@app/shared/models/collection-typed.model";
import {QueryParametersModel} from "@app/shared/models/query-parameters.model";
export namespace Relation3TiersAction {
export class GetAllSubResource {
export class GetAll {
static readonly type: string = "[{0}] Get All SubResource";
constructor(public parentId: string, public queryParameters?: QueryParametersModel) {
}
}
export class GetAllSubResourceSuccess<T> {
export class GetAllSuccess<T> {
static readonly type: string = "[{0}] Get All SubResource Success";
constructor(public list: CollectionTypedModel<T>) {
}
}
export class GetAllSubResourceFail {
export class GetAllFail {
static readonly type: string = "[{0}] Get All SubResource Fail";
}
export class CreateCompoSubResource<T> {
static readonly type: string = "[{0}] Create Compo SubResource";
constructor(public parentId: string, public model: T) {
}
}
export class CreateSubResource {
export class Create {
static readonly type: string = "[{0}] Create SubResource";
constructor(public parentId: string, public listResId: string[]) {
}
}
export class CreateSubResourceSuccess {
export class CreateSuccess {
static readonly type: string = "[{0}] Create SubResource Success";
}
export class CreateSubResourceFail {
export class CreateFail {
static readonly type: string = "[{0}] Create SubResource Fail";
}
export class DeleteSubResource {
export class Delete {
static readonly type: string = "[{0}] Delete SubResource";
constructor(public parentId: string, public listResId: string[]) {
}
}
export class DeleteSubResourceSuccess {
export class DeleteSuccess {
static readonly type: string = "[{0}] Delete SubResource Success";
}
export class DeleteSubResourceFail {
export class DeleteFail {
static readonly type: string = "[{0}] Delete SubResource Fail";
}
export class UpdateSubResource {
export class Update {
static readonly type: string = "[{0}] Update SubResource";
constructor(public parentId: string, public oldResId: string[], public newResId: string[]) {
}
}
export class UpdateSubResourceSuccess {
export class UpdateSuccess {
static readonly type: string = "[{0}] Update SubResource Success";
constructor(public parentId: string) {
}
}
export class UpdateSubResourceFail {
export class UpdateFail {
static readonly type: string = "[{0}] Update SubResource Fail";
constructor(public parentId: string) {
......
......@@ -58,8 +58,8 @@ export abstract class Relation3TiersState<T> {
return this.urlResource + urlSeparator + parentId + urlSeparator + this.resourceName;
}
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.GetAllSubResource)
getAll<U>(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.GetAllSubResource): Observable<CollectionTypedModel<U>> {
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.GetAll)
getAll<U>(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.GetAll): Observable<CollectionTypedModel<U>> {
const queryParameters = StoreUtil.getQueryParametersToApply(action.queryParameters, ctx);
const url = this.evaluateSubResourceUrl(action.parentId);
return this.apiService.get<U>(url, queryParameters)
......@@ -74,23 +74,23 @@ export abstract class Relation3TiersState<T> {
);
}
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.GetAllSubResourceSuccess)
getAllSuccess(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.GetAllSubResourceSuccess<T>): void {
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.GetAllSuccess)
getAllSuccess(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.GetAllSuccess<T>): void {
ctx.patchState({
selected: action.list._data,
isLoading: false,
});
}
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.GetAllSubResourceFail)
getAllFail(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.GetAllSubResourceFail): void {
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.GetAllFail)
getAllFail(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.GetAllFail): void {
ctx.patchState({
isLoading: false,
});
}
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.CreateSubResource)
create(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.CreateSubResource): Observable<string[]> {
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.Create)
create(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.Create): Observable<string[]> {
if (action.listResId.length === 0) {
return;
}
......@@ -107,8 +107,8 @@ export abstract class Relation3TiersState<T> {
);
}
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.DeleteSubResource)
delete(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.DeleteSubResource): Observable<string[]> {
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.Delete)
delete(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.Delete): Observable<string[]> {
if (action.listResId.length === 0) {
return;
}
......@@ -125,30 +125,30 @@ export abstract class Relation3TiersState<T> {
);
}
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.UpdateSubResource)
update(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.UpdateSubResource): void {
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.Update)
update(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.Update): void {
const subResourceUpdate: SubResourceUpdateModel = this.determineSubResourceChange(action.oldResId, action.newResId);
const createAndUpdateActions = this.computeUpdatesActionsToDispatch(subResourceUpdate, action.parentId);
ctx.dispatch(createAndUpdateActions);
}
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.UpdateSubResourceSuccess)
updateSuccess(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.UpdateSubResourceSuccess): void {
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.UpdateSuccess)
updateSuccess(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.UpdateSuccess): void {
ctx.patchState({
isLoading: false,
});
ctx.dispatch(Relation3TiersActionHelper.getAllSubResource(this.relation3TiersNameSpace, action.parentId));
}
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.UpdateSubResourceFail)
updateFail(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.UpdateSubResourceFail): void {
@RegisterDefaultAction((relation3TiersNameSpace: Relation3TiersNameSpace) => relation3TiersNameSpace.UpdateFail)
updateFail(ctx: StateContext<Relation3TiersStateModel<T>>, action: Relation3TiersAction.UpdateFail): void {
ctx.patchState({
isLoading: false,
});
ctx.dispatch(Relation3TiersActionHelper.getAllSubResource(this.relation3TiersNameSpace, action.parentId));
}
private computeUpdatesActionsToDispatch(subResourceUpdate: SubResourceUpdateModel, parentId: string): Relation3TiersAction.CreateSubResource[] | Relation3TiersAction.DeleteSubResource[] {
private computeUpdatesActionsToDispatch(subResourceUpdate: SubResourceUpdateModel, parentId: string): Relation3TiersAction.Create[] | Relation3TiersAction.Delete[] {
const actions = [];
const deleteAction = Relation3TiersActionHelper.deleteSubResource(this.relation3TiersNameSpace, parentId, subResourceUpdate.resourceToRemoved);
actions.push(deleteAction);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment