Commit 79e87809 authored by shreya.m's avatar shreya.m

save part is done

parent abd27efe
......@@ -129,3 +129,11 @@ class TagHierarchyKeys:
KEY_ASSET_MODEL_ID = "asset_model_id"
KEY_ASSET_VERSION = "asset_version"
KEY_additional_fields = "additional_fields"
class CommonKeys:
KEY_CREATED_BY = "created_by"
KEY_CREATED_TIME = "created_at"
KEY_COMPLETED_AT = "completed_at"
KEY_UPDATED_AT = "updated_by"
KEY_LAST_UPDATED_TIME = "updated_at"
......@@ -3,6 +3,7 @@ import traceback
from scripts.db.mongo.ilens_assistant.collection.tag_instance_data import TagInstanceData
from scripts.schemas.batch_oee import GetOeeServices
from scripts.logging import logger
from scripts.utils.common_utils import CommonUtils
from scripts.utils.mongo_util import MongoCollectionBaseClass
from scripts.schemas.oee_config_schema import Oee_Tag_Mapping_List, Get_Oee_Tag, Update_Oee_Tags, Get_Project_Id
from scripts.constants import CommonKeys
......@@ -12,47 +13,40 @@ from scripts.utils.mongo_util import MongoCollectionBaseClass
from scripts.schemas import mongo_schema
from sqlalchemy.orm import Session
from scripts.constants.db_connections import mongo_client
import json
class OeeServices:
def __init__(self, project_id=None):
try:
self.tag_data_conn = TagInstanceData(mongo_client=mongo_client)
self.common_utils = CommonUtils()
# self.hierarchy = TagInstanceData(mongo_client=mongo_client, project_id=project_id)
except Exception as e:
raise logger.exception(f"Error while connecting to mongodb {e.args}")
def oee_tag(self, request_data: GetOeeServices,db: Session,user_id):
def oee_tag(self, request_data: GetOeeServices, db: Session, user_id):
try:
insert_json = {"hierarchy": request_data.hierarchy,
"project_id": request_data.project_id,
"meta": request_data.meta,
"oee_tag_mapping": request_data.oee_tag_mapping
}
result = self.tag_data_conn.insert_one(data=insert_json)
if result:
logger.info("Data inserted in to mongodb successfully")
else:
logger.info("Unable to insert data in to Mongodb")
insert_json = dict(hierarchy=request_data.hierarchy,
project_id=request_data.project_id,
meta=request_data.meta,
oee_tag_mapping=request_data.oee_tag_mapping
)
result = self.tag_data_conn.add_tag(insert_json)
return result
except Exception as e:
raise logger.exception(f"Error occurred while inserting data{e.args}")
raise logger.exception(f"Error occurred while inserting data{e}")
def get_oee_tag(self, request_data: GetOeeServices,db:Session):
def get_oee_tag(self, request_data: GetOeeServices, db: Session):
try:
query = {'project_id': request_data.project_id}
skips = request_data.page_size * (request_data.page_num - 1)
no_of_documents = self.tag_data_conn.count_documents(query=query)
result = self.tag_data_conn.find(query=query).skip(skips).limit(request_data.page_num)
if result:
# if skips < no_of_documents:
# return_json["endOfrecords"] = False
# else:
# return_json["endOfrecords"] = True
return result
result = self.tag_data_conn.find_data_project_id(request_data.project_id)
print(result)
except Exception as e:
raise logger.exception(f"Exception occurred while fetching data as {e.args}")
raise logger.exception(f"Exception occurred while fetching data as {e}")
def delete_oee_tags(self, request_data: GetOeeServices,db:Session):
def delete_oee_tags(self, request_data: GetOeeServices, db: Session):
try:
query = {"project_id": request_data.project_id}
result = self.tag_data_conn.delete_one(query=query)
......@@ -61,7 +55,7 @@ class OeeServices:
except Exception as e:
raise logger.exception(f"Exception occurred while fetching data as {e.args}")
def update_oee_tags(self, request_data: GetOeeServices,db:Session):
def update_oee_tags(self, request_data: GetOeeServices, db: Session):
try:
query = {"project_id": ['update_oee_tags.project_id']}
result = self.tag_data_conn.update_one(query=query)
......@@ -69,3 +63,22 @@ class OeeServices:
return result
except Exception as e:
raise logger.exception(f"Exception occurred while fetching data as {e.args}")
# query = {'project_id': request_data.project_id}
# skips = request_data.page_size * (request_data.page_num - 1)
# no_of_documents = self.tag_data_conn.count_documents(query=query)
# result = self.tag_data_conn.find(query=query).skip(skips).limit(request_data.page_num)
# if skips < no_of_documents:
# return_json["endOfrecords"] = False
# else:
# return_json["endOfrecords"] = True
# meta = request_data.meta
# updated_meta=meta.update(self.common_utils.get_user_meta(user_id, check_flag=True))
# if request_data.hierarchy:
# self.tag_data_conn.update_hierarchy_data(
# hierarchy=insert_json["hierarchy"],
# data=insert_json, upsert=True)
# return insert_json["hierarchy"]
......@@ -38,8 +38,8 @@ class TagInstanceData(MongoCollectionBaseClass):
query = {"project": project_id}
record = self.find_one(query)
if not record:
return TagInstanceDataSchema(**dict())
return TagInstanceDataSchema(**dict(record))
return TagInstanceDataSchema()
return record
def find_all_project_instance_data(self, **query):
records = self.find(query)
......@@ -52,3 +52,24 @@ class TagInstanceData(MongoCollectionBaseClass):
if not records:
return list()
return records
def update_hierarchy_data(self, hierarchy, data, upsert=False):
query = {"hierarchy": hierarchy}
return self.update_one(data=data, query=query, upsert=upsert)
def get_tag_data(self, query):
record = self.find_one(query)
if not record:
return None
return record
def add_tag(self, data):
self.insert_one(data)
return TagInstanceDataSchema(**data)
def insert_one_tag(self, data):
return self.insert_one(data)
def add_new_tag(self, data):
self.insert_one(data.dict())
return TagInstanceDataSchema(**data.dict()).hierarchy
from scripts.constants import DBConstants
database = DBConstants.db_metadata
......@@ -17,13 +17,13 @@ auth = CookieAuthentication()
@oee_config_router.post(Endpoints.api_save_tag)
def save_oee_tag(request_data: GetOeeServices, user_id=Depends(auth), db=Depends(get_db),
async def save_oee_tag(request_data: GetOeeServices, user_id=Depends(auth), db=Depends(get_db),
meta: MetaInfoSchema = Depends(get_cookies)):
try:
oee_services = OeeServices(project_id=meta.project_id)
result = oee_services.oee_tag(request_data, user_id, db)
if result:
return DefaultResponse(message='Oee Tag Saved Successfully', data=result)
return DefaultResponse(status="success",message='Oee Tag Saved Successfully', data=result)
except Exception as e:
tb = traceback.format_exc()
logger.exception(e)
......@@ -32,7 +32,7 @@ def save_oee_tag(request_data: GetOeeServices, user_id=Depends(auth), db=Depends
@oee_config_router.post(Endpoints.api_get_tag)
def get_oee_tag(request_data: GetOeeServices, db=Depends(get_db),
async def get_oee_tag(request_data: GetOeeServices, db=Depends(get_db),
meta: MetaInfoSchema = Depends(get_cookies)):
try:
oee_services = OeeServices(project_id=meta.project_id)
......@@ -48,7 +48,7 @@ def get_oee_tag(request_data: GetOeeServices, db=Depends(get_db),
@oee_config_router.post(Endpoints.api_delete_tag)
def delete_oee_tag(request_data: GetOeeServices, db=Depends(get_db),
async def delete_oee_tag(request_data: GetOeeServices, db=Depends(get_db),
meta: MetaInfoSchema = Depends(get_cookies)):
try:
oee_services = OeeServices(project_id=meta.project_id)
......@@ -63,7 +63,7 @@ def delete_oee_tag(request_data: GetOeeServices, db=Depends(get_db),
@oee_config_router.post(Endpoints.api_update_tag)
def update_oee_tag(request_data: GetOeeServices, db=Depends(get_db),
async def update_oee_tag(request_data: GetOeeServices, db=Depends(get_db),
meta: MetaInfoSchema = Depends(get_cookies)):
try:
oee_services = OeeServices(project_id=meta.project_id)
......
from datetime import datetime
import time
import pendulum
from scripts.constants.db_connections import mongo_client
from scripts.config import PathToServices
from scripts.constants import Secrets
from scripts.constants import Secrets, CommonKeys
from scripts.logging import logger
from scripts.utils.auth_util import ILensRequest, AuthenticationError
from scripts.utils.security_utils.apply_encrytion_util import create_token
class CommonUtils:
def __init__(self, project_id=None):
self.common_key = CommonKeys()
@staticmethod
def check_date_format(date_time_str, time_format):
......@@ -76,3 +78,15 @@ class CommonUtils:
except Exception as e:
logger.exception(str(e))
raise
def get_user_meta(self, user_id=None, check_flag=False):
data_for_meta = {}
if check_flag:
data_for_meta[self.common_key.KEY_CREATED_BY] = user_id
data_for_meta[self.common_key.KEY_CREATED_TIME] = int(time.time() * 1000)
data_for_meta[self.common_key.KEY_UPDATED_AT] = user_id
data_for_meta[self.common_key.KEY_LAST_UPDATED_TIME] = int(time.time() * 1000)
else:
data_for_meta[self.common_key.KEY_UPDATED_AT] = user_id
data_for_meta[self.common_key.KEY_LAST_UPDATED_TIME] = int(time.time() * 1000)
return data_for_meta
......@@ -303,3 +303,4 @@ class MongoAggregateBaseClass:
except Exception as e:
logger.exception(str(e))
raise
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment