Nyilvántartó rendszer Drupalban – node automatikus létrehozása

d.pryke képe

Készítettem egy nyilvántartórendszert Drupal 6-ban:
3 féle tartalomtípus: ügyfél, domain név, tárhely.
A domain névhez és a tárhelyhez node referencel hozzá lehet rendelni ügyfelet. Innentől mindenféle nézetet létre tudok hozni,pl: mely ügyfélnek milyen tárhelye és domainneve van nálam, mely domain kihez tartozik stb.
A domainekért és a tárhelyekért fizet az ügyfél. Havonta vagy 2 havonta vagy 3 havonta vagy fél évente, évente, kivel hogy szól a szerződés.
Szeretném, ha a Drupal figyelmeztetne, de legalább meg tudnám benne nézni, hogy kinek mikor mit kell fizetni.
Van erre valakinek ötlete? Bármilyen megoldás izgalmas lehet.

Én úgy képzelném el a megvalósítást (lehet, hogy hülyeség), hogy a domainhez illetve tárhelyhez meg tudok adni egy kezdődátumot és egy fizetési gyakoriságot (havonta, évente, stb.)
A Drupal minden fizetési esedékesség (kezdődátum + n*fizetési gyakoriság) esetén létrehoz egy „fizetési esedékesség” típusú nodeot, (ami nyilván egy tárhely vagy egy domain típusú nodehoz kötődik ezáltal indirekt módon egy ügyfélhez is kötődik), és aminek csinálok státuszokat: ki kell küldeni a számlát / kiment a számla / beérkezett a pénz.
Ez tök jól működne is szerintem, már csak azt nem tudom, hogy hogyan lehetne megcsinálni modulfejlesztés nélkül azt, hogy maguktól létrejöjjenek megadott időben a „fizetési esedékesség” típusú nodeok.
(ha maguktól létrejönnek, akkor az, hogy a rendszer mailben értesítsen engem, az már Subscriptions modullal megoldható)

Van valakinek ötlete?

Drupal verzió: 
Fórum: 
Nagy Gusztáv képe

Én ezt használnám, + egy nézet az aktuálisok listázásához.

http://drupalmodules.com/module/computed-field

0
0

Nagy Gusztáv

d.pryke képe

Köszönöm a tippet, de nem teljesen értem, hogyhogyan tud ez a modul a probléma megoldásában segíteni. Milyen kódot (mit végző kódot) kellene írnom a computed fieldbe?

Én azt látom, hogy ezzel minden tartalomtípushoz hozzá tudok adni EGY darab computed fieldet. A fizetési esedékességből nem csak egy lehet, állapotai vannak (kifizette már vagy még nem) ráadásul folyamatosan képződniük kell, amikor aktuálisak.
Nem tudom elképzelni, hogy cron vagy időzített feladatok nélkül megoldjunk, és nem látom, hogy a computed field kódja hogyan fog lefutni mondjuk naponta, hogy ellenőrizze, hogy esedékes-e valamilyen fizetés.

Mindeközben a cck hoz megtaláltam a date modult amivel tök jól meg lehet adni egy kezdő és egy végdátumo eltárolását és egy gyakoriságot egy nodehoz, amivel úgy gondolom pont életszerűen lehet reprezentálni, hogy milyen logika szerint kell egy tárhelyet vagy egy domaint fizetni. Jópofa lenne ezt felhasználni, de persze ekkor is meg kell oldani valahogy a figyelmeztetést, és hogy eltárolhassam, hogy a fizetési esedékesség aktuális, vagy rendezett.

0
0
eMeLA képe

Biztos, hogy kell ehhez egy új node ?

A tárhely node beküldési idejéből és a fizetési gyakoriságból ki lehet számolni, kinek mikor kell fizetni Ezt szerintem lehet view-el listázni (csak gondolom, sosem használtam a view-et). Ha van három gomb (ki kell küldeni a számlát / kiment a számla / beérkezett a pénz) a node-ban. Azok szerint is lehet tovább bontani a listát. Ha a beérkezett a pénz is, illetve a másik kettő is be van kapcsolva, akkor az adott node beküldési dátumát át kell állítani a fizetés esedéskesésge dátumára (pl. nodebeküldés dátuma+1hónap), a kapcsolókat lenullázni, így újraindul a számolás.

Szerintem ezt csak egy saját modullal lehet megcsinálni, nem is tűnik most nagyon bonyolultnak. A hook_alter()-t használatával, a $form['#submit'] elejére kell betenni egy saját függvény meghívását (igy a node tárolás előtt az adatokkal lehet manipulálni). Vizsgálni kell, hogy minden kapcsoló be van-e kapcsolva, ha igen akkor nullázás, és a dátum átírása. Elméletben nem tűnik bonyolultnak. A listákat pedig view-el elő lehet (talán) állítani.

0
0

...mit tudok: http://web.termuves.hu