3
‹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 jƒ } d}| j|ƒd }| j|ƒd }d}t| j|ƒd ƒ}d}| j|ƒd }d}| j|ƒ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 jƒ }d}g }x<| D ]4}|dkr,|d7 }q|dkr>|d7 }q|d| 7 }qW |jdƒ}dj|ƒ}|j|ƒ}xl|D ]d}dj|d ƒ}|j|ƒ}dj|d ƒ}	|j|	ƒd }
|j|
|d |d |d |d |d dœƒ qrW t|ƒ}|S )NÚ zLarge intestinez'Rectum'ú,z'Colon'z'Cecum'zSmall intestinez'Ileum'z
'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_numz	'Rectum',z'Rectum','Colon'z'Rectum','Colon',z'Rectum','Colon','Cecum'z'Rectum','Colon','Cecum',z'Ileum',z'Ileum','Duodenum'z'Ileum','Duodenum',z'%s',)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   s8    







r%   c             C   sÄ   t jƒ }x¶| D ]®}dj|d ƒ}|j|ƒ}||d< dj|d ƒ}|j|ƒ}|d k	rld|d< tj|d ƒ|d< d	j|d ƒ}|j|ƒ}|d k	r”d|d
< dj|d ƒ}	|j|	ƒ}
|
d k	rd|d< qW | 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   #