コード例 #1
0
        public IResult UpdateIntraWarehouseOrder(IUpdateIntraWarehouseOrderParameters parameters)
        {
            if (parameters == null)
            {
                throw new ArgumentNullException("parameters");
            }

            var keyResult = KeyParserHelper.ParseResult <IIntraWarehouseOrderKey>(parameters.IntraWarehouseOrderKey);

            if (!keyResult.Success)
            {
                return(keyResult);
            }

            var updateResult = new IntraWarehouseOrderConductor(_intraWarehouseOrderUnitOfWork).Update(_timeStamper.CurrentTimeStamp, keyResult.ResultingObject, parameters);

            if (!updateResult.Success)
            {
                return(updateResult);
            }

            _intraWarehouseOrderUnitOfWork.Commit();

            var key = keyResult.ResultingObject.ToIntraWarehouseOrderKey();

            return(SyncParameters.Using(new SuccessResult <string>(key), key));
        }
コード例 #2
0
        public IResult <string> CreateIntraWarehouseOrder(ICreateIntraWarehouseOrderParameters parameters)
        {
            if (parameters == null)
            {
                throw new ArgumentNullException("parameters");
            }

            var createResult = new IntraWarehouseOrderConductor(_intraWarehouseOrderUnitOfWork).Create(_timeStamper.CurrentTimeStamp, parameters);

            if (!createResult.Success)
            {
                return(createResult.ConvertTo <string>());
            }

            _intraWarehouseOrderUnitOfWork.Commit();

            var key = createResult.ResultingObject.ToIntraWarehouseOrderKey();

            return(SyncParameters.Using(new SuccessResult <string>(key), key));
        }