Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
sterlite_custom_reports
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
CI / CD Analytics
Repository Analytics
Value Stream Analytics
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
suryakant
sterlite_custom_reports
Commits
72c79200
Commit
72c79200
authored
Oct 04, 2023
by
suryakant
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Sterlite Custom Report Updates
parent
f53f393e
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
72 additions
and
31 deletions
+72
-31
scripts/constants/__init__.py
scripts/constants/__init__.py
+4
-0
scripts/core/handler/event_handler.py
scripts/core/handler/event_handler.py
+20
-18
scripts/template/sterlite_report_template.py
scripts/template/sterlite_report_template.py
+48
-13
No files found.
scripts/constants/__init__.py
View file @
72c79200
...
@@ -47,6 +47,10 @@ class CommonConstants:
...
@@ -47,6 +47,10 @@ class CommonConstants:
YEAR_END_DATE
=
"year_end_date"
YEAR_END_DATE
=
"year_end_date"
DATA_COLUMN
=
"data_column"
DATA_COLUMN
=
"data_column"
DATA
=
"data"
DATA
=
"data"
PROPERTY
=
"property"
START_DATE
=
"start_date"
END_DATE
=
"end_date"
FREQUENCY
=
'D'
class
ReportType
:
class
ReportType
:
...
...
scripts/core/handler/event_handler.py
View file @
72c79200
...
@@ -18,27 +18,26 @@ class CustomReportHandler:
...
@@ -18,27 +18,26 @@ class CustomReportHandler:
:return:
:return:
"""
"""
date_range_list
=
[]
date_range_list
=
[]
# Start date
#
Fetching
Start date
start_date
=
datetime
.
strptime
(
start_date
=
datetime
.
strptime
(
input_json
[
"property"
][
"start_date"
],
CommonConstants
.
DATE_TIME_FORMAT
input_json
[
CommonConstants
.
PROPERTY
][
CommonConstants
.
START_DATE
],
CommonConstants
.
DATE_TIME_FORMAT
)
)
# End date
#
Fetching
End date
end_date
=
datetime
.
strptime
(
end_date
=
datetime
.
strptime
(
input_json
[
"property"
][
"end_date"
],
CommonConstants
.
DATE_TIME_FORMAT
input_json
[
CommonConstants
.
PROPERTY
][
CommonConstants
.
END_DATE
],
CommonConstants
.
DATE_TIME_FORMAT
)
)
logger
.
info
(
f
"Creating list of dates starting from {start_date} to {end_date}"
)
logger
.
info
(
f
"Creating list of dates starting from {start_date} to {end_date}"
)
date_list
=
pd
.
date_range
(
start_date
,
end_date
,
freq
=
'D'
)
# Generating a date range
date_list
=
pd
.
date_range
(
start_date
,
end_date
,
freq
=
CommonConstants
.
FREQUENCY
)
# Iterating and creating where clause filters
# Iterating and creating where clause filters
# Output - {'day_start_date': 'YYYY-MM-DD', 'day_end_date': 'YYYY-MM-DD',
# 'month_start_date': 'YYYY-MM-DD', 'month_end_date': 'YYYY-MM-DD',
# 'year_start_date': 'YYYY-MM-DD', 'year_end_date': 'YYYY-MM-DD'}
for
each_dates
in
date_list
.
strftime
(
for
each_dates
in
date_list
.
strftime
(
CommonConstants
.
DATE_TIME_FORMAT
)
.
to_list
():
CommonConstants
.
DATE_TIME_FORMAT
)
.
to_list
():
# To get the financial year
# To get the
each_dates -
financial year
financial_year
=
None
financial_year
=
None
date_obj
=
datetime
.
strptime
(
each_dates
,
CommonConstants
.
DATE_TIME_FORMAT
)
date_obj
=
datetime
.
strptime
(
each_dates
,
CommonConstants
.
DATE_TIME_FORMAT
)
if
date_obj
.
month
>=
4
:
if
date_obj
.
month
>=
4
:
...
@@ -66,7 +65,6 @@ class CustomReportHandler:
...
@@ -66,7 +65,6 @@ class CustomReportHandler:
"""
"""
for
each_blocks
in
input_json
:
for
each_blocks
in
input_json
:
# Iterating each blocks for fetching query
# Iterating each blocks for fetching query
print
(
each_blocks
)
if
input_json
[
each_blocks
][
CommonConstants
.
QUERY
]:
if
input_json
[
each_blocks
][
CommonConstants
.
QUERY
]:
for
each_kpi
in
input_json
[
each_blocks
][
CommonConstants
.
QUERY
]:
for
each_kpi
in
input_json
[
each_blocks
][
CommonConstants
.
QUERY
]:
...
@@ -93,17 +91,20 @@ class CustomReportHandler:
...
@@ -93,17 +91,20 @@ class CustomReportHandler:
if
not
temp_data_dict
:
if
not
temp_data_dict
:
# Creating null values if no data
# Creating null values if no data
for
each_columns
in
input_json
[
each_blocks
][
"data_column"
]:
for
each_columns
in
input_json
[
each_blocks
][
CommonConstants
.
DATA_COLUMN
]:
temp_data_dict
.
update
({
each_columns
:
None
})
temp_data_dict
.
update
({
each_columns
:
None
})
input_json
[
each_blocks
][
"data"
]
.
append
(
temp_data_dict
)
input_json
[
each_blocks
][
CommonConstants
.
DATA
]
.
append
(
temp_data_dict
)
else
:
else
:
temp_data_dict
=
dict
()
temp_data_dict
=
dict
()
for
each_columns
in
input_json
[
each_blocks
][
"data_column"
]:
for
each_columns
in
input_json
[
each_blocks
][
CommonConstants
.
DATA_COLUMN
]:
temp_data_dict
.
update
(
temp_data_dict
.
update
(
{
each_columns
:
None
}
{
each_columns
:
None
}
)
)
input_json
[
each_blocks
][
"data"
]
.
append
(
temp_data_dict
)
input_json
[
each_blocks
][
CommonConstants
.
DATA
]
.
append
(
temp_data_dict
)
return
input_json
return
input_json
def
custom_report_handler
(
self
,
input_json
):
def
custom_report_handler
(
self
,
input_json
):
...
@@ -113,7 +114,7 @@ class CustomReportHandler:
...
@@ -113,7 +114,7 @@ class CustomReportHandler:
"""
"""
status
=
False
status
=
False
message
=
"Error generating a message"
message
=
"Error generating a message"
data
=
"Data"
data
=
CommonConstants
.
DATA
try
:
try
:
# if str(input_json.job_type).lower() == ReportType.REFINERY_REPORT:
# if str(input_json.job_type).lower() == ReportType.REFINERY_REPORT:
if
str
(
input_json
[
"job_type"
])
.
lower
()
==
ReportType
.
REFINERY_REPORT
:
if
str
(
input_json
[
"job_type"
])
.
lower
()
==
ReportType
.
REFINERY_REPORT
:
...
@@ -127,7 +128,8 @@ class CustomReportHandler:
...
@@ -127,7 +128,8 @@ class CustomReportHandler:
input_json
=
each_blocks
,
date_filter
=
each_date_range
input_json
=
each_blocks
,
date_filter
=
each_date_range
)
)
# print(each_blocks)
# print(each_blocks)
print
(
"========================================="
)
# print("=========================================")
print
(
SterliteRefineryTemplate
.
REPORT_TEMPLATE
)
break
break
except
GeneralException
as
err
:
except
GeneralException
as
err
:
...
...
scripts/template/sterlite_report_template.py
View file @
72c79200
...
@@ -44,14 +44,8 @@ class SterliteRefineryTemplate:
...
@@ -44,14 +44,8 @@ class SterliteRefineryTemplate:
"columns"
:
[
"SAFETY REPORT"
,
"UOM"
,
"NORMS"
,
"ON DATE"
,
"MTD"
,
"YTD"
],
"columns"
:
[
"SAFETY REPORT"
,
"UOM"
,
"NORMS"
,
"ON DATE"
,
"MTD"
,
"YTD"
],
"query"
:
[],
"query"
:
[],
"data"
:
[],
"data"
:
[],
"data_column"
:
[
"data_column"
:
[
"safety_report"
,
"uom"
,
"norms"
,
"safety_report"
,
"on_date"
,
"mtd"
,
"ytd"
],
"uom"
,
"norms"
,
"on_date"
,
"mtd"
,
"ytd"
,
],
"additions"
:
[],
"additions"
:
[],
"description"
:
""
,
"description"
:
""
,
"format"
:
""
,
"format"
:
""
,
...
@@ -148,8 +142,7 @@ class SterliteRefineryTemplate:
...
@@ -148,8 +142,7 @@ class SterliteRefineryTemplate:
"columns"
:
[
"FG INVENTORY"
,
"ON DATE"
,
"MTD"
,
"YTD"
],
"columns"
:
[
"FG INVENTORY"
,
"ON DATE"
,
"MTD"
,
"YTD"
],
"query"
:
[],
"query"
:
[],
"data"
:
[],
"data"
:
[],
"data_column"
:
[
"fg_inventory"
,
"on_date"
,
"data_column"
:
[
"fg_inventory"
,
"on_date"
,
"mtd"
,
"ytd"
],
"mtd"
,
"ytd"
],
"additions"
:
[],
"additions"
:
[],
"description"
:
""
,
"description"
:
""
,
"format"
:
""
,
"format"
:
""
,
...
@@ -158,8 +151,7 @@ class SterliteRefineryTemplate:
...
@@ -158,8 +151,7 @@ class SterliteRefineryTemplate:
"columns"
:
[
"PRODUCTION"
,
"ON DATE"
,
"MTD"
,
"YTD"
],
"columns"
:
[
"PRODUCTION"
,
"ON DATE"
,
"MTD"
,
"YTD"
],
"query"
:
[],
"query"
:
[],
"data"
:
[],
"data"
:
[],
"data_column"
:
[
"production"
,
"on_date"
,
"data_column"
:
[
"production"
,
"on_date"
,
"mtd"
,
"ytd"
],
"mtd"
,
"ytd"
],
"additions"
:
[],
"additions"
:
[],
"description"
:
""
,
"description"
:
""
,
"format"
:
""
,
"format"
:
""
,
...
@@ -176,6 +168,8 @@ class SterliteRefineryTemplate:
...
@@ -176,6 +168,8 @@ class SterliteRefineryTemplate:
],
],
"query"
:
[],
"query"
:
[],
"data"
:
[],
"data"
:
[],
"data_column"
:
[
"crop"
,
"banks"
,
"total_cells"
,
"cell_voltage"
,
"t_shorts"
],
"additions"
:
[],
"additions"
:
[],
"description"
:
""
,
"description"
:
""
,
"format"
:
""
,
"format"
:
""
,
...
@@ -189,10 +183,18 @@ class SterliteRefineryTemplate:
...
@@ -189,10 +183,18 @@ class SterliteRefineryTemplate:
"1st CROP - Sttripping time"
,
"1st CROP - Sttripping time"
,
"2nd CROP - Change over time"
,
"2nd CROP - Change over time"
,
"3rd CROP"
,
"3rd CROP"
,
"CSM Plate Rejection"
,
"CSM Plate Rejection"
],
],
"query"
:
[],
"query"
:
[],
"data"
:
[],
"data"
:
[],
"data_column"
:
[
"stripping_time"
,
"uom"
,
"1st_crop"
,
"2nd_crop"
,
"3rd_crop"
,
"csm_plate_rejection"
],
"additions"
:
[],
"additions"
:
[],
"description"
:
""
,
"description"
:
""
,
"format"
:
""
,
"format"
:
""
,
...
@@ -210,6 +212,10 @@ class SterliteRefineryTemplate:
...
@@ -210,6 +212,10 @@ class SterliteRefineryTemplate:
],
],
"query"
:
[],
"query"
:
[],
"data"
:
[],
"data"
:
[],
"data_column"
:
[
"filter_availability"
,
"on_date"
,
"mtd"
,
"filtered_volume"
,
"total_volume_refinery"
,
"on_date"
],
"additions"
:
[],
"additions"
:
[],
"description"
:
""
,
"description"
:
""
,
"format"
:
""
,
"format"
:
""
,
...
@@ -227,6 +233,14 @@ class SterliteRefineryTemplate:
...
@@ -227,6 +233,14 @@ class SterliteRefineryTemplate:
],
],
"query"
:
[],
"query"
:
[],
"data"
:
[],
"data"
:
[],
"data_column"
:
[
"utilities_consumptions"
,
"uom"
,
"norms"
,
"on_date"
,
"mtd"
,
"ytd"
,
],
"additions"
:
[],
"additions"
:
[],
"description"
:
""
,
"description"
:
""
,
"format"
:
""
,
"format"
:
""
,
...
@@ -235,6 +249,8 @@ class SterliteRefineryTemplate:
...
@@ -235,6 +249,8 @@ class SterliteRefineryTemplate:
"columns"
:
[
"CONSUMABLES"
,
"UOM"
,
"NORMS"
,
"ON DATE"
,
"MTD"
,
"YTD"
],
"columns"
:
[
"CONSUMABLES"
,
"UOM"
,
"NORMS"
,
"ON DATE"
,
"MTD"
,
"YTD"
],
"query"
:
[],
"query"
:
[],
"data"
:
[],
"data"
:
[],
"data_column"
:
[
"consumables"
,
"uom"
,
"norms"
,
"on_date"
,
"mtd"
,
"ytd"
],
"additions"
:
[],
"additions"
:
[],
"description"
:
""
,
"description"
:
""
,
"format"
:
""
,
"format"
:
""
,
...
@@ -252,6 +268,14 @@ class SterliteRefineryTemplate:
...
@@ -252,6 +268,14 @@ class SterliteRefineryTemplate:
],
],
"query"
:
[],
"query"
:
[],
"data"
:
[],
"data"
:
[],
"data_column"
:
[
"electrolyte_composition"
,
"uom"
,
"norms"
,
"date"
,
"cir_1"
,
"cir_2"
,
],
"additions"
:
[],
"additions"
:
[],
"description"
:
""
,
"description"
:
""
,
"format"
:
""
,
"format"
:
""
,
...
@@ -260,6 +284,7 @@ class SterliteRefineryTemplate:
...
@@ -260,6 +284,7 @@ class SterliteRefineryTemplate:
"columns"
:
[
"SUSPENDED SOLIDS"
],
"columns"
:
[
"SUSPENDED SOLIDS"
],
"query"
:
[],
"query"
:
[],
"data"
:
[],
"data"
:
[],
"data_column"
:
[
"suspended_solids"
],
"additions"
:
[],
"additions"
:
[],
"description"
:
""
,
"description"
:
""
,
"format"
:
""
,
"format"
:
""
,
...
@@ -270,6 +295,7 @@ class SterliteRefineryTemplate:
...
@@ -270,6 +295,7 @@ class SterliteRefineryTemplate:
"columns"
:
[
"BLEEDING SECTION"
,
"UOM"
,
"ON DATE"
,
"MTD"
,
"YTD"
],
"columns"
:
[
"BLEEDING SECTION"
,
"UOM"
,
"ON DATE"
,
"MTD"
,
"YTD"
],
"query"
:
[],
"query"
:
[],
"data"
:
[],
"data"
:
[],
"data_column"
:
[
"bleeding_section"
,
"uom"
,
"on_date"
,
"mtd"
,
"ytd"
],
"additions"
:
[],
"additions"
:
[],
"description"
:
""
,
"description"
:
""
,
"format"
:
""
,
"format"
:
""
,
...
@@ -278,6 +304,7 @@ class SterliteRefineryTemplate:
...
@@ -278,6 +304,7 @@ class SterliteRefineryTemplate:
"columns"
:
[
"BANK / CROP"
,
"TIME"
,
"WEIGHT (MT)"
,
"CELLS"
,
"READING"
],
"columns"
:
[
"BANK / CROP"
,
"TIME"
,
"WEIGHT (MT)"
,
"CELLS"
,
"READING"
],
"query"
:
[],
"query"
:
[],
"data"
:
[],
"data"
:
[],
"data_column"
:
[
"bank_crop"
,
"time"
,
"weight"
,
"cells"
,
"reading"
],
"additions"
:
[],
"additions"
:
[],
"description"
:
""
,
"description"
:
""
,
"format"
:
""
,
"format"
:
""
,
...
@@ -295,6 +322,14 @@ class SterliteRefineryTemplate:
...
@@ -295,6 +322,14 @@ class SterliteRefineryTemplate:
],
],
"query"
:
[],
"query"
:
[],
"data"
:
[],
"data"
:
[],
"data_column"
:
[
"department(m4)"
,
"equipment_details"
,
"equipment_location"
,
"duration"
,
"production"
,
"cause"
,
],
"additions"
:
[],
"additions"
:
[],
"description"
:
""
,
"description"
:
""
,
"format"
:
""
,
"format"
:
""
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment