o
    rh                     @   sZ   d dl Z d dlZd dlZdZg dZdd Zdd Zdd	 Zd
d Zdd Z	dddZ
dS )    Nzstrategy.csvchat_id
day_number	plan_jsonhistory_jsonc                  C   sZ   t jts+ttdddd} t| }|t W d    d S 1 s$w   Y  d S d S )Nw utf-8newlineencoding)	ospathisfile	FILE_NAMEopencsvwriterwriterowHEADERS)fr    r   =/var/www/html/tgBotAssistant/bot/handlers/strategy_storage.pyensure_file_exists
   s   
"r   c                  C   sF   t tdddd} t| }t|W  d    S 1 sw   Y  d S )Nrr   r	   r
   )r   r   r   
DictReaderlist)r   readerr   r   r   read_all_rows   s   
$r   c                 C   sV   t tdddd}tj|td}|  ||  W d    d S 1 s$w   Y  d S )Nr   r   r	   r
   )
fieldnames)r   r   r   
DictWriterr   writeheader	writerows)rowsr   r   r   r   r   write_all_rows   s
   "r$   c              	      sV   t   t } fdd|D }|t dtj|ddtjg ddd t| d S )Nc                    s    g | ]}|d  t  kr|qS r   )str).0rowr%   r   r   
<listcomp>!   s     z&save_user_strategy.<locals>.<listcomp>0Fensure_asciir   )r   r   appendr&   jsondumpsr$   )r   planr#   new_rowsr   r%   r   save_user_strategy   s   r2   c                 C   sX   t   t }|D ]!}|d t| kr)| t|d t|d t|d d  S qd S )Nr   r   r   r   )r   r   r0   history)r   r   r&   intr.   loads)r   r#   r(   r   r   r   get_user_strategy+   s   

r6   c                 C   s   t   t }d}|D ]2}|d t| kr<|d urt||d< |d ur+tj|dd|d< |d ur8tj|dd|d< d} nq
|sGtd|  d	t| d S )
NFr   r   r+   r   r   TzUser z not found in strategy.csv)r   r   r&   r.   r/   
ValueErrorr$   )r   r   r0   r3   r#   updatedr(   r   r   r   update_user_strategy9   s"   	r9   )NNN)r   r.   r   r   r   r   r   r$   r2   r6   r9   r   r   r   r   <module>   s    