o
    ‹FQa  ã                   @   s0   d dl mZ d dlZdd„ Zdd„ Zdd„ ZdS )	é    )Ú
sqlConnectNc            
      C   sr   t  ¡ } d}|  |¡d }|  |¡d }d}t|  |¡d ƒ}d}|  |¡d }d}|  |¡d	 }	|||||	d
œS )NzySELECT COUNT(DISTINCT ncbi_taxon_id) taxa_num, COUNT(DISTINCT project_id) project_num FROM curated_lefse_analysis_resultsÚtaxa_numÚproject_numzSSELECT COUNT(DISTINCT phenotype2) phenotype_num FROM curated_lefse_analysis_resultsÚphenotype_numzuSELECT COUNT(DISTINCT ncbi_taxon_id) species_num FROM curated_lefse_analysis_results WHERE taxon_rank_level="species"Úspecies_numzqSELECT COUNT(DISTINCT ncbi_taxon_id) genus_num FROM curated_lefse_analysis_results WHERE taxon_rank_level="genus"Ú	genus_num)r   r   r   r   r   )r   ÚMySQLConnectionÚqueryOneÚint)
ÚconnectZsql_taxa_projectsr   r   Ú	sql_phenor   Úsql_speciesr   Ú	sql_genusr   © r   ú8/var/www/html/mybodymap/server/service/markerTaxaPage.pyÚgetIntroBoxData   s    ûr   c              
   C   sÞ   t  ¡ }d}g }| D ]}|dkr|d7 }q
|dkr|d7 }q
|d| 7 }q
| d¡}d |¡}| |¡}|D ]2}d	 |d
 ¡}| |¡}d |d
 ¡}	| |	¡d }
| |
|d
 |d |d |d |d dœ¡ q6t|ƒ}|S )NÚ zLarge intestinez'Rectum','Colon','Cecum',zSmall intestinez'Ileum','Duodenum',z'%s',ú,z“SELECT DISTINCT ncbi_taxon_id, taxon_rank_level FROM curated_lefse_analysis_results WHERE BodySite IN ({}) GROUP BY ncbi_taxon_id, taxon_rank_levelzªSELECT COUNT(1) entries_num, COUNT(DISTINCT project_id) project_num, COUNT(DISTINCT phenotype2) phenotype_num FROM `curated_lefse_analysis_results` where ncbi_taxon_id={}Úncbi_taxon_idz6SELECT name FROM biosql_taxon_2 WHERE ncbi_taxon_id={}ÚnameZtaxon_rank_levelZentries_numr   r   )r   r   ÚrankÚentriesÚprojectZ	pheno_num)r   r   ÚrstripÚformatÚqueryr	   ÚappendÚgetMarkerPageData)ÚcheckedSitesr   ÚsearchÚspecies_resultÚitemZsql_taxa_totalZ
taxa_totalZsql_numÚnumÚsql_namer   Úresultr   r   r   ÚgetMarkerTaxa   s>   


ÿ
ÿ

úr%   c                 C   sÀ   t  ¡ }| D ]W}d |d ¡}| |¡}||d< d |d ¡}| |¡}|d ur5d|d< t |d ¡|d< d	 |d ¡}| |¡}|d urId|d
< d |d ¡}	| |	¡}
|
d ur]d|d< q| S )NzWSELECT * FROM `curated_lefse_analysis_results` WHERE ncbi_taxon_id={} ORDER BY lda DESCr   ÚsecondTableDataz<select attributes from cross_db_links where ncbi_taxon_id={}TÚifMvpÚ
attributesÚmvpDataz3select * from gmrepo_species where ncbi_taxon_id={}ÚifGmrepoz0select * from hmdad_taxon where ncbi_taxon_id={}ÚifHmdad)r   r   r   r   r	   ÚjsonÚloads)Úarrr   r!   Úsqlr$   Úsql_mvpÚmvpÚ
sql_gmrepoÚgmrepoÚ	sql_hmdadÚhmdadr   r   r   r   @   s,   ÿ



€r   )Úutilsr   r,   r   r%   r   r   r   r   r   Ú<module>   s
    #