
    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fd	       Zy)
    )	APIRouterDepends)Session)text)get_db)datetimetimezoneNz/api/all-developers-simpledbc                 `  K   	 t        d      }| j                  |      }g }|D ]  }d}d}	 |j                  rS| j                  t        d      d|j                  i      j                         }|r|j                  xs d}|j
                  }d}	|r	 t        |d      rEt        j                  t        j                        |j                  t        j                  	      z
  }
n&t        j                  t        j                        |z
  }
|
j                         d
k  rd}	n|
j                         dk  rd}	|j!                  |j                  xs d|j"                   |j$                  |j$                  dd|	dd| d|j                  xs d|j"                   ||r|j'                         n'|j(                  r|j(                  j'                         nddd|j*                  d        |dt-        |      t        j                  t        j                        j'                         dS # t        $ r#}t        j                  d|        Y d}~d}~ww xY w#  Y &xY w# t        $ rF}t        j/                  d|        ddl}|j3                          g ddt5        |      dcY d}~S d}~ww xY ww)z"Simple query to get all developersa+  
            SELECT 
                id,
                developer_id,
                name,
                email,
                active,
                created_at,
                last_sync
            FROM developers
            WHERE active = true
            ORDER BY created_at DESC
        r   Nz
                        SELECT COUNT(*) as count, MAX(timestamp) as last_activity
                        FROM activity_records 
                        WHERE developer_id = :dev_id
                    dev_idzError getting activity count: offlinereplace)tzinfoi  onlineiQ idledev_unknowni  databasezDeveloper with z activitieszN/A)idnamehostnamehostportstatussourcedescription	device_idactivity_count	last_seenversionbucket_countemail
production)
developersenvironmenttotal_countdiscovered_atzError getting developers: )r$   r%   r&   error)r   executedeveloper_idfetchonecountlast_activity	Exceptionloggerwarninghasattrr   nowr	   utcr   total_secondsappendr   r   	isoformat
created_atr"   lenr(   	traceback	print_excstr)r
   developers_queryresultr$   rowr   r-   count_resulter   	time_diffr9   s               ;E:\timesheet\timesheet_new\backend\all_developers_simple.pyget_all_developers_simplerC      s    X
 !  ,-
CN ME###%::d 4 / $S%5%56	$8 9A
	 ! $)5););)@q(4(B(B
 F}i8$,LL$>AVAV^f^j^jAVAk$k	$,LL$>$N	 ..047!)"002U:!' &&9D/HH! $!00@L --@4x"0:G]446lolzlzcnnNfNfNh  AE  ! I l %'z?%\\(,,7AAC	
 	
I  E!?sCDDE 4  	
1!56'V	
 	
		
sx   J.(I AH%I B"I3C1I $J.%	I.II II II 	J+%;J& J+!J.&J++J.)fastapir   r   sqlalchemy.ormr   
sqlalchemyr   r   r   r   r	   logging	getLogger__name__r/   routergetrC        rB   <module>rN      s]    & "   ' 			8	$	()29&/ Z
 Z
 *Z
rM   