Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
Jubilant_DB_Scripts
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
tarun.madamanchi
Jubilant_DB_Scripts
Commits
f4ae6a55
Commit
f4ae6a55
authored
Nov 15, 2022
by
tarun2512
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
DB_scripts
parents
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
196 additions
and
0 deletions
+196
-0
.idea/.gitignore
.idea/.gitignore
+4
-0
db_script_for_location.py
db_script_for_location.py
+25
-0
db_script_to_update_batch_downtime_step_keys.py
db_script_to_update_batch_downtime_step_keys.py
+35
-0
db_script_to_update_downtime_common_step_keys.py
db_script_to_update_downtime_common_step_keys.py
+129
-0
requirements.txt
requirements.txt
+3
-0
No files found.
.idea/.gitignore
0 → 100644
View file @
f4ae6a55
# Default ignored files
/shelf/
/workspace.xml
/.idea
db_script_for_location.py
0 → 100644
View file @
f4ae6a55
from
pymongo
import
MongoClient
CONNECTION_STRING
=
"mongodb://ilensread:ilens@34.93.53.174:57017/?authMechanism=DEFAULT&directConnection=true"
client
=
MongoClient
(
CONNECTION_STRING
)
mydatabase
=
client
[
"project_181__ilens_assistant"
]
task_instance_data
=
mydatabase
[
'task_instance_data'
]
task_instance
=
mydatabase
[
'task_instances'
]
query
=
{
"step_id"
:
"step_1165"
,
"step_data.data.Location_1"
:
{
"$exists"
:
True
}}
records
=
list
(
mydatabase
.
task_instance_data
.
find
(
query
))
data_list
=
[]
for
record
in
records
:
if
"step_data"
in
list
(
record
.
keys
())
and
"data"
in
list
(
record
[
'step_data'
]
.
keys
()):
data_list
.
append
({
"task_id"
:
record
.
get
(
"task_id"
),
"Location_1"
:
record
[
'step_data'
][
'data'
]
.
get
(
"Location_1"
)})
for
record
in
data_list
:
query
=
{
"task_id"
:
record
[
'task_id'
]}
task_instance_records
=
list
(
mydatabase
.
task_instances
.
find
(
query
))
for
task_instance_record
in
task_instance_records
:
if
'task_creation_step'
in
list
(
task_instance_record
.
keys
()):
task_instance_record
[
'task_creation_step'
]
.
update
({
"Location_1"
:
record
[
'Location_1'
]})
mydatabase
.
task_instances
.
update_one
(
query
,
task_instance_data
)
db_script_to_update_batch_downtime_step_keys.py
0 → 100644
View file @
f4ae6a55
from
pymongo
import
MongoClient
import
psycopg2
CONNECTION_STRING
=
"mongodb://ilens:ilens@192.168.3.200:16019/?authMechanism=DEFAULT&directConnection=true"
client
=
MongoClient
(
CONNECTION_STRING
)
mydatabase
=
client
[
"project_181__ilens_assistant"
]
mycollection
=
mydatabase
[
'task_instance_data'
]
query
=
{
"step_id"
:
"step_1486"
}
records
=
list
(
mydatabase
.
task_instance_data
.
find
(
query
))
data_mapping
=
{
'bBatchNoB6'
:
'step_no'
,
'select'
:
'stage_process'
,
'bAssets'
:
'assets'
,
'date1'
:
'from_time'
,
'date2'
:
'to_time'
,
'bBatchNoB3'
:
'loss_category'
,
'bBatchNoB4'
:
'loss_reason'
,
'bBatchNoB5'
:
'loss_reason_comment'
,
}
for
record
in
records
:
if
'step_data'
in
list
(
record
.
keys
())
and
'data'
in
list
(
record
[
'step_data'
]
.
keys
())
and
'data_grid_non_periodic'
in
list
(
record
[
'step_data'
][
'data'
]
.
keys
()):
for
data
in
record
[
'step_data'
][
'data'
][
'data_grid_non_periodic'
]:
for
key
in
list
(
data
.
keys
()):
if
key
in
list
(
data_mapping
.
keys
()):
data
[
data_mapping
[
key
]]
=
data
[
key
]
del
data
[
key
]
print
(
records
)
for
record
in
records
:
if
record
:
mydatabase
.
task_instance_data
.
delete_one
({
"step_id"
:
record
.
get
(
"step_id"
),
"task_id"
:
record
.
get
(
"task_id"
)})
mydatabase
.
task_instance_data
.
insert_one
(
record
)
db_script_to_update_downtime_common_step_keys.py
0 → 100644
View file @
f4ae6a55
from
pymongo
import
MongoClient
import
psycopg2
CONNECTION_STRING
=
"mongodb://@34.93.53.174:57017/?authMechanism=DEFAULT&directConnection=true"
client
=
MongoClient
(
CONNECTION_STRING
)
mydatabase
=
client
[
"project_181__ilens_assistant"
]
mycollection
=
mydatabase
[
'periodic_data'
]
query
=
{
"step_id"
:
"step_1414"
}
records
=
list
(
mydatabase
.
periodic_data
.
find
(
query
))
data_mapping
=
{
'bBatchNoB6'
:
'step_no'
,
'select'
:
'stage_process'
,
'bAssets'
:
'assets'
,
'date1'
:
'from_time'
,
'date2'
:
'to_time'
,
'bBatchNoB3'
:
'loss_category'
,
'bBatchNoB4'
:
'loss_reason'
,
'bBatchNoB5'
:
'loss_reason_comment'
,
}
for
record
in
records
:
if
'manual_data'
in
list
(
record
.
keys
())
and
'prod_losses'
in
list
(
record
[
'manual_data'
]
.
keys
()):
for
data
in
record
[
'manual_data'
][
'prod_losses'
]:
for
key
in
list
(
data
.
keys
()):
if
key
in
list
(
data_mapping
.
keys
()):
data
[
data_mapping
[
key
]]
=
data
[
key
]
del
data
[
key
]
if
"manual_data"
in
list
(
record
.
keys
())
and
"data_grid"
in
list
(
record
[
'manual_data'
]
.
keys
()):
for
data
in
record
[
'manual_data'
][
'data_grid'
]:
for
key
in
list
(
data
.
keys
()):
if
key
in
list
(
data_mapping
.
keys
()):
data
[
data_mapping
[
key
]]
=
data
[
key
]
del
data
[
key
]
list_of_data
=
[]
for
record
in
records
:
if
"manual_data"
in
list
(
record
.
keys
())
and
"data_grid"
in
list
(
record
[
'manual_data'
]
.
keys
()):
dictionary
=
{}
for
data
in
record
[
'manual_data'
][
'data_grid'
]:
dictionary
=
{
'date'
:
record
.
get
(
"date"
),
'step_id'
:
record
.
get
(
"step_id"
)}
if
"assets"
in
list
(
data
.
keys
()):
if
isinstance
(
data
[
'assets'
][
'asset_model'
],
str
):
dictionary
.
update
({
'asset_model'
:
data
[
'assets'
]
.
get
(
'asset_model'
,
None
),
'asset'
:
data
[
'assets'
]
.
get
(
'asset'
,
None
),
'asset_model_name'
:
None
,
'asset_name'
:
None
})
elif
data
[
'assets'
][
'asset'
]
is
None
:
dictionary
.
update
({
'asset_model'
:
data
[
'assets'
][
'asset_model'
]
.
get
(
'value'
,
None
),
'asset'
:
None
,
'asset_model_name'
:
data
[
'assets'
][
'asset_model'
]
.
get
(
'label'
,
None
),
'asset_name'
:
None
})
elif
data
[
'assets'
][
'asset_model'
]
is
None
:
dictionary
.
update
({
'asset_model'
:
None
,
'asset'
:
data
[
'assets'
][
'asset'
]
.
get
(
'value'
,
None
),
'asset_model_name'
:
None
,
'asset_name'
:
data
[
'assets'
][
'asset'
]
.
get
(
'label'
,
None
)})
else
:
dictionary
.
update
({
'asset_model'
:
data
[
'assets'
][
'asset_model'
]
.
get
(
'value'
,
None
),
'asset'
:
data
[
'assets'
][
'asset'
]
.
get
(
'value'
,
None
),
'asset_model_name'
:
data
[
'assets'
][
'asset_model'
]
.
get
(
'label'
,
None
),
'asset_name'
:
data
[
'assets'
][
'asset'
]
.
get
(
'label'
,
None
)})
else
:
dictionary
.
update
({
'asset_model'
:
None
,
'asset'
:
None
,
'asset_model_name'
:
None
,
'asset_name'
:
None
})
dictionary
.
update
({
'loss_category'
:
data
.
get
(
'loss_category'
,
None
),
'loss_reason'
:
data
.
get
(
'loss_reason'
,
None
),
'loss_reason_comment'
:
data
.
get
(
'lose_reason_comment'
,
None
),
'loss_in_minutes'
:
data
.
get
(
'lose_in_minutes'
,
0
),
'from_time'
:
data
.
get
(
'from_time'
,
None
),
'to_time'
:
data
.
get
(
'to_time'
,
None
)})
if
record
[
'manual_data'
]
.
get
(
"unadjusted_loss_in_time"
)
==
''
:
dictionary
.
update
({
'unadjusted_loss_in_time'
:
0
})
else
:
dictionary
.
update
({
'unadjusted_loss_in_time'
:
record
[
'manual_data'
]
.
get
(
'unadjusted_loss_in_time'
,
None
)}),
if
'booked_loss_in_time'
in
list
(
record
[
'manual_data'
]
.
keys
()):
dictionary
.
update
({
'booked_loss_in_time'
:
record
[
'manual_data'
]
.
get
(
'booked_loss_in_time'
,
None
)})
else
:
dictionary
.
update
({
'booked_loss_in_time'
:
0
})
if
'planned_loss_in_minutes'
in
list
(
record
[
'manual_data'
]
.
keys
()):
dictionary
.
update
({
'planned_loss_in_minutes'
:
record
[
'manual_data'
]
.
get
(
'planned_loss_in_minutes'
,
None
)})
else
:
dictionary
.
update
({
'planned_loss_in_minutes'
:
0
})
if
'availabe_loss_in_minutes'
in
list
(
record
[
'manual_data'
]
.
keys
()):
dictionary
.
update
({
'availabe_loss_in_minutes'
:
record
[
'manual_data'
]
.
get
(
'availabe_loss_in_minutes'
,
None
)})
else
:
dictionary
.
update
({
'availabe_loss_in_minutes'
:
0
})
list_of_data
.
append
(
dictionary
)
try
:
connection
=
psycopg2
.
connect
(
user
=
""
,
password
=
""
,
host
=
"34.100.245.53"
,
port
=
"5434"
,
database
=
"ilens_assistant"
)
cursor
=
connection
.
cursor
()
postgres_insert_query
=
""" INSERT INTO oee_production_losses (date, step_id, asset_model, asset, asset_model_name,
asset_name, loss_category, loss_reason, loss_reason_comment, loss_in_minutes, from_time, to_time,
unadjusted_loss_in_time, booked_loss_in_time, available_loss_in_minutes, planned_loss_in_minutes)
VALUES (
%
s,
%
s,
%
s,
%
s,
%
s,
%
s,
%
s,
%
s,
%
s,
%
s,
%
s,
%
s,
%
s,
%
s,
%
s,
%
s)"""
for
data
in
list_of_data
:
if
data
:
record_to_insert
=
tuple
(
data
.
values
())
print
(
len
(
record_to_insert
),
record_to_insert
)
query
=
f
"""delete from oee_production_losses where date='{data['date']}' and step_id='{data['step_id']}'"""
cursor
.
execute
(
query
)
try
:
cursor
.
execute
(
postgres_insert_query
,
record_to_insert
)
connection
.
commit
()
except
Exception
as
e
:
connection
.
commit
()
print
(
str
(
e
))
count
=
cursor
.
rowcount
print
(
count
,
"Record inserted successfully into mobile table"
)
except
(
Exception
,
psycopg2
.
Error
)
as
error
:
print
(
"Failed to insert record into mobile table"
,
error
)
for
record
in
records
:
if
record
:
mydatabase
.
periodic_data
.
delete_one
({
"step_id"
:
record
.
get
(
"step_id"
),
"date"
:
record
.
get
(
"date"
)})
mydatabase
.
periodic_data
.
insert_one
(
record
)
\ No newline at end of file
requirements.txt
0 → 100644
View file @
f4ae6a55
pymongo
psycopg2
\ No newline at end of file
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