Exemple #1
0
        public async Task <GetAllWarehausesResponse> Handle(GetAllWarehausesRequest request, CancellationToken cancellationToken)
        {
            //if(request.AuthenticationRole == "UserLaundry")
            //{
            //    return new GetAllWarehausesResponse()
            //    {
            //        Error = new Domain.ErrorHandling.ErrorModel(ErrorType.Forbidden)
            //    };
            //}
            var query = new GetWarehausesQuery()
            {
                WarehauseNumber = request.WarehauseNumber,
                CompanyId       = request.AuthenticationCompanyId,
                WarehauseType   = request.WarehauseType
            };
            var getWarehauses = await this.queryExecutor.Execute(query);

            //if(getWarehauses==null)
            //{
            //    return new GetAllWarehausesResponse()
            //    {
            //        Error = new Domain.ErrorHandling.ErrorModel(ErrorType.NotFound)
            //    };
            //}

            var mappedWarehase = this.mapper.Map <List <Warehause> >(getWarehauses);

            return(new GetAllWarehausesResponse()
            {
                Data = mappedWarehase
            });
        }
Exemple #2
0
        public async Task <CreateWarehauseResponse> Handle(CreateWarehauseRequest request, CancellationToken cancellationToken)
        {
            if (request.AuthenticationRole == "UserLaundry")
            {
                return(new CreateWarehauseResponse
                {
                    Error = new ErrorModel(ErrorType.Forbidden)
                });
            }

            var query = new GetWarehausesQuery()
            {
                WarehauseNumber = request.WarehauseNumber,
                CompanyId       = request.CompanyId
            };

            var getWarhause = await this.queryExecutor.Execute(query);

            if (getWarhause != null)
            {
                return(new CreateWarehauseResponse()
                {
                    Error = new ErrorModel(ErrorType.Conflict)
                });
            }

            var mappedWarehause = this.mapper.Map <DataAccess.Entities.Warehause>(request);
            var command         = new CreateWarehauseCommand()
            {
                Parameter = mappedWarehause
            };

            var wareHauseFromDB = await this.commandExecutor.Execute(command);

            return(new CreateWarehauseResponse()
            {
                Data = this.mapper.Map <Domain.Models.Warehause>(wareHauseFromDB)
            });
        }