public static async Task <GrpcShipmentEvents> GetShipmentEvents(GrpcString grpcRequest)
        {
            try
            {
                var id       = GrpcStringAdapter.GetFrom(grpcRequest);
                var shipment = await ShipmentUseCases.Get.ById(id);

                return(ShipmentEventsPresenter.Present(shipment));
            }
            catch (Exception e)
            {
                throw;
            }
        }
        public static async Task <GrpcVoid> DeleteShipment(GrpcString grpcRequest)
        {
            try
            {
                var id = GrpcStringAdapter.GetFrom(grpcRequest);
                await ShipmentUseCases.Delete.Execute(id);

                return(GrpcVoid);
            }
            catch (Exception e)
            {
                throw;
            }
        }
        public static async Task <GrpcVoid> RunAutoUpdateById(GrpcString req)
        {
            try
            {
                var id = GrpcStringAdapter.GetFrom(req);
                await ShipmentUseCaseController.RunAutoUpdateById(id);

                return(GrpcVoid);
            }
            catch (Exception e)
            {
                throw e;
            }
        }
        public static async Task <GrpcPackage> GetPackageById(GrpcString grpcRequest)
        {
            try
            {
                var id      = GrpcStringAdapter.GetFrom(grpcRequest);
                var package = await GetPackage.Execute(id);

                return(PackagePresenter.PresentePackage(package));
            }
            catch (Exception e)
            {
                throw e;
            }
        }
        public static async Task <GrpcBoolean> GetIsMarketplaceSaleIdRegistered(GrpcString req)
        {
            try
            {
                var id           = GrpcStringAdapter.GetFrom(req);
                var isRegistered = await ShipmentUseCases.GetIsMarketplaceSaleIdRegistered(id);

                return(new GrpcBoolean()
                {
                    Value = isRegistered
                });
            }
            catch (Exception)
            {
                throw;
            }
        }