z230
This commit is contained in:
@@ -0,0 +1,63 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# =============================================================================
|
||||
# Nazev: promote_sipiq_submitted_v1.0.py
|
||||
# Verze: 1.0
|
||||
# Datum: 2026-06-17
|
||||
# Popis: Posune dane investigatory (KROK 6 - SIPIQ odeslan) na
|
||||
# KROK "7 - SIPIQ vyplneny" na zaklade Illuminator exportu
|
||||
# (status "SIPIQ Submitted"). Illuminator = ultimatni zdroj, protoze
|
||||
# lekar vyplneni SIPIQ nemusi oznamit e-mailem. Predřadi radek do STATUS.
|
||||
# Pouziti: python promote_sipiq_submitted_v1.0.py (dry-run)
|
||||
# python promote_sipiq_submitted_v1.0.py --apply
|
||||
# =============================================================================
|
||||
import sys
|
||||
from pymongo import MongoClient
|
||||
from bson import ObjectId
|
||||
|
||||
MONGO_URI = "mongodb://192.168.1.76:27017"
|
||||
LINE = ("17JUN2026: SIPIQ VYPLNENY — dle Illuminator exportu (status „SIPIQ "
|
||||
"Submitted“); lekar vyplneni neoznamil, Illuminator = ultimatni zdroj. KROK 7.")
|
||||
|
||||
# 13 investigatoru se SIPIQ Submitted v Illuminatoru, v Mongo zatim KROK 6
|
||||
IDS = [
|
||||
("6a19832b5fc2213518257969", "Durina Juraj"),
|
||||
("6a19832b5fc221351825796e", "Falc Matej"),
|
||||
("6a19832b5fc2213518257954", "Fedurco Miroslav"),
|
||||
("6a19832b5fc221351825796c", "Gregar Jan"),
|
||||
("6a19832b5fc221351825794f", "Hlavaty Tibor"),
|
||||
("6a19832b5fc2213518257973", "Horvath Frantisek"),
|
||||
("6a19832b5fc221351825796f", "Konecny Michal"),
|
||||
("6a19832b5fc2213518257972", "Konecny Stefan"),
|
||||
("6a1c4275aa46d8b608065cec", "Lukac Ludovit"),
|
||||
("6a19832b5fc2213518257958", "Mihalkanin Lubomir"),
|
||||
("6a198b661218c31ab0f5ba41", "Pesta Martin"),
|
||||
("6a19832b5fc221351825795e", "Stepek David"),
|
||||
("6a198b661218c31ab0f5ba43", "Tichy Michal"),
|
||||
]
|
||||
|
||||
|
||||
def main():
|
||||
apply = "--apply" in sys.argv
|
||||
col = MongoClient(MONGO_URI)["feasibility"]["investigators"]
|
||||
n = 0
|
||||
for hid, label in IDS:
|
||||
oid = ObjectId(hid)
|
||||
d = col.find_one({"_id": oid}, {"STATUS": 1, "KROK": 1})
|
||||
if not d:
|
||||
print(f" !! {label}: NENALEZEN"); continue
|
||||
krok = d.get("KROK", "")
|
||||
if not krok.startswith("6"):
|
||||
print(f" ~~ {label}: KROK={krok} (neni 6) -> preskakuji"); continue
|
||||
print(f" [{label}] KROK {krok} -> 7 - SIPIQ vyplneny")
|
||||
if apply:
|
||||
new_status = LINE + "\n" + (d.get("STATUS", "") or "")
|
||||
col.update_one({"_id": oid}, {"$set": {
|
||||
"KROK": "7 - SIPIQ vyplneny", "STATUS": new_status}})
|
||||
n += 1
|
||||
print(f"\n{'ZAPSANO' if apply else 'DRY-RUN'}: {n if apply else len(IDS)}/{len(IDS)}")
|
||||
if not apply:
|
||||
print(">>> Pro zapis spust s --apply")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user