Skip to content

Commit

Permalink
Part 4 - corrections.
Browse files Browse the repository at this point in the history
  • Loading branch information
githubmamatha committed Jan 3, 2025
1 parent 64ecbbd commit f1afd0c
Show file tree
Hide file tree
Showing 8 changed files with 37 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import ca.bc.gov.educ.api.gradbusiness.service.v2.DistrictService;
import ca.bc.gov.educ.api.gradbusiness.util.EducGradBusinessApiConstants;
import ca.bc.gov.educ.api.gradbusiness.util.EducGraduationApiConstants;
import io.swagger.v3.oas.annotations.OpenAPIDefinition;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.info.Info;
Expand All @@ -15,8 +16,8 @@
import org.springframework.web.bind.annotation.*;

@CrossOrigin
@RestController("districtController")
@RequestMapping("/api/v2/district")
@RestController
@RequestMapping(EducGraduationApiConstants.GRAD_BUSINESS_API_ROOT_MAPPING)
@Slf4j
@OpenAPIDefinition(info = @Info(title = "API for District Data.", description = "This Read API is for Reading District data.", version = "2"),
security = {@SecurityRequirement(name = "OAUTH2", scopes = {"SCOPE_READ_GRAD_SCHOOL_REPORT"})})
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import ca.bc.gov.educ.api.gradbusiness.service.v2.SchoolDetailsService;
import ca.bc.gov.educ.api.gradbusiness.util.EducGradBusinessApiConstants;
import ca.bc.gov.educ.api.gradbusiness.util.EducGraduationApiConstants;
import io.swagger.v3.oas.annotations.OpenAPIDefinition;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.info.Info;
Expand All @@ -16,11 +17,11 @@


@CrossOrigin
@RestController("schoolController")
@RequestMapping("/api/v2/school")
@RestController
@RequestMapping(EducGraduationApiConstants.GRAD_BUSINESS_API_ROOT_MAPPING)
@Slf4j
@OpenAPIDefinition(info = @Info(title = "API for School Data.", description = "This Read API is for Reading school data from TRAX.", version = "2"),
security = {@SecurityRequirement(name = "OAUTH2", scopes = {"SCOPE_READ_GRAD_SCHOOL_REPORT"})})
security = {@SecurityRequirement(name = "OAUTH2", scopes = {"READ_GRAD_SCHOOL_REPORT"})})
public class SchoolController {

private final SchoolDetailsService schoolDetailsService;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
@Data
@Builder
@EqualsAndHashCode(callSuper = true)
@Component("District")
@Component
@NoArgsConstructor
@AllArgsConstructor
public class District extends BaseModel {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@Component("School")
@Component
@JsonIgnoreProperties(ignoreUnknown = true)
public class School extends BaseModel {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import ca.bc.gov.educ.api.gradbusiness.model.dto.v2.District;
import ca.bc.gov.educ.api.gradbusiness.service.GradBusinessService;
import ca.bc.gov.educ.api.gradbusiness.service.RESTService;
import ca.bc.gov.educ.api.gradbusiness.util.EducGradBusinessApiConstants;
import ca.bc.gov.educ.api.gradbusiness.util.EducGradBusinessUtil;
import ca.bc.gov.educ.api.gradbusiness.util.EducGraduationApiConstants;
import ca.bc.gov.educ.api.gradbusiness.util.JsonTransformer;
Expand All @@ -11,6 +12,7 @@
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.InputStreamResource;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
Expand All @@ -23,17 +25,26 @@

@Slf4j
@RequiredArgsConstructor
@Service("districtService")
@Service
public class DistrictService {


EducGradBusinessApiConstants constants;
EducGraduationApiConstants educGraduationApiConstants;
final WebClient webClient;
final RESTService restService;
JsonTransformer jsonTransformer;

private static Logger logger = LoggerFactory.getLogger(DistrictService.class);

@Autowired
public DistrictService(EducGradBusinessApiConstants constants, WebClient webClient, RESTService restService, JsonTransformer jsonTransformer, EducGraduationApiConstants educGraduationApiConstants) {
this.constants = constants;
this.webClient = webClient;
this.restService = restService;
this.jsonTransformer = jsonTransformer;
this.educGraduationApiConstants = educGraduationApiConstants;
}

public ResponseEntity<byte[]> getSchoolReportPDFByDistcode(String distCode, String type) {
Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("PST"), Locale.CANADA);
int year = cal.get(Calendar.YEAR);
Expand Down Expand Up @@ -102,7 +113,7 @@ private ResponseEntity<byte[]> handleBinaryResponse(byte[] resultBinary, String
}

public District getDistrictDetails(String distNo) {
var response = this.restService.get(String.format(educGraduationApiConstants.getDistrictDetails(),distNo), List.class);
var response = this.restService.get(String.format(educGraduationApiConstants.getDistrictDetails(),distNo), District.class);
return jsonTransformer.convertValue(response, new TypeReference<>() {});
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.InputStreamResource;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
Expand All @@ -22,7 +23,7 @@

@Slf4j
@RequiredArgsConstructor
@Service("schoolDetailsService")
@Service
public class SchoolDetailsService {


Expand All @@ -32,9 +33,16 @@ public class SchoolDetailsService {
JsonTransformer jsonTransformer;
EducGraduationApiConstants educGraduationApiConstants;


private static Logger logger = LoggerFactory.getLogger(SchoolDetailsService.class);

@Autowired
public SchoolDetailsService(EducGradBusinessApiConstants constants, WebClient webClient, RESTService restService, JsonTransformer jsonTransformer, EducGraduationApiConstants educGraduationApiConstants) {
this.constants = constants;
this.webClient = webClient;
this.restService = restService;
this.jsonTransformer = jsonTransformer;
this.educGraduationApiConstants = educGraduationApiConstants;
}

public ResponseEntity<byte[]> getSchoolReportPDFByMincode(String mincode, String type) {
Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("PST"), Locale.CANADA);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,8 @@ public class EducGradBusinessApiConstants {
public static final String TRAX_DATE_FORMAT = "yyyyMM";

//V2 constants
public static final String SCHOOL_REPORT_PDF_MINCODE_V2 = "/report/{mincode}";
public static final String SCHOOL_REPORT_PDF_DISTCODE_V2 = "/report/{distcode}";
public static final String SCHOOL_REPORT_PDF_MINCODE_V2 = "/school/report/{mincode}";
public static final String SCHOOL_REPORT_PDF_DISTCODE_V2 = "/district/report/{distcode}";


//Endpoints
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ public class EducGraduationApiConstants {
//API end-point Mapping constants
public static final String API_ROOT_MAPPING = "";
public static final String API_VERSION = "v1";
public static final String API_VERSION2 = "v2";
public static final String GRAD_BUSINESS_API_ROOT_MAPPING = "/api/" + API_VERSION2;
public static final String GRADUATE_TRANSCRIPT_REPORT_DATA_BY_PEN = "/transcript/report/data/{pen}";
public static final String GRADUATE_TRANSCRIPT_REPORT_DATA = "/transcript/report/data";
public static final String GRADUATE_TRANSCRIPT_XML_REPORT_DATA = "/transcript/xml/report/data";
Expand Down

0 comments on commit f1afd0c

Please sign in to comment.