
    nh&                        d dl mZ d dlmZmZ d dlmZmZmZ d dl	m
Z
 d dlmZmZmZmZmZmZmZmZ  e            Ze                    de
           ed	          fdd            ZdS )    )annotations)ListDict)	APIRouterRequestQuery)HTMLResponse)	templatessbCOMPANY_ORDERTODAY_date_display_and_compare_to_int_safe_normalize_multiline_norm_company_labelz/group/executives)response_classN)defaultrequestr   company
str | Nonec                  K   	 t          j        d                              d                              d                                          }|j        pg }n# t          $ r g }Y nw xY wt          d d          }|t          v r|n|d         dd	           dfdfd|D             }|s|rfd|D             }g }|D ]}|                    d          p+|                    d          p|                    d          pd	                                pd}t          |                    d                    \  }	}
t          |                    d                    \  }}t          |o
|t          k               }i |||	||t          |                    d                    d}|                    |           |                    d            t!          j        d| ||d          S )N	kepco_org*i'  r   sr   returnstrc                V    | pd                     dd                                          S )N  )replacestrip)r   s    3/var/www/html/bot/app/web/pages/group/executives.py_keyz%group_executives_detail.<locals>._key   s(    R  R((..000    depboolc                    | sdS  |           }|k    rdS t          |           }|r |          k    rdS |v p|v S )NFT)r   )r%   dep_keynormr#   cur_keys      r"   _matchesz)group_executives_detail.<locals>._matches   sg     55$s))gdd"3''6DDJJ'))$$'!7W%77r$   c                P    g | ]"} |                     d                      |#S 
departmentget).0rr+   s     r"   
<listcomp>z+group_executives_detail.<locals>.<listcomp>!   s4    @@@a((155+>+>"?"?@@@@r$   c                f    g | ]-}            |                     d                     v +|.S r-   r/   )r1   r2   r#   currents     r"   r3   z+group_executives_detail.<locals>.<listcomp>#   sA    QQQ!dd7mmttAEE,<O<O7P7P&P&PA&P&P&Pr$   tasktitleposition-startendcareer)_task
_start_str_end_str_expired_career_strc                F    t          |                     d                    S )Nid)r   r0   )xs    r"   <lambda>z)group_executives_detail.<locals>.<lambda>/   s    QUU4[[ 9 9 r$   )keyzgroup/executives.html)r   tabsr5   rows)r   r   r   r   )r%   r   r   r&   )r   tableselectlimitexecutedata	Exceptionr   r0   r!   r   r&   r   r   appendsortr
   TemplateResponse)r   r   resrawrG   cur_rowsenrichedr2   r6   
start_disp	start_cmpend_dispend_cmpexpiredpersonr#   r+   r*   r5   s                  @@@@r"   group_executives_detailr\   	   sp     h{##**3//55e<<DDFF(.b    D M11ggtAwG1 1 1 1 d7mmG8 8 8 8 8 8 8 A@@@3@@@H R RQQQQQsQQQH    fKwK1553D3DKRRTT[X[ 9!%%.. I I
I5aeeEllCC'w27U?33]A ]JH%6J155QY??6[6[] ] ]MM99M:::%&=DWh@ @   s   AA A-,A-)r   r   r   r   )
__future__r   typingr   r   fastapir   r   r   fastapi.responsesr	   app.web.depsr
   r   r   r   r   r   r   r   routerr0   r\    r$   r"   <module>rd      s2   " " " " " "         - - - - - - - - - - * * * * * * Q  Q  Q  Q  Q  Q  Q  Q  Q  Q  Q  Q  Q  Q  Q  Q  Q  Q  Q  Q	==JO%X\J]J]J] ( ( ( ( >=( ( (r$   