96
UNIVERSITATEA ROMÂNO-AMERICANĂ BUCUREŞTI FACULTATEA DE INFORMATICĂ MANAGERIALĂ Intranet realizat cu PHP şi Mysql pentru gestionarea aprovizionării şi desfacerii la restaurantul hotelului S.C Majestic Turism S.A. ÎNDRUMĂTOR: Lect. Univ. drd. IACOB IONEL STUDENT : CIOBANESCU MIRCEA GRUPA 631

Licenta Ciobanescu Mircea

Embed Size (px)

DESCRIPTION

licenta informatica manageriala

Citation preview

Page 1: Licenta Ciobanescu Mircea

UNIVERSITATEA ROMÂNO-AMERICANĂ BUCUREŞTI

FACULTATEA DE INFORMATICĂ MANAGERIALĂ

Intranet realizat cu PHP şi Mysqlpentru gestionarea aprovizionării şi desfacerii

la restaurantul hoteluluiS.C Majestic Turism S.A.

ÎNDRUMĂTOR:Lect. Univ. drd.IACOB IONEL

STUDENT : CIOBANESCU MIRCEA

GRUPA 631

Bucureşti - 2010

Page 2: Licenta Ciobanescu Mircea

- CUPRINS -

Introducere.........................................................................................................4

CAPITOLUL 1 Studiul şi analiza sistemului existent

1.1. Prezentarea unităţii economico-sociale.......................................................5

1.1.1. Istoric................................................................................................5

1.1.2. Obiectul de activitate........................................................................6

1.1.3. Locul in sfera economică.................................................................7

1.1.4. Indicatori economici.......................................................................10

1.2. Structura organizatorică a societăţii..........................................................14

1.2.1. Organigrama...................................................................................15

1.2.2. Studiul sistemului de conducere.....................................................16

1.2.3. Studiul sistemului condus..............................................................19

1.3. Studiul sistemului informaţional...............................................................21

1.3.1. Prezentarea activităţii economice...................................................21

1.3.2. Fluxul documentelor......................................................................22

1.3.3. Prezentarea documentelor..............................................................23

1.3.4. Descrierea procedurilor..................................................................25

1.4. Analiza critică şi direcţii de perfecţionare................................................26

CAPITOLUL 2 Proiectarea de ansamblu a noului sistem informatic

2.1. Definirea obiectivelor................................................................................28

2.2. Tehnologii folosite...................................................................................29

2.3. Diagrama entitate - asociere.....................................................................31

2.4. Proiectarea tabelelor aplicaţiei.................................................................32

2.5. Relaţii de asociere între tabele.................................................................34

2.6. Videoformate pentru situaţii de intrare....................................................35

2.7. Proiectarea situaţiilor de ieşire.................................................................37

2.8. Exemplificarea codului aplicaţiei.............................................................38

2

Page 3: Licenta Ciobanescu Mircea

CAPITOLUL 3: Prezentarea produsului software, implementarea şi exploatarea aplicaţiei

3.1. Consideraţii generale.............................................................................42

3.1.1. Cerinţele platformei hardware şi software ale produsului program............................................................................42

3.1.2. Licenţa programului.......................................................................44

3.2.Descrierea funcţiunilor aplicaţiei........................................................46

3.2.1. . Prezentarea ecranului principal(meniurile aplicaţiei) ............46

3.2.2. . Meniul Incarcare-actualizare date.............................................48

3.2.3. . Meniul rapoarte............................................................................50

3.2.4. . Mesaje de eroare..........................................................................52

CAPITOLUL 4: Eficienţa şi utilitatea sistemului informatic

BIBLIOGRAFIE........................................................................................56

ANEXE..........................................................................................................58

3

Page 4: Licenta Ciobanescu Mircea

Introducere

Lucrarea este compusă din 4 capitole şi prezintă activitatea de gestiune a aprovizionării şi

desfacerii la restaurantul hotelului Majestic. Este realizată pentru o unitate hotelieră de 4* , S.C.

Majestic Turism S.A., înfiinţată în anul 1993.

Se propune proiectarea şi realizarea unui sistem informatic modern pentru îmbunătăţirea

fluxurilor de date existente la nivelul întregii societăţi capabil să automatizeze şi să eficientizeze

procedurile manuale şi dificile de introducere, analiză, prelucrare şi transmitere a datelor

existente în sistem.

Astfel, în capitolul 1 al lucrării se abordează prezentarea generală a hotelului, care

cuprinde: scurt istoric, organizarea şi funcţionarea acestuia, analiza pieţei pe care Hotel Majestic

îşi desfăşoară activitatea, analiza indicatorilor circulaţiei turistice şi analiză principalilor

indicatori economico-financiari. De asemenea, în acest capitol este prezentat şi fluxul

documentelor din cadrul activităţii de aprovizionare şi desfacere, precum o scurtă prezentare a

acestor documente. Capitolul se încheie cu analiza critică a activităţii de aprovizionare şi

desfacere dar şi cu direcţii de perfecţionare pentru eficientizarea acesteia.

În cel de-al doilea capitol este prezentată proiectarea de ansamblu a noului sistem

informatic ce va fi creat. Aceasta cuprinde: definirea obiectivelor principale ale aplicaţiei,

proiectarea tabelelor ce vor constitui bază de date a aplicaţiei, relaţiile de asociere dintre acestea

precum şi situaţiile de intrare şi ieşire ale programului.

Capitolul 3 prezintă cerinţele hardware şi software necesare rulării în parametri optimi a

aplicaţiei, descrierea tuturor funcţionalităţilor programului, a meniurilor aplicaţiei precum şi

reguli de exploatare ale aplicaţiei.

Ultimul capitol precizează condiţiile şi modalităţile de implementare şi exploatare

curentă, se estimează eficienţa economică a aplicaţiei.

4

Page 5: Licenta Ciobanescu Mircea

Capitolul 1

Studiul şi analiza sistemului existent

1.1 Prezentarea societaţii

1.1.1 Istoric

Hotel Majestic este administrat de Societatea Majestic Turism S.A., activitatea şi

funcţionarea sa făcându-se conform Hotărârii Guvernului României N.R.601 din 6 octombrie

1997 privind clasificarea structurilor de primire turişti (făcută în funcţie de carecteristicile

constructive, de calitatea dotărilor şi a serviciilor prestate).

Funcţionarea hotelului are în vedere respectarea “Normelor privind clasificarea unităţilor

cu activitate hotelieră şi alimentaţie din turism” din anul 1991, elaborate de Ministerul

Comerţului şi Turismului.

Clădirea în care se află în prezent Hotel Majestic a fost construită în anul 1920, iar în anul

1960 a devenit un hotel de 2*.

Prima consolidare şi renovare a clădirii, pe atunci anexă a teatrului Odeon a fost facută în

anul 1970.

În anul 1993 s-a înfiinţat Societatea Majestic, iar hotelul era cotat la categoria 2*.

Începând cu anii 1994-1995, hotelul a devenit de 4*.

Societatea Majestic este societate pe acţiuni, 98% aparţinând părţii turcesti, iar 2%

Societăţii Lido S.A.

Structura capitalului social al Societăţii Lido S.A. (care are ca principale obiective de

activitate, administrarea patrimoniului şi turismul) este:

- Fondul Proprietăţii de Stat (F.P.S.) – 42,869%;

- S.I.F. Transilvania – 2,868%;

- persoane fizice – 54,263%;

Partea majoritară a acţionarilor S.C. Majestic a dus o politică de investiţii de 5,6 milioane

U.S.D. în anul 1994-1995, în anul 2000 capitalul social ajungând la 1.450.000 U.S.D.

5

Page 6: Licenta Ciobanescu Mircea

1.1.2 Obiectul de activitate

Hotel Majestic este o unitate hotelieră de 4*, amplasat în centrul comercial, financiar şi

cultural al capitalei, are o activitate permanentă şi este mereu disponibil clienţilor, oferind

servicii de calitate bună şi tarife pe măsură.

Structura serviciilor oferite de hotel este următoarea:

camere dotate cu aer condiţonat;

tv color şi sistem Pay-Tv;

mini-bar;

telefon cu facilităţi Voice Mail;

sistem automat de trezire;

Internet de mare viteză gratuit

uscător de păr

mini-safe;

Restaurantul Majestic oferă preparate culinare cu specific românesc, turcesc şi

internaţional;

Drink Bar şi Snack Bar oferă cele mai variate băuturi;

room-service la dispoziţia clienţilor 24 de ore pe zi;

Business Center;

Meeting Room;

computere, conectare internet, telex, fax, copiatoare, retroproiectoare, ecran

Filip Chart, tv, video;

centru de înfrumuseţare cu saună, masaj, fitnes, coafură, frizerie;

casă de schimb valutar;

servicii medicale;

angajaţii (în special cei care intră în contact cu clienţii) vorbesc franceza,

germana, engleza şi turca;

parcare.

.

6

Page 7: Licenta Ciobanescu Mircea

1.1.3 Locul în sfera economică

Hotel Majestic are numeroşi colaboratori, cu ajutorul cărora îşi oferă serviciile, aceştia

fiind: agenţii de turism (Marshal, Simpa), bănci (Finas Bank), societăţi de asigurări (Astra),

companii de transport aerian (Tarom), societăţi comerciale, furnizori străini.

Tarifele practicate de Hotel Majestic sunt:

În timpul saptămânii (luni-vineri) Weekend (vineri-duminică)

Camera single 195 EUR; Camera single 115 EUR;

Camera dublă 240 EUR; Camera dublă 160 EUR;

Suite 290 EUR; Suite 200 EUR;

Sistemul de tarifare este diferenţiat în funcţie de tipul camerei, perioada de timp pentru

care este ocupată camera, gradul de ocupare al camerelor.

Tarifele de cazare afişate reprezintă preţul închirierii unei camere pentru 24 de ore.

Pentru o cameră dublă tarifele pot diferi în funcţie de câte persoane închiriază camera.

Sunt acordate şi anumite facilităţi pentru anumite segmente de clienţi (grupuri de turişti

care staţionează un anumit număr de zile în hotel) sau se folosesc tarife degresive (tariful pentru

o cameră scade dacă aceasta este închiriată mai multe zile).

Rezervările se pot face prin: fax, e-mail, internet, telefon.

Clienţii hotelului Majestic

Datorită faptului că Hotel Majestic este considerat “hotelul oamenilor de afaceri”

majoritatea clienţilor sunt oameni de afaceri români sau străini, care călătoresc pentru a face

afaceri, motive profesionale, în interes de serviciu, participări la reuniuni sau conferinţe.

7

Page 8: Licenta Ciobanescu Mircea

Nefiind persoane cu probleme financiare, clienţii acestui hotel se dovedesc a fi foarte

sensibili la confortul şi la calitatea serviciilor oferite, astfel se urmăreşte satisfacerea tuturor

cerinţelor acestora.

Prezenţa în hotel a acestor clienţi este foarte avantajoasă, ei utilizând o gamă foarte

variată de servicii pe care le oferă hotelul, servicii pe care un client venit în vacanţă nu le-ar

folosi.

Clientela de afaceri aduce multe avantaje hotelului, şi anume: rezervările se fac înainte iar

riscurile de neplată sunt în general excluse, dacă au fost mulţumiţi clienţii vor reveni, voiajele lor

sun repartizate pe tot parcursul anului, ceea ce contribuie pozitiv la ocuparea hotelului.

Pentru oamenii de afaceri motivaţia şederii într-un hotel bine cotat este foarte importantă

pentru că ei vin să încheie contracte sau să facă anumite vânzări şi nu vor să pună în pericol

imaginea lor sau a firmei pe care o reprezintă.

Concurenţa

Pe piaţa pe care Hotel Majestic îşi desfăşoară activitatea sunt concurenţi puternici cărora

trebuie să le faca faţă pentru a supravieţui şi pentru a avea un grad de ocupare bun.

Datorită faptului că Hotel Majestic este considerat “hotelul oamenilor de afaceri”

principalii concurenţi ai acestuia sunt hotelurile care vizează aceleaşi categorii de clienţi.

În principal, concurenţii sunt hotelurile de 4* şi 5*, unele având atuuri importante de care

anumiţi clienţi ţin cont, şi anume: distanţa mai mică faţă de aeroport, posibilitatea de a face

transferuri spre sau la aeroport la cererea clienţilor, lanţul din care face parte, pentru că unii

clienţi, în general oamenii de afaceri, nu folosesc serviciile unui hotel dacă nu cunosc lanţul din

care face parte sau dacă nu au mai folosit serviciile acelui hotel.

Principalii concurenţi ai Hotelului Majestic sunt:

Hotel Athenee Palace Hilton (5*), inaugurat în 1997, fiind primul hotel de 5*

din Bucuresti, care oferă o gamă variată de servicii, având în plus faţă de

Majestic: posibilitatea de a închiria maşini clienţilor, piscină, jaccuzi, Casino,

un număr mai mare de camere (272), dar şi tarife mai mari. Societatea

proprietară este Athenee Phenix Group SA, forma de proprietate majoritară

find privată. O cameră single (fara mic dejun) ajunge la peste 300 USD.

8

Page 9: Licenta Ciobanescu Mircea

Hotel Mariott (5*), deschis în anul 2000, face parte dintr-un mare lanţ

hotelier, fiind cotat pe piaţă ca un concurent serios, prezenţa sa pe piaţă

simţindu-se şi la Hotel Majestic, de unde a acaparart un anumit număr de

clienţi. Are 402 camere, tarifele fiind între 159-290 USD, iar la apartamente

între 319-829 USD, oferind o gamă foarte largă de servicii.

Crowne Plaza Flora (4*), cu 164 de camere, oferind în plus: posibilitatea de

închiriere a maşinilor, utilizarea piscinei acoperite şi a terenului de tenis,

copiii clienţilor având şi posibilitatea de a se juca pe un teren special

amenajat. Forma de proprietate este privată, fiind deţinută de societatea Ana

Hotels S.R.L.

Hotel Sofitel (4*), care face parte din grupul ACCOR, bine cunoscut pe plan

internaţional. Are 203 camere, cu o amplasare bună, fiind aproape de aeroport,

iar serviciile pe care le oferă în plus, în comparaţie cu Majestic sunt:

posibilitatea clienţilor de a utiliza piscina şi terenul de tenis. Tarifele

practicate sunt cuprinse între 258-283 USD, iar la suite 316 USD. Centrul de

afaceri WORLD TRADE CENTER atrage multi clienţi de afaceri. Forma de

proprietate este privată, fiind deţinută de W.T.C.B.-C.C.I.B. S.R.L.

Hotel Inter-Continental (4*) are 423 camere, 20 de birouri, 3 localuri şi 2

restaurante, funcţionând cu un contract franciza, forma de proprietate

majoritară este privată, fiind deţinut de Compania Hoteliera Inter-Continental

Romania S.A. Face parte din grupul Inter-Continental Corporation and

Resorsts; a fost proiectat în 1968 şi dat în folosinţă în anul 1971. Este

amplasat în centrul oraşului, într-o zonă de maxim interes cultural, comercial

şi financiar. Construcţia hotelului are un aspect modern, cu o intrare principală

foarte spaţioasă. Tariful de cazare al unei camere single (fără mic dejun) este

între 200-300 USD.

Hotel Lido (4*) are 119 camere cu o gamă variată de servicii, fiind amplasat

în centrul capitalei, fiind deţinut de Compania Hoteliera Inter-Continental

Romania S.A. (ca şi în cazul Hotelului Inter-Continental). Tarifele practicate

se încadrează între 200-300 USD (fără micul dejun).

Hotel Bucuresti (4*), cu 446 camere, forma de proprietate majoritară fiind de

stat, aparţinând Societăţii Turism S.A.

Hotel Continental (4*), cu 53 de camere, forma de proprietate majoritară fiind

privată, hotelul aparţinând societatii Continental S.A. Nivelul tarifelor

practicate este între 100-200 USD (ca şi în cazul Hotelului Majestic).

9

Page 10: Licenta Ciobanescu Mircea

1.1.4 Indicatori economici

Analiza circulaţiei turistice

Număr turişti (număr persoane cazate) în Hotel Majestic:

Anii Nr. turisti Români Străini

2005 6636 164 6472

2006 5869 168 7701

2007 5920 166 5736

Fig.nr. 1 Analiza circulaţiei turistice

Analizând variaţia numărului total de turişti în perioada 2005-2007, se constată o scădere

a acestuia, de la 6636 (în anul 2005) la 5869 (în anul 2006), pentru ca în anul 2007 să crească

puţin peste anul 2006, ajungând la 5920.

Din analiza numărului de turişti pe naţionalităţi se poate observa numărul mare de turişti

străini cazaţi în hotel în perioada 2005-2007, în comparaţie cu turiştii români care ating cote

foarte mici. Acest lucru se poate explica şi datorită faptului că Hotelul Majestic este destinat în

principal oamenilor de afaceri.

Se poate lua în considerare şi faptul că oamenii de afaceri români pot deţine reşedinţe

secundare dacă nu locuiesc permanent în Bucuresti şi că turiştii români care vin în vacanţă, de

obicei nu se cazează la un hotel de 4* din cauza situaţiei economice şi a nivelului veniturilor

destul de mic.

10

Page 11: Licenta Ciobanescu Mircea

Analiza principalilor indicatori economici

a) Venituri:

- mii lei -

Anii Venituri totale Venituri cazareVenituri

alimentaţie

Venituri din

prestări servicii

2005 26.908.389 200.933.723 4.293.800 2.222.096

2006 39.590.920 28.927.283 5.845.635 4.717.263

2007 45.564.160 32.087.783 6.642.550 6.833.827

Anii Venituri cazare (%) Venituri Alimentaţie (%)Venituri din prestări

servicii (%)

2005 74,67 15,96 8,26

2006 73,07 14,76 11,91

2007 70,42 14,58 14,99

Fig.nr. 2 Analiza pe tipuri de venituri

Se observă o pondere foarte ridicată a veniturilor din cazare (mult peste normele

internaţionale în domeniu), mult mai mare decât veniturile din alimentaţie şi prestări servicii şi o

11

Page 12: Licenta Ciobanescu Mircea

creştere continuă a tuturor veniturilor în perioada 2005-2007, venitul total aproape dublându-se

din anul 2005 până în anul 2007.

b) Cheltuieli totale:

- mii lei -

Anii Cheltuieli totale Cheltuieli cazare Cheltuieli AlimentaţieCheltuieli din

prestări servicii

2005 18.156.524 1.808.266 7.945.554 5.877.242

2006 30.035.881 2.403.299 14.095.450 8.905.223

2007 40.814.031 2.869.169 17.105.983 14.481.746

Anii Cheltuieli cazare (%)Cheltuieli

Alimentatie (%)

Cheltuieli din

prestări servicii (%)

2005 9,9 43,8 32,3

2006 8 46,9 29,6

2007 7,02 41,9 35,48

Structura cheltuielilor totale în Hotel Majestic

Fig.nr. 3 Structura cheltuielilor totale în Hotel Majestic

12

Page 13: Licenta Ciobanescu Mircea

Se poate observa din analiza structurii cheltuielilor totale că acestea au avut o creştere

continuă de la 18.156.524 în anul 2005 la 30.035.881 în anul 2006 pentru a se ajunge în anul

2007 la 40.851.930. Acelaşi lucru se poate spune şi despre cheltuielile din alimentaţie, cazare şi

prestări servicii, chiar dacă ponderea cheltuielilor din cazare şi prestări servicii este mai mică

decât cea a cheltuielilor din alimentaţie (43,8% în anul 2005 şi 46,9% în anul 2006).

3) Cifra de afaceri:

- mii lei -

Anii Profit brut Cifra de afaceri Profit net Capital propriu

2005 8.858.360 26.903.149 5.219.398 14.098.849

2006 11.636.110 39.490.181 7.377.206 149.680.654

2007 5.024.737 45.360.860 4.038.739 51.969.903

Fig.nr. 4 Analiza cifrei de afaceri în intervalul 2005-2007

Din analiza structurii cifrei de afaceri se poate observa creşterea acesteia continuă în

perioada 2005 crescând la 39.490.181 lei în anul 2006 şi ajungând la 45.360.860 lei în anul 2007.

La creşterea continuă a cifrei de afaceri a contribuit şi creşterea veniturilor, în principal, a celor

din cazare.

Acestă parte de prezentare generală a Hotelului Majestic, evidenţiază istoricul acestuia

caracteristicile de ansamblu, organizarea şi funcţionarea hotelului, analiza pieţei unde acţionează,

13

Page 14: Licenta Ciobanescu Mircea

analiza circulaţiei turistice şi a principalilor indicatori economico-financiari ce caracterizează

activitatea hotelului.

1.2 Structura organizatorică a societăţii

Personalul hotelului, care asigură buna organizare şi funcţionare a acestuia, se ridică la

103 de persoane angajate la care se adaugă cele 11 persoane din departamentul tehnic cu statut

de colaboratori, număr ce depăşeşte normele internaţionale în domeniu, care sunt de 1,64

persoane/camera la categaria “confort”, încadrându-se între categoria “confort” şi categoria “lux”

(unde normele sunt între 2-2,5 persoane/camera).

În ceea ce priveşte categoriile de personal, comparaţia cu aceleaşi norme arată o depăşire

de aproximativ 5% atât în cazul personalului angajat în activitatea de alimentaţie publică, cât şi a

celui de întreţinere.

Personalul hotelului, de la recepţioneri până la contabilul şef şi managerul general

îndeplinesc cerinţele impuse de activitatea în domeniul serviciilor hoteliere: aspect fizic plăcut,

naturaleţe, bun simţ, uşurinţă în exprimare, tact, stabilitate emoţională, maturitate, capacitate de

perfecţionare, experienţă în domeniu.

Fiecare departament al hotelului este condus de un director de departament care respectă

profilul postului, ce cuprinde:

funcţia;

superiorul ierarhic;

sarcinile speciale;

calificarea necesară.

Conducerea superioară reglementează regulamente de ordine interioară, prin care se

stabilesc condiţiile de muncă în cadrul hotelului, aplicarea lor fiind obligatorie pentru orice

problemă care nu este reglementată printr-un text legal sau o convenţie colectivă.

Personalul hotelului cunoaşte în detaliu oferta (serviciile), fiecare fiind în masură să

satisfacă cele mai pretenţioase cereri ale clienţilor.

14

Page 15: Licenta Ciobanescu Mircea

Fig.nr. 5 Organigrama S.C. MAJESTIC TURISM SA

Comitetul director

Comitetul director

Manager general

Manager general

Director economicDirector

economicDirector

aprovizioareDirector

aprovizioare Director cazareDirector cazare Director tehnicDirector tehnic Director resurse umane

Director resurse umane

Departamentul contabil

Departamentul contabil

Departamentul aprovizionare

Departamentul aprovizionare

Departamentul cazare

Departamentul cazare

CasierCasier Şef recepţieŞef recepţie

Departamentul tehnic

Departamentul tehnic

Departamentul resurse umane

Departamentul resurse umane

Personal angajari

Personal angajari

Director alimentaţieDirector

alimentaţie

Şef restaurantŞef restaurantResponsabil

barResponsabil

bar

Şef rezervariŞef rezervari

Page 16: Licenta Ciobanescu Mircea

1.2.2. Studiul sistemului de conducere

Sistemul de conducere din cadrul hotelului este compus din:

Comitetul director

este forul decizional suprem.

adoptă şi amendeaza bugetele de venituri şi de chetuieli.

stabileşte structura organizatorică a unităţii economice.

stabileşte politica financiar-contabilă a societăţii.

aprobă darea de seamă lunară.

numeste/revocă managerul general.

stabileşte fondul de salarizare.

Managerul general

este factorul principal de decizie la nivelul societaţii, punand în

aplicare hotararile luate de comitetul director.

este direct raspunzător de rezultatele economice ale societaţii şi

de punerea corespunzatoare în practică a deciziilor comitetului.

stabileste politica economică şi financiar-monetară a societăţii.

stabileşte sarcinile fiecarui department.

coordoneaza activitatea tuturor nivelelor organizatorice.

Directorul economic

este direct respunzător de punerea în aplicare a deciziilor

managerului general, cu precădere in ceea ce privesc rezultatele

economice anuale ale societaţii.

coordoneaza activitatea economică şi administrativă la nivelul

societăţii.

răspunde direct de activitatea financiar-contabilă în cadrul

unităţii

întocmeşte lunar situaţia indicatorilor economici.

Director tehnic

Page 17: Licenta Ciobanescu Mircea

răspunde de activitatea de planificare, lansare în execuţie şi

urmărire a execuţiei lucrărilor, în corelaţie cu celelalte activităţi

conform cerinţelor contractelor perfectate cu clienţii.

coordonează şi răspunde de desfăşurarea întregului proces de

procurare a produselor, serviciilor şi echipamentelor de la

furnizori/ subcontractanti, necesare executant lucrărilor de

construcţii-montaj şi producţiei secundare realizate de

organizaţie .

asigură cunoaşterea, înţelegerea, respectarea şi actualizarea

politicii şi obiectivelor calităţii, în cadrul organizaţiei, printr-o

adecvată comunicare.

prezintă managerului general informări, rapoarte şi situaţii

privind activităţile desfăşurate de compartimentele subordonate

şi rezultatele obţinute de acestea, pe perioade calendaristice, aşa

cum sunt cerute .

Director aprovizionare

realizează aprovizionarea magazinului/depozitului cu marfa

necesară, dezvoltarea relaţiilor cu furnizorii prin discuţii directe

pe teme diverse şi găsirea de noi posibilităţi în creşterea

vânzărilor.

participarea la târguri pe plan local cât şi extern în vederea

decoperirii de noi furnizori şi produse necesare pentru a acoperi

în peste 90% cerinţele clienţilor şi a pieţei.

participarea la diverse târguri pe plan local cu scopul de a face

cât mai cunoscute ofertele de cazare comercializate de hotelul

nostru cât şi de a descoperi potenţiali clienţi şi colaboratori.

Director alimentaţie

coordoneaza activitatea departamentului de alimentaţie publică

(restaurant, bar, bucătărie).

17

Page 18: Licenta Ciobanescu Mircea

coordoneaza activitatea de alimenatie publică şi corelarea

acesteia cu alte unităţi şi departamente.

dezvoltarea de ţinte şi obiective, proiecte şi priorităţi şi

implementarea acestora în cadrul echipei de alimenatatie

publică.

Directorul departamentului de resurse umane

este subordonat managerului general al societăţii .

negociază şi încheie contractele de muncă cu angajaţii in baza

unor discuţii purtate cu managerul general.

întocmeşte şi eliberează adeverinţe pentru diverse nevoi ale

salariaţilor

colaborează şi raportează periodic Oficiului teritorial de muncă,

evolutia mişcarilor de personal din societate.

întocmeste raporturi lunare pentru Oficiul de şomaj, Casa de

pensii, Casa de asigurări de sănatate.

solicită aprobări cu privire la acordarea de prime, bonificaţii şi

ajutoare sociale in diverse situaţii.

asigură desfăşurarea în condiţii optime a activităţilor de

învăţămînt, organizare şi salarizare din cadrul societăţii .

urmăreşte respectarea prevederilor contractelor de muncă

semnate de conducerea societăţii .

colaborează cu Departamentul contabil în vederea calculării

salariilor cuvenite pentru munca depusă. Urmăreşte şi asigură

determinarea corectă şi la timp a drepturilor băneşti cuvenite

personalului muncitor din cadrul hetelului

urmăreşte însuşirea şi respectarea de către întregul personal al

societăţii, a tuturor regulilor interne stabilite de conducerea

societăţii pentru menţinerea ordinii şi disciplinei, iar în cazul

constatării unor încălcări ale acestora, formulează propuneri de

sancţionare a celor vinovaţi .

18

Page 19: Licenta Ciobanescu Mircea

1.2.3. Studiul sistemului condus

În Hotel Majestic funcţionează următoarele departamente:

Departamentul de contabilitate, condus de directorul economic,

având ca responsabilitate activităţile de casierie, facturare, controlul

încasărilor, debitorii, furnizorii şi trezoreria (verificarea finală a

încasărilor hotelului), cuprinzând şi resursele umane;

Departamentul de aprovizionare condus de directorul

departamentului, care transmite comenzi furnizorilor şi gestioneaza

stocurile. Serviciul de aprovizionare centralizează toate comenzile

emise de către diferitele servicii ale hotelului, fiind singurul în masură

care poate să transmită comenzile furnizorilor;

Departamentul de cazare, condus de directorul de cazare care are în

subordine şeful de recepţie, guvernanta generală şi administratorul şef.

Cazarea turiştilor în hotel se face la orice oră, în limita locurilor

disponibile (în acest sens lucrătorii de la recepţie trebuie să cunoască

foarte bine starea permanentă a camerelor pentru evitarea surprizelor

neplăcute) şi în funcţie de rezervările şi contractele facute anterior şi

confirmate. Hotelul este dotat cu camere pentru handicapaţi şi

nefumători dotat cu cele mai moderne facilităţi, având următoarea

structură: single, double, French-cu pat de mijloc, suite şi apartamente.

Departamentul de alimentaţie, condus de directorul de alimentaţie

care are în subordine şeful de restaurant, responsabilul cu banchetele şi

reuniunile şi directorul executiv din departamentul de alimentaţie.

Restaurantul Majestic oferă într-o ambianţă deosebită preparate culinare

cu specific românesc, turcesc şi internaţional, iar Snack Barul Majestic

oferă gustări calde şi reci, precum şi o gamă variată de băuturi şi

cockteiluri. Salonul restaurantului se încadrează Normelor aprobate prin

Ord. M.T. NR.56/1995, şi anume: 1,3m*m/loc la masă;

19

Page 20: Licenta Ciobanescu Mircea

Departamentul tehnic, foarte util pentru buna funcţionare a

echipamentelor tehnice şi electronice, necesare pentru desfăţurarea

eficientă în hotel. Personalul acestui departament este format din

electronist, electrician, mecanic, decorator, ei având un statut de

colaboratori cu hotelul.

Departamentul de resurse umane, ale cărui atribuţii sunt:

în baza necesarului de personal aprobat asigură recrutarea şi

selecţia personalului cu respectarea legilor în vigoare;

răspunde de întocmirea contractelor de muncă conform

legislaţiei în vigoare, cu respectarea drepturilor şi obligaţiilor ce

decurg din acestea;

întocmeşte lucrările privind programarea şi reprogramarea

concediilor de odihnă, modificarea cuanumului sporului de

vechime, dosarele de pensionare pentru limita de vârstă sau

invaliditate, schimbările locurilor de muncă;

asigură aplicarea măsurilor disciplinare propuse de şefii de

compartiment şi aprobate de conducerea directiei în conformitate

cu legislaţia în vigoare;

efectuează lucrările privind evidenţa şi mişcarea personalului

existent, eliberează legitimaţiile de serviciu şi adeverinţele

solicitate de persoanele care au calitatea de angajat;

asigură şi răspunde de aplicarea prevederilor legale privind

sistemul de salarizare al muncii, în raport cu criteriile şi fişele de

performanţe profesionale întocmite de şefii structurilor

organizatorice şi în limita bugetului aprobat;

propune, împreună cu organele de protecţia muncii, locurile de

muncă şi meseriile cu condiţii nocive şi periculoase, la care se

acordă sporuri;

fundamentează fondul de salarizare din cadrul bugetului de

venituri si cheltuieli;

20

Page 21: Licenta Ciobanescu Mircea

1.3 Studiul sistemului informaţional

1.3.1 Prezentarea activităţii economice

Activitatea de aprovizionare are un rol important, care asigură resursele materiale

necesare desfăşurării activităţii. Astfel firma solicită o comandă de produse pe baza unor

liste de oferte primite de la furnizor; în baza acestor liste se verifică preţurile, se stabilesc

cantităţile şi se parafează înţelegerea cu furnizorul. Marfa primită este însoţită de o factură

fiscală, în baza căreia se întocmeşte nota de intrare-recepţie.

Obiectivul activităţii de aprovizionare îl reprezintă asigurarea completă şi complexă

a unităţii economice cu materiile prime necesare, la termenele solicitate şi cu costuri cât

mai mici.

În vederea realizării acestui obiectiv se realizează o serie de activităţi specifice, cum ar fi:

determinarea volumului de materii prime şi materiale necesare

desfăşurării activităţii societăţii;

prospectarea pieţei interne şi externe în vederea selectării

furnizorilor a căror ofertă prezintă cele mai avantajoase condiţii

economice şi asigură certitudine în livrările viitoare pe termen

scurt sau lung;

Managementul aprovizionării reprezintă activitatea prin care se asigură elementele

necesare, în volumul şi structură care să permită realizarea obiectivelor generale ale

întreprinderii, în condiţiile unor costuri minime şi ale unui profit cât mai mare.

21

Page 22: Licenta Ciobanescu Mircea

1.3.2 Fluxul documentelor

Urmărind documentele şi circuitul acestora în cadrul firmei se poate realiza schema

fluxului informaţional al datelor vehiculate şi prelucrate în cadrul acestei activităţi.

Fig.nr. 6 Fluxul documentelor în cadrul activităţii de aprovizionare

22

Page 23: Licenta Ciobanescu Mircea

1.3.3 Prezentarea documentelor

Principalele documente utilizate în cadrul activitaţii de evidenţa a angajaţilor şi de

calcul al salariilor sunt:

N.I.R. (Notă de Intrare Recepţie):

este un document justificativ cu regim special, având un sistem

de numerotare şi înscriere emis de Ministerul Finanţelor;

se întocmeşte pentru mărfurile aprovizonate de la furnizor, în

baza facturii care însoţeşte mărfurile;

specifică numărul şi data documentului, datele despre furnizor,

numărul comenzii, numărul avizului de expediţie şi al facturii,

codul creditor, date despre produs şi valoarea acestuia;

Factură fiscală (anexa nr. 1):

este un document justificativ cu regim special, având un sistem

de numerotare şi înscriere emis de Mininisterul Finanţelor;

se întocmeşte în trei exemplare:

primul exemplar se înmânează beneficiarului;

al doilea exemplar se înregistrează în contabilitatea firmei;

al treilea exemplar rămâne în carnetul de facturi;

Contract:

document legal încheiat de comun acord între două părţi, prin

care se stabileşte obiectul contractului, condiţiile şi perioada

pentru care este valabil contractul;

23

Page 24: Licenta Ciobanescu Mircea

Cerere de ofertă:

exprimarea scrisă a solicitării unui client cu scopul obţinerii de

informaţii privind gama de produse pe care o deţine societatea şi

preţurile aferente;

Fişă magazie (anexa nr.2):

document de gestiune a produselor din stoc, în care se specifică

informaţii despre mişcarea produselor (intrări, ieşiri, volum,

stoc), precum şi tipul şi numărul documentelor pe baza cărora s-

au efectuat operaţiile;

se introduc datele numai în partea rezervată intrărilor (se

introduc cantităţile recepţionate în baza N.I.R. - ului);

fişa trebuie întocmită într-un exemplar, separat pentru fiecare fel

de material şi trebuie completată de gestionar sau de persoana

desemnată, în toate coloanele privitoare la intrări, la ieşiri şi stoc.

Bon fiscal:

document întocmit la vânzarea produselor, în care se specifică

datele societăţii, numărul documentului, datele despre produs şi

valoarea sa;

Listă cerinţe:

enumerarea produselor necesare pentru completarea stocului din

depozit;

Aviz expediţie (aviz de însoţire a mărfii):

document de gestiune care însoţeşte marfa şi marchează

schimbarea gestiunii, în care se specifică date despre produse,

unitatea de măsură, cantitatea livrată, preţul unitar şi valoarea

produsului;

1.3.4 Descrierea procedurilor

24

Page 25: Licenta Ciobanescu Mircea

Pentru activitatea de calcul al salariilor se disting următoarele proceduri/operaţii

(identificate din fluxul documentelor):

formularea de cerere de ofertă către potentialii furnizori sau a

termenilor contractului încheiat cu un furnizor existent;

pe baza cererii de ofertă se primesc oferte de produse de la

furnizori;

examinarea ofertelor în cadrul departamentului economic;

transmiterea listelor de opţiuni cu produse de interes din oferte;

centralizarea listelor de către departamentul aprovizionare;

se trimite cererea de achiziţie către furnizor;

furnizorul completează factura şi livrează marfa;

se întocmeşte nota de intrare recepţie în baza facturii fiscale la

primirea mărfii;

se completează fişa de magazie pentru fiecare produs;

se înregistrează documentele;

clientul formulează cererea de ofertă;

se răspunde cu lista de oferte;

clientul formulează o comandă;

pe baza comenzii se emite bonul fiscal;

se înregistrează bonurile fiscale în contabilitatea societăţii;

1.4 Analiza critică şi direcţii de perfecţionare

25

Page 26: Licenta Ciobanescu Mircea

Analiza critică a sistemului existent

Punctele slabe identificate în cadrul sistemului informaţional privind activitatea

desfăşurată sunt următoarele:

nu există o evidenţă clară a documentelor din activitatea

economică;

gestiunea şi activarea documentelor se face manual, ceea ce

îngreunează foarte mult procesul economic şi duce la erori;

în general căutarea unui furnizor se face prin parcurgerea pagină

cu pagină registrelor de evidenţă;

înregistrarea comenzilor se face manual, prin înscrisuri ale

angajaţilor în registrele firmei;

documentele nu ajung suficient de repede la depozit sau se

rătăcesc fizic prin departamente, astfel că nu se poate realiza

corect şi operativ evidenţa din gestiunea produselor;

Direcţii de perfecţionare

Pentru a realiza îmbunătăţirea fluxurilor de date existente la nivelul întregii

societăţi se impune, foarte rapid, proiectarea şi realizarea unui sistem informatic modern,

capabil să automatizeze şi să eficientizeze procedurile manuale şi greoaie de introducere,

analiză, prelucrare şi transmitere a datelor existente în sistem.

Totodată, actualizarea datelor trebuie efectuată direct în tabelele bazei de date ce

urmează a fii creată, fără alte înscrisuri manuale, iar arhivarea trebuie să fie automatizată,

astfel încât să se reducă simţitor timpul de prelucrare. Pe baza datelor deja stocate se vor

obţine apoi rapoarte complexe.

Concluzionând se poate spune că implementarea unui sistem informatic va

conduce necondiţionat la realizarea următoarelor aspecte pozitive:

26

Page 27: Licenta Ciobanescu Mircea

creşterea vitezei de lucru în ceea ce priveşte prelucrarea

informaţiilor;

creşterea gradului de regăsire a datelor despre furnizori, cu

evidenţa tuturor situaţiilor în care aceştia sunt implicaţi;

creşterea vitezei de proiectare şi realizare a rapoartelor complexe

în procesele de gestiune;

posibilitatea prezentării immediate a unor situaţii privind

evidenţa furnizorilor şi a comenzilor aferente;

În urma acestor modificări, se va urmări întreţinerea unor relaţii foarte bune cu

clienţii şi o organizare internă cât mai eficientă.

Capitolul 2

Proiectarea de ansamblu a sistemului

27

Page 28: Licenta Ciobanescu Mircea

2.1 Definirea obiectivelor

Societatea doreşte proiectarea şi realizarea unui sistem informatic modern, cu

ajutorul căruia să automatizeze activitatea de aprovizionare desfacere , astfel încât timpul

necesar activităţilor aferente să fie redus la minim.

Pentru activitatea de aprovizionare desfacere din cadrul societăţii au fost stabilite

următoarele obiective ale noului sistem informatic:

realizarea evidenţei privind activitatiile de aprovizionare şi

desfacere din cadrul socitatii date despre:

furnizori

angajaţi

produse

facturi

asigurarea informărilor necesare pentru realizarea aprovionarii

ritmice a societăţii cu produse de interes;

evidenţa facturilor pentru produsele achizionate de la furnizori;

evidenţa privind produsele cel mai frecvent dorite de clienţii

noştri;

2.2 Tehnologii folosite

PHP (PHP: Hypertext Preprocessor)

28

Page 29: Licenta Ciobanescu Mircea

PHP, acronimul pentru "PHP: Hypertext Preprocessor" este un limbaj de scripting

de uz general, cu cod-sursă deschis (Open Source), utilizat pe scară largă, şi care este

potrivit în special pentru dezvoltarea aplicaţiilor Web şi poate fi integrat în HTML. Sintaxa

să provine din C, Java şi Perl şi este uşor de învăţat. În locul unei mulţimi de comenzi

pentru a afişa HTML (cum este cazul în C sau Perl), paginile PHP conţin HTML cu cod-

sursă încorporat, care realizează o acţiune. Codul-sursă PHP este încorporat între nişte

instrucţiuni de procesare de început şi de sfârşit speciale <?php ?>, care permit intrarea şi

ieşirea din "modul PHP".

Ceea ce face PHP să difere de un JavaScript de partea clientului este că codul sau

este executat pe server, generând HTML care este apoi trimis către client. Clientul va primi

rezultatele rulării acelui script, fără a putea cunoaşte codul-sursă ce stă la bază.

O altă facilitate puternică şi semnificativă a PHP-ului este susţinerea unui larg

domeniu de baze de date. Scrierea unei pagini web cu susţinerea bazelor de date este

incredibil de de simplă.

Sunt trei domenii principale, unde scripturile PHP utilizate:

a) Scripting de partea serverului. Acesta este cel mai tradiţional şi de bază domeniu al

PHP. Este nevoie de trei lucruri pentru că aceasta să funcţioneze. Analizatorul PHP (în

calitate de CGI, sau modul pentru server), un server web şi un navigator web. Trebuie rulat

serverul web cu o instalare PHP conectată la el. Se pot accesa ieşirile programului PHP cu

navigatorul web, vizualizând pagină PHP prin server.

b) Scripting în linia de comandă. Se poate realiza un script PHP care să ruleze fără un

server şi navigator web. Este nevoie doar de analizatorul PHP pentru a-l utiliza în acest

mod. Acest mod de utilizare este ideal pentru script-uri executate în mod regulat cu cron

(pe Unix sau Linux) sau cu Task Scheduler (pe Windows).

c) Scrierea aplicaţiilor de birou. PHP probabil că nu este cel mai potrivit limbaj pentru a

crea o aplicaţie de birou cu o interfaţă grafică a utilizatorului, dar, se poate utiliza PHP-

GTK pentru a scrie asemenea aplicaţii. PHP-GTK este o extensie a PHP, care nu este

disponibilă în distributivul de bază.

MySQL

29

Page 30: Licenta Ciobanescu Mircea

MySQL este un sistem de gestiune a bazelor de date relaţional, produs de compania

suedeză MySQL AB. Este cel mai popular SGBD open-source la ora actuală, fiind o

componentă cheie a stivei LAMP (Linux, Apache, MySQL, PHP).

Deşi este folosit foarte des împreună cu limbajul de programare PHP, cu MySQL se

pot construi aplicaţii în orice limbaj major. Există multe scheme API disponibile pentru

MySQL ce permit scrierea aplicaţiilor în numeroase limbaje de programare pentru

accesarea bazelor de date MySQL, cum are fi: C, C++, C#, Borland Delphi, Java, Perl,

PHP, Python, FreeBasic, etc., fiecare dintre acestea folosind un tip spefic API. O interfaţă

de tip ODBC denumită MyODBC permite altor limbaje de programare ce folosesc această

interfaţă, să interacţioneze cu bazele de date MySQL cum ar fi ASP sau Visual Basic. În

sprijinul acestor limbaje de programare, unele companii produc componente de tip

COM/COM+ sau .NET (pentru Windows) prin intermediul cărora respetivele limbaje să

poată folosi acest SGBD mult mai uşor decât prin intermediul sistemului ODBC. Aceste

componente pot fi gratuite (ca de exemplu MyVBQL) sau comerciale.

Pentru a administra bazele de date MySQL se poate folosi modul linie de comandă

sau, prin descărcare de pe internet, o interfaţă grafică: MySQL Administrator şi MySQL

Query Browser. Un alt instrument de management al acestor baze de date este aplicaţia

gratuită, scrisă în PHP, phpMyAdmin

Licenţa GNU GPL nu permite încorporarea MySQL în softuri comerciale; cei care

doresc să facă acest lucru pot achiziţiona, contra cost, o licenţă comercială de la compania

producătoare, MySQL AB. MySQL este componentă integrată a platformelor LAMP sau

WAMP (Linux/Windows-Apache-MySQL-PHP/Perl/Python)..

2.3 Diagrama entitate-asociere

30

Page 31: Licenta Ciobanescu Mircea

Fig.nr. 7 Diagrama entitate asociere

2.4 Proiectarea tabelelor aplicaţiei

31

Page 32: Licenta Ciobanescu Mircea

În figurile de mai jos sunt prezentate numele câmpurilor şi tipurile de date ale

tabelelor bazei de date:

Furnizori

numar(11) id_furnizor

caracter(20) den_furnizor

numar(15) CUI

caracter(200) adresa

caracter(20) localitate

numar(11) telefon

Facturi

numar(11) id_factura

numar(11) id_furnizor

data data

numar(11) suma

caracter(20) stare

Prod_fact

numar(11) id_prod_fact

caracter(20) den_prod_fact

numar(10) cantitate

numar(10) pret

numar(11) id_factura

numar(11) id_produs

caracter(20) tip_servire

Mese numar(11) id_masa

caracter(20) locatie

Comanda

numar(11) id_comanda

data data

numar(11) id_masa

numar(11) id_angajat

Det_comanda

numar(11) id_det_comanda

numar(11) id_comanda

numar(11) id_prod_fact

numar(11) id_fel_gatit

32

Page 33: Licenta Ciobanescu Mircea

numar(10) cant_prod

numar(5) portii

Feluri_gatite

numar(11) id_fel_gatit

data data

numar(5) portii

numar(11) id_fel

numar(11) id_angajat

caracter(200) reteta

Cont_fel_gatit

numar(11) id_cont_fel_gatit

numar(5) Cant_consumata

numar(11) id_prod_fact

numar(11) id_fel_gatit

Angajati

numar(11) id_angajat

caracter(20) nume

caracter(20) prenume

data data_angajarii

caracter(200) adresa

numar(11) telefon

caracter(20) tip_angajatcaracter(20) parola

2.5 Relaţii de asociere între tabele

În următoarea figură se pot observa relaţiile de asociere dintre tabele şi a tipului de

legaturi dintre ele.

33

Page 34: Licenta Ciobanescu Mircea

Fig.nr. 8 Relaţii de asociere intre tabele

2.6 Videoformate pentru situaţii de intrare

Prin intrările unui sistem informatic se înţelege totalitatea datelor primare necesare

obţinerii situaţiilor de ieşire ale sistemului informatic.

34

Page 35: Licenta Ciobanescu Mircea

Videoformat introducere angajaţi

Acest videoformat permite utilizatorului programului înregistrarea în sistem a unui

nou angajat. Se introduc : numele şi prenumele acestuia, data angajării, adresa şi telefonul.

Fig.nr. 9 Videoformat introducere date angajati

Videoformat introducere furnizori

Permite adăugarea de noi furnizori în baza de date împreună cu datele de

identificare a acestora.

35

Page 36: Licenta Ciobanescu Mircea

.

Fig.nr. 10 Videoformat introducere date furnizori

Videoformat introducere factură fiscală

Introducerea unei noi comenzi de aprovizionare, şi implicit definirea unei facturi

curente, se face utilizând acest videoformat. Se completează datele furnizorului, numărul

şi data facturii, precum şi diverse caracteristici ale produselor.

Fig.nr. 11 Videoformat introducere factură fiscală

36

Page 37: Licenta Ciobanescu Mircea

Videoformat introducere un nou fel de mâncare

Fig.nr. 12 Videoformat introducere fel mâncare

2.7. Proiectarea situaţiilor de ieşire

Prin ieşirile unui sistem informatic se înţelege totalitatea informaţiilor furnizate de

acesta beneficiarilor interni şi externi, sub forma unor rapoarte, liste, interogări,

videoformat-uri cu formate prestabilite sau proiectate la cerere.

Raport evidenţă furnizori

Fig.nr. 12 Raport evidenţă furnizori

37

Page 38: Licenta Ciobanescu Mircea

Acest raport prezintă evidenţa furnizorilor. Acesta conţine id-ul furnizorului,

denumirea societăţii, codul uni de înregistrare, adresa precum şi localiatea.

Raport evidenţă angajaţi

Fig.nr. 13 Raport evidenţă angajaţi

Raportul prezintă situaţia anagajatilor, numele şi prenumele acestora, data angajării

şi adresa.

2.8. Exemplificarea codului aplicatiei

Pagina login.php

În pagina login.php este prezent scriptul care face posibilă logarea în program.

Întâi se verifică dacă sunt setate variabilele POST :

if (isset($_POST['user']) && isset($_POST['pass']))

Dacă acestea sunt setate se şterg spaţiile albe şi se pun valorile în nişte variabile simple:

$user = htmlspecialchars(trim($_POST['user']));$pass = htmlspecialchars(trim($_POST['pass']));

Apoi se realizează un query către baza de date în vederea verificării datelor aici:

$sql = "SELECT nume FROM angajati WHERE nume = '$user'

38

Page 39: Licenta Ciobanescu Mircea

AND parola = '$pass'";

$result = mysql_query($sql) or die('Query failed. ' . mysql_error());

Dacă rezultă un singur rezultat (cum este şi normal) se porneşte sesiunea în modul user :

if (mysql_num_rows($result) == 1) { echo '<script type="text/javascript">location.href = \'index.php\' </script>';

$_SESSION['user'] = true; exit; }

Dacă în varibile se află valorile admin la user şi admin la parolă atunci se intră în

modul de administrare :

elseif (($user == 'admin') && ($pass == 'admin')) {

echo '<script type="text/javascript">location.href = \'administrare.php\' </script>';

$_SESSION['admin'] = true; exit;

Dacă nici una din variante nu se întâmplă, înseamnă că datele furnizate sunt incorecte :

else { echo '<script type="text/javascript">alert(\'Date invalide! Va rugam sa incercati din nou.\')</script>';

Pagina administrare.php

Întâi se verifică dacă este setată sesiunea, dacă nu se revine la pagina de login:

session_start(); if (!isset($_SESSION['admin']) || $_SESSION['admin'] !== true)

{ echo '<script type="text/javascript">location.href = \'login.php\' </script>';

exit;}

Următorul script ia numele paginii şi o seteaza pe post de titlu:

<h1 class="title"><?php $page = $_GET['page']; if(isset($page)){ echo ucfirst($page);

}else{echo "Administrare";}?></h1>

Toate numele paginilor sunt trecute în array-ul de mai jos, astfel dacă pagina nu

există browserul ne anunţa. Dacă pagina este în array se trece la încărcarea paginii.

39

Page 40: Licenta Ciobanescu Mircea

$page = $_GET['page'];$pages = array('angajati', 'mese','furnizori','feluri_gatite', 'rapoarte','facturi',

'produse');if (!empty($page)) {

if(in_array($page,$pages)) {$page .= '.php';include($page);

}else {echo 'Pagina nu a fost gasita !';}

}else {

include('#.php');

Pagina add_angajati.php

De aici se adaugă noii angajaţi. Întâi se verificăm dacă este setată variabila “save”

(butonul de salvare) :

if(isset($_POST['save']))

Dacă este setat se atribuie valorile câmpurilor unor variabile, iar la nume, prenume,

şi tipul angajatului se pune automat literă mare:

$nume = htmlspecialchars(trim("$_POST[nume]"));$nume = ucfirst($nume);$prenume = htmlspecialchars(trim("$_POST[prenume]"));$prenume = ucfirst($prenume);$data = htmlspecialchars(trim("$_POST[theDate]"));$adresa = htmlspecialchars(trim("$_POST[adresa]"));$telefon = htmlspecialchars(trim("$_POST[telefon]"));$tip_angajat = htmlspecialchars(trim("$_POST[tip_angajat]"));$tip_angajat = ucfirst($tip_angajat);$parola = htmlspecialchars(trim("$_POST[parola]"));

Apoi se trece la adăugarea propriu-zisă în baza da date a variabilelor sus menţionate :

$query = "INSERT INTO angajati (nume, prenume, data_angajarii, adresa, telefon, tip_angajat, parola) VALUES ('$nume', '$prenume', '$data', '$adresa', '$telefon', '$tip_angajat', '$parola')";

mysql_query($query) or die('<script type="text/javascript">alert(\'Adaugare nereusita !\')</script>');

40

Page 41: Licenta Ciobanescu Mircea

Pagina header.php

Această pagină este introdusă în toate celalte. Se stabileşte conexiunea către baza

de date. Dacă conexiunea nu reuşeşte se generează o eroare.

$con = mysql_connect("localhost","alex","111");if (!$con) { die('Conectare nereusita ' . mysql_error()); }

$select = mysql_select_db("majestic", $con);

if (!$select) {

die('Conectare nereusita ' . mysql_error()); }

Următoarea comandă împiedică utilizatorul să facă click dreapta :

<body oncontextmenu="return false" ondragstart="return false" onselectstart="return false">

Javascriptul de mai jos afişează data şi ora curentă :

var currentTime = new Date()var luna = currentTime.getMonth() + 1var zi = currentTime.getDate()var an = currentTime.getFullYear()document.write(zi + "/" + luna + "/" + an+"&nbsp;&nbsp;")//--></script><script type="text/javascript"><!--var currentTime2 = new Date()var ore = currentTime.getHours()var minute = currentTime.getMinutes()if (minute < 10)minute = "0" + minutedocument.write(ore + ":" + minute + " ")if(ore > 11){document.write("PM")} else {document.write("AM")}

41

Page 42: Licenta Ciobanescu Mircea

Capitolul 3

Prezentarea produsului software,

implementarea şi exploatarea aplicaţiei

3.1. Consideraţii generale

Se recomandă utilizarea componentelor profesionale şi de ultimă generaţie, pentru

a face faţă cu succes funcţionării în regim intens şi prelungit fără a genera erori, blocaje

etc.

A nu se instala pe calculatorul în cauză drivere (pentru imprimantă, HDD etc.) care

nu sunt aprobate şi testate de producătorul sistemului de operare.

Cu excepţia sistemului de operare, a servicepack-urilor sistemului de operare şi a

produsului program nu se vor instala alte produse software pe calculatorul în cauză.

Recomandat este ca înainte de a începe lucrul să se formateze hard-disk-ul şi să se

reinstaleze sistemul de operare Windows XP SP2.

Toate componentele electrice (calculatoare, imprimante, swich-uri etc) să fie

protejate la întreruperea alimentării cu energie electrică prin dispozitive bine dimensionate,

care să asigure o independenţa cât mai mare faţă de reţeaua electrică.

Pozarea tuturor cablurilor (inclusiv a celor de alimentare cu energie electrică) să se

facă în canalete (metalice) rezistente la acţiuni mecanice.

3.1.1. Cerinţele platformei hardware şi software ale produsului

program

Cerinţe hardware

Configuraţia hardware şi software minimală/recomandată pentru calculatorul care

urmează a fi utilizat:

Procesor: P4.

Memorie: 256M RAM.

42

Page 43: Licenta Ciobanescu Mircea

Monitorul şi placa video să suporte rezoluţia de 1440x900 pixeli

şi minim 32 biţi de culoare.

Minim un port USB - pentru imprimantă.

Un UPS care să poată alimenta, în caz de întrerupere a furnizării

cu energie electrică, o perioadă cât mai lungă toate

componentele.

Pentru implementări mari (volum şi trafic mare de date) şi nu

numai se recomandă ca serverul să utilizeze două HDD-uri

conectate în “oglinda” (RAID).

Cerinţe software

Sisteme de operare

o Server (calculatorul pe care urmează a se instala serverul de baze de date):

minim: Windows XP Professional SP2

recomandat: Windows Server 2003 SP1 (pentru implementări

care depăşesc 10 staţii concurente)

o Staţii (calculatoarele propriu-zise)

minim: Windows XP Home Edition SP2

recomandat: Windows XP Professional SP2

Drivere (software-ul necesar pentru funcţionarea dispozitivelor hardware, de ex.:

driver pentru imprimantă)

o Se vor utiliza doar drivere testate şi aprobate pentru sistemul de operare Windows

XP, respectiv Windows Server 2003

Se vor instala doar utilitarele. care sunt strict necesare.

Pe cât posibil, se vor instala cât mai puţine programe care

rulează ascuns (servicii şi programe rezidente în memorie)

Este recomandată testarea (48 ore fără oprire) sistemelor de

calcul folosind programe speciale de test.

43

Page 44: Licenta Ciobanescu Mircea

Ţinând cont, în primul rând, de faptul că oprirea unui sistem de calcul din reţeaua

dvs. poate duce la oprirea vânzărilor se recomandă urmarea sfaturilor şi bineînţeles

recomandările specialiştilor IT de la care se achiziţionează sistemele de calcul în cauză.

3.1.2. Licenţa programului

Acest contract de licenţă este un acord legal între beneficiar şi Ciobanescu Mircea

(numit în continuare furnizor) pentru produsul software care include software pentru

calculator, suporturi fizice asociate, materiale tipărite şi documentaţie electronică.

Prin instalarea şi folosirea programului confirmaţi că sunteţi de acord întru totul cu

termenii prezentei licenţe.

Licenţa vă oferă următoarele drepturi

Această licenţă dă dreptul pentru instalarea şi utilizarea unei

copii a produsului, copie realizată de furnizior şi achiziţionată în

mod legal de beneficiar împreună cu această licenţă.

Licenţa se acordă pe server şi cuprinde un număr maxim de staţii

care pot accesa serverul de către produs.

Beneficiarul poate face o singură copie de siguranţă a

produsului, copie care nu are dreptul de a o înstrăina către terţe

persoane fizice sau juridice.

Toate drepturile asupra produsului care nu sunt acordate în mod

expres sunt rezervate de furnizor.

Drepturile de copiere/reproducere (COPYRIGHT)

Toate drepturile de autor din şi în produsul software (incluzând dar nelimitandu-se

la orice imagini, fotografii, animaţii, video, audio, muzică şi text încorporate), materialele

însoţitoare tipărite şi orice copie a produsului sunt proprietatea furnizorului, şi sunt

protejate prin legi ale dreptului de autor, precum şi prin alte legi şi tratate referitoare la

proprietatea intelectuală.

44

Page 45: Licenta Ciobanescu Mircea

Restricţii şi limitări

beneficiarul se angajează să nu încorporeze în produs module

noi sau actualizarifara acordul furnizorului.

beneficiarul se angajează să nu copie şi/sau să vândă module din

produs sau întregul produs, documentaţii tipărite sau electronice

ale produsului către terţe persoane fizice sau juridice. De

asemenea, beneficiarul nu are dreptul să închirieze, dea în

leasing, să împrumute sau să cesioneze această licenţă către terţe

persoane fizice sau juridice.

beneficiarul nu are dreptul să refacă programul sursă, să

decompileze sau să dezasambleze produsul software.

Garantia acordată

Furnizorul garantează că produsul va funcţiona conform documentaţiei aferente

livrate sub forma electronică la achiziţionarea acestuia pentru o perioadă de un an de la

data achiziţiei. În cazul actualizării produsului (Versiuni noi sau ServicePack-uri) vor fi

luate în considerare noile documentaţii şi/sau specificaţii. Furnizorul va remedia prompt

eventualele erori datorate proiectării sau realizării produsului. Furnizorul nu răspunde

pentru intervenţiile neautorizate asupra structurii produsului software livrat sau pentru

problemele generate de funcţionarea defectuoasă soft şi/sau hard a sistemului informatic al

beneficiarului.

45

Page 46: Licenta Ciobanescu Mircea

3.2. Descrierea funcţiunilor aplicaţiei

Programul este un produs care integrează tehnologii şi componente de ultima

generaţie din tehnologia informaţiei, destinat să satisfacă cerinţele cele mai diverse

întâlnite în alimentaţia publică- restaurant.

Câteva dintre funcţiunile dar şi avantajele aplicaţiei:

crearea/modificarea angajaţilor

crearea/modificarea furnizorilor

crearea/modificarea produselor

crearea/modificarea felurilor de mâncare

crearea, customizarea şi tipărirea situaţiilor de ieşire

crearea / modificarea retetelor cu care lucrează restaurantul

definirea meniurilor pentru ocazii speciale

crearea şi tipărirea notelor de plată

plata prin numerar

adaptat pentru a lucra cu monitoare TouchScreen.

posibilitatea de lucru cu serverul de date aflat la distanţă (în

cartiere, oraşe sau chiar ţări diferite), printr-o conexiune la

internet.

reducerea erorii umane în calculul notelor de plată şi a stocurilor

se pot utiliza un număr nelimitat de produse

promptitudine şi reacţie rapidă la comenzile utilizatorilor

3.2.1. Prezentarea meniurilor aplicatiei

Pagina de autentificare

Este folosită atât pentru autentificarea ospatarilor, cât şi pentru autentificarea

administratorului programului (persoana care efectuează modificările de sistem).

46

Page 47: Licenta Ciobanescu Mircea

Fig.nr. 14 Pagina de autentificare

Meniul principal

Meniul principal al sectiunii de administrare.

Fig.nr. 15 Meniul principal din modulul administrare

47

Page 48: Licenta Ciobanescu Mircea

Salonul cu meseAici se introduc comenzile din restaurant de catre ospatari.

Fig.nr. 16 Salonul cu mese

3.2.2 Meniul Incarcare-actualizare date

Angajati

Fig.nr. 17 Vizualizarea, modificarea şi ştergerea angajatilor

48

Page 49: Licenta Ciobanescu Mircea

În acesta secţiune se pot viziona şi adăuga angajaţii, se pot modifica datele

aferente şi de asemenea se pot şterge din baza de date angajaţii care nu mai

lucrează la restaurant.

Fig.nr. 18 Adăugarea unui angajat in baza de date

Fig.nr. 19 Stergerea unui angajat din baza de date

49

Page 50: Licenta Ciobanescu Mircea

Facturi

Fig.nr. 20 Adăugarea unei facturi in baza de date

3.2.3 Meniul rapoarte

Fig.nr. 21 Alegerea câmpurilor pentru raport

50

Page 51: Licenta Ciobanescu Mircea

Se pot alege toate sau decât anumite câmpuri care în apară în raport în funcţie de

nevoile utilizatorului. După ce s-a făcut alegerea câmpurilor necesare se generează

raportul, care se poate şi scoate la imprinta dacă este necesar.

Fig.nr. 22 Raportul cu situaţia angajaţilor

Fig.nr. 23 Alegerea câmpurilor pentru raport

51

Page 52: Licenta Ciobanescu Mircea

În figura nr. 23 pentru raport s-au selectat decât denumirea, CUI şi telefonul

furnizorului, pentru a exemplifica şi această funcţionalitate a rapoartelor.

Fig.nr. 23 Raport cu situaţia furnizorilor

3.2.4 Mesaje de eroare

Fig.nr. 24 Eroare la autentificare

52

Page 53: Licenta Ciobanescu Mircea

În cazul în care datele de autentificare sunt introduse greşit este generată eroarea

din figura de mai sus. Eroarea este generată cu Javascript.

Fig.nr. 25 Eroare generată din cauza nealegerii nici unui produs

Figura de mai sus reprezintă o eroare generată în cazul în care într-o factură nu s-a

introdus nici un produs.

53

Page 54: Licenta Ciobanescu Mircea

CAPITOLUL 4

Eficienţa şi utilitatea sistemului informatic

Societatea beneficiară a sistemului informatic îşi desfăşoară activitatea într-un

mediu concurenţial, care necesită o cunoaştere permanentă şi profundă a serviciilor de acest

tip. Atunci când volumul acestor servicii este mare, divers şi dinamic, cunoaşterea

aspectelor pozitive şi negative se poate realiza numai cu ajutorul calculatorului. Acesta

poate oferi utilizatorului, prin conţinutul informaţional al bazei de date, informaţii exacte

despre derularea prestării serviciilor, evoluţia vânzărilor.

La o primă vedere, aceste informaţii se obţineau si manual, prin parcurgerea tuturor

documentelor implicate în activitatea specifică. Evidenţa automată poate dezvălui însă din

analiza datelor, o serie de perturbaţii negative, care pot fi înlăturate rapid prin luarea sau

corectarea unor decizii reale, oportune şi eficace în domeniul activităţii de distribuţie al

firmei.

Eficienţa sistemului informatic este reflectată de calitatea informaţiilor, de starea de

profitabilitate, de modul în care sunt receptate şi apreciate serviciile de către utilizatori sau

beneficiari. Sistemul informatic presupune o arie largă de cuprindere, incluzând informaţiile

şi fluxurile informaţionale, tehnicile de culegere, transmitere şi stocare a datelor, modelele,

şi programele de prelucrare a informaţiilor.

Fondul de date, structurat în baze de date, poate fi îmbunătăţit în continuare, prin

realizarea de legături cu aplicaţii din domeniul financiar-contabil, reclamă sau promovarea

serviciilor oferite.

Implementarea aplicaţiei necesită o serie de costuri. Unele dintre costuri sunt

cuantificabile, altele necuantificabile.

Costurile cuantificabile cuprind:

– crearea programelor;

– dotarea cu echipamente de calcul şi modernizarea celor existente;

– cursuri de instruire a personalului care va utiliza aplicaţia.

Costurile necuantificabile cuprind:

– instruirea la locul de muncă;

54

Page 55: Licenta Ciobanescu Mircea

– creşterea abilităţii în utilizarea programului etc.

Pentru a afla care este necesitatea unui sistem informatic se evidenţiază în acest sens

indicatori cum ar fi:

- termenul de recuperare a capitalului investit într-un sistem informatic

- coeficientul de eficienţă economică al in vestitiilor de capital

- randamentul economic al investiţiei într-un sistem informatic

Timpul afectat în cadrul evidenţei manuale în vederea obţinerii unor situaţii

centralizate sau a înregistrărilor efectuate în diferite momente a fost eliminat complet.

Astfel, personalul este degrevat de aceste sarcini.

Un sistem informatic este eficient atâta timp cât firma sau compania în cauză este

mai eficientă, în consecinţă, un sistem informatic poate fi apreciat că fiind util, respectiv

performant, dacă şi numai dacă aceasta se regăseşte şi în performanţa ulterioară a firmei şi

invers. Astfel eficienţa investiţiei constă, în special, în utilizarea unui sistem informatic

adaptat cerinţelor pieţei.

Sunt de remarcat 3 aspecte legate de eficienţa economică, şi anume:

- eficienţa sistemului de management financiar-contabil

- eficienţa, respectiv performanţa firmei

- eficienţa investiţiei de capital în sisteme informatice

Chiar dacă o serie de indicatori cum ar fi veniturile actualizate, cash flow-ul, rată

internă de rentabilitate etc. sunt cunoscuţi, mai puţin cunoscută este adaptarea acestora la

necesitatea cuantificării eficienţei economice a investiţiei de capital într-un sistem

informatic. Cu alte cuvinte meritul fundamental al acestor indicatori este că iau în

considerare pe lângă eforturile şi efectele investiţionale şi influenţa factorului timp.

Un aspect important asupra căruia se poate atrage atenţia este eficienţa economică a

investiţiilor de capital în sisteme informatice. Astfel se restrânge durata de lucru, este

implementată o bună organizare, iar cheltuielile privind forţa de muncă se pot diminua.

55

Page 56: Licenta Ciobanescu Mircea

BIBLIOGRAFIE

1. Cornelia Botezatu - Proiectarea sistemelor informatice. Metode sistemice. Editura

ProUniversitaria, Buc, 2005

2. V. Chichernea, C. Botezatu, I. Iacob, C. Fabian R. Mihalca, S. Goron - Proiectarea

sistemelor informatice. Metode de realizare, Ed. Sylvi, Bucureşti 2001

3. Virgil Chichernea, G. Garais - Baze de date. Sistemul FoxPro vol.II, Editura

Prouniversitaria, 2006

4. Cornelia Botezatu, Ionel Iacob - Proiectarea sistemelor informatice. Studii de caz

pentru managementul activităţii unei societăţi. Editura Universul Juridic, 2005

5. Ionel Iacob SGBD Oracle – Ghid aplicativ pentru realizarea solutiilor informatice,

Editura ProUniversitaria, 2007

6. I. Lungu, C. Bodea, C. Ioniţă, G. Bădescu - Baze de date. Organizare, proiectare şi

implementare, Ed. All, 1995

7. E. Bălănescu, C. Darie: Beginning PHP and MySQL E-Commerce: From Novice to

Professional, Second Edition, Ed. APress, 2005

8. Petersen J., Trad. Slavu O.V. – “Baze de date pentru începători”, Editura All ,2002

9. Hernandez M. – “Proiectarea bazelor de date”, Editura Teora,2003

10. Connolly Th., Begg C., Strachan A. – “Baze de date - proiectare, implementare,

gestionare”, Editura Teora, 2002

11. Prof.univ.dr.Rodica MIHALCA, Prof.univ.dr.Csaba FABIAN - Utilizarea

produselor software - Word, Excel, PMT, WinQSB, Systat , biblioteca digitala ASE

12. Andy Budd, Cameron Moll, Simon Collison – CSS Mastery :Advanced Web

Standards Solutions, 2006

13. James Kalbach - Designing Web Navigation, 2007

14. Danny Goodman – Javascript & DHTML Cookbook, 2007

56

Page 57: Licenta Ciobanescu Mircea

15. Christopher Schmitt, Mark Trammell, Ethan Marcotte, Dunstan

Orchard - Professional CSS: Cascading Style Sheets for Web Design, 2006

16. Steven Holzner, John Wiley – Ajax Bible, 2007

17. http://programare.org

18. http://www.php.net/docs.php -manual online PHP

19. http://dev.mysql.com/doc/ - documentatia oficiala a Mysql

20. http://www.php-mysql-tutorial.com/

21. http://www.phpwebcommerce.com/

57

Page 58: Licenta Ciobanescu Mircea

ANEXE

Codul sursa – header.php

<?php $con = mysql_connect("localhost","alex","111");if (!$con) { die('Conectare nereusita ' . mysql_error()); }

$select = mysql_select_db("majestic", $con);

if (!$select) {

die('Conectare nereusita ' . mysql_error()); }error_reporting(0); ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>S.C Majestic Turism S.A.</title><link rel="stylesheet" type="text/css" href="style.css" media="screen" /><link rel="shortcut icon" href="images/favicon.png" /><link type="text/css" rel="stylesheet" href="calendar/calendar/dhtmlgoodies_calendar.css?random=20051112" media="screen"></LINK><SCRIPT type="text/javascript" src="calendar/calendar/dhtmlgoodies_calendar.js?random=20060118"></script><SCRIPT type="text/javascript" src="javascript/select_all.js"></script><script type="text/javascript" src="javascript/add_valoare_factura.js"></script><script type="text/javascript" src="javascript/add_input.js"></script></head><body oncontextmenu="return false" ondragstart="return false" onselectstart="return false">

<div id="header"><div id="logo">

<h1><img src="images/favicon.png"> S.C Majestic Turism S.A.</h1>

<h3><script type="text/javascript"><!--var currentTime = new Date()var luna = currentTime.getMonth()

+ 1

58

Page 59: Licenta Ciobanescu Mircea

var zi = currentTime.getDate()var an = currentTime.getFullYear()document.write(zi + "/" + luna +

"/" + an+"&nbsp;&nbsp;")//--></script><script

type="text/javascript"><!--var currentTime2 = new Date()var ore = currentTime.getHours()var minute =

currentTime.getMinutes()if (minute < 10)minute = "0" + minutedocument.write(ore + ":" + minute

+ " ")if(ore > 11){document.write("PM")} else {document.write("AM")}//--></script>

</h3></div><!-- end #logo -->

administrare.php

<?php require("header.php"); session_start(); if (!isset($_SESSION['admin']) || $_SESSION['admin'] !== true)

{ echo '<script type="text/javascript">location.href

= \'login.php\' </script>'; exit;

}?></div><!-- end #header --><div id="page">

<div id="content"><div class="post">

<h1 class="title"><?php $page = $_GET['page']; if(isset($page)){

59

Page 60: Licenta Ciobanescu Mircea

echo ucfirst($page);

}

else{echo "Administrare";}?></h1>

<?php$page = $_GET['page'];$pages = array('angajati',

'mese','furnizori','feluri_gatite', 'rapoarte','factura', 'produse');if (!empty($page)) {

if(in_array($page,$pages)) {$page .= '.php';include($page);

}else {echo 'Pagina nu a fost gasita<a href="login.php">Login</a>';}

}else {

include('#.php');}

?></div>

</div><!-- end #content --><div id="sidebar">

<div id="sidebar-bgtop"></div><div id="sidebar-content">

<ul><li>

<h2>Meniu</h2><ul>

<li><a href="administrare.php?page=angajati">Angajati</a></li>

<li><a href="administrare.php?page=furnizori">Furnizori</a></li>

<li><a href="administrare.php?page=mese">Mese</a></li>

<li><a href="administrare.php?page=feluri_gatite">Feluri gatite</a></li>

<li><a href="administrare.php?page=produse">Produse</a></li>

<li><a href="index.php">Meniu angajati</a></li>

<li><a href="administrare.php?page=factura">Facturi</a></li>

<li><a href="administrare.php?page=rapoarte">Rapoarte</a></li>

60

Page 61: Licenta Ciobanescu Mircea

<li><a href="logout.php">Logout</a></li>

</ul></li>

</ul></div><div id="sidebar-bgbtm"></div>

</div><!-- end #sidebar -->

</div>

<?php include("footer.php"); ?>

add_factura.php

<?php require("header.php"); session_start(); if (!isset($_SESSION['admin']) || $_SESSION['admin'] !== true)

{ echo '<script type="text/javascript">location.href

= \'login.php\' </script>'; exit;

}?>

<br /><br /><br /><br /><br /><br /><br />

<script type="text/javascript" src="javascript/add_val_factura.js"></script><script type="text/javascript" src="javascript/add_input.js"></script>

<?php

$query = "SELECT *". "FROM furnizori ";$result = mysql_query($query) or die('Error : ' .

mysql_error());

$query2 = "SELECT *". "FROM prod_fact ";$result2 = mysql_query($query2) or die('Error : ' .

mysql_error());

$query3= mysql_query("SELECT MAX(id_factura)AS id_factura FROM facturi");$row3 = mysql_fetch_array($query3);

if(isset($_POST['save'])){

61

Page 62: Licenta Ciobanescu Mircea

$last_id =

htmlspecialchars(trim("$_POST[last_id]"));$last_id += 1;

$den_prod1 = htmlspecialchars(trim("$_POST[den_prod1]"));

$cant_prod1 = htmlspecialchars(trim("$_POST[cant_prod1]")); $pret_prod1 = htmlspecialchars(trim("$_POST[pret_prod1]")); $tip_prod1 = htmlspecialchars(trim("$_POST[tip_prod1]"));

$den_prod2 = htmlspecialchars(trim("$_POST[den_prod2]"));

$cant_prod2 = htmlspecialchars(trim("$_POST[cant_prod2]")); $pret_prod2 = htmlspecialchars(trim("$_POST[pret_prod2]")); $tip_prod2 = htmlspecialchars(trim("$_POST[tip_prod2]"));

$den_prod3 = htmlspecialchars(trim("$_POST[den_prod3]"));

$cant_prod3 = htmlspecialchars(trim("$_POST[cant_prod3]")); $pret_prod3 = htmlspecialchars(trim("$_POST[pret_prod3]")); $tip_prod3 = htmlspecialchars(trim("$_POST[tip_prod3]")); $den_prod4 = htmlspecialchars(trim("$_POST[den_prod4]"));

$cant_prod4 = htmlspecialchars(trim("$_POST[cant_prod4]")); $pret_prod4 = htmlspecialchars(trim("$_POST[pret_prod4]")); $tip_prod4 = htmlspecialchars(trim("$_POST[tip_prod4]"));

$id_furnizor = htmlspecialchars(trim("$_POST[id_furnizor]"));

$suma = ($pret_prod1*$cant_prod1) + ($pret_prod2*$cant_prod2) + ($pret_prod3*$cant_prod3) + ($pret_prod4*$cant_prod4); $stare = htmlspecialchars(trim("$_POST[stare]")); $query4 = "INSERT INTO facturi (id_furnizor, data, suma, stare) VALUES ('$id_furnizor', NOW(), '$suma', '$stare')";

mysql_query($query4) or die('<script type="text/javascript">alert(\'Alegeti un furnizor !\')</script>');

echo "<center><h2>Adaugare reusita</h2></center>";

switch(true)

{

62

Page 63: Licenta Ciobanescu Mircea

case ($den_prod1==NULL || $cant_prod1==NULL || $pret_prod1==NULL || $tip_prod1==NULL):

echo '<script type="text/javascript">alert(\'Completati cel putin un produs !\')</script>';

break; case (isset($den_prod1) &&

isset($den_prod2)&& isset($den_prod3)&& isset($den_prod4)):

$query8 = "INSERT INTO prod_fact (den_prod_fact, cantitate, pret, tip_servire, id_factura)".

"VALUES ('$den_prod1', '$cant_prod1', '$pret_prod1', '$tip_prod1', '$last_id'),".

"('$den_prod2', '$cant_prod2', '$pret_prod2', '$tip_prod2', '$last_id'),".

"('$den_prod3', '$cant_prod3', '$pret_prod3', '$tip_prod3', '$last_id'),".

"('$den_prod4', '$cant_prod4', '$pret_prod4', '$tip_prod4', '$last_id')";

mysql_query($query8) or die('<script type="text/javascript">alert(\'Adaugare nereusita !\')</script>');

break;

case (isset($den_prod1) && isset($den_prod2)&& isset($den_prod3)):

$query7 =

"INSERT INTO prod_fact (den_prod_fact, cantitate, pret, tip_servire, id_factura)". "VALU

ES ('$den_prod1', '$cant_prod1', '$pret_prod1', '$tip_prod1', '$last_id'),"."('$den_

prod2', '$cant_prod2', '$pret_prod2', '$tip_prod2', '$last_id'),"."('$den_

prod3', '$cant_prod3', '$pret_prod3', '$tip_prod3', '$last_id')";

mysql_query($query7) or die('<script type="text/javascript">alert(\'Adaugare nereusita !\')</script>');

break;

case (isset($den_prod1) && isset($den_prod2)):

$query6 =

"INSERT INTO prod_fact (den_prod_fact, cantitate, pret, tip_servire, id_factura)".

63

Page 64: Licenta Ciobanescu Mircea

"VALUES ('$den_prod1', '$cant_prod1', '$pret_prod1', '$tip_prod1', '$last_id'),".

"('$den_prod2', '$cant_prod2', '$pret_prod2', '$tip_prod2', '$last_id')";

mysql_query($query6) or die('<script type="text/javascript">alert(\'Adaugare nereusita !\')</script>');

break; case (isset($den_prod1)): $query5 = "INSERT INTO

prod_fact (den_prod_fact, cantitate, pret, tip_servire, id_factura)". "VALU

ES ('$den_prod1', '$cant_prod1', '$pret_prod1', '$tip_prod1', '$last_id')";

mysql_query($query5) or die('<script type="text/javascript">alert(\'Adaugare nereusita !\')</script>');

break;

}}

?>

<center><h2>Introducere factura</h2><br /><form method="post" action="add_factura.php" name="form"><input type="hidden" name="last_id" value="<?php echo $row3['id_factura'];?>"> <table width="900" border="0" cellpadding="2" cellspacing="1" class="box" align="center" name="tableID"> <tr>

<td width="100"><h3>Furnizor</h3></td></tr><tr>

<td width="70">Denumire: <select name="id_furnizor" size="1" onchange="showUser(this.value)">

<option value=""> - Alege</option> <?php while($row =

mysql_fetch_array($result)) { echo "<option value=".$row['id_furnizor'].">".$row['den_furnizor']."</option>"; }

?> </select> </td>

64

Page 65: Licenta Ciobanescu Mircea

</tr> <tr> <td><div id="textHint"><b></b></div></td> </tr> <tr> <td width="100"><h3>Produse</h3></td> </tr> <tr> <td width="70">&nbsp;&nbsp;&nbsp;&nbsp;Denumire produs</td> <td width="70">Cantitate (buc.)</td> <td width="70">Pret (lei/buc.)</td> <td width="70">Tip servire</td> </tr> <tr> <td width="70">1. <input name="den_prod1" id="id1" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod1' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod1' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>

<td width="70"><select name="tip_prod1" size="1">

<option value="intreg">intreg</option>

<option value="varsat">varsat</option>

</select></td> </tr> <tr id='newInput' style='display:none;'> <td width="70">2. <input name="den_prod2" id="id2" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod2' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod2' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>

<td width="70"><select name="tip_prod2" size="1">

<option value="intreg">intreg</option>

<option value="varsat">varsat</option>

</select></td> </tr> <tr id='newInput2' style='display:none;'>

65

Page 66: Licenta Ciobanescu Mircea

<td width="70">3. <input name="den_prod3" id="id3" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod3' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod3' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>

<td width="70"><select name="tip_prod3" size="1">

<option value="intreg">intreg</option>

<option value="varsat">varsat</option>

</select></td> </tr>

<tr id='newInput3' style='display:none;'> <td width="70">4. <input name="den_prod4" id="id4" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod4' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod4' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>

<td width="70"><select name="tip_prod4" size="1">

<option value="intreg">intreg</option>

<option value="varsat">varsat</option>

</select></td> </tr> </tr>

<tr id='newInput4' style='display:none;'> <td width="70">5. <input name="den_prod5" id="id5" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod5' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod5' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>

<td width="70"><select name="tip_prod5" size="1">

<option value="intreg">intreg</option>

<option value="varsat">varsat</option>

</select></td>

66

Page 67: Licenta Ciobanescu Mircea

</tr> </tr>

<tr id='newInput5' style='display:none;'> <td width="70">6. <input name="den_prod6" id="id6" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod6' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod6' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>

<td width="70"><select name="tip_prod6" size="1">

<option value="intreg">intreg</option>

<option value="varsat">varsat</option>

</select></td> </tr> </tr>

<tr id='newInput6' style='display:none;'> <td width="70">7. <input name="den_prod7" id="id7" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod7' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod7' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>

<td width="70"><select name="tip_prod7" size="1">

<option value="intreg">intreg</option>

<option value="varsat">varsat</option>

</select></td> </tr>

<tr> <td width="100"><h3>Stare factura:</h3></td> </tr>

<tr> <td width="100">Achitat ?

<select name="stare" size="1"> <option

value="platit">Da</option><option

value="neplatit">Nu</option> </select></td>

</tr> <tr>

67

Page 68: Licenta Ciobanescu Mircea

<td width="100">&nbsp;</td> <td>&nbsp;</td> </tr> <tr> <td colspan="4" align="center"><a href='administrare.php?page=factura'><button>Inapoi</button></a>&nbsp;<input name="save" type="submit" class="box" id="save" value="Salveaza">&nbsp;<button onClick="document.form.reset();return false">Reset</button></td> </tr> </table></form></center><br /><?php include("footer.php"); ?>

68