sast方法添加

This commit is contained in:
even 2025-06-13 19:31:59 +08:00
parent 9118a68c7b
commit b10b83b078
5 changed files with 37 additions and 0 deletions

View File

@ -8,6 +8,8 @@ import cd.casic.ci.process.dto.resp.sast.*;
import cd.casic.ci.process.process.service.sast.SastService;
import cd.casic.framework.commons.exception.enums.GlobalErrorCodeConstants;
import cd.casic.framework.commons.pojo.CommonResult;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.Negative;
@ -85,4 +87,9 @@ public class SastController {
public CommonResult<String> reportDownLoad(String reportId){
return CommonResult.success(sastService.reportDownload(reportId));
}
@GetMapping("/language")
public CommonResult<List<SastLanguageResp>> language(){
return CommonResult.success(sastService.language());
}
}

View File

@ -13,4 +13,5 @@ public class SastUrlConstant {
public static final String getApplicationEcho = "/invoke/application/getApplicationEcho";
public static final String reportIndex = "/api/report/index";
public static final String reportDownload = "/api/report/index/download";
public static final String language = "/invoke/language";
}

View File

@ -0,0 +1,16 @@
package cd.casic.ci.process.dto.resp.sast;
import lombok.Data;
import java.util.List;
@Data
public class SastLanguageResp {
private String type;
private List<SastLanguageResp> languageInfos;
@Data
public static class SastLanguageInfoResp{
private String id;
private String language;
private Boolean compileFlag;
}
}

View File

@ -4,6 +4,8 @@ import cd.casic.ci.process.dto.req.sast.SastApplicationCreateReq;
import cd.casic.ci.process.dto.req.sast.SastIdentifiedLanguageTaskReq;
import cd.casic.ci.process.dto.req.sast.SastReportCreateReq;
import cd.casic.ci.process.dto.resp.sast.*;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import jakarta.servlet.http.HttpServletResponse;
import java.io.File;
@ -21,4 +23,5 @@ public interface SastService {
SastApplicationEchoResp getApplicationEcho(String applicationId);
String reportIndex(SastReportCreateReq req);
public String reportDownload(String reportId);
public List<SastLanguageResp> language();
}

View File

@ -191,6 +191,16 @@ public class SastServiceImpl implements SastService {
ResponseEntity<String> exchange = restTemplate.exchange(uriString, HttpMethod.GET,entity, String.class,new HashMap<>());
return exchange.getBody().replaceAll("\"","");
}
@Override
public List<SastLanguageResp> language(){
HttpHeaders httpHeaders = getHeaders();
Map<String, String> entityMap = new HashMap<>();
HttpEntity<Map<String, String>> entity = new HttpEntity<>(entityMap,httpHeaders);
String uriString = UriComponentsBuilder.fromHttpUrl(sastProperties.getBaseUrl() + language).queryParam("codeSourceFrom", "CODE").toUriString();
System.out.println(uriString);
ResponseEntity<String> exchange = restTemplate.exchange(uriString, HttpMethod.GET,entity, String.class,new HashMap<>());
return JSON.parseArray(exchange.getBody(),SastLanguageResp.class);
}
private HttpHeaders getHeaders(){
HttpHeaders httpHeaders = new HttpHeaders();