Meeskond "Project Manager": Difference between revisions

From ICO wiki
Jump to navigationJump to search
 
(36 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Kirjeldus =
= Kirjeldus =
Projektihaldur on äri rakendus, mis on loodud kasutades asp.net kasutajaliidest. Rakendus võimaldab projektijuhtidel koostada isiklike projekte firma klientidele ja siduda neid kasutajatega, tehes tööülesandeid projektidele. Pärast tööülesande loomist on kasutajal võimalik hakkata oma tööaegu regama ja projektijuhil on hiljem ülevaade kogu projektile kulutatud ajast. Erinevatesse keskkondadesse pääseb läbi eduka kasutaja autoriseerimise. Rakendus eeldab kasutaja browseris küpsiste ja javascripti lubamist.
Projektihaldur on ärirakendus, mis on loodud kasutades asp.net kasutajaliidest. Rakendus võimaldab projektijuhtidel koostada isiklike projekte firma klientidele ja siduda neid kasutajatega, tehes tööülesandeid projektidele. Pärast tööülesande loomist on kasutajal võimalik hakkata oma tööaegu regama ja projektijuhil on hiljem ülevaade kogu projektile kulutatud ajast. Erinevatesse keskkondadesse pääseb läbi eduka kasutaja autoriseerimise. Rakendus eeldab kasutaja browseris küpsiste ja javascripti lubamist.
 
'''Iga projektijuht, kes on Admin saab teha oma projekte! Projekte tehakse sisseloginud kasutaja session ID alusel.'''
 
'''Palume, mitte kustutada kasutajaid, kes pole Teie poolt loodud!'''
:'''Sisselogimiseks on kasutajad:'''
:'''Kasutajanimi:''' ''admin'' '''Parool:''' ''admin''
:'''Kasutajanimi:''' ''user''  '''Parool:''' ''user''
 
*[http://projectmanager.raimotammel.com/ Link rakendusele]
 
*[http://projectmanager.raimotammel.com/ProjectManager.zip Source code]
:'''1.''' ''Paki source code .zip fail lahti.''
:'''2.''' ''Ava Visual Studio > File > Open > Web Site... > File System > Vali "ProjectManager" kaust ja Open.''
 
*[http://projectmanager.raimotammel.com/rtammel_ITK.zip SQL Database Script] '': 27.12.2010''


= Meeskond =
= Meeskond =
* Raimo Tammel
* Raimo Tammel
* Martin Tõkke
* Martin Tõkke
= Screens =
<gallery>
</gallery>
= Lingid =
* [http://www.asp.net/ ASP.NET]
* [http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/Default.aspx ASP.NET AJAX Control Toolkit]


=Tehniline pool=
=Tehniline pool=
Line 29: Line 36:
: ModalPopup
: ModalPopup
: Calendar
: Calendar
= Screens =
<gallery>
File:loginPage.jpg|Sisselogimise leht
File:homePage.jpg|Projektijuhi avaleht
File:projectsPage.jpg|Projektide leht
File:newProjectPopup.jpg|Uue Projekti popup
File:newProjectPopup.jpg|Tööülesannete leht
File:newTaskPopup.jpg|Uue tööülesande popup
File:editTaskPopup.jpg|Tööülesande muutmise popup
File:usersPage.jpg|Kasutajate leht
File:changePswPopup.jpg|Kasutaja parooli muutmise popup
File:userTasksPage.jpg|Kasutaja avaleht
File:taskReportPopup.jpg|Kasutaja tööaja regamise popup
File:userTimesheetPage.jpg|Kasutaja regatud tööaja leht
</gallery>
= Lingid =
* [http://www.asp.net/ ASP.NET]
* [http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/Default.aspx ASP.NET AJAX Control Toolkit]


=Lehe arhitektuur=
=Lehe arhitektuur=
Line 87: Line 114:
2. '''ADMINISTRAATORID e. Projekti juhid'''
2. '''ADMINISTRAATORID e. Projekti juhid'''
*Saavad jälgida projektile kulutad aja hulka.
*Saavad jälgida oma projektile kulutad aja hulka.
*Saavad muuta, lisada ja kustutada kliente
*Saavad muuta, lisada ja kustutada kliente
*Saavad muuta, lisada ja kustutada projekte
*Saavad muuta, lisada ja kustutada isiklike projekte
*Saavad muuta, lisada ja kustutada tööülesandeid
*Saavad muuta, lisada ja kustutada isiklike projektidega seotud tööülesandeid
*Saavad muuta, lisada ja kustutada kasutajaid
*Saavad muuta, lisada ja kustutada kasutajaid
*Saavad vaadata oma andmeid ja muuta oma parooli
*Saavad vaadata oma andmeid ja muuta oma parooli
Line 110: Line 137:


*'''30.11.10'''
*'''30.11.10'''
: Kasutajanime, parooli ja kasutajatüübi põhise sisselogimise valmimine.
: Valmis kasutajanime, parooli ja kasutajatüübi põhine sisselogimise leht.
: Keskkonnad on jagatud kaheks admin keskkond ja user keskkond.
: Keskkonnad on jagatud kaheks admin keskkond ja user keskkond.
: Web.config failis toimub vorm tüüpi autentimene.
: Web.config failis toimub vorm tüüpi autentimene.
Line 125: Line 152:


*'''05.12.10'''
*'''05.12.10'''
:  
: Andmete kuvamiseks kasutame asp.neti data repeaterit.


*'''06.12.10 - 07.12.10'''
*'''06.12.10 - 07.12.10'''
Line 133: Line 160:
: Valmis esimene popup kasutades ASP.NET Ajax Control Toolkiti ModalPopup laiendust.
: Valmis esimene popup kasutades ASP.NET Ajax Control Toolkiti ModalPopup laiendust.
: Add nupule vajutades avaneb popup ja sulgeda saab vajutades X nupule.
: Add nupule vajutades avaneb popup ja sulgeda saab vajutades X nupule.
: Uut infot oli nüüd võimalik salvestada baasi kasutades popupi.
: Uut infot oli nüüd võimalik salvestada baasi kasutades popupi ja LINQ to SQLi.
: Repeater on ümbritsetud Ajaxi UpdatePaneliga.
: Repeater on ümbritsetud Ajaxi UpdatePaneliga.
: Peale info salvestamist uuendatakse updatepanelit ja binditakse repeater uuesti ilma lehe refreshita.   
: Peale info salvestamist uuendatakse updatepanelit ja binditakse repeater uuesti ilma lehe refreshita.   
Line 141: Line 168:
: Popup avaneb Edit ikoonile vajutades.
: Popup avaneb Edit ikoonile vajutades.
: Update nupuga saab baasis muuta andmeid.
: Update nupuga saab baasis muuta andmeid.
: Muuda ja kustuta nupud tegime data repeaterisse asp.neti repeateri ItemCommandiga (OnItemCommand) lisades lingile CommandNamei ja CommandArgumenti


*'''10.12.10 - 11.12.10'''
*'''10.12.10 - 11.12.10'''
: Projekti lehe täiustamine popupiga.
: Projekti lehe täiustamine popupiga.
: Tööülesannete lehe valmimine.
: Tööülesannete lehe valmimine.
: Andmete kuvamiseks tööülesannete lehel sai tehtud 3 leveliga repeater koos objekti seosega (Relations.Add).


*'''12.12.10'''
*'''12.12.10'''
Line 150: Line 179:
: Lehtedel kuvatase ainult sisseloginud kasutaja loodud aktiivseid projekte ja tööülesandeid.
: Lehtedel kuvatase ainult sisseloginud kasutaja loodud aktiivseid projekte ja tööülesandeid.
: Tööulesandied saab lisada ainult kasutajatele ja aktiivsetele projektidele.
: Tööulesandied saab lisada ainult kasutajatele ja aktiivsetele projektidele.
: Kasutajate ja kasutaja detail andmete lehe valmimine.
: Kasutaja saab oma parooli muuta My account lehel.


*'''13.12.10'''
*'''13.12.10'''
Line 157: Line 188:
*'''15.12.10'''
*'''15.12.10'''
: Kasutaja tööaja regamine sai valmis.
: Kasutaja tööaja regamine sai valmis.
: Kasutajal on võimalik regada oma tööaegu projektijuhi poolt loodud tööülesandele.  
: Kasutajal on võimalik regada oma tööaegu projektijuhi poolt loodud tööülesannetele.
: Kuupäeva valimise tegime kasutades ASP.NET Ajax Control Toolkiti Calendar Extensionit.


*'''16.12.10'''
*'''16.12.10'''
: Kasutaja regatud tööaja "Timesheet" leht sai valmis.
: Kasutaja regatud tööaja "Timesheet" leht sai valmis.
: Kasutajal on võimalik oma regatud tööaegu vaadata kuu, aasta lõikes ja vajadusel kustutda oma regatud aegu.
: Kasutajal on võimalik oma regatud tööaegu vaadata kuu, aasta lõikes ja vajadusel kustutda oma regatud aegu.
: Admin keskkonda avalehe tegemine, kus projekti juhil on ülevaade on aktiivsetest projektidest ja kui palju tööaega on kulunud.


*'''17.12.10 - 19.12.10'''
*'''17.12.10 - 19.12.10'''
: Sisselogimis lehele ja popupidele valideerimie tegemine.
: Sisselogimis lehele ja popupidele valideerimie tegemine.
: Valideerimiseks kasutame ASP.NETi RequiredFieldValidatorit, RegularExpressionValidator ja ValidationSummarit.
: Valideerimiseks kasutame ASP.NETi RequiredFieldValidatorit, RegularExpressionValidatorit, ValidationGroupi ja ValidationSummarit.
: Kasutaja tüübi alusel menüü tegemine.
: Kasutaja tüübi alusel menüü tegemine.
: Igale keskkonnale tegime menüü kontrollerid.
: Igale keskkonnale tegime menüü kontrollerid.

Latest revision as of 17:26, 5 January 2011

Kirjeldus

Projektihaldur on ärirakendus, mis on loodud kasutades asp.net kasutajaliidest. Rakendus võimaldab projektijuhtidel koostada isiklike projekte firma klientidele ja siduda neid kasutajatega, tehes tööülesandeid projektidele. Pärast tööülesande loomist on kasutajal võimalik hakkata oma tööaegu regama ja projektijuhil on hiljem ülevaade kogu projektile kulutatud ajast. Erinevatesse keskkondadesse pääseb läbi eduka kasutaja autoriseerimise. Rakendus eeldab kasutaja browseris küpsiste ja javascripti lubamist.

Iga projektijuht, kes on Admin saab teha oma projekte! Projekte tehakse sisseloginud kasutaja session ID alusel.

Palume, mitte kustutada kasutajaid, kes pole Teie poolt loodud!

Sisselogimiseks on kasutajad:
Kasutajanimi: admin Parool: admin
Kasutajanimi: user Parool: user
1. Paki source code .zip fail lahti.
2. Ava Visual Studio > File > Open > Web Site... > File System > Vali "ProjectManager" kaust ja Open.

Meeskond

  • Raimo Tammel
  • Martin Tõkke

Tehniline pool

LINQ to SQL Classes
Kasutajaliides
ASP.NET 3.5 / XHTML1.0 / CSS / Ajax Control Toolkit 3.5
Andmebaas
MS SQL 2008
ASP.NET Ajax Extensions
ScriptManager
UpdatePanel
UpdateProgress
ModalPopup
Calendar

Screens

Lingid

Lehe arhitektuur

Admin

  • Controls
  • Menu.ascx: Menüü kontroller XML Web.sitemap andmeallikaga
  • AdminMasterPage.master: MasterPage.master alam konteiner admin keskkonna jaoks
  • Clients.aspx: Kliendid leht
  • Default.aspx: Home leht, kus kuvatakse projektijuhi aktiivseid projekte
  • Projects.aspx: Projektide leht
  • Tasks.aspx: Tööülesannete leht
  • User.aspx: Kasutaja detail vaate leht
  • Users.aspx: Kasutajate leht

App_Code

  • DataClasses.dbml: LINQ to SQL Classes

App_Themes

  • Default: Template kaust
  • Images: Piltide kaust
  • Style.css: Stiili CSS

Bin

  • AjaxControlToolkit.dll: ASP.NET Ajax Control Toolkit 3.5

Controls

  • Header.ascx: Lehe päise kontoll

User

  • Controls
  • Menu.ascx: Menüü kontroller XML Web.sitemap andmeallikaga
  • Default.aspx: Kasutaja tööaja regamise leht
  • Timessheet.aspx: Kasutaja regatud tööaja kuvamise leht
  • User.aspx: Kasutaja detail vaate leht
  • UserMasterPage.master: MasterPage.master alam konteiner user keskkonna jaoks
  • Default.aspx: Sisselogimise leht
  • Global.asax: Autentimise teostamiseks rakenduses
  • MasterPage.master: Rakenduse põhi konteiner
  • Web.config: Lehe konfiguratsiooni fail
  • Web.sitemap: Menüü fail XML kujul

Üldine lehe struktuur

Erinevad kasutajate tüübid ja nende õigused

1. KASUTAJAD e. Kasutajad, kes regavad oma tööaegu

  • Saavad regada oma tööaegu
  • Saavad vaadata oma regatud tööaegu kuu, aasta lõikes
  • Saavad vaadata oma andmeid ja muuta oma parooli

2. ADMINISTRAATORID e. Projekti juhid

  • Saavad jälgida oma projektile kulutad aja hulka.
  • Saavad muuta, lisada ja kustutada kliente
  • Saavad muuta, lisada ja kustutada isiklike projekte
  • Saavad muuta, lisada ja kustutada isiklike projektidega seotud tööülesandeid
  • Saavad muuta, lisada ja kustutada kasutajaid
  • Saavad vaadata oma andmeid ja muuta oma parooli

Logi

  • 22.11.10
Lõppliku meeskonna koostamine.
Tööjaotus.
  • 24.11.10 - 26.11.10
Esialgse andebaasi mudeli loomine.
Kasutaja ja kasutajatüübi tabeli loomine.
Esialgse lehe layouti valmimine.
Rakenduse kujunduse tegemine.
  • 28.11.10 - 29.11.10
Login süsteemi tegemine.
Kasutaja parooli baasi salvestamiseks kasutasime MD5 tüüpi krüpteeringut.
  • 30.11.10
Valmis kasutajanime, parooli ja kasutajatüübi põhine sisselogimise leht.
Keskkonnad on jagatud kaheks admin keskkond ja user keskkond.
Web.config failis toimub vorm tüüpi autentimene.
Global.aspx failis teostame autentimise päringu.
Hiljem suunatakse kasutaja edasi vastavasse keskkonda kasutaja tüübi alusel.
Edukal sisselogimisel tehakse kasutaja andmete põhjal krüteeritud kasutaja Id (HttpCookie) küpsis ja (FormsAuthenticationTicket) vorm tüüpi autentiseeritud pilet.
Keskkonda sisseloginud kasutajat kuvatakse lehe päises kasutades LoginViewd ja LoggedInTemplate.
Kasutaja logitakse välja kasutades FormsAuthentication.SignOut(); funktsiooni ja suunatakse rakenduse sisselogimise lehele.
  • 01.12.10 - 04.12.10
Andmebaasi uuendamine tabelitega.
Firma kliendi ja projekti lehe tegemine.
Esialgse (edit.aspx?id=) edit.aspx lehe tegemine, et saaks andmeid baasi salvestada.
  • 05.12.10
Andmete kuvamiseks kasutame asp.neti data repeaterit.
  • 06.12.10 - 07.12.10
Uurime võimalust kasutada ajaxi modalpopupi info lisamisel ja muutmisel.
  • 08.12.10
Valmis esimene popup kasutades ASP.NET Ajax Control Toolkiti ModalPopup laiendust.
Add nupule vajutades avaneb popup ja sulgeda saab vajutades X nupule.
Uut infot oli nüüd võimalik salvestada baasi kasutades popupi ja LINQ to SQLi.
Repeater on ümbritsetud Ajaxi UpdatePaneliga.
Peale info salvestamist uuendatakse updatepanelit ja binditakse repeater uuesti ilma lehe refreshita.
  • 09.12.10
Valmis esimene Edit popup.
Popup avaneb Edit ikoonile vajutades.
Update nupuga saab baasis muuta andmeid.
Muuda ja kustuta nupud tegime data repeaterisse asp.neti repeateri ItemCommandiga (OnItemCommand) lisades lingile CommandNamei ja CommandArgumenti
  • 10.12.10 - 11.12.10
Projekti lehe täiustamine popupiga.
Tööülesannete lehe valmimine.
Andmete kuvamiseks tööülesannete lehel sai tehtud 3 leveliga repeater koos objekti seosega (Relations.Add).
  • 12.12.10
Repeaterit ja tööülesannete lisamine sai täiendatud.
Lehtedel kuvatase ainult sisseloginud kasutaja loodud aktiivseid projekte ja tööülesandeid.
Tööulesandied saab lisada ainult kasutajatele ja aktiivsetele projektidele.
Kasutajate ja kasutaja detail andmete lehe valmimine.
Kasutaja saab oma parooli muuta My account lehel.
  • 13.12.10
Andmebaasi uuendamine tabelitega.
Alustasime tööd kasutaja keskkonnaga.
  • 15.12.10
Kasutaja tööaja regamine sai valmis.
Kasutajal on võimalik regada oma tööaegu projektijuhi poolt loodud tööülesannetele.
Kuupäeva valimise tegime kasutades ASP.NET Ajax Control Toolkiti Calendar Extensionit.
  • 16.12.10
Kasutaja regatud tööaja "Timesheet" leht sai valmis.
Kasutajal on võimalik oma regatud tööaegu vaadata kuu, aasta lõikes ja vajadusel kustutda oma regatud aegu.
Admin keskkonda avalehe tegemine, kus projekti juhil on ülevaade on aktiivsetest projektidest ja kui palju tööaega on kulunud.
  • 17.12.10 - 19.12.10
Sisselogimis lehele ja popupidele valideerimie tegemine.
Valideerimiseks kasutame ASP.NETi RequiredFieldValidatorit, RegularExpressionValidatorit, ValidationGroupi ja ValidationSummarit.
Kasutaja tüübi alusel menüü tegemine.
Igale keskkonnale tegime menüü kontrollerid.
Menüü tegemiseks kasutasime ASP.NETi XML Sitemapi ja seadistasime Web.config faili, et lubada sitemapi security trimmingut kasutaja tüübi alusel.
  • 20.12.10 - 22.12.10
Kujunduse sidumine rakendusega.
App_Themes kausta lehe template tegemine.
Style.css lehe kirjutamine.
  • 23.12.10
Toimub rakenduse serverisse laadimine.
Kopeerime loacal andembaasist andmed serveri baasi.
Viimaste bugide fiximine enne launchi.