Example #1
0
        public async Task <IActionResult> Produce(CreateWorkOrderRequest request)
        {
            var validatorActionResult = await _validationArrangement.Validate(request);

            var actionResult = await _operationArrangement.Process(request, validatorActionResult);

            return(actionResult);
        }
        public async Task <IActionResult> Create([FromQuery] CreateWorkOrderFromQuery query,
                                                 [FromBody] CreateWorkOrderFromBody body)
        {
            var request = new CreateWorkOrderRequest(query, body);

            var result = await _apiResult.Produce(request);

            return(result);
        }
        public void ConstructorShouldSucceed()
        {
            // Arrange
            var query = new CreateWorkOrderFromQuery();
            var body  = new CreateWorkOrderFromBody();

            // Act
            var obj = new CreateWorkOrderRequest(query, body);

            // Assert
            obj.Should().NotBeNull();
        }
        public void MemberQueryApiVersionShouldHaveCorrectValue()
        {
            // Arrange
            var apiVersion = "1.0";
            var query      = new CreateWorkOrderFromQuery()
            {
                ApiVersion = apiVersion
            };
            var body = new CreateWorkOrderFromBody();

            // Act
            var obj = new CreateWorkOrderRequest(query, body);

            // Assert
            obj.QueryApiVersion.Should().Be(apiVersion);
        }
        public async Task <IActionResult> Process(CreateWorkOrderRequest request, IValidatorActionResult validatorActionResult)
        {
            IActionResult actionResult;

            if (validatorActionResult.Result == null)
            {
                var call = _cqsMapper.Map(request);

                var result = await _mediator.Send(call);

                actionResult = result.IsFailure ? _apiResponse.Fail(result)
                                                : _apiResponse.Created(string.Format("/api/workorders/{0}", ((Result <Guid>)result).Value), result.Version.ToString());
            }
            else
            {
                actionResult = validatorActionResult.Result;
            }

            return(actionResult);
        }
Example #6
0
        public CreateWorkOrderCommand Map(CreateWorkOrderRequest request)
        {
            var result = new CreateWorkOrderCommand(request.BodyUserCreated, request.BodySite, request.BodyOperation, request.BodyDepartment);

            return(result);
        }