Closed roman-dvorak closed 1 year ago
Minimální řešení implementováno
Usage:
// insert modal to html
const modal = new ProductSelectionModal();
// show modal to user
modal.showModal();
// setup event for product selection completition
$(".selection-confirm-button").click(function() {
// store selected value where you like
const id_of_selected_product = modal.getID();
});
TODO
Častý požadavek skrze mnoho modulů intranetu je přistupovat k součástkám, vyhledávat je ve skladu a zjišťovat jejich ID pro přiřazení do určitých seznamů.
Toto by mělo být řešeno formou nějakých znovu užitelných objektů. Tornato templates pro to má řešení v podobě UI modules. Alternativní řešení je, že to bude nějaká javascriptová funkce/třída.
Forma JS třidy má výhodu, že si trochu snížíme závislost na tornado templates. Což má řadu důvodů. Ale na druhou stranu záleží, jaké závislosti js řešení bude mít.
Výsledek má vypadat tak, že se na požadovaném místě vytvoří nějaké input/select2 pole s tlačítkem. Do pole by mělo jít psát a tím vyhledávat. Pokud v poli již nějaká hodota bude (ObjectId), tak to toto id "přeloží" na reálný název ze skladu.
U vstupu by mělo existovat tlačítko, po jehož stisknutí se člověk objeví v nějakém vyskakovacím okně, ve kterém si bude normálně moct ovládat filtry, vyhledávání atd.. A po vyhledání součástky jí vybere a ona se vloží do požadovaného pole.
Tohle je aktuálně potřebné pro řešení: #179, #36 či #96