mirror of
https://github.com/abapGit/abapGit.git
synced 2025-04-30 20:03:20 +08:00
Add some stats for DB view (#6675)
This commit is contained in:
parent
64a9b36725
commit
204dbcdbae
|
@ -29,7 +29,6 @@ CLASS zcl_abapgit_gui_page_db DEFINITION
|
|||
delete TYPE string VALUE 'delete',
|
||||
backup TYPE string VALUE 'backup',
|
||||
restore TYPE string VALUE 'restore',
|
||||
back TYPE string VALUE 'back',
|
||||
END OF c_action.
|
||||
|
||||
CONSTANTS c_css_url TYPE string VALUE 'css/page_db.css'.
|
||||
|
@ -47,6 +46,14 @@ CLASS zcl_abapgit_gui_page_db DEFINITION
|
|||
RAISING
|
||||
zcx_abapgit_exception.
|
||||
|
||||
METHODS render_stats
|
||||
IMPORTING
|
||||
it_db_entries TYPE zif_abapgit_persistence=>ty_contents
|
||||
RETURNING
|
||||
VALUE(ri_html) TYPE REF TO zif_abapgit_html
|
||||
RAISING
|
||||
zcx_abapgit_exception.
|
||||
|
||||
METHODS render_table
|
||||
IMPORTING
|
||||
it_db_entries TYPE zif_abapgit_persistence=>ty_contents
|
||||
|
@ -514,6 +521,38 @@ CLASS zcl_abapgit_gui_page_db IMPLEMENTATION.
|
|||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD render_stats.
|
||||
|
||||
DATA:
|
||||
lv_cnt TYPE i,
|
||||
lv_online TYPE i,
|
||||
lv_offline TYPE i,
|
||||
lv_users TYPE i.
|
||||
|
||||
FIELD-SYMBOLS <ls_db_entry> LIKE LINE OF it_db_entries.
|
||||
|
||||
LOOP AT it_db_entries ASSIGNING <ls_db_entry>.
|
||||
IF <ls_db_entry>-type = zcl_abapgit_persistence_db=>c_type_repo.
|
||||
FIND FIRST OCCURRENCE OF REGEX '<OFFLINE/>'
|
||||
IN <ls_db_entry>-data_str IGNORING CASE MATCH COUNT lv_cnt.
|
||||
IF lv_cnt > 0.
|
||||
lv_online = lv_online + 1.
|
||||
ELSE.
|
||||
lv_offline = lv_offline + 1.
|
||||
ENDIF.
|
||||
ELSEIF <ls_db_entry>-type = zcl_abapgit_persistence_db=>c_type_user.
|
||||
lv_users = lv_users + 1.
|
||||
ENDIF.
|
||||
ENDLOOP.
|
||||
|
||||
ri_html = zcl_abapgit_html=>create( ).
|
||||
|
||||
ri_html->add( |Repositories: { lv_online + lv_offline } ({ lv_online } online, { lv_offline } offline),| ).
|
||||
ri_html->add( |Users: { lv_users }| ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD render_table.
|
||||
|
||||
ri_html = zcl_abapgit_html_table=>create( me
|
||||
|
@ -566,7 +605,7 @@ CLASS zcl_abapgit_gui_page_db IMPLEMENTATION.
|
|||
iv_act = c_action-restore ).
|
||||
ro_toolbar->add(
|
||||
iv_txt = 'Back'
|
||||
iv_act = c_action-back ).
|
||||
iv_act = zif_abapgit_definitions=>c_action-go_back ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
@ -579,7 +618,11 @@ CLASS zcl_abapgit_gui_page_db IMPLEMENTATION.
|
|||
|
||||
lt_db_entries = zcl_abapgit_persistence_db=>get_instance( )->list( ).
|
||||
|
||||
CREATE OBJECT ri_html TYPE zcl_abapgit_html.
|
||||
ri_html = zcl_abapgit_html=>create( ).
|
||||
|
||||
ri_html->add( '<div class="db-list">' ).
|
||||
ri_html->add( render_stats( lt_db_entries ) ).
|
||||
ri_html->add( '</div>' ).
|
||||
|
||||
ri_html->add( '<div class="db-list">' ).
|
||||
ri_html->add( render_table( lt_db_entries ) ).
|
||||
|
|
Loading…
Reference in New Issue
Block a user