//package com.yx.face.controller.FileUpload;
//
//import com.alibaba.fastjson.JSON;
//import com.alibaba.fastjson.JSONObject;
//import com.yx.face.boot.uitls.AliOssCloudUtil;
//import io.swagger.annotations.Api;
//import lombok.extern.slf4j.Slf4j;
//import org.apache.commons.codec.binary.Base64;
//import org.springframework.web.bind.annotation.*;
//import org.springframework.web.multipart.MultipartFile;
//import sun.misc.BASE64Decoder;
//
//import javax.servlet.http.HttpServletResponse;
//import java.io.*;
//import java.net.URLEncoder;
//import java.util.UUID;
//
///**
// * @ProjectName: fyzd-phone
// * @Package: com.yx.face.controller.FileUpload
// * @ClassName: FileUploadController
// * @Author: 崔哥
// * @Description:
// * @Date: 2021/11/8 13:00
// * @Version: 1.0
// */
//@Slf4j
//@Api(tags = "B 文件上传")
//@RestController
//@RequestMapping("/fyzd")
//public class FileUploadController {
//    /**
//     * 文件上传
//     *
//     * @param data
//     * @return
//     */
//    @PostMapping("/file/upload")
//    public String upload(@RequestBody String data) {
//        log.info("日志" + data);
//        JSONObject jsonObject = JSON.parseObject(data);
//        String filename = jsonObject.getString("name");
//        String base64 = jsonObject.getString("base64");
//        filename = filename.replace("-", "");
//        InputStream inputStream = null;
//        try {
//            byte[] bytes = new BASE64Decoder().decodeBuffer(base64);  //将字符串转换为byte数组，这里的content是那一串base64密文 /9j/4AAQ.................，不包含（data:img/jpg;base64,）注意标点符号
//            inputStream = new ByteArrayInputStream(bytes);
//        } catch (IOException e) {
//            e.printStackTrace();
//            System.out.println("上传失败");
//        }
//        AliOssCloudUtil util = new AliOssCloudUtil();
//        //上传成功返回完整路径的url
//        String url = util.uploadFile2OSS(inputStream, filename);
//        return url;
//    }
//
//    @PostMapping("/file/logImg")
//    public String logImg(@RequestBody String data) {
//        log.info("日志" + data);
//        JSONObject jsonObject = JSON.parseObject(data);
//        String filename = jsonObject.getString("name");
//        String base64 = jsonObject.getString("base64");
//        filename = filename.replace("-", "");
//        InputStream inputStream = null;
//        try {
//            byte[] bytes = new BASE64Decoder().decodeBuffer(base64);  //将字符串转换为byte数组，这里的content是那一串base64密文 /9j/4AAQ.................，不包含（data:img/jpg;base64,）注意标点符号
//            inputStream = new ByteArrayInputStream(bytes);
//        } catch (IOException e) {
//            e.printStackTrace();
//            System.out.println("上传失败");
//        }
//        AliOssCloudUtil util = new AliOssCloudUtil();
//        //上传成功返回完整路径的url
//        String url = util.uploadFile2OSS(inputStream, filename);
//        return url;
//    }
//    /**
//     * 判断文件是否存在
//     *
//     * @param fileName 储存的文件名
//     * @return
//     */
//    @GetMapping("/file/exists")
//    public Boolean exists(String fileName) {
//        AliOssCloudUtil util = new AliOssCloudUtil();
//        Boolean bool = util.doesObjectExist(fileName);
//        return bool;
//    }
//
//
//    /**
//     * 下载oss对应文件
//     *
//     * @param fileName 储存的文件名
//     * @return
//     */
//    @GetMapping("/file/downLoad")
//    public String downloadFile(String fileName) {
//        // 将图片文件转化为字节数组字符串，并对其进行Base64编码处理
//        byte[] data = null;
//        // 读取图片字节数组
//        AliOssCloudUtil ossClientUtil = new AliOssCloudUtil();
//        InputStream is = ossClientUtil.getInputStreamByFileUrl("log" + fileName.split("log")[1]);
//        try {
//            ByteArrayOutputStream swapStream = new ByteArrayOutputStream();
//            byte[] buff = new byte[1024];
//            int rc = 0;
//            while ((rc = is.read(buff, 0, 100)) > 0) {
//                swapStream.write(buff, 0, rc);
//            }
//            data = swapStream.toByteArray();
//        } catch (Exception e) {
//            e.printStackTrace();
//        } finally {
//            if (is != null) {
//                try {
//                    is.close();
//                } catch (IOException e) {
//                    e.printStackTrace();
//                }
//            }
//        }
//        return new String(Base64.encodeBase64(data));
//    }
//}
