Téléverser les fichiers vers "CenRa_SICEN/tools"
This commit is contained in:
parent
7775b9e0f7
commit
babf387f37
21
CenRa_SICEN/tools/HubToTea.py
Normal file
21
CenRa_SICEN/tools/HubToTea.py
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
from qgis.core import QgsApplication
|
||||||
|
|
||||||
|
def gitea():
|
||||||
|
file_url = QgsApplication.qgisSettingsDirPath()+'QGIS/QGIS3.ini'
|
||||||
|
recherche_1 = 'plugin_repositories\\github\\url=https://github.com/CEN-Rhone-Alpes/Plugin_QGIS/releases/latest/download/plugins.xml'
|
||||||
|
replace_1 = 'plugin_repositories\\gitea\\url=https://gitea.cenra-outils.org/CEN-RA/Plugin_QGIS/releases/download/latest/plugins.xml'
|
||||||
|
|
||||||
|
recherche_2 = 'github'
|
||||||
|
replace_2 = 'gitea'
|
||||||
|
|
||||||
|
# Read in the file
|
||||||
|
with open(file_url, 'r') as file:
|
||||||
|
filedata = file.read()
|
||||||
|
|
||||||
|
# Replace the target string
|
||||||
|
filedata = filedata.replace(recherche_1, replace_1)
|
||||||
|
filedata = filedata.replace(recherche_2, replace_2)
|
||||||
|
|
||||||
|
# Write the file out again
|
||||||
|
with open(file_url, 'w') as file:
|
||||||
|
file.write(filedata)
|
||||||
172
CenRa_SICEN/tools/PythonSQL.py
Normal file
172
CenRa_SICEN/tools/PythonSQL.py
Normal file
@ -0,0 +1,172 @@
|
|||||||
|
import sys
|
||||||
|
import socket
|
||||||
|
import os
|
||||||
|
IPAddr=socket.gethostbyname(socket.gethostname())
|
||||||
|
if IPAddr[0:11] == "100.100.100": #4269
|
||||||
|
host = "100.100.100.11"
|
||||||
|
port = "5432"
|
||||||
|
dbname = "sig4269"
|
||||||
|
sigdb="sig4269"
|
||||||
|
refdb="ref_geo4269"
|
||||||
|
password = "McVities"
|
||||||
|
if IPAddr[0:9] == "192.168.0": #01
|
||||||
|
host = "192.168.0.201"
|
||||||
|
port = "5432"
|
||||||
|
dbname = "sig01"
|
||||||
|
sigdb="sig01"
|
||||||
|
refdb="ref_geo01"
|
||||||
|
password = "McVities"
|
||||||
|
if IPAddr[0:9] == "192.168.1": #0726
|
||||||
|
host = "192.168.1.201"
|
||||||
|
port = "5432"
|
||||||
|
dbname = "sig0726"
|
||||||
|
sigdb="sig0726"
|
||||||
|
refdb="ref_geo0726"
|
||||||
|
password = "McVities"
|
||||||
|
if sys.platform == 'linux':
|
||||||
|
os_user = os.environ['USER']
|
||||||
|
else:
|
||||||
|
os_user = os.environ['USERNAME']
|
||||||
|
if os_user == 'STAGE':
|
||||||
|
os_user='stage'
|
||||||
|
|
||||||
|
geom = "geom"
|
||||||
|
champ_travaux_prevus_multipolygon="""(gid serial NOT NULL, groupe_gestion text, gestion_lib text, id_gestion text, datedebut date, datefin date, commentaire text, surface_m2 double precision, surface_ha double precision, date_creation date, date_maj date, geom geometry(MultiPolygon,2154))"""
|
||||||
|
champ_travaux_prevus_multilinestring="""(gid serial NOT NULL, groupe_gestion text, gestion_lib text, id_gestion text, datedebut date, datefin date, commentaire text, longueur_m double precision, longueur_km double precision, date_creation date, date_maj date, geom geometry(MultiLineString,2154))"""
|
||||||
|
champ_travaux_prevus_point = """(gid serial NOT NULL, groupe_gestion text, gestion_lib text, id_gestion text, datedebut date, datefin date, commentaire text, x_wgs84 double precision, y_wgs84 double precision, date_creation date, date_maj date, geom geometry(Point,2154))"""
|
||||||
|
|
||||||
|
champ_viergePolygone = """(gid serial NOT NULL, commentaire text, surface_m2 double precision, surface_ha double precision, geom geometry(MultiPolygon,2154))"""
|
||||||
|
champ_viergeLigne = """(gid serial NOT NULL, commentaire text, longueur_m double precision, longueur_km double precision, geom geometry(MultiLineString,2154))"""
|
||||||
|
champ_viergePoint = """(gid serial NOT NULL, commentaire text, x_wgs84 double precision, y_wgs84 double precision, geom geometry(Point,2154))"""
|
||||||
|
|
||||||
|
champ_habitat = """(gid serial NOT NULL, cd_cb_01 text, lb_cb97_fr_01 text, occupation_01 integer, cd_cb_02 text, lb_cb97_fr_02 text, occupation_02 integer, cd_cb_03 text, lb_cb97_fr_03 text, occupation_03 integer, milieu_code text, milieu_libelle text, surface_m2 double precision, surface_ha double precision, commentaire text, date_creation date, date_maj date, geom geometry(MultiPolygon,2154))"""
|
||||||
|
|
||||||
|
champ_contour="""(gid serial NOT NULL, date_creation date, date_maj date, utilisateur character varying, dept character(2), nom character varying, surface_m2 double precision, surface_ha double precision, type_site character varying, type_milieu character varying, date_premier_pg integer, date_debut_pg integer, date_fin_pg integer, referent character varying, gestion_deleguee character varying, terrain_militaire character(3), ens character(3), zh character(3), adapt_pmr character(3), inform character(3), guide character(3), ouverture_public character(3), obs character(3), anim character(3), n2000_anim character(3), contrat_n2000_conseil character(3), n2000_op character(3), contrat_n2000_benef character(3), contrat_agri character(3), bc_habitat integer, bc_amphibien integer, bc_coleoptere integer, bc_crustace integer, bc_mammifere integer, bc_chiroptere integer, bc_mollusque integer, bc_odonate integer, bc_oiseau integer, bc_orthoptere integer, bc_poisson integer, bc_reptile integer, bc_rhopalocere integer, bc_heterocere integer, bc_autre_invertebre integer, bc_flore integer, bc_bryophyte integer, bc_champignon integer, suiv_analyse_sol character(3), suiv_piezo character(3), suiv_climat character(3), suiv_topo character(3), suiv_habitat character(3), suiv_amphibien character(3), suiv_coleoptere character(3), suiv_crustace character(3), suiv_mammifere character(3), suiv_chiroptere character(3), suiv_mollusque character(3), suiv_odonate character(3), suiv_oiseau character(3), suiv_orthoptere character(3), suiv_poisson character(3), suiv_reptile character(3), suiv_rhopalocere character(3), suiv_heterocere character(3), suiv_autre_invertebre character(3), suiv_flore character(3), suiv_bryophyte character(3), suiv_champignon character(3), suiv_analyse_eau character(3), suiv_phenologie character(3), suiv_frequentation character(3), suiv_paysager character(3), suiv_autre character(3), commentaire text, geom geometry(MultiPolygon,2154))
|
||||||
|
"""
|
||||||
|
|
||||||
|
champ_vegethab_point = """(
|
||||||
|
gid serial NOT NULL ,
|
||||||
|
cd_eu_01 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lb_eu_01 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
occupati_1 bigint,
|
||||||
|
cd_eu_02 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lb_eu_02 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
occupati_2 bigint,
|
||||||
|
cd_eu_03 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lb_eu_03 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
occupati_3 bigint,
|
||||||
|
milieu_cod character varying(254) COLLATE pg_catalog."default",
|
||||||
|
milieu_lib character varying(254) COLLATE pg_catalog."default",
|
||||||
|
surface_m2 numeric,
|
||||||
|
surface_ha numeric,
|
||||||
|
commentair character varying(254) COLLATE pg_catalog."default",
|
||||||
|
date_creat date,
|
||||||
|
date_maj date,
|
||||||
|
num_phyto character varying(254) COLLATE pg_catalog."default",
|
||||||
|
type_unite character varying(254) COLLATE pg_catalog."default",
|
||||||
|
dynamique character varying(254) COLLATE pg_catalog."default",
|
||||||
|
gestio_obs character varying(254) COLLATE pg_catalog."default",
|
||||||
|
degrad_obs character varying(254) COLLATE pg_catalog."default",
|
||||||
|
eta_conser character varying(254) COLLATE pg_catalog."default",
|
||||||
|
clas_phyto character varying(254) COLLATE pg_catalog."default",
|
||||||
|
alli_phyto character varying(254) COLLATE pg_catalog."default",
|
||||||
|
syntaxon character varying(254) COLLATE pg_catalog."default",
|
||||||
|
n2000 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lrr_aura character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lrr_cbna character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lrr_cbnmc character varying(254) COLLATE pg_catalog."default",
|
||||||
|
vege_enjeu character varying(254) COLLATE pg_catalog."default",
|
||||||
|
num_photo character varying(254) COLLATE pg_catalog."default",
|
||||||
|
nature_obs character varying(254) COLLATE pg_catalog."default",
|
||||||
|
date_sais date,
|
||||||
|
s_al_phyto character varying(254) COLLATE pg_catalog."default",
|
||||||
|
alli_name character varying(254) COLLATE pg_catalog."default",
|
||||||
|
salli_name character varying(254) COLLATE pg_catalog."default",
|
||||||
|
class_name character varying(254) COLLATE pg_catalog."default",
|
||||||
|
geom geometry(Point,2154)
|
||||||
|
)
|
||||||
|
"""
|
||||||
|
champ_vegethab_multilinestring = """(
|
||||||
|
gid serial NOT NULL ,
|
||||||
|
cd_eu_01 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lb_eu_01 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
occupati_1 bigint,
|
||||||
|
cd_eu_02 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lb_eu_02 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
occupati_2 bigint,
|
||||||
|
cd_eu_03 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lb_eu_03 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
occupati_3 bigint,
|
||||||
|
milieu_cod character varying(254) COLLATE pg_catalog."default",
|
||||||
|
milieu_lib character varying(254) COLLATE pg_catalog."default",
|
||||||
|
surface_m2 numeric,
|
||||||
|
surface_ha numeric,
|
||||||
|
commentair character varying(254) COLLATE pg_catalog."default",
|
||||||
|
date_creat date,
|
||||||
|
date_maj date,
|
||||||
|
num_phyto character varying(254) COLLATE pg_catalog."default",
|
||||||
|
type_unite character varying(254) COLLATE pg_catalog."default",
|
||||||
|
dynamique character varying(254) COLLATE pg_catalog."default",
|
||||||
|
gestio_obs character varying(254) COLLATE pg_catalog."default",
|
||||||
|
degrad_obs character varying(254) COLLATE pg_catalog."default",
|
||||||
|
eta_conser character varying(254) COLLATE pg_catalog."default",
|
||||||
|
clas_phyto character varying(254) COLLATE pg_catalog."default",
|
||||||
|
alli_phyto character varying(254) COLLATE pg_catalog."default",
|
||||||
|
syntaxon character varying(254) COLLATE pg_catalog."default",
|
||||||
|
n2000 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lrr_aura character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lrr_cbna character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lrr_cbnmc character varying(254) COLLATE pg_catalog."default",
|
||||||
|
vege_enjeu character varying(254) COLLATE pg_catalog."default",
|
||||||
|
num_photo character varying(254) COLLATE pg_catalog."default",
|
||||||
|
nature_obs character varying(254) COLLATE pg_catalog."default",
|
||||||
|
date_sais date,
|
||||||
|
s_al_phyto character varying(254) COLLATE pg_catalog."default",
|
||||||
|
alli_name character varying(254) COLLATE pg_catalog."default",
|
||||||
|
salli_name character varying(254) COLLATE pg_catalog."default",
|
||||||
|
class_name character varying(254) COLLATE pg_catalog."default",
|
||||||
|
geom geometry(MultiLineString,2154)
|
||||||
|
)
|
||||||
|
"""
|
||||||
|
champ_vegethab_multipolygon = """(
|
||||||
|
gid serial NOT NULL ,
|
||||||
|
cd_eu_01 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lb_eu_01 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
occupati_1 bigint,
|
||||||
|
cd_eu_02 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lb_eu_02 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
occupati_2 bigint,
|
||||||
|
cd_eu_03 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lb_eu_03 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
occupati_3 bigint,
|
||||||
|
milieu_cod character varying(254) COLLATE pg_catalog."default",
|
||||||
|
milieu_lib character varying(254) COLLATE pg_catalog."default",
|
||||||
|
surface_m2 numeric,
|
||||||
|
surface_ha numeric,
|
||||||
|
commentair character varying(254) COLLATE pg_catalog."default",
|
||||||
|
date_creat date,
|
||||||
|
date_maj date,
|
||||||
|
num_phyto character varying(254) COLLATE pg_catalog."default",
|
||||||
|
type_unite character varying(254) COLLATE pg_catalog."default",
|
||||||
|
dynamique character varying(254) COLLATE pg_catalog."default",
|
||||||
|
gestio_obs character varying(254) COLLATE pg_catalog."default",
|
||||||
|
degrad_obs character varying(254) COLLATE pg_catalog."default",
|
||||||
|
eta_conser character varying(254) COLLATE pg_catalog."default",
|
||||||
|
clas_phyto character varying(254) COLLATE pg_catalog."default",
|
||||||
|
alli_phyto character varying(254) COLLATE pg_catalog."default",
|
||||||
|
syntaxon character varying(254) COLLATE pg_catalog."default",
|
||||||
|
n2000 character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lrr_aura character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lrr_cbna character varying(254) COLLATE pg_catalog."default",
|
||||||
|
lrr_cbnmc character varying(254) COLLATE pg_catalog."default",
|
||||||
|
vege_enjeu character varying(254) COLLATE pg_catalog."default",
|
||||||
|
num_photo character varying(254) COLLATE pg_catalog."default",
|
||||||
|
nature_obs character varying(254) COLLATE pg_catalog."default",
|
||||||
|
date_sais date,
|
||||||
|
s_al_phyto character varying(254) COLLATE pg_catalog."default",
|
||||||
|
alli_name character varying(254) COLLATE pg_catalog."default",
|
||||||
|
salli_name character varying(254) COLLATE pg_catalog."default",
|
||||||
|
class_name character varying(254) COLLATE pg_catalog."default",
|
||||||
|
geom geometry(MultiPolygon,2154)
|
||||||
|
)
|
||||||
|
"""
|
||||||
164
CenRa_SICEN/tools/resources.py
Normal file
164
CenRa_SICEN/tools/resources.py
Normal file
@ -0,0 +1,164 @@
|
|||||||
|
"""Tools to work with resource files."""
|
||||||
|
|
||||||
|
import configparser
|
||||||
|
import shutil
|
||||||
|
import tempfile
|
||||||
|
import base64
|
||||||
|
import psycopg2
|
||||||
|
import psycopg2.extras
|
||||||
|
from os.path import abspath, join, pardir, dirname
|
||||||
|
|
||||||
|
from qgis.PyQt import uic
|
||||||
|
|
||||||
|
__copyright__ = "Copyright 2019, 3Liz"
|
||||||
|
__license__ = "GPL version 3"
|
||||||
|
__email__ = "info@3liz.org"
|
||||||
|
__revision__ = "$Format:%H$"
|
||||||
|
|
||||||
|
|
||||||
|
def plugin_path(*args):
|
||||||
|
"""Get the path to plugin root folder.
|
||||||
|
|
||||||
|
:param args List of path elements e.g. ['img', 'logos', 'image.png']
|
||||||
|
:type args: str
|
||||||
|
|
||||||
|
:return: Absolute path to the plugin path.
|
||||||
|
:rtype: str
|
||||||
|
"""
|
||||||
|
path = dirname(dirname(__file__))
|
||||||
|
path = abspath(abspath(join(path, pardir)))
|
||||||
|
for item in args:
|
||||||
|
path = abspath(join(path, item))
|
||||||
|
|
||||||
|
return path
|
||||||
|
|
||||||
|
|
||||||
|
def plugin_name():
|
||||||
|
"""Return the plugin name according to metadata.txt.
|
||||||
|
|
||||||
|
:return: The plugin name.
|
||||||
|
:rtype: basestring
|
||||||
|
"""
|
||||||
|
metadata = metadata_config()
|
||||||
|
name = metadata["general"]["name"]
|
||||||
|
return name
|
||||||
|
|
||||||
|
|
||||||
|
def metadata_config() -> configparser:
|
||||||
|
"""Get the INI config parser for the metadata file.
|
||||||
|
|
||||||
|
:return: The config parser object.
|
||||||
|
:rtype: ConfigParser
|
||||||
|
"""
|
||||||
|
path = plugin_path("metadata.txt")
|
||||||
|
config = configparser.ConfigParser()
|
||||||
|
config.read(path, encoding='utf8')
|
||||||
|
return config
|
||||||
|
|
||||||
|
|
||||||
|
def plugin_test_data_path(*args, copy=False):
|
||||||
|
"""Get the path to the plugin test data path.
|
||||||
|
|
||||||
|
:param args List of path elements e.g. ['img', 'logos', 'image.png']
|
||||||
|
:type args: str
|
||||||
|
|
||||||
|
:param copy: If the file must be copied into a temporary directory first.
|
||||||
|
:type copy: bool
|
||||||
|
|
||||||
|
:return: Absolute path to the resources folder.
|
||||||
|
:rtype: str
|
||||||
|
"""
|
||||||
|
path = abspath(abspath(join(plugin_path(), "test", "data")))
|
||||||
|
for item in args:
|
||||||
|
path = abspath(join(path, item))
|
||||||
|
|
||||||
|
if copy:
|
||||||
|
temp = tempfile.mkdtemp()
|
||||||
|
shutil.copy(path, temp)
|
||||||
|
return join(temp, args[-1])
|
||||||
|
else:
|
||||||
|
return path
|
||||||
|
|
||||||
|
|
||||||
|
def resources_path(*args):
|
||||||
|
"""Get the path to our resources folder.
|
||||||
|
|
||||||
|
:param args List of path elements e.g. ['img', 'logos', 'image.png']
|
||||||
|
:type args: str
|
||||||
|
|
||||||
|
:return: Absolute path to the resources folder.
|
||||||
|
:rtype: str
|
||||||
|
"""
|
||||||
|
path = abspath(abspath(join(plugin_path(), "CenRa_Metabase\\resources")))
|
||||||
|
for item in args:
|
||||||
|
path = abspath(join(path, item))
|
||||||
|
return path
|
||||||
|
|
||||||
|
|
||||||
|
def load_ui(*args):
|
||||||
|
"""Get compile UI file.
|
||||||
|
|
||||||
|
:param args List of path elements e.g. ['img', 'logos', 'image.png']
|
||||||
|
:type args: str
|
||||||
|
|
||||||
|
:return: Compiled UI file.
|
||||||
|
"""
|
||||||
|
ui_class, _ = uic.loadUiType(resources_path("ui", *args))
|
||||||
|
|
||||||
|
return ui_class
|
||||||
|
|
||||||
|
def login_base(take=None):
|
||||||
|
from CenRa_Metabase.resources.PythonSQL import host,port,dbname,password,os_user
|
||||||
|
first_conn = psycopg2.connect("host=" + host + " port=" + port + " dbname="+dbname+" user=first_cnx password=" + password)
|
||||||
|
first_cur = first_conn.cursor(cursor_factory = psycopg2.extras.DictCursor)
|
||||||
|
first_cur.execute("SELECT mdp_w, login_w FROM pg_catalog.pg_user t1, admin_sig.vm_users_sig t2 WHERE t2.oid = t1.usesysid AND (login_w = '" + os_user + "' OR login_w = '" + os_user + "')")
|
||||||
|
res_ident = first_cur.fetchone()
|
||||||
|
mdp = base64.b64decode(str(res_ident[0])).decode('utf-8')
|
||||||
|
user = res_ident[1]
|
||||||
|
|
||||||
|
con = psycopg2.connect("host=" + host + " port=" + port + " dbname="+dbname+" user=" + user + " password=" + mdp)
|
||||||
|
|
||||||
|
cur = con.cursor(cursor_factory = psycopg2.extras.DictCursor)
|
||||||
|
first_conn.close()
|
||||||
|
|
||||||
|
if take:
|
||||||
|
return cur,con
|
||||||
|
else:
|
||||||
|
return cur
|
||||||
|
def send_issues(url,titre,body,labels):
|
||||||
|
import requests
|
||||||
|
import json
|
||||||
|
import os
|
||||||
|
import qgis
|
||||||
|
|
||||||
|
usr = os.environ['USERNAME']
|
||||||
|
token = '9d0a4e0bea561710e0728f161f7edf4e5201e112'
|
||||||
|
url=url+'?token='+token
|
||||||
|
|
||||||
|
headers = {'Authorization': 'token ' + token,'accept': 'application/json','Content-Type': 'application/json'}
|
||||||
|
|
||||||
|
|
||||||
|
payload = {'title': titre, 'body': body, 'labels': labels}
|
||||||
|
|
||||||
|
r = requests.post(url, data=json.dumps(payload), headers=headers)
|
||||||
|
print(r.text)
|
||||||
|
return r
|
||||||
|
|
||||||
|
def maj_verif(NAME):
|
||||||
|
import qgis
|
||||||
|
import urllib
|
||||||
|
iface = qgis.utils.iface
|
||||||
|
from qgis.core import Qgis
|
||||||
|
|
||||||
|
url = qgis.utils.pluginMetadata(NAME,'repository')
|
||||||
|
URL = url+'/raw/branch/main/plugins.xml'
|
||||||
|
# print(URL)
|
||||||
|
version = qgis.utils.pluginMetadata(NAME,'version')
|
||||||
|
len_version = len(version)
|
||||||
|
version_web = str(urllib.request.urlopen(URL).read())
|
||||||
|
plugin_num = version_web.find(NAME)
|
||||||
|
valeur_version_web = version_web.find('<version>',plugin_num)+9
|
||||||
|
version_plugin = version_web[valeur_version_web:valeur_version_web+len_version]
|
||||||
|
|
||||||
|
if version_plugin == version:
|
||||||
|
qgis.utils.iface.messageBar().pushMessage("MAJ :", "Des mise à jour de plugin sont disponibles.", level=Qgis.Info, duration=30)
|
||||||
Loading…
x
Reference in New Issue
Block a user