// @generated by protobuf-ts 2.11.1 with parameter use_proto_field_name,keep_enum_prefix // @generated from protobuf file "movement.proto" (package "api", syntax proto3) // tslint:disable import type { BinaryWriteOptions } from "@protobuf-ts/runtime"; import type { IBinaryWriter } from "@protobuf-ts/runtime"; import { WireType } from "@protobuf-ts/runtime"; import type { BinaryReadOptions } from "@protobuf-ts/runtime"; import type { IBinaryReader } from "@protobuf-ts/runtime"; import { UnknownFieldHandler } from "@protobuf-ts/runtime"; import type { PartialMessage } from "@protobuf-ts/runtime"; import { reflectionMergePartial } from "@protobuf-ts/runtime"; import { MessageType } from "@protobuf-ts/runtime"; import { ItemPayload } from "./item"; import { EntityID } from "./shared"; import { EventHeader } from "./shared"; import { AttachmentSummary } from "./shared"; import { QuantityInLV } from "./warehousingShared"; import { MovementStatusStruct } from "./warehousingShared"; import { ClaimSummary } from "./shared"; import { StockMovement } from "./warehousingShared"; import { ActorPayload } from "./actor"; import { EnrichedGoods } from "./warehousingShared"; // // This entity represents the stock Movement for a goods. // // The Movement ID.RefID will be built as UID // // It means the Movement input events could not be exposed directly to end user, we need to keep it 'behind' other entities in order to being able to build its ID.RefID. // // // Comments updated 2024/04/04 /** * @generated from protobuf message api.MovementPayload */ export interface MovementPayload { /** * @generated from protobuf field: api.EnrichedGoods Goods = 1 */ Goods?: EnrichedGoods; /** * @generated from protobuf field: string ActorID = 2 */ ActorID: string; /** * @generated from protobuf field: api.ActorPayload Actor = 3 */ Actor?: ActorPayload; /** * @generated from protobuf field: api.StockMovement Movement = 4 */ Movement?: StockMovement; /** * @generated from protobuf field: repeated api.ClaimSummary Claims = 5 */ Claims: ClaimSummary[]; /** * @generated from protobuf field: int32 ClaimNumber = 6 */ ClaimNumber: number; /** * @generated from protobuf field: api.MovementStatusStruct Status = 7 */ Status?: MovementStatusStruct; // Status field is not accessible from APIs /** * @generated from protobuf field: api.QuantityInLV QuantityInBaseLV = 8 */ QuantityInBaseLV?: QuantityInLV; /** * @generated from protobuf field: repeated api.AttachmentSummary Attachments = 9 */ Attachments: AttachmentSummary[]; /** * @generated from protobuf field: int32 AttachmentNumber = 10 */ AttachmentNumber: number; } /** * * Movement entity Structure * * @generated from protobuf message api.Movement */ export interface Movement { /** * @generated from protobuf field: api.EventHeader LastEventHeader = 1 */ LastEventHeader?: EventHeader; /** * @generated from protobuf field: api.EntityID ID = 2 */ ID?: EntityID; /** * @generated from protobuf field: api.MovementPayload Payload = 3 */ Payload?: MovementPayload; } /** * @generated from protobuf message api.MovementEnrichment */ export interface MovementEnrichment { /** * @generated from protobuf field: string ParentEventID = 1 */ ParentEventID: string; /** * @generated from protobuf field: string EntityName = 2 */ EntityName: string; /** * @generated from protobuf field: string EntityRefID = 3 */ EntityRefID: string; /** * @generated from protobuf field: string RefFilter = 4 */ RefFilter: string; /** * @generated from protobuf field: string MergePath = 5 */ MergePath: string; /** * @generated from protobuf oneof: Content */ Content: { oneofKind: "Item"; /** * @generated from protobuf field: api.ItemPayload Item = 10 */ Item: ItemPayload; } | { oneofKind: "Actor"; /** * @generated from protobuf field: api.ActorPayload Actor = 11 */ Actor: ActorPayload; } | { oneofKind: undefined; }; /** * @generated from protobuf field: string Project = 6 */ Project: string; /** * @generated from protobuf field: string ParentEntityName = 7 */ ParentEntityName: string; /** * @generated from protobuf field: string ParentEntityID = 8 */ ParentEntityID: string; } /** * @generated from protobuf message api.MovementTriplet */ export interface MovementTriplet { /** * @generated from protobuf field: api.Movement Current = 1 */ Current?: Movement; /** * @generated from protobuf field: api.Movement Previous = 2 */ Previous?: Movement; /** * @generated from protobuf field: api.Movement LastEvent = 3 */ LastEvent?: Movement; } // @generated message type with reflection information, may provide speed optimized methods class MovementPayload$Type extends MessageType { constructor() { super("api.MovementPayload", [ { no: 1, name: "Goods", kind: "message", localName: "Goods", jsonName: "Goods", T: () => EnrichedGoods, options: { "api.transientRef": "Stock,Payload.Goods,hard" } }, { no: 2, name: "ActorID", kind: "scalar", localName: "ActorID", jsonName: "ActorID", T: 9 /*ScalarType.STRING*/, options: { "api.entityRef": "Actor", "api.dataRestrictionKey": "Movement", "api.indexationType": { Types: [{ Context: "*", Type: "generatedText,keyword" }] }, "api.kpiItems": { Items: [{ Context: "Movement", Group: "movement", Queryable: true }] }, "api.viewType": { Types: [{ Context: "*", Type: "shortKeyword" }] } } }, { no: 3, name: "Actor", kind: "message", localName: "Actor", jsonName: "Actor", T: () => ActorPayload, options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { readOnly: true }, "validate.rules": { message: { unauthorized: true } }, "api.extractRefExclude": "Movement" } }, { no: 4, name: "Movement", kind: "message", localName: "Movement", jsonName: "Movement", T: () => StockMovement }, { no: 5, name: "Claims", kind: "message", localName: "Claims", jsonName: "Claims", repeat: 2 /*RepeatType.UNPACKED*/, T: () => ClaimSummary, options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { description: "Number of claims per type" }, "api.aggKey": "ClaimTypeID", "api.aggSkip": "ClaimAdded" } }, { no: 6, name: "ClaimNumber", kind: "scalar", localName: "ClaimNumber", jsonName: "ClaimNumber", T: 5 /*ScalarType.INT32*/, options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { description: "Total number of claims" } } }, { no: 7, name: "Status", kind: "message", localName: "Status", jsonName: "Status", T: () => MovementStatusStruct, options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { readOnly: true }, "validate.rules": { message: { unauthorized: true } } } }, { no: 8, name: "QuantityInBaseLV", kind: "message", localName: "QuantityInBaseLV", jsonName: "QuantityInBaseLV", T: () => QuantityInLV, options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { readOnly: true }, "validate.rules": { message: { unauthorized: true } } } }, { no: 9, name: "Attachments", kind: "message", localName: "Attachments", jsonName: "Attachments", repeat: 2 /*RepeatType.UNPACKED*/, T: () => AttachmentSummary, options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { description: "Number of attachments per type" }, "api.aggSkip": "AttachmentAdded,AttachmentRemoved" } }, { no: 10, name: "AttachmentNumber", kind: "scalar", localName: "AttachmentNumber", jsonName: "AttachmentNumber", T: 5 /*ScalarType.INT32*/, options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { description: "Total number of attachments" } } } ]); } create(value?: PartialMessage): MovementPayload { const message = globalThis.Object.create((this.messagePrototype!)); message.ActorID = ""; message.Claims = []; message.ClaimNumber = 0; message.Attachments = []; message.AttachmentNumber = 0; if (value !== undefined) reflectionMergePartial(this, message, value); return message; } internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MovementPayload): MovementPayload { let message = target ?? this.create(), end = reader.pos + length; while (reader.pos < end) { let [fieldNo, wireType] = reader.tag(); switch (fieldNo) { case /* api.EnrichedGoods Goods */ 1: message.Goods = EnrichedGoods.internalBinaryRead(reader, reader.uint32(), options, message.Goods); break; case /* string ActorID */ 2: message.ActorID = reader.string(); break; case /* api.ActorPayload Actor */ 3: message.Actor = ActorPayload.internalBinaryRead(reader, reader.uint32(), options, message.Actor); break; case /* api.StockMovement Movement */ 4: message.Movement = StockMovement.internalBinaryRead(reader, reader.uint32(), options, message.Movement); break; case /* repeated api.ClaimSummary Claims */ 5: message.Claims.push(ClaimSummary.internalBinaryRead(reader, reader.uint32(), options)); break; case /* int32 ClaimNumber */ 6: message.ClaimNumber = reader.int32(); break; case /* api.MovementStatusStruct Status */ 7: message.Status = MovementStatusStruct.internalBinaryRead(reader, reader.uint32(), options, message.Status); break; case /* api.QuantityInLV QuantityInBaseLV */ 8: message.QuantityInBaseLV = QuantityInLV.internalBinaryRead(reader, reader.uint32(), options, message.QuantityInBaseLV); break; case /* repeated api.AttachmentSummary Attachments */ 9: message.Attachments.push(AttachmentSummary.internalBinaryRead(reader, reader.uint32(), options)); break; case /* int32 AttachmentNumber */ 10: message.AttachmentNumber = reader.int32(); break; default: let u = options.readUnknownField; if (u === "throw") throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); let d = reader.skip(wireType); if (u !== false) (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); } } return message; } internalBinaryWrite(message: MovementPayload, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { /* api.EnrichedGoods Goods = 1; */ if (message.Goods) EnrichedGoods.internalBinaryWrite(message.Goods, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); /* string ActorID = 2; */ if (message.ActorID !== "") writer.tag(2, WireType.LengthDelimited).string(message.ActorID); /* api.ActorPayload Actor = 3; */ if (message.Actor) ActorPayload.internalBinaryWrite(message.Actor, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); /* api.StockMovement Movement = 4; */ if (message.Movement) StockMovement.internalBinaryWrite(message.Movement, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); /* repeated api.ClaimSummary Claims = 5; */ for (let i = 0; i < message.Claims.length; i++) ClaimSummary.internalBinaryWrite(message.Claims[i], writer.tag(5, WireType.LengthDelimited).fork(), options).join(); /* int32 ClaimNumber = 6; */ if (message.ClaimNumber !== 0) writer.tag(6, WireType.Varint).int32(message.ClaimNumber); /* api.MovementStatusStruct Status = 7; */ if (message.Status) MovementStatusStruct.internalBinaryWrite(message.Status, writer.tag(7, WireType.LengthDelimited).fork(), options).join(); /* api.QuantityInLV QuantityInBaseLV = 8; */ if (message.QuantityInBaseLV) QuantityInLV.internalBinaryWrite(message.QuantityInBaseLV, writer.tag(8, WireType.LengthDelimited).fork(), options).join(); /* repeated api.AttachmentSummary Attachments = 9; */ for (let i = 0; i < message.Attachments.length; i++) AttachmentSummary.internalBinaryWrite(message.Attachments[i], writer.tag(9, WireType.LengthDelimited).fork(), options).join(); /* int32 AttachmentNumber = 10; */ if (message.AttachmentNumber !== 0) writer.tag(10, WireType.Varint).int32(message.AttachmentNumber); let u = options.writeUnknownFields; if (u !== false) (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); return writer; } } /** * @generated MessageType for protobuf message api.MovementPayload */ export const MovementPayload = new MovementPayload$Type(); // @generated message type with reflection information, may provide speed optimized methods class Movement$Type extends MessageType { constructor() { super("api.Movement", [ { no: 1, name: "LastEventHeader", kind: "message", localName: "LastEventHeader", jsonName: "LastEventHeader", T: () => EventHeader }, { no: 2, name: "ID", kind: "message", localName: "ID", jsonName: "ID", T: () => EntityID }, { no: 3, name: "Payload", kind: "message", localName: "Payload", jsonName: "Payload", T: () => MovementPayload } ]); } create(value?: PartialMessage): Movement { const message = globalThis.Object.create((this.messagePrototype!)); if (value !== undefined) reflectionMergePartial(this, message, value); return message; } internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Movement): Movement { let message = target ?? this.create(), end = reader.pos + length; while (reader.pos < end) { let [fieldNo, wireType] = reader.tag(); switch (fieldNo) { case /* api.EventHeader LastEventHeader */ 1: message.LastEventHeader = EventHeader.internalBinaryRead(reader, reader.uint32(), options, message.LastEventHeader); break; case /* api.EntityID ID */ 2: message.ID = EntityID.internalBinaryRead(reader, reader.uint32(), options, message.ID); break; case /* api.MovementPayload Payload */ 3: message.Payload = MovementPayload.internalBinaryRead(reader, reader.uint32(), options, message.Payload); break; default: let u = options.readUnknownField; if (u === "throw") throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); let d = reader.skip(wireType); if (u !== false) (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); } } return message; } internalBinaryWrite(message: Movement, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { /* api.EventHeader LastEventHeader = 1; */ if (message.LastEventHeader) EventHeader.internalBinaryWrite(message.LastEventHeader, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); /* api.EntityID ID = 2; */ if (message.ID) EntityID.internalBinaryWrite(message.ID, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); /* api.MovementPayload Payload = 3; */ if (message.Payload) MovementPayload.internalBinaryWrite(message.Payload, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); let u = options.writeUnknownFields; if (u !== false) (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); return writer; } } /** * @generated MessageType for protobuf message api.Movement */ export const Movement = new Movement$Type(); // @generated message type with reflection information, may provide speed optimized methods class MovementEnrichment$Type extends MessageType { constructor() { super("api.MovementEnrichment", [ { no: 1, name: "ParentEventID", kind: "scalar", localName: "ParentEventID", jsonName: "ParentEventID", T: 9 /*ScalarType.STRING*/ }, { no: 2, name: "EntityName", kind: "scalar", localName: "EntityName", jsonName: "EntityName", T: 9 /*ScalarType.STRING*/ }, { no: 3, name: "EntityRefID", kind: "scalar", localName: "EntityRefID", jsonName: "EntityRefID", T: 9 /*ScalarType.STRING*/ }, { no: 4, name: "RefFilter", kind: "scalar", localName: "RefFilter", jsonName: "RefFilter", T: 9 /*ScalarType.STRING*/ }, { no: 5, name: "MergePath", kind: "scalar", localName: "MergePath", jsonName: "MergePath", T: 9 /*ScalarType.STRING*/ }, { no: 10, name: "Item", kind: "message", localName: "Item", jsonName: "Item", oneof: "Content", T: () => ItemPayload }, { no: 11, name: "Actor", kind: "message", localName: "Actor", jsonName: "Actor", oneof: "Content", T: () => ActorPayload }, { no: 6, name: "Project", kind: "scalar", localName: "Project", jsonName: "Project", T: 9 /*ScalarType.STRING*/ }, { no: 7, name: "ParentEntityName", kind: "scalar", localName: "ParentEntityName", jsonName: "ParentEntityName", T: 9 /*ScalarType.STRING*/ }, { no: 8, name: "ParentEntityID", kind: "scalar", localName: "ParentEntityID", jsonName: "ParentEntityID", T: 9 /*ScalarType.STRING*/ } ]); } create(value?: PartialMessage): MovementEnrichment { const message = globalThis.Object.create((this.messagePrototype!)); message.ParentEventID = ""; message.EntityName = ""; message.EntityRefID = ""; message.RefFilter = ""; message.MergePath = ""; message.Content = { oneofKind: undefined }; message.Project = ""; message.ParentEntityName = ""; message.ParentEntityID = ""; if (value !== undefined) reflectionMergePartial(this, message, value); return message; } internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MovementEnrichment): MovementEnrichment { let message = target ?? this.create(), end = reader.pos + length; while (reader.pos < end) { let [fieldNo, wireType] = reader.tag(); switch (fieldNo) { case /* string ParentEventID */ 1: message.ParentEventID = reader.string(); break; case /* string EntityName */ 2: message.EntityName = reader.string(); break; case /* string EntityRefID */ 3: message.EntityRefID = reader.string(); break; case /* string RefFilter */ 4: message.RefFilter = reader.string(); break; case /* string MergePath */ 5: message.MergePath = reader.string(); break; case /* api.ItemPayload Item */ 10: message.Content = { oneofKind: "Item", Item: ItemPayload.internalBinaryRead(reader, reader.uint32(), options, (message.Content as any).Item) }; break; case /* api.ActorPayload Actor */ 11: message.Content = { oneofKind: "Actor", Actor: ActorPayload.internalBinaryRead(reader, reader.uint32(), options, (message.Content as any).Actor) }; break; case /* string Project */ 6: message.Project = reader.string(); break; case /* string ParentEntityName */ 7: message.ParentEntityName = reader.string(); break; case /* string ParentEntityID */ 8: message.ParentEntityID = reader.string(); break; default: let u = options.readUnknownField; if (u === "throw") throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); let d = reader.skip(wireType); if (u !== false) (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); } } return message; } internalBinaryWrite(message: MovementEnrichment, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { /* string ParentEventID = 1; */ if (message.ParentEventID !== "") writer.tag(1, WireType.LengthDelimited).string(message.ParentEventID); /* string EntityName = 2; */ if (message.EntityName !== "") writer.tag(2, WireType.LengthDelimited).string(message.EntityName); /* string EntityRefID = 3; */ if (message.EntityRefID !== "") writer.tag(3, WireType.LengthDelimited).string(message.EntityRefID); /* string RefFilter = 4; */ if (message.RefFilter !== "") writer.tag(4, WireType.LengthDelimited).string(message.RefFilter); /* string MergePath = 5; */ if (message.MergePath !== "") writer.tag(5, WireType.LengthDelimited).string(message.MergePath); /* string Project = 6; */ if (message.Project !== "") writer.tag(6, WireType.LengthDelimited).string(message.Project); /* string ParentEntityName = 7; */ if (message.ParentEntityName !== "") writer.tag(7, WireType.LengthDelimited).string(message.ParentEntityName); /* string ParentEntityID = 8; */ if (message.ParentEntityID !== "") writer.tag(8, WireType.LengthDelimited).string(message.ParentEntityID); /* api.ItemPayload Item = 10; */ if (message.Content.oneofKind === "Item") ItemPayload.internalBinaryWrite(message.Content.Item, writer.tag(10, WireType.LengthDelimited).fork(), options).join(); /* api.ActorPayload Actor = 11; */ if (message.Content.oneofKind === "Actor") ActorPayload.internalBinaryWrite(message.Content.Actor, writer.tag(11, WireType.LengthDelimited).fork(), options).join(); let u = options.writeUnknownFields; if (u !== false) (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); return writer; } } /** * @generated MessageType for protobuf message api.MovementEnrichment */ export const MovementEnrichment = new MovementEnrichment$Type(); // @generated message type with reflection information, may provide speed optimized methods class MovementTriplet$Type extends MessageType { constructor() { super("api.MovementTriplet", [ { no: 1, name: "Current", kind: "message", localName: "Current", jsonName: "Current", T: () => Movement }, { no: 2, name: "Previous", kind: "message", localName: "Previous", jsonName: "Previous", T: () => Movement }, { no: 3, name: "LastEvent", kind: "message", localName: "LastEvent", jsonName: "LastEvent", T: () => Movement } ]); } create(value?: PartialMessage): MovementTriplet { const message = globalThis.Object.create((this.messagePrototype!)); if (value !== undefined) reflectionMergePartial(this, message, value); return message; } internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MovementTriplet): MovementTriplet { let message = target ?? this.create(), end = reader.pos + length; while (reader.pos < end) { let [fieldNo, wireType] = reader.tag(); switch (fieldNo) { case /* api.Movement Current */ 1: message.Current = Movement.internalBinaryRead(reader, reader.uint32(), options, message.Current); break; case /* api.Movement Previous */ 2: message.Previous = Movement.internalBinaryRead(reader, reader.uint32(), options, message.Previous); break; case /* api.Movement LastEvent */ 3: message.LastEvent = Movement.internalBinaryRead(reader, reader.uint32(), options, message.LastEvent); break; default: let u = options.readUnknownField; if (u === "throw") throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); let d = reader.skip(wireType); if (u !== false) (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); } } return message; } internalBinaryWrite(message: MovementTriplet, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { /* api.Movement Current = 1; */ if (message.Current) Movement.internalBinaryWrite(message.Current, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); /* api.Movement Previous = 2; */ if (message.Previous) Movement.internalBinaryWrite(message.Previous, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); /* api.Movement LastEvent = 3; */ if (message.LastEvent) Movement.internalBinaryWrite(message.LastEvent, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); let u = options.writeUnknownFields; if (u !== false) (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); return writer; } } /** * @generated MessageType for protobuf message api.MovementTriplet */ export const MovementTriplet = new MovementTriplet$Type();