# BookingS3Controller.java

    package cloud.wconnect.rateshop.controller.booking;

    import cloud.wconnect.commonlib.annotation.ApiId;
    import cloud.wconnect.commonlib.pojo.query.s3.DownloadFileUrlQuery;
    import cloud.wconnect.commonlib.util.S3ControllerUtil;
    import jakarta.validation.Valid;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;

    import java.util.Map;

    /**
     * S3 控制层
     *
     * @author yyt
     * @date 2024/2/2
     */
    @RestController
    @RequestMapping("/booking")
    public class BookingS3Controller {

        @Autowired
        private S3ControllerUtil s3ControllerUtil;

        /**
         * 获取 s3 下载文件的 url
         *
         * @param downloadFileUrlQuery 查询对象
         * @return s3 下载文件的 url
         * @author yyt
         * @date 2024/2/1
         */
        @ApiId(1491)
        @GetMapping("/s3/download-file-url")
        public Map getDownloadFileUrl(@Valid DownloadFileUrlQuery downloadFileUrlQuery) {
            return s3ControllerUtil.getDownloadFileUrl(downloadFileUrlQuery);
        }

    }