New file |
| | |
| | | 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 ; |
| | | } |
| | | } |