public IResult <ILotStatInfoReturn> SetLotQualityStatus(ISetLotStatusParameters parameters) { if (parameters == null) { throw new ArgumentNullException("parameters"); } var parsedParameters = parameters.ToParsedParameters(); if (!parsedParameters.Success) { return(parsedParameters.ConvertTo <ILotStatInfoReturn>()); } var result = new SetLotStatusConductor(_lotUnitOfWork).Execute(_timeStamper.CurrentTimeStamp, parsedParameters.ResultingObject); if (!result.Success) { return(result.ConvertTo <ILotStatInfoReturn>()); } _lotUnitOfWork.Commit(); var synchronizeLotParameters = new SynchronizeLotParameters { LotKey = parsedParameters.ResultingObject.LotKey, OverrideOldContextLotAsCompleted = false }; return(SyncParameters.Using(new SuccessResult <ILotStatInfoReturn>(new LotStatInfoReturn(synchronizeLotParameters)), synchronizeLotParameters)); }
public IResult <ICreateLotDefectReturn> CreateLotDefect(ICreateLotDefectParameters parameters) { if (parameters == null) { throw new ArgumentNullException("parameters"); } var parsedParameters = parameters.ToParsedParameters(); if (!parsedParameters.Success) { return(parsedParameters.ConvertTo <ICreateLotDefectReturn>()); } var createDefectResult = new CreateInHouseContaminationDefectCommand(_lotUnitOfWork).Execute(parsedParameters.ResultingObject, _timeStamper.CurrentTimeStamp); if (!createDefectResult.Success) { return(createDefectResult.ConvertTo <ICreateLotDefectReturn>()); } _lotUnitOfWork.Commit(); var synchronizeLotParameters = new SynchronizeLotParameters { LotKey = parsedParameters.ResultingObject.LotKey, OverrideOldContextLotAsCompleted = false }; return(SyncParameters.Using(new SuccessResult <ICreateLotDefectReturn>( new CreateLotDefectReturn(createDefectResult.ResultingObject.ToLotDefectKey(), synchronizeLotParameters)), synchronizeLotParameters)); }
public IResult AddLotAttributes(IAddLotAttributesParameters parameters) { if (parameters == null) { throw new ArgumentNullException("parameters"); } var parsedParameters = parameters.ToParsedParameters(); if (!parsedParameters.Success) { return(parsedParameters); } var setAttributesResult = new SetLotAttributesConductor(_lotUnitOfWork).AddLotAttributes(_timeStamper.CurrentTimeStamp, parsedParameters.ResultingObject); if (!setAttributesResult.Success) { return(setAttributesResult); } _lotUnitOfWork.Commit(); var syncParameters = new SynchronizeLotParameters { LotKeys = parsedParameters.ResultingObject.LotKeys, OverrideOldContextLotAsCompleted = parameters.OverrideOldContextLotAsCompleted }; return(SyncParameters.Using(new SuccessResult <ILotStatInfoReturn>(new LotStatInfoReturn(syncParameters)), syncParameters)); }
public IResult <ILotStatInfoReturn> SetLotAttributes(ISetLotAttributeParameters parameters) { var parsedParameters = parameters.ToParsedParameters(); if (!parsedParameters.Success) { return(parsedParameters.ConvertTo <ILotStatInfoReturn>()); } var currentTimeStamp = _timeStamper.CurrentTimeStamp; var setAttributesResult = new SetLotAttributesConductor(_lotUnitOfWork).Execute(currentTimeStamp, parsedParameters.ResultingObject); if (!setAttributesResult.Success) { return(setAttributesResult.ConvertTo <ILotStatInfoReturn>()); } #region SetLotStatus to 'Accepted' #warning Remove if/when 'OverrideOldContextLotAsCompleted' is removed. -RI 6/16/2014 if (parameters.OverrideOldContextLotAsCompleted) { var setStatusResult = new SetLotStatusConductor(_lotUnitOfWork).Execute(currentTimeStamp, new SetLotStatusParameters { LotKey = parsedParameters.ResultingObject.LotKey, Parameters = parsedParameters.ResultingObject }, true); if (!setStatusResult.Success) { return(setStatusResult.ConvertTo <ILotStatInfoReturn>()); } } #endregion _lotUnitOfWork.Commit(); var syncParameters = new SynchronizeLotParameters { LotKey = parsedParameters.ResultingObject.LotKey, OverrideOldContextLotAsCompleted = parameters.OverrideOldContextLotAsCompleted }; return(SyncParameters.Using(new SuccessResult <ILotStatInfoReturn>(new LotStatInfoReturn(syncParameters)), syncParameters)); }
public CreateLotDefectReturn(string lotDefectKey, SynchronizeLotParameters parameters) : base(parameters) { LotDefectKey = lotDefectKey; }
public LotStatInfoReturn(SynchronizeLotParameters parameters) { _parameters = parameters; }