Pyros applications

Version 11 (Paul Carensac, 04/11/2016 05:32 pm) → Version 12/60 (Paul Carensac, 04/11/2016 05:32 pm)

h1. Pyros applications

List and details of all the pyros applications.

---

h2. %{margin-left:0px; font-weight:bold; font-size:25px; display:block; color:red;}pyrosapp%

h3. Purpose

* Contains all the database Models
* Basic tests in tests.py
* Backoffice configuration in admin.py

h3. Notes

* Will be progressively deleted while models being displaced

---

h2. %{margin-left:0px; font-weight:bold; font-size:25px; display:block; color:red;}dashboard%

h3. Purpose

* Interface for all external users
* Leads to displays and actions for all the pyros modules (users, requests, system execution, ...)

h3. Evolution

* Creating application

* manage.py startapp dashboard
* added 'dashboard' in settings.py -> INSTALLED_APPS
* created a urls.py file in dashboard module
* added _url(r'^dashboard/', include('dashboard.urls'))_ in pyros/urls.py -> urlpatterns
* created templates/ and templates/dashboard/ folders in dashboard module

* Main page

* added 'home' view in views.py
* linked 'home' view to 8000/dashboard URL
* created a template for the homepage in templates/dashboard/ (with bootstrap)
* created views, views linking (urls.py) and templates for the dashboard modules
* redirected mainpage buttons to Admin interface (temporary)

h3. Notes

* The buttons lead to the Admin interface for the moment
* Added bootstrap3 module (see Installation)
* Added Django Template Editor (see Eclipse configuration)

h3. TODO

* Create the backoffice views as the modules are integrated in pyros
* Think about a system of permissions

---

h2. %{margin-left:0px; font-weight:bold; font-size:25px; display:block; color:red;}scheduler%

h3. Purpose

* Creates the planning with the OBSERVABLE sequences
* Give acces to a web page to see the current planning



h3. Evolution

* Creating application

* manage.py startapp scheduler
* added 'scheduler' in settings.py -> INSTALLED_APPS
* created a urls.py file in scheduler module
* added _url(r'^scheduler/', include('scheduler.urls'))_ in pyros/urls.py -> urlpatterns
* created templates/ and templates/scheduler/ folders in scheduler module

* Model modifications

* Schedule

* Remove day_start
* Remove day_stop
* Add plan_start
* Add plan_stop
* Enum system for the status
* ScheduleHistory

* Remove day_start
* Remove day_stop
* Add plan_start
* Add plan_stop
* Sequence

* Remove exec_start
* Remove exec_stop
* Add tsp
* Add tep
* Add jd1
* Add jd2
* Add deltaTL
* Add deltaTR
* Add t_prefered
* Changed duration from Float to DecimalField (more precise)
* manage.py makemigrations sheduler ; manage.py migrate

* Creation of Scheduler and Interval classes in models.py

* Implementation of the Interval class

* Implementation of the Scheduler's 'make_schedule' function (and children). This is the only entry point for now. This function creates the planning (organizes the observable sequences).

now

h3. Notes

* Priorities and quotas are default-calculated (for the moment)
* What is the 'flag' attribute in the Schedule model ?

h3. TODO

* Priority and quota computing
* Re-scheduling
* Blank space filling
* History ?