2.代码实现
1)控制层
@ApiOperation("根据id更新图片上传阿里云")
@PostMapping("/carCompleteImgEditOss")
baseResult carCompleteImgEditOss(HttpServletRequest request, @RequestParam("id") Long id) {
if (id == null) {
return baseResult.fail("整车效果图ID不能为空");
}
byte[] bytes = FileUtil.input2byte(request);
if (bytes == null) {
return baseResult.fail("上传图片不能为空");
}
UploadBytesResp uploadBytesResp = resourceInfoService.uploadFileSn(bytes, null);
if (uploadBytesResp == null) {
return baseResult.fail("上传图片失败");
}
CarsCompleteImgReq carsCompleteImgReq = new CarsCompleteImgReq();
carsCompleteImgReq.setId(id);
carsCompleteImgReq.setCompleteImg(uploadBytesResp.getExternalUrl());
carsCompleteImgReq.setCompleteSn(uploadBytesResp.getSn());
return CommonUtils.toResult(() -> completeImgApi.carCompleteImgEdit(carsCompleteImgReq));
}
2)工具类
package com.lotus.dm.lsc.common.utils;
import javax.servlet.http.HttpServletRequest;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
public class FileUtil {
public static final byte[] input2byte(HttpServletRequest request) {
try {
InputStream inStream = request.getInputStream();
ByteArrayOutputStream swapStream = new ByteArrayOutputStream();
byte[] buff = new byte[100];
int rc = 0;
while ((rc = inStream.read(buff, 0, 100)) > 0) {
swapStream.write(buff, 0, rc);
}
byte[] in2b = swapStream.toByteArray();
return in2b;
} catch (IOException e) {
}
return null;
}
}



