예제 #1
0
        protected virtual IShipmentReceiptStateCreated MapCreate(ICreateShipmentReceipt c, IShipmentCommand outerCommand, long version, IShipmentState outerState)
        {
            c.RequesterId = outerCommand.RequesterId;
            var stateEventId = new ShipmentReceiptEventId(c.ShipmentId, c.ReceiptSeqId, version);
            IShipmentReceiptStateCreated e = NewShipmentReceiptStateCreated(stateEventId);
            var s = outerState.ShipmentReceipts.Get(c.ReceiptSeqId, true);

            e.ProductId = c.ProductId;
            e.AttributeSetInstanceId = c.AttributeSetInstanceId;
            e.LocatorId            = c.LocatorId;
            e.ShipmentItemSeqId    = c.ShipmentItemSeqId;
            e.ShipmentPackageSeqId = c.ShipmentPackageSeqId;
            e.OrderId           = c.OrderId;
            e.OrderItemSeqId    = c.OrderItemSeqId;
            e.ReturnId          = c.ReturnId;
            e.ReturnItemSeqId   = c.ReturnItemSeqId;
            e.RejectionReasonId = c.RejectionReasonId;
            e.DamageStatusId    = c.DamageStatusId;
            e.DamageReasonId    = c.DamageReasonId;
            e.ReceivedBy        = c.ReceivedBy;
            e.DatetimeReceived  = c.DatetimeReceived;
            e.ItemDescription   = c.ItemDescription;
            e.AcceptedQuantity  = c.AcceptedQuantity;
            e.RejectedQuantity  = c.RejectedQuantity;
            e.DamagedQuantity   = c.DamagedQuantity;
            e.Active            = c.Active;

            e.CreatedBy = (string)c.RequesterId;
            e.CreatedAt = ApplicationContext.Current.TimestampService.Now <DateTime>();
            return(e);
        }// END Map(ICreate... ////////////////////////////
예제 #2
0
        }// END Map(ICreate... ////////////////////////////

        protected virtual IShipmentReceiptStateMergePatched MapMergePatch(IMergePatchShipmentReceipt c, IShipmentCommand outerCommand, long version, IShipmentState outerState)
        {
            c.RequesterId = outerCommand.RequesterId;
            var stateEventId = new ShipmentReceiptEventId(c.ShipmentId, c.ReceiptSeqId, version);
            IShipmentReceiptStateMergePatched e = NewShipmentReceiptStateMergePatched(stateEventId);
            var s = outerState.ShipmentReceipts.Get(c.ReceiptSeqId);

            e.ProductId = c.ProductId;
            e.AttributeSetInstanceId = c.AttributeSetInstanceId;
            e.LocatorId            = c.LocatorId;
            e.ShipmentItemSeqId    = c.ShipmentItemSeqId;
            e.ShipmentPackageSeqId = c.ShipmentPackageSeqId;
            e.OrderId                    = c.OrderId;
            e.OrderItemSeqId             = c.OrderItemSeqId;
            e.ReturnId                   = c.ReturnId;
            e.ReturnItemSeqId            = c.ReturnItemSeqId;
            e.RejectionReasonId          = c.RejectionReasonId;
            e.DamageStatusIds            = c.DamageStatusIds;
            e.DamageReasonId             = c.DamageReasonId;
            e.ReceivedBy                 = c.ReceivedBy;
            e.DatetimeReceived           = c.DatetimeReceived;
            e.ItemDescription            = c.ItemDescription;
            e.AcceptedQuantity           = c.AcceptedQuantity;
            e.RejectedQuantity           = c.RejectedQuantity;
            e.DamagedQuantity            = c.DamagedQuantity;
            e.Active                     = c.Active;
            e.IsPropertyProductIdRemoved = c.IsPropertyProductIdRemoved;
            e.IsPropertyAttributeSetInstanceIdRemoved = c.IsPropertyAttributeSetInstanceIdRemoved;
            e.IsPropertyLocatorIdRemoved            = c.IsPropertyLocatorIdRemoved;
            e.IsPropertyShipmentItemSeqIdRemoved    = c.IsPropertyShipmentItemSeqIdRemoved;
            e.IsPropertyShipmentPackageSeqIdRemoved = c.IsPropertyShipmentPackageSeqIdRemoved;
            e.IsPropertyOrderIdRemoved           = c.IsPropertyOrderIdRemoved;
            e.IsPropertyOrderItemSeqIdRemoved    = c.IsPropertyOrderItemSeqIdRemoved;
            e.IsPropertyReturnIdRemoved          = c.IsPropertyReturnIdRemoved;
            e.IsPropertyReturnItemSeqIdRemoved   = c.IsPropertyReturnItemSeqIdRemoved;
            e.IsPropertyRejectionReasonIdRemoved = c.IsPropertyRejectionReasonIdRemoved;
            e.IsPropertyDamageStatusIdsRemoved   = c.IsPropertyDamageStatusIdsRemoved;
            e.IsPropertyDamageReasonIdRemoved    = c.IsPropertyDamageReasonIdRemoved;
            e.IsPropertyReceivedByRemoved        = c.IsPropertyReceivedByRemoved;
            e.IsPropertyDatetimeReceivedRemoved  = c.IsPropertyDatetimeReceivedRemoved;
            e.IsPropertyItemDescriptionRemoved   = c.IsPropertyItemDescriptionRemoved;
            e.IsPropertyAcceptedQuantityRemoved  = c.IsPropertyAcceptedQuantityRemoved;
            e.IsPropertyRejectedQuantityRemoved  = c.IsPropertyRejectedQuantityRemoved;
            e.IsPropertyDamagedQuantityRemoved   = c.IsPropertyDamagedQuantityRemoved;
            e.IsPropertyActiveRemoved            = c.IsPropertyActiveRemoved;

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

            foreach (IShipmentReceiptImageCommand innerCommand in c.ShipmentReceiptImageCommands)
            {
                ThrowOnInconsistentCommands(c, innerCommand);

                IShipmentReceiptImageEvent innerEvent = Map(innerCommand, c, version, s);
                e.AddShipmentReceiptImageEvent(innerEvent);
            }

            return(e);
        }// END Map(IMergePatch... ////////////////////////////
예제 #3
0
        private ShipmentReceiptEventId NewShipmentReceiptEventId(string receiptSeqId)
        {
            var eId = new ShipmentReceiptEventId();

            eId.ShipmentId      = this.ShipmentEventId.ShipmentId;
            eId.ReceiptSeqId    = receiptSeqId;
            eId.ShipmentVersion = this.ShipmentEventId.Version;
            return(eId);
        }
예제 #4
0
        public override bool Equals(object obj)
        {
            if (Object.ReferenceEquals(this, obj))
            {
                return(true);
            }

            ShipmentReceiptEventId other = obj as ShipmentReceiptEventId;

            if (other == null)
            {
                return(false);
            }

            return(true &&
                   Object.Equals(this.ShipmentId, other.ShipmentId) &&
                   Object.Equals(this.ReceiptSeqId, other.ReceiptSeqId) &&
                   Object.Equals(this.ShipmentVersion, other.ShipmentVersion)
                   );
        }
예제 #5
0
 private ShipmentReceiptStateMergePatched NewShipmentReceiptStateMergePatched(ShipmentReceiptEventId stateEventId)
 {
     return(new ShipmentReceiptStateMergePatched(stateEventId));
 }
예제 #6
0
 private ShipmentReceiptStateCreated NewShipmentReceiptStateCreated(ShipmentReceiptEventId stateEventId)
 {
     return(new ShipmentReceiptStateCreated(stateEventId));
 }
예제 #7
0
        protected ShipmentReceiptEventId NewShipmentReceiptEventId(string receiptSeqId)
        {
            var stateEventId = new ShipmentReceiptEventId(this.ShipmentEventId.ShipmentId, receiptSeqId, this.ShipmentEventId.Version);

            return(stateEventId);
        }
예제 #8
0
 protected ShipmentReceiptStateEventDtoBase(ShipmentReceiptEventId stateEventId)
 {
     this.ShipmentReceiptEventId = stateEventId;
 }
예제 #9
0
 public ShipmentReceiptStateMergePatched(ShipmentReceiptEventId stateEventId) : base(stateEventId)
 {
 }
예제 #10
0
 public ShipmentReceiptStateCreated(ShipmentReceiptEventId stateEventId) : base(stateEventId)
 {
 }
예제 #11
0
 protected ShipmentReceiptStateEventBase(ShipmentReceiptEventId stateEventId) : base(stateEventId)
 {
 }