public virtual void Save() { foreach (IOrderItemState s in this.LoadedOrderItemStates) { OrderItemStateDao.Save(s); } foreach (IOrderItemState s in this._removedOrderItemStates.Values) { OrderItemStateDao.Delete(s); } }
public virtual IOrderItemState Get(string orderItemSeqId, bool forCreation, bool nullAllowed) { OrderItemId globalId = new OrderItemId(_orderState.OrderId, orderItemSeqId); if (_loadedOrderItemStates.ContainsKey(globalId)) { var state = _loadedOrderItemStates[globalId]; if (this._orderState != null && this._orderState.ReadOnly == false) { ((IOrderItemState)state).ReadOnly = false; } return(state); } if (forCreation || ForReapplying) { var state = new OrderItemState(ForReapplying); state.OrderItemId = globalId; _loadedOrderItemStates.Add(globalId, state); if (this._orderState != null && this._orderState.ReadOnly == false) { ((IOrderItemState)state).ReadOnly = false; } return(state); } else { var state = OrderItemStateDao.Get(globalId, nullAllowed); if (state != null) { _loadedOrderItemStates.Add(globalId, state); } if (this._orderState != null && this._orderState.ReadOnly == false) { ((IOrderItemState)state).ReadOnly = false; } return(state); } }