
    Ji                         d dl mZmZ d dlmZ d dlmZ d dlmZ d dl	m	Z	m
Z
 d dlZ ej                  e      Z e       Zej!                  d       ee      fded	efd
       Zy)    )	APIRouterDepends)Session)text)get_db)datetimetimezoneNz(/api/debug/activity-check/{developer_id}developer_iddbc                   K   	 |j                  t        d      d| i      j                         }|s/d|  d|j                  t        d            j                         dS |j                  t        d      d| i      j                         }|j                  t        d      d| i      j                         }|j                  t        d	      d| i      j                         }| d
|r|d   nd|d   r|d   j	                         nd|d   r|d   j	                         ndd|D cg c]@  }|d   xs d|d   t        |d   xs d      t        t        |d   xs d      dz  d      dB c}|D cg c]*  }|d   |d   |d   |d   r|d   j	                         ndd, c}dS c c}w c c}w # t        $ r/}t        j                  d|        dt        |      icY d}~S d}~ww xY ww)z5Debug endpoint to check activity data for a developerzKSELECT * FROM developers WHERE developer_id = :dev_id OR id::text = :dev_iddev_idzDeveloper 'z' not foundz)SELECT developer_id, name FROM developers)erroravailable_developersz
                SELECT COUNT(*), 
                       MIN(timestamp) as first_activity,
                       MAX(timestamp) as last_activity
                FROM activity_records 
                WHERE developer_id = :dev_id
            a8  
                SELECT category, COUNT(*) as count, SUM(duration) as total_duration
                FROM activity_records 
                WHERE developer_id = :dev_id
                  AND timestamp >= NOW() - INTERVAL '7 days'
                GROUP BY category
                ORDER BY count DESC
            z
                SELECT application_name, category, duration, timestamp
                FROM activity_records 
                WHERE developer_id = :dev_id
                ORDER BY timestamp DESC
                LIMIT 10
            Tr      N   )first_activitylast_activityuncategorizedi  )categorycountduration_secondsduration_hours   )appr   duration	timestamp)r
   developer_existstotal_activities
date_rangelast_7_days_categoriesrecent_activitieszDebug check error: r   )executer   fetchonefetchall	isoformatfloatround	Exceptionloggerr   str)	r
   r   	dev_checkactivity_count
categoriessamplescatsamplees	            =E:\timesheet\timesheet_new\backend\debug_activity_endpoint.pydebug_activity_checkr3      sR    R!JJ^_|$
 (* 	
 &|nK@(*

DE)(*	     |$	
 (* 	 ZZ   |$

 (* 	 **   |$	
 (* 	 ) $5Cq 1CQRSCT."3"="="?Z^BPQRBS!2!<!<!>Y] &' &C !$A 9/ V(-c!fk(:&+E#a&+A,>,Eq&I	 &'  &" &F "!9 &q	 &q	:@)!4!4!6	 &"#
 	
'"  !*1#./Q  !sa   G'AF, G' CF, #AF"(F, ./F'F, !G'"
F, ,	G$5$GG$G'G$$G')fastapir   r   sqlalchemy.ormr   
sqlalchemyr   databaser   r   r	   logging	getLogger__name__r)   routergetr*   r3        r2   <module>r?      si    & "   ' 			8	$	67 &/W!W!W! 8W!r>   