package com.dy.pipIrrMwTestWeb.rtuLog;
|
|
import com.dy.common.webUtil.BaseResponse;
|
import com.dy.common.webUtil.BaseResponseUtils;
|
import jakarta.servlet.ServletOutputStream;
|
import jakarta.servlet.http.HttpServletRequest;
|
import jakarta.servlet.http.HttpServletResponse;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import java.net.URLEncoder;
|
import java.util.List;
|
|
/**
|
* @Author: liurunyu
|
* @Date: 2024/8/28 14:55
|
* @Description
|
*/
|
@Slf4j
|
@RestController
|
@RequestMapping(path="rtuLog")
|
public class RtuLogCtrl extends RtuLogSupport {
|
|
@GetMapping(path = "logFile")
|
public BaseResponse<List<String>> rtuLogFile(String rtuAddr, HttpServletRequest req, HttpServletResponse rep){
|
ServletOutputStream out = null ;
|
try{
|
byte[] bs = this.requestMw4File(rtuAddr, mwUrlRtuLogFile) ;
|
if(bs != null && bs.length > 0){
|
String fileReName = rtuAddr + ".log" ;
|
//URLEncoder.encode可以防止中文乱码
|
fileReName = URLEncoder.encode(fileReName, "UTF-8").replaceAll("\\+", "%20");
|
rep.addHeader("content-type", "application/octet-stream;charset=UTF-8");
|
rep.addHeader("Content-Disposition", "attachment;fileName=" + fileReName);
|
out = rep.getOutputStream() ;
|
out.write(bs, 0, (bs==null?0:bs.length));
|
out.flush();
|
}else{
|
return BaseResponseUtils.buildError("获取文件失败") ;
|
}
|
}catch (Exception e){
|
}finally {
|
if(out != null){
|
try{
|
out.close();
|
}catch(Exception e){
|
}
|
}
|
}
|
return null ;
|
}
|
|
@GetMapping(path="logText")
|
public BaseResponse<List<String>> rtuLogText(String rtuAddr){
|
BaseResponse<List<String>> response = this.requestMw4Text(rtuAddr, mwUrlRtuLogText) ;
|
return response ;
|
}
|
}
|