Manuál pro implementaci aplikace Na poštu Verze: 1.4.2013 0
Obsah 1. Popis služby... 2 2. Jak to funguje... 2 3. Ukázka souboru... 3 4. Implementace... 4 5. Specifikace souboru... 5 6. Logika vyhledávání... 5 7. Kontakt... 6 8. Vizuální podoba formuláře... 7 1
1. Popis služby Služba Na Poštu umožňuje zákazníkovi zaslání jeho zásilky na libovolnou pobočku České pošty, která tuto službu podporuje. Zde si ji pak adresát může vyzvednout již následující pracovní den po dni podání. Česká pošta zákazníka uvědomí o jeho zásilce pomocí SMS nebo e-mailu. Tato služba je dostupná na více než 2 600 pobočkách České pošty v České republice. 2. Jak to funguje Česká pošta nabízí na svém webu http://napostu.cpost.cz/vystupy/napostu.xml soubor obsahující aktuální databázi poboček, na kterých je služba Na Poštu dostupná. Provozovatel e-shopu má možnost bezplatného stažení souboru. Po jednoduché implementaci, která zahrnuje: 1. Stažení souboru, 2. Import do databáze, 3. Implementaci vyhledávacího formuláře tuto službu může nabídnout svým zákazníkům (vzorová implementace níže). Zákazník si pak jednoduše vyhledá pomocí názvu města nebo PSČ poštovní pobočku, která mu vyhovuje, a na tu nechá doručit svoji zásilku. Ze schématu je vidět, že celý proces nákupu se volbou cílové pobočky pro zásilky Na poštu nijak nekomplikuje. V rámci procesu dochází k předání informace o ceně zásilky, přenos informace probíhá na pozadí bez vědomí zákazníka v rámci aktuální objednávky. Informace o ceně zásilky je nezbytná, protože některé pobočky České pošty mají možnost odbavovat zásilky pouze do hodnoty 50 000 Kč. Pro zásilky v hodnotě vyšší než 50 000Kč je pro hledanou poštu, která zásilky nad 50 000 Kč neodbavuje, nabídnuta alternativní pobočka. Po výběru pobočky se s cenou zásilky už nijak dále nepracuje. Systém e-shopu převezme adresu zvolené pobočky České pošty a dále s ní pracuje jako s dodací adresou zásilky podle pravidel, které má dojednány s Českou poštou. 2
3. Ukázka souboru <?xml version="1.0" encoding="utf-8" standalone="no"?> <zv xmlns:xsi='http://www.w3.org/2001/xmlschema-instance' xmlns='http://www.cpost.cz/schema/aict/zv' xsi:schemalocation='http://www.cpost.cz/schema/aict/zv file:zv.xsd'> <generated>2011-05-17t09:00:00</generated> <row> <PSC>10000</PSC> <NAZ_PROV>Praha 10</NAZ_PROV> <OKRES>Hlavní město Praha</OKRES> <ADRESA>Černokostelecká 2020/20, Praha</ADRESA> <V_PROVOZU>N</V_PROVOZU> <PRODL_DOBA>A</PRODL_DOBA> <BANKOMAT>A</BANKOMAT> <PARKOVISTE>N</PARKOVISTE> <KOMPLET_SERVIS>A</KOMPLET_SERVIS> <VIKEND>N</VIKEND> <LOKALITY_PRODL>N</LOKALITY_PRODL> <VYDEJ_NP_OD>12:00</VYDEJ_NP_OD> <UKL_NP_LIMIT>N</UKL_NP_LIMIT> <PSC_NP_NAHR/> <NAZ_NP_NAHR/> <ABC_BOX>N</ABC_BOX> <OTV_DOBA> <den name="pondělí"> <od>07:00</od><do>12:00</do> <od>12:30</od><do>17:00</do> <den name="úterý"> <od>08:00</od><do>13:00</do> <den name="středa"> <od>07:00</od><do>12:00</do> <od>12:30</od><do>17:00</do> <den name="čtvrtek"> <od>08:00</od><do>13:00</do> <den name="pátek"> <od>08:00</od><do>13:00</do> <den name="sobota"> <od>08:00</od><do>10:00</do> <den name="neděle"/> </OTV_DOBA> </row> </zv> 3
4. Implementace Pro implementaci služby Na Poštu jako jednoho ze způsobů doručování zásilek zákazníkům doporučujeme postupovat v následujících čtyřech krocích. Nejprve je třeba předat informaci o ceně zásilky, která je ve vzorové implementaci pojmenována hodnotazasilky. Příklad implementace v jazyku PHP: 4.1. Skript pro připojení k databázi Soubor connect.php obsahuje jednoduchý skript, který je volán pro připojení k DB. 4.2. Aktualizace databáze Soubor createdbtable.php slouží pro import informací do databáze. Pro automatické aktualizace je třeba nastavit spouštění tohoto souboru v CRONu na serveru. Pokud chcete soubor nejprve stáhnout a pak provést aktualizaci, je třeba upravit následující řádek a změnit umístnění souboru na serveru. private $xmlfile = 'files/zv_napostu.xml'; Další možností je aktualizace přímo z webu České pošty. private $xmlfile = 'http://napostu.cpost.cz/vystupy/napostu.xml; 4.3. Implementace formuláře pro vyhledávání Logika vyhledávání a formuláře jsou obsaženy v souboru index.php. 4.4. Vyhledávání v databázi Implementace vyhledávání se nachází v souboru operator.php. Všechny zdrojové PHP soubory jsou volně ke stažení a naleznete na následující adrese : http://www.napostu.cz/source/source.0.1.zip. 4
5. Specifikace souboru 6. Logika vyhledávání Popis logiky vyhledávání je následující: 6.1. Nebyly nalezeny žádné záznamy Uživatel zadal řetězec, kterému neodpovídá žádný záznam v databázi. Informace pro uživatele: Zadaným kritériím nevyhovuje žádná pošta, zkontrolujte Vámi zadaná kritéria vyhledávání. 5
6.2. Pošta službu momentálně neposkytuje Na zadaný řetězec byl nalezen výsledek, ale pošta tuto službu momentálně neposkytuje. Informace pro uživatele: Omlouváme se, ale Vámi zvolená pobočka v současnosti nemůže z provozních důvodů požadovanou službu nabídnout. Prosíme, změňte vyhledávací kritéria. 6.3. Bylo nalezeno více aktivních i neaktivních pošt Zadanému řetězci odpovídá více pošt, některé momentálně službu neposkytují. Informace pro uživatele: Některé pobočky, které vyhovují Vámi zadaným kritériím, momentálně službu Na poštu neposkytují, výpis vyhledávání proto nabízí pouze aktuálně dostupné pobočky. 6.4. Nalezená pošta není oprávněna k manipulaci s balíky v hodnotě nad 50 000 Kč Pošta odpovídající hledanému řetězci neposkytuje manipulaci se zásilkami v hodnotě nad 50 000 Kč, nabízíme zákazníkovi jinou pobočku. Informace pro uživatele: Omlouváme se, ale Vámi zvolená pobočka bohužel v současnosti není oprávněna vydávat zásilky, jejichž udaná hodnota je vyšší než 50 000 Kč. Proto jsme si dovolili Vám nabídnout alternativní řešení. 6.5. Byl nalezen jeden nebo více odpovídajících záznamů Na zadaný řetězec byla nalezena jedna nebo více odpovídajících pošt. Informace pro uživatele: Zadaným kritériím vyhovují tyto pošty, vyberte kliknutím poštu, kterou preferujete. 7. Kontakt V případě problémů nebo dotazů se můžete obrátit na kontaktní e-mail podpora@napostu.cz 6
8. Vizuální podoba formuláře Několik ukázek formuláře ze vzorové implementace. 8.1. Základní formulář pro vyhledávání Jednouchý formulář umožňující vyhledávání podle názvu a PSČ. Lze také vyhledávat pomocí kombinací obou těchto parametrů. Vyhledávání PSČ funguje jak s mezerou, tak bez mezery. 8.2. Našeptávání možných výrazů Vyhledávání také nabízí funkci našeptávání výrazů přímo z databáze poboček. 7
8.3. Zobrazení výsledků vyhledávání Vyplněný formulář s hledaným řetězcem, doplněný informací pro uživatele, výsledky vyhledávání a legendou. 8
8.4. Předání zvolených informací Poslední dialog zobrazuje vybranou pobočku pošty, kterou dále přebírá systém e-shopu. POZN. Jedná se pouze o ilustrativní dialog. Systém e-shopu převezme pouze data a zobrazí je ve své grafice. 9