restTemplate传递文件数组
传递MultipartFile[]
被请求接口
@ApiImplicitParams({
@ApiImplicitParam(name = "fid", value = "当前表ifd", required = true, dataType = "string")
})
@ApiOperation(value = "图片保存", notes = "图片保存")
@PostMapping(value = "/savePicture")
public ResponseModel savePicture(@RequestParam("multipartFile")MultipartFile[] multipartFile, String fid) throws IOException {
ResponseModel responseModel = new ResponseModel();
if(multipartFile.length<=0){
responseModel.ResMessage ="文件为空上传失败";
}else {
String save = tcartransferService.save(multipartFile,fid);
responseModel.ResMessage =save;
responseModel.ResCode=-1;
responseModel.ResMessage = "图片保存成功!";
}
return responseModel;
}
请求接口
@ApiImplicitParams({
@ApiImplicitParam(name = "fid", value = "当前表ifd", required = true, dataType = "string")
})
@ApiOperation(value = "图片保存", notes = "图片保存")
@PostMapping(value = "/savePicture")
public String savePicture(@RequestParam("multipartFile")MultipartFile[] multipartFile, String fid,HttpServletRequest httpServletRequest) throws IOException {
MultiValueMap<String,Object> map = new LinkedMultiValueMap<>();
//设置请求头
HttpHeaders headers = new HttpHeaders();
MediaType type = MediaType.parseMediaType("multipart/form-data");
headers.setContentType(type);
headers.add("token",httpServletRequest.getHeader("token"));
List<Object> fileList = new ArrayList<>();
for(MultipartFile multipartFiles : multipartFile) {
ByteArrayResource byteArrayResource = new ByteArrayResource(multipartFiles.getBytes()){
@Override
public String getFilename() throws IllegalStateException {
return multipartFiles.getOriginalFilename();
}
};
fileList.add(byteArrayResource);
}
map.put("multipartFile", fileList);
map.add("fid", fid);
HttpEntity<MultiValueMap<String, Object>> request =
new HttpEntity<MultiValueMap<String, Object>>(map, headers);
String data = restTemplate.postForObject(URL + "/tcartransfer/savePicture", request, String.class);
return data;
}
传递单个文件
被调用接口
@ApiOperation(value = "质量部判定质量工单中,制造部维修中,待质量部检验, 通知要求部门-报废,ATO处置确认中",
notes = "质量部判定质量工单中,制造部维修中,待质量部检验, 通知要求部门-报废,ATO处置确认中")
@ApiImplicitParams({
})
@RequestMapping(value = "/save", method = {RequestMethod.POST})
public ResponseModel save(@RequestParam("multipartFile") MultipartFile multipartFile, Tmanagement tmanagement,
String A, String B,String C,String D,String E
) throws IOException, ParseException {
SimpleDateFormat date= new SimpleDateFormat("yyyy-MM-dd");
ResponseModel responseModel = new ResponseModel();
if(StringUtils.isNotBlank(A)){
tmanagement.setFDeliveryTimeT(A);
}
if(StringUtils.isNotBlank(B)){
tmanagement.setFDeliveryTimeTh(date.parse(B));
}
if(StringUtils.isNotBlank(C)){
tmanagement.setFDeliveryTimeFour(date.parse(C));
}
if(StringUtils.isNotBlank(D)){
tmanagement.setFDeliveryTimeFive(date.parse(D));
}
if(StringUtils.isNotBlank(E)){
tmanagement.setFDeliveryTimeSix(date.parse(E));
}
String preserve = tmodelreceive.qualityDepartment(multipartFile, tmanagement);
if("修改成功".equals(preserve)){
responseModel.ResCode=-1;
responseModel.ResMessage = preserve;
}else {
responseModel.ResMessage = preserve;
}
return responseModel;
}
restTemplate调用接口传递单个文件
@ApiOperation(value = "质量部判定质量工单中,制造部维修中,待质量部检验, 通知要求部门-报废,ATO处置确认中",
notes = "质量部判定质量工单中,制造部维修中,待质量部检验, 通知要求部门-报废,ATO处置确认中")
@ApiImplicitParams({
})
@RequestMapping(value = "/save", method = {RequestMethod.POST})
public String save(@RequestParam("multipartFile") MultipartFile multipartFile, Tmanagement tmanagement,HttpServletRequest httpServletRequest
) throws IOException {
MultiValueMap<String,Object> map = new LinkedMultiValueMap<>();
//设置请求头
HttpHeaders headers = new HttpHeaders();
MediaType type = MediaType.parseMediaType("multipart/form-data");
headers.setContentType(type);
headers.add("token",httpServletRequest.getHeader("token"));
List<Object> fileList = new ArrayList<>();
SimpleDateFormat ss = new SimpleDateFormat("yyyy-MM-dd");
if (!multipartFile.isEmpty()){
ByteArrayResource byteArrayResource = new ByteArrayResource(multipartFile.getBytes()){
@Override
public String getFilename() throws IllegalStateException {
return multipartFile.getOriginalFilename();
}
};
fileList.add(byteArrayResource);
}
if(tmanagement.getFStatus().equals("zlbpd")){
//质量部判定质量工单中
map.add("FId",tmanagement.getFId());
map.add("A",tmanagement.getFDeliveryTimeT());
}else if(tmanagement.getFStatus().equals("zzbwx")){
//制造部维修中
map.add("FId",tmanagement.getFId());
map.add("B",ss.format(tmanagement.getFDeliveryTimeTh()));
}else if(tmanagement.getFStatus().equals("zlbjy")){
//待质量部检验
map.add("FId",tmanagement.getFId());
map.add("C",ss.format(tmanagement.getFDeliveryTimeFour()));
}else if(tmanagement.getFStatus().equals("tzxubm")){
//通知要求部门-报废
map.add("FId",tmanagement.getFId());
map.add("D",ss.format(tmanagement.getFDeliveryTimeFive()));
}else if(tmanagement.getFStatus().equals("ATOczqr")) {
//ATO处置确认中
map.add("FId",tmanagement.getFId());
map.add("E",ss.format(tmanagement.getFDeliveryTimeSix()));
}
map.add("FStatus",tmanagement.getFStatus());
map.put("multipartFile", fileList);
HttpEntity<MultiValueMap<String, Object>> request =
new HttpEntity<MultiValueMap<String, Object>>(map, headers);
String data = restTemplate.postForObject(URL + "/tmanagement/save", request, String.class);
return data;
}