
    "j                         S SK J r   S SKJr  SSSSSSS	S
SS.	rSSSS.SSSS.SSSS.SSSS.S.r   S"S\S\S\S\S\4
S jjr	S r
S rS  rS! rg)#    )datetime)generate_multi_join_sql)agri_districtdistrict_name)
agri_state
state_name)agri_subdivisionsubdiv_name)	crop_namename)	crop_typer   )crop_varietyr   )
agri_usersuserName)r   gender)r   CreateDateTime)	districtstatesubdivisioncropr   r   farmerr   registration_dateagri_land_user_rels	land_sizeSUM)tablecolumnaggregationgoogle_areaAVGr   idCOUNT)
total_landtotal_google_areaavg_landfarmer_countNmetric	dimensionfilterslimit
order_descc                 L   U [         ;  a,  [        SU  S[        [         R                  5       5       35      eU[        ;  a,  [        SU S[        [        R                  5       5       35      e[         U    n[        U   nUS   nUS   nUS   n	US   n
US   nUn/ nX:w  a  UR                  U
5        X/Xx/0nUX00nX4/nUUU(       a  S	OS
4/n[        UUUU=(       d    0 UUUUS9nSU U[        R                  " 5       R                  5       [        [        Xz/5      5      US.$ )zT
Example:

generate_report_sql(
    metric="total_land",
    dimension="district"
)
zUnknown metric 'z'. Available: zUnknown dimension 'r   r   r   r      DESCASC)sourcetargetscolumn_filterswhere_filtersorder_byr*   group_byaggregationsdynamic_report)report_typer'   r(   generated_attables_usedsql)REPORT_METRICS
ValueErrorlistkeysREPORT_DIMENSIONSappendr   r   utcnow	isoformatset)r'   r(   r)   r*   r+   
metric_defdimension_defmetric_tablemetric_columnr   dimension_tabledimension_columnr0   r1   r2   r6   r5   r4   r;   s                      3/var/www/html/database-metadata/report_generator.pygenerate_report_sqlrL   <   s     ^#vh '~224568
 	

 ))!) -055789;
 	

  'J%i0Mg&Lx(M]+K#A&O$Q'FG ' 	+oN 	
L 
+H  Fe	
H "%m!	C ( )335/0
 	 	    c                      [        SSS9$ )Nr#   r   r'   r(   rL    rM   rK   total_land_by_districtrR      s     rM   c                      [        SSS9$ )Nr#   r   rO   rP   rQ   rM   rK   total_land_by_staterT      s     rM   c                      [        SSS9$ )Nr&   r   rO   rP   rQ   rM   rK   farmer_count_by_districtrV      s     rM   c                      [        SSS9$ )Nr&   r   rO   rP   rQ   rM   rK   farmer_count_by_croprX      s     rM   )NNT)r   join_generatorr   r@   r<   strdictintboolrL   rR   rT   rV   rX   rQ   rM   rK   <module>r^      s     2 3)6!&,(&9
 & ' ' ' 'D XXX X 	X
 X~rM   