Initial commit
This commit is contained in:
114
funkce.py
Normal file
114
funkce.py
Normal file
@@ -0,0 +1,114 @@
|
||||
import os,fdb,datetime
|
||||
|
||||
# conn = fdb.connect(
|
||||
# dsn=r'localhost:u:\medicus 3\data\medicus.fdb', # Database path
|
||||
# user='SYSDBA', # Username
|
||||
# password="masterkey", # Password,
|
||||
# charset="win1250")
|
||||
# cur = conn.cursor()
|
||||
|
||||
def zapis_file(vstupconnection,idpac,cesta,souborname,prvnizavorka,soubordate,souborfiledate,poznamka):
|
||||
import funkce
|
||||
cur=vstupconnection.cursor()
|
||||
fileid = funkce.get_files_id(vstupconnection)
|
||||
with open(os.path.join(cesta,souborname), 'rb') as f:
|
||||
daticka = f.read()
|
||||
query = "insert into files (id,iduzi,iddoctyp,typ,idpac,filename,body,datum,datsouboru,poznamka) values(?,?,?,?,?,?,?,?,?,?)"
|
||||
cur.execute(query,(fileid,6,1,1,idpac,prvnizavorka+".pdf",daticka,soubordate,souborfiledate,poznamka[:99]))
|
||||
vstupconnection.commit()
|
||||
return fileid
|
||||
def zapis_dekurs(vstupconnection, idpac, idodd, iduzi, idprac, idfile, filename, text, datumzpravy,
|
||||
datumsouboru):
|
||||
import funkce
|
||||
dekursid = funkce.get_dekurs_id(vstupconnection)
|
||||
cur = vstupconnection.cursor()
|
||||
print("Funkce zapis_dekurs hlasí OK")
|
||||
print("idpac", idpac)
|
||||
print("idodd", idodd)
|
||||
print("iduzi", iduzi)
|
||||
print("idfile", idfile)
|
||||
print("filename", filename)
|
||||
print("text", text)
|
||||
print("datumzpravy", datumzpravy)
|
||||
print("datumsouboru", datumsouboru)
|
||||
print("dekursid", dekursid)
|
||||
|
||||
# rtf = r"""{\rtf1\ansi\ansicpg1250\uc1\deff0\deflang1029{\info{\bookmarks "BOOKMARKNAME","Files:FILEID",9}}{\fonttbl{\f0\fnil\fcharset238 Arial;}{\f5\fnil\fcharset238 Symbol;}}
|
||||
# {\colortbl ;\red0\green0\blue255;\red0\green128\blue0;\red0\green0\blue0;}
|
||||
# {\stylesheet{\s0\fi0\li0\ql\ri0\sb0\sa0 Norm\'e1ln\'ed;}{\*\cs15\f0\fs20 Norm\'e1ln\'ed;}{\*\cs20\f0\i\fs20 Z\'e1hlav\'ed;}{\*\cs32\f0\ul\fs20\cf1 Odkaz;}}
|
||||
# \uc1\pard\s0\plain\cs20\f0\i\fs20 P\'f8\'edlohy: {\*\bkmkstart 0}\plain\cs32\f0\ul\fs20\cf1 BOOKMARKNAME{\*\bkmkend 0}\par
|
||||
# \pard\s0\plain\cs15\f0\fs20 \par
|
||||
# }
|
||||
# """
|
||||
rtf = r"""{\rtf1\ansi\ansicpg1250\uc1\deff0\deflang1029{\info{\bookmarks "BOOKMARKNAME","Files:FILEID",9}}{\fonttbl{\f0\fnil\fcharset238 Arial;}{\f5\fnil\fcharset238 Symbol;}}
|
||||
{\colortbl ;\red0\green0\blue255;\red0\green128\blue0;\red0\green0\blue0;}
|
||||
{\stylesheet{\s10\fi0\li0\ql\ri0\sb0\sa0 Vlevo;}{\*\cs15\f0\fs20 Norm\'e1ln\'ed;}{\*\cs20\f0\i\fs20 Z\'e1hlav\'ed;}{\*\cs22\f0\ul\fs20\cf1 Odkaz;}}
|
||||
\uc1\pard\s10\plain\cs20\f0\i\fs20 P\'f8\'edlohy:\par
|
||||
\pard\s10{\*\bkmkstart 0}\plain\cs22\f0\ul\fs20\cf1 BOOKMARKNAME{\*\bkmkend 0}\par
|
||||
\pard\s10\plain\cs15\f0\fs20 \par
|
||||
}
|
||||
|
||||
"""
|
||||
# id idpac filename body docid typ datum iddoctyp poznamka idpac=2 iduzi=2 datsouboru id_edokument ext_id
|
||||
encodedbookmark = funkce.convert_to1250(filename)
|
||||
print("Encodedbookmark", encodedbookmark)
|
||||
rtf = rtf.replace("BOOKMARKNAME", encodedbookmark)
|
||||
rtf = rtf.replace("FILEID", str(idfile))
|
||||
rtf = rtf.replace("TEXTENTER", text)
|
||||
datumzapisu = datetime.datetime.now().date()
|
||||
caszapisu = datetime.datetime.now().time()
|
||||
print("Datumzapisu", datumzapisu)
|
||||
print("Caszapisu", caszapisu)
|
||||
print("RTF", rtf)
|
||||
cur.execute("insert into dekurs (id,idpac,idodd,iduzi,idprac,datum,cas,dekurs) values(?,?,?,?,?,?,?,?)",
|
||||
(dekursid, idpac, idodd, iduzi, idprac, datumzapisu, caszapisu, rtf))
|
||||
vstupconnection.commit()
|
||||
|
||||
|
||||
def convert_to1250(retezec):
|
||||
retezec=retezec.encode("cp1250")
|
||||
retezec=str(retezec)[2:]
|
||||
retezec = retezec[:-1]
|
||||
retezec=retezec.replace(r"\x",r"\'")
|
||||
return retezec
|
||||
|
||||
|
||||
# x=convert_to1250("Příloha")
|
||||
# print(x,len(x))
|
||||
|
||||
def get_dekurs_id(connection):
|
||||
try:
|
||||
query = "SELECT GEN_ID(Gen_Dekurs, 1) FROM RDB$DATABASE"
|
||||
cur = connection.cursor()
|
||||
cur.execute(query)
|
||||
newid=cur.fetchone()[0]
|
||||
print("Funkce GET_DEKURS_ID přiřadila nové ID:",newid)
|
||||
return(newid)
|
||||
except:
|
||||
print("Funkce GET_DEKURS_ID nepřiřadila nové ID")
|
||||
return(None)
|
||||
|
||||
def get_files_id(connection):
|
||||
try:
|
||||
query = "SELECT GEN_ID(Gen_Files, 1) FROM RDB$DATABASE"
|
||||
cur=connection.cursor()
|
||||
cur.execute(query)
|
||||
newid=cur.fetchone()[0]
|
||||
print(newid)
|
||||
return(newid)
|
||||
except:
|
||||
return(None)
|
||||
|
||||
def get_idpac(rodnecislo,connection):
|
||||
try:
|
||||
query = "SELECT idpac,prijmeni FROM kar where rodcis=?"
|
||||
cur = connection.cursor()
|
||||
cur.execute(query,(rodnecislo,))
|
||||
tmp_nacteno=cur.fetchone()
|
||||
tmp_id = tmp_nacteno[0]
|
||||
tmp_jmeno=tmp_nacteno[1]
|
||||
print(f"Pacient s rodným číslem {rodnecislo} má ID {tmp_id} a jméno {tmp_jmeno}")
|
||||
return (tmp_id)
|
||||
except:
|
||||
return(None)
|
||||
|
||||
Reference in New Issue
Block a user