Some fixes. Added csv.

This commit is contained in:
2022-09-22 10:07:14 +02:00
parent cfe2e69125
commit 3e147ae929
13 changed files with 145412 additions and 72 deletions

View File

@@ -9,7 +9,8 @@ class Main:
def __init__(self):
self.pacientet_api = Api("pacientet")
self.klinikat_api = Api("klinikat")
self.pacientet_klinikat_api = Api("pacientet_klinikat")
self.shtrimet = Api("shtrimet")
self.diagnozat = Api("diagnozat")
pass
@@ -19,21 +20,30 @@ class Main:
for name in filename:
if name.startswith('kirurgji_') or name.startswith('OBS-GYN_') or name.startswith('urgjenca_'):
klinika_emer = name.replace('.xlsx', '').split('_')[0]
pacientet_klinikat_filter = f"filter=(emer='{klinika_emer}')"
klinika_filter = f"filter=(emer='{klinika_emer}')"
klinika_res = self.klinikat_api.create_collection(
{"emer": klinika_emer}, filter=pacientet_klinikat_filter)
{"emer": klinika_emer}, filter=klinika_filter)
klinika_id = klinika_res['items'][0]['id']
klinika = klinika_res['items'][0]
df = pd.read_excel(os.path.join(dirpath, name), parse_dates=[
'DATELINDJA_KORIGJ'], sheet_name='Sheet1')
df = pd.read_excel(os.path.join(dirpath, name), parse_dates=[
'DT_SHTRIMI_KORIGJ'], sheet_name='Sheet1')
df.dropna(subset=['EMER'], inplace=True)
for index, row in df.iterrows():
emer = row['EMER'].strip()
mbiemer = row['MBIEMER'].strip()
mosha = row['MOSHA']
diagnoza = row['DIAGNOZA']
if pd.isnull(df.loc[index, 'DATELINDJA_KORIGJ']):
datelindja = ''
else:
datelindja = row['DATELINDJA_KORIGJ']
mosha = row['MOSHA']
if pd.isnull(df.loc[index, 'DT_SHTRIMI_KORIGJ']):
data_e_shtrimit = ''
else:
data_e_shtrimit = row['DT_SHTRIMI_KORIGJ']
if pd.isnull(df.loc[index, 'ERROR']):
error = ''
else:
@@ -46,26 +56,43 @@ class Main:
pacienti_res = self.pacientet_api.create_collection(
new_pacient, filter=pacient_filter)
pacienti_id = pacienti_res['items'][0]['id']
pacienti = pacienti_res['items'][0]
new_pacientet_klinikat = {
"pacienti_id": pacienti_id, "klinika_id": klinika_id}
pacientet_klinikat_filter = f"filter=(pacienti_id='{pacienti_id}' %26%26 klinika_id='{klinika_id}')"
new_shtrimi = {
"pacienti": pacienti_id, "klinika": klinika_id, "data_shtrimit": str(data_e_shtrimit)}
shtrimi_filter = f"filter=(pacienti='{pacienti_id}' %26%26 klinika='{klinika_id}')"
pacient_klinika_res = self.pacientet_klinikat_api.create_collection(
new_pacientet_klinikat, pacientet_klinikat_filter)
print(pacient_klinika_res)
shtrimi_res = self.shtrimet.create_collection(
new_shtrimi, shtrimi_filter)
shtrimi_id = shtrimi_res['items'][0]['id']
def test_backend(self) :
# pacientet_klinikat_res = self.pacientet_klinikat_api.list_collection()
# print(pacientet_klinikat_res["totalItems"])
pacient_filter = f"expand=klinika_id"
pacientet_res = self.pacientet_api.list_collection(filter=pacient_filter)
print(pacientet_res)
shtrimi = shtrimi_res['items'][0]
new_diagnoza = {"diagnoza": diagnoza,
"pacienti": pacienti_id, "shtrimi": shtrimi_id, "klinika": klinika_id}
diagnoza_filter = f"filter=(pacienti='{pacienti_id}' %26%26 klinika='{klinika_id}')"
diagnoza_res = self.diagnozat.create_collection(
new_diagnoza, diagnoza_filter)
diagnoza_id = diagnoza_res['items'][0]['id']
diagnoza = diagnoza_res['items'][0]
print('\n\n\n\n')
print(diagnoza_res)
print('\n\n\n\n')
# def test_backend(self):
# shtrimet_res = self.shtrimet_api.list_collection()
# print(shtrimet_res["totalItems"])
# pacient_filter = f"expand=klinika_id"
# pacientet_res = self.pacientet_api.list_collection(
# filter=pacient_filter)
# print(pacientet_res)
# print(pacientet_res["totalItems"])
main = Main()
main.test_backend()
# main.read_excel()
# main.test_backend()
main.read_excel()
# api = Api("pacientet")
# new_pacient = {"emer": "Test", "mbiemer": "test",
# "mosha": 100, "datelindja": datetime.now().isoformat()}

9432
CSV/OBS-GYN_1662993385.csv Normal file

File diff suppressed because it is too large Load Diff

4616
CSV/kirurgji_1662993337.csv Normal file

File diff suppressed because it is too large Load Diff

6506
CSV/urgjenca_1662993051.csv Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

124474
JSON/records.json Normal file

File diff suppressed because it is too large Load Diff

160
Node/package-lock.json generated
View File

@@ -10,8 +10,10 @@
"license": "ISC",
"dependencies": {
"excel-date-to-js": "^1.1.5",
"kuzzle-sdk": "^7.10.1",
"pocketbase": "^0.7.0",
"read-excel-file": "^5.5.0",
"surrealdb.js": "^0.3.1",
"xlsx": "^0.18.5"
},
"devDependencies": {
@@ -227,6 +229,19 @@
"node": ">=0.2.0"
}
},
"node_modules/bufferutil": {
"version": "4.0.6",
"resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.6.tgz",
"integrity": "sha512-jduaYOYtnio4aIAyc6UbvPCVcgq7nYpVnucyxr6eCYg/Woad9Hf/oxxBRDnGGjPfjUm6j5O/uBWhIu4iLebFaw==",
"hasInstallScript": true,
"optional": true,
"dependencies": {
"node-gyp-build": "^4.3.0"
},
"engines": {
"node": ">=6.14.2"
}
},
"node_modules/cfb": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz",
@@ -527,6 +542,18 @@
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ=="
},
"node_modules/kuzzle-sdk": {
"version": "7.10.1",
"resolved": "https://registry.npmjs.org/kuzzle-sdk/-/kuzzle-sdk-7.10.1.tgz",
"integrity": "sha512-tz8yZmka5HcO1JCi3KYfoUiWtozBMMdO4ViKMh8XHLKhbEBvJRK7Jici5e8BCVj80H/8DlgF5HBXmb45v0PxAg==",
"dependencies": {
"min-req-promise": "^1.0.1",
"ws": "^8.8.1"
},
"engines": {
"node": ">= 10.13.0"
}
},
"node_modules/listenercount": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz",
@@ -538,6 +565,11 @@
"integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==",
"dev": true
},
"node_modules/min-req-promise": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/min-req-promise/-/min-req-promise-1.0.1.tgz",
"integrity": "sha512-PD2LObOGZPBPk3EMiuxc4Te0a0T0C6ZZni4m6eNl1zgxqJh+jThM026TmxV6IcJM8MWPHagJm3Q+zm2CNOAiDg=="
},
"node_modules/minimatch": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
@@ -571,6 +603,28 @@
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
"dev": true
},
"node_modules/nanoid": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.0.tgz",
"integrity": "sha512-IgBP8piMxe/gf73RTQx7hmnhwz0aaEXYakvqZyE302IXW3HyVNhdNGC+O2MwMAVhLEnvXlvKtGbtJf6wvHihCg==",
"bin": {
"nanoid": "bin/nanoid.js"
},
"engines": {
"node": "^14 || ^16 || >=18"
}
},
"node_modules/node-gyp-build": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz",
"integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==",
"optional": true,
"bin": {
"node-gyp-build": "bin.js",
"node-gyp-build-optional": "optional.js",
"node-gyp-build-test": "build-test.js"
}
},
"node_modules/nodemon": {
"version": "2.0.19",
"resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.19.tgz",
@@ -790,6 +844,19 @@
"node": ">=4"
}
},
"node_modules/surrealdb.js": {
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/surrealdb.js/-/surrealdb.js-0.3.1.tgz",
"integrity": "sha512-qVd3xIaZ120KClGBe5WKDswwI2y7ZYjXfhI2F2eRvr1Uv9t/tz8tF0heqdDXXfPqqZA4S2GadEwjBkGSIRNBCw==",
"dependencies": {
"nanoid": "^4.0.0",
"ws": "^8.8.1"
},
"optionalDependencies": {
"bufferutil": "^4.0.6",
"utf-8-validate": "^5.0.9"
}
},
"node_modules/to-regex-range": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
@@ -901,6 +968,19 @@
"setimmediate": "~1.0.4"
}
},
"node_modules/utf-8-validate": {
"version": "5.0.9",
"resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.9.tgz",
"integrity": "sha512-Yek7dAy0v3Kl0orwMlvi7TPtiCNrdfHNd7Gcc/pLq4BLXqfAmd0J7OWMizUQnTTJsyjKn02mU7anqwfmUP4J8Q==",
"hasInstallScript": true,
"optional": true,
"dependencies": {
"node-gyp-build": "^4.3.0"
},
"engines": {
"node": ">=6.14.2"
}
},
"node_modules/util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
@@ -933,6 +1013,26 @@
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
},
"node_modules/ws": {
"version": "8.8.1",
"resolved": "https://registry.npmjs.org/ws/-/ws-8.8.1.tgz",
"integrity": "sha512-bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==",
"engines": {
"node": ">=10.0.0"
},
"peerDependencies": {
"bufferutil": "^4.0.1",
"utf-8-validate": "^5.0.2"
},
"peerDependenciesMeta": {
"bufferutil": {
"optional": true
},
"utf-8-validate": {
"optional": true
}
}
},
"node_modules/xlsx": {
"version": "0.18.5",
"resolved": "https://registry.npmjs.org/xlsx/-/xlsx-0.18.5.tgz",
@@ -1127,6 +1227,15 @@
"resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz",
"integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ=="
},
"bufferutil": {
"version": "4.0.6",
"resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.6.tgz",
"integrity": "sha512-jduaYOYtnio4aIAyc6UbvPCVcgq7nYpVnucyxr6eCYg/Woad9Hf/oxxBRDnGGjPfjUm6j5O/uBWhIu4iLebFaw==",
"optional": true,
"requires": {
"node-gyp-build": "^4.3.0"
}
},
"cfb": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz",
@@ -1354,6 +1463,15 @@
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ=="
},
"kuzzle-sdk": {
"version": "7.10.1",
"resolved": "https://registry.npmjs.org/kuzzle-sdk/-/kuzzle-sdk-7.10.1.tgz",
"integrity": "sha512-tz8yZmka5HcO1JCi3KYfoUiWtozBMMdO4ViKMh8XHLKhbEBvJRK7Jici5e8BCVj80H/8DlgF5HBXmb45v0PxAg==",
"requires": {
"min-req-promise": "^1.0.1",
"ws": "^8.8.1"
}
},
"listenercount": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz",
@@ -1365,6 +1483,11 @@
"integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==",
"dev": true
},
"min-req-promise": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/min-req-promise/-/min-req-promise-1.0.1.tgz",
"integrity": "sha512-PD2LObOGZPBPk3EMiuxc4Te0a0T0C6ZZni4m6eNl1zgxqJh+jThM026TmxV6IcJM8MWPHagJm3Q+zm2CNOAiDg=="
},
"minimatch": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
@@ -1392,6 +1515,17 @@
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
"dev": true
},
"nanoid": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.0.tgz",
"integrity": "sha512-IgBP8piMxe/gf73RTQx7hmnhwz0aaEXYakvqZyE302IXW3HyVNhdNGC+O2MwMAVhLEnvXlvKtGbtJf6wvHihCg=="
},
"node-gyp-build": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz",
"integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==",
"optional": true
},
"nodemon": {
"version": "2.0.19",
"resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.19.tgz",
@@ -1560,6 +1694,17 @@
"has-flag": "^3.0.0"
}
},
"surrealdb.js": {
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/surrealdb.js/-/surrealdb.js-0.3.1.tgz",
"integrity": "sha512-qVd3xIaZ120KClGBe5WKDswwI2y7ZYjXfhI2F2eRvr1Uv9t/tz8tF0heqdDXXfPqqZA4S2GadEwjBkGSIRNBCw==",
"requires": {
"bufferutil": "^4.0.6",
"nanoid": "^4.0.0",
"utf-8-validate": "^5.0.9",
"ws": "^8.8.1"
}
},
"to-regex-range": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
@@ -1633,6 +1778,15 @@
"setimmediate": "~1.0.4"
}
},
"utf-8-validate": {
"version": "5.0.9",
"resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.9.tgz",
"integrity": "sha512-Yek7dAy0v3Kl0orwMlvi7TPtiCNrdfHNd7Gcc/pLq4BLXqfAmd0J7OWMizUQnTTJsyjKn02mU7anqwfmUP4J8Q==",
"optional": true,
"requires": {
"node-gyp-build": "^4.3.0"
}
},
"util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
@@ -1659,6 +1813,12 @@
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
},
"ws": {
"version": "8.8.1",
"resolved": "https://registry.npmjs.org/ws/-/ws-8.8.1.tgz",
"integrity": "sha512-bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==",
"requires": {}
},
"xlsx": {
"version": "0.18.5",
"resolved": "https://registry.npmjs.org/xlsx/-/xlsx-0.18.5.tgz",

View File

@@ -20,8 +20,10 @@
},
"dependencies": {
"excel-date-to-js": "^1.1.5",
"kuzzle-sdk": "^7.10.1",
"pocketbase": "^0.7.0",
"read-excel-file": "^5.5.0",
"surrealdb.js": "^0.3.1",
"xlsx": "^0.18.5"
}
}

86
Node/src/convertToJson.ts Normal file
View File

@@ -0,0 +1,86 @@
import reader from "xlsx";
import { getJsDateFromExcel } from "excel-date-to-js";
import { readdirSync, writeFileSync } from "fs";
import { join } from "path";
const excelPath = join(__dirname, "..", "..", "Excel");
const excelFiles = readdirSync(excelPath);
const readExcel = (filePath: string) => {
let data: unknown[] = [];
const file = reader.readFile(filePath);
const sheets = file.SheetNames;
for (let i = 0; i < sheets.length; i++) {
const temp = reader.utils.sheet_to_json(file.Sheets[file.SheetNames[i]]);
temp.forEach((res) => {
data.push(res);
});
}
return data;
};
const recordsToJson = () => {
let i = 0;
let records: any[] = [];
excelFiles.every((file) => {
if (!file.includes("raw_") && !file.includes("lock")) {
const excelFile = join(excelPath, file);
const data = readExcel(excelFile);
const klinika_emer = file.split("_")[0];
const klinika: any = {
emer: klinika_emer,
shtrimi: [],
};
data.every((record: any) => {
i++;
if (record.EMER !== "" && record.MBIEMER !== "") {
let datelindja = null;
let data_shtrimit = null;
try {
datelindja = getJsDateFromExcel(record.DATELINDJA_KORIGJ);
data_shtrimit = getJsDateFromExcel(record.DT_SHTRIMI_KORIGJ);
} catch (error) {
console.log(i, record.EMER, record.MBIEMER);
// return false;
}
const trajtimi = {
trajtimi:
record["TRAJTIMI SPITALOR Urgjence"] ||
record["TRAJTIMI SPITALOR Pavion"],
};
const diagnoza = {
emer: record.DIAGNOZA,
kodi_dg_icd_9: record["Kodi DG ICD-9"],
};
const pacienti = {
emer: record.EMER,
mbiemer: record.MBIEMER,
mosha: record.MOSHA,
datelindja,
gjinia: record.GJINIA,
error: record.ERROR,
};
const shtrimi = {
nr: i,
data_shtrimit,
dite_qendrimi: record["DITE QENDRIMI NE SPITAL"],
pacienti,
diagnoza,
trajtimi,
};
klinika.shtrimi.push(shtrimi);
}
return true;
});
records.push(klinika);
console.log(`Mbaroi ${klinika_emer}`);
}
return true;
});
const jsonFile = join(__dirname, "..", "..", "JSON", "records.json");
writeFileSync(jsonFile, JSON.stringify(records));
};
export default recordsToJson;

View File

@@ -1,57 +1,22 @@
import reader from "xlsx";
import { getJsDateFromExcel } from "excel-date-to-js";
import PocketBase from "pocketbase";
import { readdirSync } from "fs";
import { join } from "path";
const excelPath = join(__dirname, "..", "..", "Excel");
const excelFiles = readdirSync(excelPath);
const readExcel = (filePath: string) => {
let data: unknown[] = [];
const file = reader.readFile(filePath);
const sheets = file.SheetNames;
for (let i = 0; i < sheets.length; i++) {
const temp = reader.utils.sheet_to_json(file.Sheets[file.SheetNames[i]]);
temp.forEach((res) => {
data.push(res);
});
}
return data;
};
excelFiles.forEach((file) => {
if (!file.includes("raw_") && !file.includes("lock")) {
const excelFile = join(excelPath, file);
const data = readExcel(excelFile);
data.forEach((record: any) => {
if (
record.DATELINDJA_KORIGJ !== "" &&
record.DATELINDJA_KORIGJ !== "DEKLARUAR"
) {
const pacient = {
emer: record.EMER,
mbiemer: record.MBIEMER,
mosha: record.MOSHA,
datelindja: getJsDateFromExcel(record.DATELINDJA_KORIGJ),
error: record.ERROR,
};
}
});
}
});
const loginToPocketBase = async () => {
const client = new PocketBase("http://127.0.0.1:8090");
const adminAuthData = await client.admins.authViaEmail(
"test@example.com",
"123456"
);
console.log(adminAuthData);
};
import { run } from "./kuzzle";
// import recordsToJson from "./convertToJson";
(async () => {
await loginToPocketBase();
const kuzzle = await run();
if (kuzzle) {
const credentials = {
username: "julian.cuni",
password: "MatraPaPuPa..11",
};
try {
const jwt = await kuzzle.auth.login("local", credentials);
// const apiKey = await kuzzle.auth.createApiKey("Sigfox API key");
} catch (error: any) {
console.error(error.message);
}
}
})();
// (async () => {
// await login();
// })();

27
Node/src/kuzzle.ts Normal file
View File

@@ -0,0 +1,27 @@
import { Kuzzle, WebSocket, Http } from "kuzzle-sdk";
const kuzzle = new Kuzzle(new Http("localhost"));
kuzzle.on("networkError", (error: any) => {
console.error("Network Error: ", error);
});
const run = async () => {
try {
// Connects to the Kuzzle server
await kuzzle.connect();
// Creates an index
// await kuzzle.index.create("nyc-open-data");
// // Creates a collection
// await kuzzle.collection.create("nyc-open-data", "yellow-taxi", {});
// console.log("nyc-open-data/yellow-taxi ready!");
return kuzzle;
} catch (error: any) {
console.error(error.message);
}
// finally {
// kuzzle.disconnect();
// }
return null;
};
export { run };

37
Node/src/sdb.ts Normal file
View File

@@ -0,0 +1,37 @@
const Surreal = require("surrealdb.js");
const db = new Surreal("https://baas.microservices.al/rpc");
async function main() {
try {
await db.use("fluxem", "fluxem");
const token = await db.signin({
NS: "fluxem",
DB: "fluxem",
SC: "allusers",
email: "test@acme.com",
pass: "some password",
marketing: true,
tags: ["rust", "golang", "javascript"],
});
let created = await db.create("person", {
title: "Founder & CEO",
name: {
first: "Tobie",
last: "Morgan Hitchcock",
},
marketing: true,
identifier: Math.random().toString(36).substr(2, 10),
});
// await db.invalidate();
// const res = await db.authenticate(token)
console.log("token", created);
} catch (e) {
console.error("ERROR", e);
}
}
main();

View File

@@ -1,3 +1,4 @@
from sys import orig_argv
import pandas as pd
from os import listdir
from os.path import isfile, join
@@ -25,6 +26,10 @@ def convert(klinika: str):
if klinika in file and "lock" not in file:
list_paths.append(join(docx_path, file))
for path in list_paths:
viti = file.replace(".docx", "")
viti = viti.split("_")
viti = viti[1]
print(viti)
document = Document(path)
for table in document.tables:
if "urgjenca_2016.docx" in path:
@@ -37,17 +42,20 @@ def convert(klinika: str):
for cell in table.rows[0].cells:
columns.append(cell.text.strip().replace('\n', ' '))
columns.append('VITI')
RowA = table.rows[0]
table_element = table._tbl
table_element.remove(RowA._tr)
for row in table.rows:
text = [cell.text for cell in row.cells]
text.append(viti)
df = df.append([text], ignore_index=True)
print(f"Mbaroi {path} me {datetime.now()}")
for word in columns:
if word not in filtered_columns:
filtered_columns.append(word)
print(filtered_columns)
print(f'{len(filtered_columns)} Columns found')
print('writing to excel...')
print(f"Perfundoi {klinika} me {datetime.now()}")