Ejemplo n.º 1
0
        private static WaybillInteractionStateEnumDto MapToDto(
            this WaybillInteractionState model)
        {
            switch (model)
            {
            case WaybillInteractionState.None:
                return(WaybillInteractionStateEnumDto.None);

            case WaybillInteractionState.SentToMetazon:
                return(WaybillInteractionStateEnumDto.SentToMetazon);

            case WaybillInteractionState.MetazonValidationReceived:
                return(WaybillInteractionStateEnumDto.MetazonValidationReceived);

            case WaybillInteractionState.CancellationRequestSent:
                return(WaybillInteractionStateEnumDto.CancellationRequestSent);

            case WaybillInteractionState.CancellationResponseReceived:
                return(WaybillInteractionStateEnumDto.CancellationResponseReceived);

            default:
                throw new ArgumentOutOfRangeException(
                          nameof(model),
                          model,
                          $"There are no corresponding {nameof(WaybillInteractionStateEnumDto)} " +
                          $"for {nameof(WaybillInteractionState)}.{model.ToString()}.");
            }
        }
Ejemplo n.º 2
0
 public PaperWaybill(
     WaybillId id,
     CephFileId sourceFileId,
     OrderId orderId,
     WaybillContent content,
     WaybillContentStructuralValidationResult structuralValidationResult,
     WaybillInteractionState interactionState)
     : base(
         id,
         orderId,
         content)
 {
     SourceFileId = sourceFileId;
     StructuralValidationResult = structuralValidationResult;
     InteractionState           = interactionState;
 }
Ejemplo n.º 3
0
        public void MarkAsValidatedInWms()
        {
            ThrowIfSetMemberWhileNotInState(WaybillProcessingState.SentToWms);

            InteractionState = WaybillInteractionState.MetazonValidationReceived;
        }
Ejemplo n.º 4
0
        public void MarkAsSentToWms()
        {
            ThrowIfSetMemberWhileNotInState(WaybillProcessingState.StructurallyValidated);

            InteractionState = WaybillInteractionState.SentToMetazon;
        }
Ejemplo n.º 5
0
        public void ApproveCancellation()
        {
            ThrowIfSetMemberWhileNotInState(WaybillProcessingState.CancellationSent);

            InteractionState = WaybillInteractionState.CancellationResponseReceived;
        }
Ejemplo n.º 6
0
        public void MarkAsScheduledForCancellation()
        {
            ThrowIfSetMemberWhileNotInState(WaybillProcessingState.WmsValidationReceived);

            InteractionState = WaybillInteractionState.CancellationRequestSent;
        }