| Current Path : /home/deltalab/PMS/recommendations/user_profiling/components/__pycache__/ |
| Current File : //home/deltalab/PMS/recommendations/user_profiling/components/__pycache__/DbService.cpython-39.pyc |
a
E��d�G � @ sv d dl mZ d dlmZmZmZ d dlmZ d dlm Z d dl
mZmZ d dlZ
d dlmZ d dlZG dd � d �ZdS )
� )�path)�load_collectionTypes�
read_settings�read_indaco_credentials)�MongoDB)� DataFrame)�
create_engine�textN)�Fernetc @ s� e Zd ZdZdd� Zed�dd�Zd$ed�dd �Zd%d
d�Zd&dd
�Z ed�dd�Z
ed�dd�Zed�dd�Z
ed�dd�Zdd� Zdd� Zdd� Zdd� Zdd� Zd d!� Zd"d#� ZdS )'� DbServiceNc
C s� t � }|| _||d v r,t|�\}}}}}ntd|d � d�� td� |dkrdt|||||�| _n,d|� d|� d|� d|� d |� �
}t|�| _d S )
NZdatabaseNamezDatabase not available! ?�?� �mongodbzmssql+pymssql://�:�@�/)r �db_typer �print�exitr �
db_servicer ) �selfr �appSettings�hostname�port�username�password�db_nameZ
url_engine� r �I/home/deltalab/PMS/recommendations/user_profiling/components/DbService.py�__init__ s "zDbService.__init__)�returnc C s( | j dkr| j�� }nd}| �|�}|S )Nr a�
SELECT cat1._id,
cat1.label AS 'categoryName',
cat1.googleId,
cat2.label AS 'parent',
cat1.isRoot,
cat1.isLeaf,
cat1.createdAt,
cat1.updatedAt
FROM dbo.pms_categories cat1
INNER JOIN dbo.pms_categories cat2 ON (cat1.parentId = cat2._id)
)r r ZgetProductTypes�
execute_query)r ZproductTypes�queryr r r �get_productTypes! s
zDbService.get_productTypesFc s| | j dkr| j�||�}n^d}| �|�}|d jddd� t�dd�}t|d d
�\}}|d � |d �� fdd��|d<