devlab-oy/pupesoft — pull request #201 by jarmotorvinen (2012-05-14 11:10:04+00:00)
Title: Jamppa/api

tiedostot. api.php ja lue_data.php

lue_data:
REST käyttäytyy kuin UI mutta poikkeuksena se että se ei ole UI.
Tästä syystä ei saa käyttää parametrit kutsua, exit taikka die käskyjä, eikä suoraa echotusta.
Sekä ProggressBarin käyttö pitää ohittaa.

Noista syystä käytetään muuttujaa $api_kentat muuttujaa näissä kohdissa.

Sisääntuleva info on Array joka tulee api.php:n kautta luettavaksi.
lue_datassa se käsitellään kuin excel-tiedosto.

Rivillä 1734. Tässä kohdassa populoidaan tiettyjä kenttiä tallennettavaksi tietokantaan. Syy on se että mikäli apin kautta perustetaan minimitiedoilla asiakas, niin tietyt arvot pitää olla että voidaan tilata, näitä on mm. valuutta, kanavointi, maksuehto, toimitustapa.
Mikäli ne annetaan niin niitä ei ylikirjoiteta.

Malliesimerkkejä ja pakolliset kentät.

Arrayn alkuun 4 pakollista tietoa: käyttäjätunnus, salasana, yhtiö ja versionumero (0.1)
Sen jälkeen tyyppi (customer, order), vain customerillä on toiminto (muuta, lisaa, muuta/lisaa) samat kuin excelin sisääluvussa.
Mikäli "Customer" niin 3 pakollista kenttää, joista YTUNNUS pitää olla, ovt ja toim_ovt kentat pitää tulla, mutta saa olla tyhjiä.

Alla esimerkkejä Arraystä joilla voi tehdä jotain.
// Tehdään uusi asiakas

$data = array(
'user'	=>	'testikayttaja',
'pass'	=>	'testi1234',
'yhtio'	=>	'foobar',
'versio' => '0.1',

'tyyppi'=>	'customer',
'toiminto' => 'lisaa',

'nimi' => 'testiesimerkki',
'email' => 'toimiva@email.foo',
'postitp'	=> '99999',
'ytunnus'=> '121212-1234',
'ovttunnus' => '',
'toim_ovttunnus' => '',
);

// Tilataan jotain tuotetta x määrä
TUNNUS kenttään pitää tulla asiakas-taulun asiakkaan tunnus.
Ensimmäisellä kerralla luodaan uusitilaus ja palautetaan TILAUSNUMERO

$data = array(
'user'	=>	'testikayttaja',
'pass'	=>	'testi1234',
'yhtio'	=>	'foobar',
'versio' => '0.1',

'tyyppi'=>	'order',
'tunnus'=> '999999999',

'tuoteno'=> '88888888',
'kpl'	=> '1',
);

palauttaa: tilauksen tunnuksen : 123456789
Tota tietoa sitten pitää käyttää kun tilataan muita tuotteita kyseiselle asiakkaalle,
Arrayn-kentässä "TILAUSNUMERO"

$data = array(
'user'	=>	'testikayttaja',
'pass'	=>	'testi1234',
'yhtio'	=>	'foobar',
'versio' => '0.1',

'tyyppi'=>	'order',
'tunnus'=> '999999999',

'tilausnumero'=> '123456789',
'tuoteno'=> '887788',
'kpl'	=> '3',
);

Alla miten simuloida rest-rajapintaa käyttämällä pupesoft funktiota

$parameters = array(
'method'	=> 'GET',
'url'	=> 'http://localhost/pupesoft/rajapinnat/api.php',
'data'	=> $data,
);

$parse = pupesoft_rest($parameters);

Parse on array jossa 2 solua.
Solussa 0 on koodi (200=ok, 400=virhe, 500= viittaa yleensä sql-parse-erroriin)
Solussa 1 on viesti (tiedosto ok, päivitettiin 1 riviä) / (Virhe, virheviesti)