Пример #1
0
        public virtual void When(IInOutLineStateCreated e)
        {
            ThrowOnWrongEvent(e);
            this.LocatorId = e.LocatorId;

            this.ProductId = e.ProductId;

            this.AttributeSetInstanceId = e.AttributeSetInstanceId;

            this.Description = e.Description;

            this.QuantityUomId = e.QuantityUomId;

            this.MovementQuantity = (e.MovementQuantity != null && e.MovementQuantity.HasValue) ? e.MovementQuantity.Value : default(decimal);

            this.PickedQuantity = (e.PickedQuantity != null && e.PickedQuantity.HasValue) ? e.PickedQuantity.Value : default(decimal);

            this.IsInvoiced = (e.IsInvoiced != null && e.IsInvoiced.HasValue) ? e.IsInvoiced.Value : default(bool);

            this.Processed = (e.Processed != null && e.Processed.HasValue) ? e.Processed.Value : default(bool);

            this.RmaLineNumber = e.RmaLineNumber;

            this.ReversalLineNumber = e.ReversalLineNumber;

            this.Active = (e.Active != null && e.Active.HasValue) ? e.Active.Value : default(bool);

            this.Deleted = false;

            this.CreatedBy = e.CreatedBy;
            this.CreatedAt = e.CreatedAt;
        }
Пример #2
0
        public virtual InOutLineStateCreatedDto ToInOutLineStateCreatedDto(IInOutLineStateCreated e)
        {
            var dto = new InOutLineStateCreatedDto();

            dto.StateEventId           = new InOutLineStateEventIdDtoWrapper(e.StateEventId);
            dto.CreatedAt              = e.CreatedAt;
            dto.CreatedBy              = e.CreatedBy;
            dto.Version                = e.Version;
            dto.CommandId              = e.CommandId;
            dto.Description            = e.Description;
            dto.LocatorId              = e.LocatorId;
            dto.ProductId              = e.ProductId;
            dto.UomId                  = e.UomId;
            dto.MovementQuantity       = e.MovementQuantity;
            dto.ConfirmedQuantity      = e.ConfirmedQuantity;
            dto.ScrappedQuantity       = e.ScrappedQuantity;
            dto.TargetQuantity         = e.TargetQuantity;
            dto.PickedQuantity         = e.PickedQuantity;
            dto.IsInvoiced             = e.IsInvoiced;
            dto.AttributeSetInstanceId = e.AttributeSetInstanceId;
            dto.IsDescription          = e.IsDescription;
            dto.Processed              = e.Processed;
            dto.QuantityEntered        = e.QuantityEntered;
            dto.RmaLineNumber          = e.RmaLineNumber;
            dto.ReversalLineNumber     = e.ReversalLineNumber;
            dto.Active                 = e.Active;
            return(dto);
        }
Пример #3
0
        protected virtual IInOutLineStateCreated MapCreate(ICreateInOutLine c, IInOutCommand outerCommand, long version, IInOutState outerState)
        {
            c.RequesterId = outerCommand.RequesterId;
            var stateEventId         = new InOutLineStateEventId(c.InOutDocumentNumber, c.SkuId, version);
            IInOutLineStateCreated e = NewInOutLineStateCreated(stateEventId);
            var s = outerState.InOutLines.Get(c.SkuId);

            e.LineNumber             = c.LineNumber;
            e.Description            = c.Description;
            e.LocatorId              = c.LocatorId;
            e.Product                = c.Product;
            e.UomId                  = c.UomId;
            e.MovementQuantity       = c.MovementQuantity;
            e.ConfirmedQuantity      = c.ConfirmedQuantity;
            e.ScrappedQuantity       = c.ScrappedQuantity;
            e.TargetQuantity         = c.TargetQuantity;
            e.PickedQuantity         = c.PickedQuantity;
            e.IsInvoiced             = c.IsInvoiced;
            e.AttributeSetInstanceId = c.AttributeSetInstanceId;
            e.IsDescription          = c.IsDescription;
            e.Processed              = c.Processed;
            e.QuantityEntered        = c.QuantityEntered;
            e.RmaLineNumber          = c.RmaLineNumber;
            e.ReversalLineNumber     = c.ReversalLineNumber;
            e.Active                 = c.Active;

            e.CreatedBy = (string)c.RequesterId;
            e.CreatedAt = DateTime.Now;
            return(e);
        }// END Map(ICreate... ////////////////////////////
Пример #4
0
        protected virtual IInOutLineStateCreated MapCreate(ICreateInOutLine c, IInOutCommand outerCommand, long version, IInOutState outerState)
        {
            c.RequesterId = outerCommand.RequesterId;
            var stateEventId         = new InOutLineEventId(c.InOutDocumentNumber, c.LineNumber, version);
            IInOutLineStateCreated e = NewInOutLineStateCreated(stateEventId);
            var s = outerState.InOutLines.Get(c.LineNumber, true);

            e.LocatorId = c.LocatorId;
            e.ProductId = c.ProductId;
            e.AttributeSetInstanceId = c.AttributeSetInstanceId;
            e.DamageStatusIds        = c.DamageStatusIds;
            e.Description            = c.Description;
            e.QuantityUomId          = c.QuantityUomId;
            e.MovementQuantity       = c.MovementQuantity;
            e.PickedQuantity         = c.PickedQuantity;
            e.IsInvoiced             = c.IsInvoiced;
            e.Processed          = c.Processed;
            e.RmaLineNumber      = c.RmaLineNumber;
            e.ReversalLineNumber = c.ReversalLineNumber;
            e.Active             = c.Active;

            e.CreatedBy = (string)c.RequesterId;
            e.CreatedAt = ApplicationContext.Current.TimestampService.Now <DateTime>();

            foreach (ICreateInOutLineImage innerCommand in c.InOutLineImages)
            {
                ThrowOnInconsistentCommands(c, innerCommand);

                IInOutLineImageStateCreated innerEvent = MapCreate(innerCommand, c, version, s);
                e.AddInOutLineImageEvent(innerEvent);
            }

            return(e);
        }// END Map(ICreate... ////////////////////////////
Пример #5
0
        public virtual InOutLineStateCreatedDto ToInOutLineStateCreatedDto(IInOutLineStateCreated e)
        {
            var dto = new InOutLineStateCreatedDto();

            dto.InOutLineEventId       = e.InOutLineEventId;
            dto.CreatedAt              = e.CreatedAt;
            dto.CreatedBy              = e.CreatedBy;
            dto.Version                = e.Version;
            dto.CommandId              = e.CommandId;
            dto.LocatorId              = e.LocatorId;
            dto.ProductId              = e.ProductId;
            dto.AttributeSetInstanceId = e.AttributeSetInstanceId;
            dto.Description            = e.Description;
            dto.QuantityUomId          = e.QuantityUomId;
            dto.MovementQuantity       = e.MovementQuantity;
            dto.PickedQuantity         = e.PickedQuantity;
            dto.IsInvoiced             = e.IsInvoiced;
            dto.Processed              = e.Processed;
            dto.RmaLineNumber          = e.RmaLineNumber;
            dto.ReversalLineNumber     = e.ReversalLineNumber;
            dto.Active          = e.Active;
            dto.DamageStatusIds = e.DamageStatusIds.ToArray();
            var inOutLineImageEvents = new List <InOutLineImageStateCreatedDto>();

            foreach (var ee in e.InOutLineImageEvents)
            {
                InOutLineImageStateCreatedDto eeDto = InOutLineImageStateEventDtoConverter.ToInOutLineImageStateCreatedDto(ee);
                inOutLineImageEvents.Add(eeDto);
            }
            dto.InOutLineImageEvents = inOutLineImageEvents.ToArray();

            return(dto);
        }
Пример #6
0
        protected virtual IInOutStateCreated Map(ICreateInOut c)
        {
            var stateEventId     = new InOutStateEventId(c.DocumentNumber, c.Version);
            IInOutStateCreated e = NewInOutStateCreated(stateEventId);

            e.IsSOTransaction = c.IsSOTransaction;
            NewInOutDocumentActionCommandAndExecute(c, _state, e);
            e.Posted                    = c.Posted;
            e.Processing                = c.Processing;
            e.Processed                 = c.Processed;
            e.DocumentType              = c.DocumentType;
            e.Description               = c.Description;
            e.OrderNumber               = c.OrderNumber;
            e.DateOrdered               = c.DateOrdered;
            e.IsPrinted                 = c.IsPrinted;
            e.MovementType              = c.MovementType;
            e.MovementDate              = c.MovementDate;
            e.BusinessPartnerId         = c.BusinessPartnerId;
            e.WarehouseId               = c.WarehouseId;
            e.POReference               = c.POReference;
            e.FreightAmount             = c.FreightAmount;
            e.ShipperId                 = c.ShipperId;
            e.ChargeAmount              = c.ChargeAmount;
            e.DatePrinted               = c.DatePrinted;
            e.SalesRepresentative       = c.SalesRepresentative;
            e.NumberOfPackages          = c.NumberOfPackages;
            e.PickDate                  = c.PickDate;
            e.ShipDate                  = c.ShipDate;
            e.TrackingNumber            = c.TrackingNumber;
            e.DateReceived              = c.DateReceived;
            e.IsInTransit               = c.IsInTransit;
            e.IsApproved                = c.IsApproved;
            e.IsInDispute               = c.IsInDispute;
            e.Volume                    = c.Volume;
            e.Weight                    = c.Weight;
            e.RmaNumber                 = c.RmaNumber;
            e.ReversalNumber            = c.ReversalNumber;
            e.IsDropShip                = c.IsDropShip;
            e.DropShipBusinessPartnerId = c.DropShipBusinessPartnerId;
            e.Active                    = c.Active;
            ReflectUtils.CopyPropertyValue("CommandId", c, e);


            e.CreatedBy = (string)c.RequesterId;
            e.CreatedAt = DateTime.Now;
            var version = c.Version;

            foreach (ICreateInOutLine innerCommand in c.InOutLines)
            {
                ThrowOnInconsistentCommands(c, innerCommand);

                IInOutLineStateCreated innerEvent = MapCreate(innerCommand, c, version, _state);
                e.AddInOutLineEvent(innerEvent);
            }


            return(e);
        }
Пример #7
0
        protected virtual IInOutStateCreated Map(ICreateInOut c)
        {
            var stateEventId     = new InOutEventId(c.DocumentNumber, c.Version);
            IInOutStateCreated e = NewInOutStateCreated(stateEventId);

            NewInOutDocumentActionCommandAndExecute(c, _state, e);
            e.Posted                 = c.Posted;
            e.Processed              = c.Processed;
            e.Processing             = c.Processing;
            e.DocumentTypeId         = c.DocumentTypeId;
            e.Description            = c.Description;
            e.OrderId                = c.OrderId;
            e.DateOrdered            = c.DateOrdered;
            e.IsPrinted              = c.IsPrinted;
            e.MovementTypeId         = c.MovementTypeId;
            e.MovementDate           = c.MovementDate;
            e.BusinessPartnerId      = c.BusinessPartnerId;
            e.WarehouseId            = c.WarehouseId;
            e.POReference            = c.POReference;
            e.FreightAmount          = c.FreightAmount;
            e.ShipperId              = c.ShipperId;
            e.ChargeAmount           = c.ChargeAmount;
            e.DatePrinted            = c.DatePrinted;
            e.CreatedFrom            = c.CreatedFrom;
            e.SalesRepresentativeId  = c.SalesRepresentativeId;
            e.NumberOfPackages       = c.NumberOfPackages;
            e.PickDate               = c.PickDate;
            e.ShipDate               = c.ShipDate;
            e.TrackingNumber         = c.TrackingNumber;
            e.DateReceived           = c.DateReceived;
            e.IsInTransit            = c.IsInTransit;
            e.IsApproved             = c.IsApproved;
            e.IsInDispute            = c.IsInDispute;
            e.RmaDocumentNumber      = c.RmaDocumentNumber;
            e.ReversalDocumentNumber = c.ReversalDocumentNumber;
            e.Active                 = c.Active;
            e.CommandId              = c.CommandId;


            e.CreatedBy = (string)c.RequesterId;
            e.CreatedAt = ApplicationContext.Current.TimestampService.Now <DateTime>();
            var version = c.Version;

            foreach (ICreateInOutLine innerCommand in c.InOutLines)
            {
                ThrowOnInconsistentCommands(c, innerCommand);

                IInOutLineStateCreated innerEvent = MapCreate(innerCommand, c, version, _state);
                e.AddInOutLineEvent(innerEvent);
            }


            return(e);
        }
Пример #8
0
        public virtual void When(IInOutLineStateCreated e)
        {
            ThrowOnWrongEvent(e);
            this.LocatorId = e.LocatorId;

            this.ProductId = e.ProductId;

            this.AttributeSetInstanceId = e.AttributeSetInstanceId;

            this.DamageStatusIds = e.DamageStatusIds;

            this.Description = e.Description;

            this.QuantityUomId = e.QuantityUomId;

            this.MovementQuantity = (e.MovementQuantity != null && e.MovementQuantity.HasValue) ? e.MovementQuantity.Value : default(decimal);

            this.PickedQuantity = (e.PickedQuantity != null && e.PickedQuantity.HasValue) ? e.PickedQuantity.Value : default(decimal);

            this.IsInvoiced = (e.IsInvoiced != null && e.IsInvoiced.HasValue) ? e.IsInvoiced.Value : default(bool);

            this.Processed = (e.Processed != null && e.Processed.HasValue) ? e.Processed.Value : default(bool);

            this.RmaLineNumber = e.RmaLineNumber;

            this.ReversalLineNumber = e.ReversalLineNumber;

            this.Active = (e.Active != null && e.Active.HasValue) ? e.Active.Value : default(bool);

            this.Deleted = false;

            this.CreatedBy = e.CreatedBy;
            this.CreatedAt = e.CreatedAt;

            foreach (IInOutLineImageStateCreated innerEvent in e.InOutLineImageEvents)
            {
                IInOutLineImageState innerState = this.InOutLineImages.Get(innerEvent.GlobalId.SequenceId, true);
                innerState.Mutate(innerEvent);
            }
        }
Пример #9
0
 void IInOutLineState.When(IInOutLineStateCreated e)
 {
     throw new NotSupportedException();
 }
Пример #10
0
 void IInOutStateCreated.AddInOutLineEvent(IInOutLineStateCreated e)
 {
     this._inOutLineEvents.AddInOutLineEvent(e);
 }
Пример #11
0
 public virtual void AddInOutLineEvent(IInOutLineStateCreated e)
 {
     ThrowOnInconsistentEventIds(e);
     this._inOutLineEvents[e.StateEventId] = e;
 }