4242from dve .parser .file_handling .implementations .file import LocalFilesystemImplementation
4343from dve .parser .file_handling .service import _get_implementation
4444from dve .pipeline .utils import SubmissionStatus , deadletter_file , load_config , load_reader
45- from dve .reporting .constants import ErrorReportStatus
45+ from dve .reporting .constants import ErrorReportCategories
4646from dve .reporting .error_report import ERROR_SCHEMA , calculate_aggregates
4747
4848PERMISSIBLE_EXCEPTIONS : tuple [type [Exception ]] = (
@@ -635,14 +635,19 @@ def apply_business_rules( # pylint: disable=R0914
635635 projected
636636 )
637637
638- # todo - add to submission_status around records that have passed record validations/rejected
639638 submission_status .number_of_records = self .get_entity_count (
640639 entity = entity_manager .entities [
641640 f"""Original{ rules .global_variables .get (
642641 'entity' ,
643642 submission_info .dataset_id )} """
644643 ]
645644 )
645+ submission_status .number_of_records_rejected = (
646+ submission_status .number_of_records -
647+ self .get_entity_count (entity_manager .entities [
648+ rules .global_variables .get ("entity" , submission_info .dataset_id )
649+ ])
650+ )
646651
647652 return submission_info , submission_status
648653
@@ -765,8 +770,8 @@ def _get_error_dataframes(self, submission_id: str):
765770 pl .when (pl .col ("Status" ) == pl .lit ("informational" ))
766771 .then (pl .lit ("Warning" ))
767772 .when (pl .col ("FailureType" ) == pl .lit ("submission" )) # type: ignore
768- .then (pl .lit (ErrorReportStatus .FILE_REJECTION .reporting_name )) # type: ignore
769- .otherwise (pl .lit (ErrorReportStatus .RECORD_REJECTION .reporting_name )) # type: ignore
773+ .then (pl .lit (ErrorReportCategories .FILE_REJECTION .reporting_name )) # type: ignore
774+ .otherwise (pl .lit (ErrorReportCategories .RECORD_REJECTION .reporting_name )) # type: ignore
770775 .alias ("error_type" ) # type: ignore
771776 )
772777 df = df .select (
@@ -830,12 +835,12 @@ def error_report(
830835 submission_id = submission_info .submission_id ,
831836 record_count = submission_status .number_of_records ,
832837 number_submission_rejections = err_types .get (
833- ErrorReportStatus .FILE_REJECTION .reporting_name , 0
838+ ErrorReportCategories .FILE_REJECTION .reporting_name , 0
834839 ),
835840 number_record_rejections = err_types .get (
836- ErrorReportStatus .RECORD_REJECTION .reporting_name , 0
841+ ErrorReportCategories .RECORD_REJECTION .reporting_name , 0
837842 ),
838- number_warnings = err_types .get (ErrorReportStatus .WARNING .reporting_name , 0 ),
843+ number_warnings = err_types .get (ErrorReportCategories .WARNING .reporting_name , 0 ),
839844 )
840845
841846 summary_dict = {
@@ -846,7 +851,7 @@ def error_report(
846851 summary_items = er .SummaryItems (
847852 submission_status = submission_status ,
848853 summary_dict = summary_dict ,
849- row_headings = [e .reporting_name for e in ErrorReportStatus ],
854+ row_headings = [e .reporting_name for e in ErrorReportCategories ],
850855 )
851856
852857 workbook = er .ExcelFormat (
0 commit comments