Pipeline controller: plan 2 (hard +, error +50 %), backlog throttle, 2 trajectory workers, stop rules, summaries every 50; budget reserve
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
67
tasks_gen/train/G1017/reference/inspection_checker.clas.abap
Normal file
67
tasks_gen/train/G1017/reference/inspection_checker.clas.abap
Normal file
@@ -0,0 +1,67 @@
|
||||
CLASS {{p}}inspection_checker DEFINITION PUBLIC FINAL CREATE PUBLIC.
|
||||
PUBLIC SECTION.
|
||||
INTERFACES {{p}}if_inspection_check.
|
||||
|
||||
PRIVATE SECTION.
|
||||
METHODS normalize
|
||||
IMPORTING iv_text TYPE string
|
||||
RETURNING VALUE(rv_text) TYPE string.
|
||||
|
||||
METHODS age_in_years
|
||||
IMPORTING iv_from TYPE d
|
||||
iv_to TYPE d
|
||||
RETURNING VALUE(rv_years) TYPE i.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}inspection_checker IMPLEMENTATION.
|
||||
METHOD {{p}}if_inspection_check~check_vehicle.
|
||||
IF normalize( iv_plate ) IS INITIAL.
|
||||
rv_reason = {{p}}if_inspection_check=>c_reason-no_plate.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
IF normalize( iv_make ) IS INITIAL.
|
||||
rv_reason = {{p}}if_inspection_check=>c_reason-no_make.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
IF iv_first_reg IS INITIAL OR iv_first_reg > iv_check_date.
|
||||
rv_reason = {{p}}if_inspection_check=>c_reason-reg_date.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
IF age_in_years( iv_from = iv_first_reg iv_to = iv_check_date ) >= 30.
|
||||
rv_reason = {{p}}if_inspection_check=>c_reason-too_old.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
IF iv_mileage_km < 0.
|
||||
rv_reason = {{p}}if_inspection_check=>c_reason-mileage.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
IF iv_brake_pct < 50.
|
||||
rv_reason = {{p}}if_inspection_check=>c_reason-brakes.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
IF iv_exhaust_ppm > 1000.
|
||||
rv_reason = {{p}}if_inspection_check=>c_reason-exhaust.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
rv_reason = {{p}}if_inspection_check=>c_reason-ok.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD normalize.
|
||||
rv_text = to_upper( replace( val = iv_text sub = ` ` with = `` occ = 0 ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD age_in_years.
|
||||
rv_years = CONV i( iv_to(4) ) - CONV i( iv_from(4) ).
|
||||
IF iv_to+4(4) < iv_from+4(4).
|
||||
rv_years = rv_years - 1.
|
||||
ENDIF.
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
Reference in New Issue
Block a user