Commit graph

8294 commits

Author SHA1 Message Date
Susana Montes Pedreira
9080e7ecb4 implements an empty method called "beforeSaving" in the GenericRESTService
and overrides it in the ExpenseSheetServiceRest in order to save the sum
of expenses.

FEA: ItEr76S22ExpenseTrackingSystem
2012-06-18 09:00:56 +01:00
Susana Montes Pedreira
99d7a69885 fixes the empty block with the apropriate condition and the
needed behaviour.

FEA: ItEr76S22ExpenseTrackingSystem
2012-06-17 13:43:27 +01:00
Susana Montes Pedreira
fbad40f945 removes the validation in the method toDTO because there is already
the annotation @NotEmpty in the ExpenseSheet class.

FEA: ItEr76S22ExpenseTrackingSystem
2012-06-17 13:33:28 +01:00
Susana Montes Pedreira
79fe7d3bb4 renames this method getLabel to getExpenseSheet in IExpenseSheetService.
FEA: ItEr76S22ExpenseTrackingSystem
2012-06-17 13:29:36 +01:00
Susana Montes Pedreira
57f23e37fe changes the InstanceNotFoundException to ValidationException and if
the entity is not found the function returns a null.

FEA: ItEr76S22ExpenseTrackingSystem
2012-06-17 13:21:34 +01:00
Susana Montes Pedreira
5386c1eec5 update the end date of the subcontracted task according to the end date
communication sent by the subcontractor.

FEA: ItEr76S21UpdateEndDateToCustomer
2012-06-17 12:25:28 +01:00
Manuel Rego Casasnovas
6e9b96b77a Remove ROLE_BOUND_USER from roles list in user and profile edition
If a user has this role the remove button will appear disabled.

FEA: ItEr76S30PermissionsEnhancements
2012-06-15 15:23:29 +02:00
Manuel Rego Casasnovas
081d70d0c7 Disable buttons to go to user or worker edition in bound users depending on roles
FEA: ItEr76S30PermissionsEnhancements
2012-06-15 15:23:29 +02:00
Manuel Rego Casasnovas
b6889f7e7b Configure permissions for ROLE_BOUND_USER
Only bound users will have access to page "Personal Area > Home".

Moreover bound users will have access to expenses sheet edition form, even if
they don't have access to "Cost > Expenses" page.

Finally users with role ROLE_SUERUSER, ROLE_SUERUSER or ROLE_TIMESHEETS will
have access to monthly timesheets edition page.

FEA: ItEr76S30PermissionsEnhancements
2012-06-15 15:23:29 +02:00
Manuel Rego Casasnovas
787355428a Managing special role ROLE_BOUND_USER in workers and users windows
All bound users must have the role ROLE_BOUND_USER.

FEA: ItEr76S30PermissionsEnhancements
2012-06-15 15:23:29 +02:00
Manuel Rego Casasnovas
4e943710f4 Create default example profiles
FEA: ItEr76S30PermissionsEnhancements
2012-06-15 15:23:29 +02:00
Manuel Rego Casasnovas
9dfa1ea931 Show menus entries depending on user roles
FEA: ItEr76S30PermissionsEnhancements
2012-06-15 15:23:29 +02:00
Manuel Rego Casasnovas
48c422b06b Configure basic permissions for each page in Spring Security file
Only ROLE_SUPERUSER and role of the page will have access.

FEA: ItEr76S30PermissionsEnhancements
2012-06-15 15:23:29 +02:00
Manuel Rego Casasnovas
7bdb6f4c47 Add new roles in UserRole enum
FEA: ItEr76S30PermissionsEnhancements
2012-06-15 15:23:29 +02:00
Manuel Rego Casasnovas
438d8cdc10 Review and rename current roles
Include needed database migrations.

FEA: ItEr76S30PermissionsEnhancements
2012-06-15 15:23:29 +02:00
Manuel Rego Casasnovas
7470e34a29 Refactoring LibrePlan menu
At this moment roles are not taking into account at all as this will be reviewed
and properly fixed later.

FEA: ItEr76S30PermissionsEnhancements
2012-06-15 15:23:29 +02:00
Manuel Rego Casasnovas
69652b89bc doc: Fix problem in PDF generation for user help
Too many levels of headers for the PDF.

FEA: ItEr76S04BugFixing
2012-06-14 11:05:44 +02:00
Manuel Rego Casasnovas
c03969199f Fix changeset in MySQL
Required to drop foreign key before droping the column.

FEA: ItEr76S04BugFixing
2012-06-14 09:45:33 +02:00
Diego Pino
bc071a1734 Bug #1275: Montecarlo combo for selecting critical path is empty
* Move code for calculating all critical paths to its own class
* The former code broke in many clases so I reimplemented the algorithm

FEA: ItEr76S04BugFixing
2012-06-13 18:18:56 +02:00
Diego Pino
2706a71659 Fix bug: Remove 'Expected Spread Progress' bar from 'Global Progress' chart
FEA: ItEr76S15OrganizingPerProjectDashboard
2012-06-12 18:08:24 +02:00
Diego Pino
9382ce3d29 Fix bug: LazyInitializationException in WorkReportLines
FEA: ItEr76S29WorkReports
2012-06-12 17:53:37 +02:00
Diego Pino
a11c38d34c Refactoring: Class for creating GanttDiagram
Move code in CriticalPathBuilder for creating a Gantt diagram in memory
to its own class

FEA: ItEr76S04BugFixing
2012-06-12 16:05:20 +02:00
Diego Pino
215d8cb395 Bug #1451: Error rendering GanttView coming directly from MonteCarlo
The error was in the code that builds the graph for calculating the
CriticalPath. There was a very similar code for building the graph in
TemplateModel, the only difference were the two lines of the patch.

These two lines were changed for fixing bug #1423. I tried this bug
again with the patch applied and it works too.

FEA: ItEr76S04BugFixing
2012-06-12 12:59:16 +02:00
Diego Pino
df86b42aa4 Fix bug: WorkReportLines filtering not working if there's no Task selected
If there's no Task selected apply the rest of the filter parameters to
all WorkReportLines

FEA: ItEr76S29WorkReports
2012-06-11 20:48:54 +02:00
Manuel Rego Casasnovas
8a10614cc0 Add default user wssubcontracting/wssubcontracting
FEA: ItEr76S30PermissionsEnhancements
2012-06-11 17:08:31 +02:00
Manuel Rego Casasnovas
1a19400990 Add new role to protect subcontracting services
New role ROLE_WS_SUBCONTRACTING has been created, now the web services are
separated in two parts:
* Common web services are allowed to be read by role ROLE_WS_READER and written
  by role ROLE_WS_WRITER
* Subcontracting web services are allowed to be read and written by role
  ROLE_WS_SUBCONTRACTING

In this way you can give access to a different companies to your subcontracting
services, however prevent them to access to the rest of your data (via common
web services).

FEA: ItEr76S30PermissionsEnhancements
2012-06-11 17:08:09 +02:00
Manuel Rego Casasnovas
cc34202f84 Bug #1463: Fix issue changing order in parameters of entry point
The problem was that before the change, the children of the order returned a
proxy when you used the method getOrder() over them. However, this doesn't
happen if you change the order of the parameters.

I guess that this is because of the converter of the Order is now called before
the converter of the OrderElement and the problem disappears.

FEA: ItEr76S04BugFixing
2012-06-11 11:24:07 +02:00
Diego Pino
43044a78af Bug #1461: NullPointerException in WorkReportLines
Clicking button 'Filter' if there was no Task selected resulted into a
NullPointerException

FEA: ItEr76S29WorkReports
2012-06-08 17:18:15 +02:00
Diego Pino
db25351f15 Add 'Spread Progress' bar to 'Global Progress' chart
FEA: ItEr76S15OrganizingPerProjectDashboard
2012-06-08 14:24:39 +02:00
Diego Pino
a1e6e8a768 Add pop-up tooltip in 'Global Progress' chart
FEA: ItEr76S15OrganizingPerProjectDashboard
2012-06-08 13:23:08 +02:00
Susana Montes Pedreira
bd80e44e92 keep sorted the expense sheet lines when some date is changed.
FEA: ItEr76S22ExpenseTrackingSystem
2012-06-08 10:40:24 +01:00
Susana Montes Pedreira
dc1c566118 changes some functions names in ExpenseSheetModel in order to
understand its behaviour easily.

FEA: ItEr76S22ExpenseTrackingSystem
2012-06-08 10:37:10 +01:00
Manuel Rego Casasnovas
0316d73288 Bug #1460: Fix issue checking if TaskElement is Task
The casting was failing for milestones, because of they're leafs but not tasks.

Using method TaskElement.isTask() instead of TaskElement.isLeaf() to ensure that
the TaskElement is a Task and can be casted accordingly.

FEA: ItEr76S04BugFixing
2012-06-08 11:10:28 +02:00
Manuel Rego Casasnovas
eaa8614f90 Bug #1439: Fix issue changing JavaScript to show/hide labels
As the resources text case was working properly, a similar code has been used
for the labels.

FEA: ItEr76S04BugFixing
2012-06-08 09:20:47 +02:00
Manuel Rego Casasnovas
181ed61c48 Remove unused methods and variable in TaskComponent
FEA: ItEr76S04BugFixing
2012-06-08 08:52:06 +02:00
Diego Pino
b979db78d2 Fix bug: NullPointerException in calculation of OvertimeRatio
The value of 'order' in OrderResourceLoadCalculator was set in the Gantt
View. Switching from 'Project Details' to 'Dashboard' directly caused a
NullPointerException.

FEA: ItEr76S15OrganizingPerProjectDashboard
2012-06-07 21:35:33 +02:00
Diego Pino
7b29017e00 Fix bug: NullPointerException when opening Dashboard view
Dashboard view needs the CriticalPath. The path should be calculated
before opening the view, no inside the view as this could result into a
NullPointerException sometimes (the user should have opened the Gantt
view before). The very same error happened in MonteCarlo and it was
fixed.

The solution is to use CriticalPathBuilder to construct the
CriticalPath.

FEA: ItEr76S15OrganizingPerProjectDashboard
2012-06-07 21:33:10 +02:00
Diego Pino
8f8d74cadc Refactoring: Create class CriticalPathBuilder
Move code in MonteCarlo for building CriticalPath to another file

FEA: ItEr76S15OrganizingPerProjectDashboard
2012-06-07 21:31:08 +02:00
Diego Pino
1021a8770f Fix bug: Cannot render GlobalProgress Chart
String.format caused a syntax error in Javascript. Depending on
the locale settings a double could be formatted as "X,YY" instead
of "X.YY", as expected.

Use Local.ROOT to force doubles to be formatted as "X.YY"

FEA: ItEr76S15OrganizingPerProjectDashboard
2012-06-07 19:28:05 +02:00
Diego Pino
33f39407bf Fix bug: Tomcat cannot load resource file
Tomcat cannot load resource file stored inside jqplot4java JAR. Used
Spring resource loader instead.

See:
http://stackoverflow.com/questions/4284014/java-getresourceasstream-jar-inside-war

FEA: ItEr76S15OrganizingPerProjectDashboard
2012-06-07 19:28:05 +02:00
Manuel Rego Casasnovas
5506482e42 Bug #1454: Force update task size after reassignations
FEA: ItEr76S04BugFixing
2012-06-07 18:32:43 +02:00
Manuel Rego Casasnovas
b51814bc46 Bug #1459: Fix order of columns in OrderElementBandboxFinder renderer
FEA: ItEr76S04BugFixing
2012-06-07 16:59:35 +02:00
Manuel Rego Casasnovas
4864f50842 Add constraint to check that in a personal expense sheet the resource is the same in all the lines
A personal expense sheet is associated just to one resource and all the lines
have to be the same resource set.

Moreover, the resource cannot be null.

FEA: ItEr76S28UserDashboard
2012-06-07 16:44:19 +02:00
Manuel Rego Casasnovas
85c06275d4 Revert "Add restriction to prevent remove all the lines in a personal expense sheet"
This reverts commit 290c7dfb5b.

This is not needed as there's already an annotation @NotEmpty in
expenseSheetLines. So it's mandatory for all the ExpenseSheet having at least
one ExpenseSheetLine.

FEA: ItEr76S28UserDashboard
2012-06-07 16:41:46 +02:00
Manuel Rego Casasnovas
56c2c78344 Fix typo in GET parameter for saved timesheets
FEA: ItEr76S28UserDashboard
2012-06-07 12:13:08 +02:00
Manuel Rego Casasnovas
81fc87beb2 Add button to delete personal expense sheet
FEA: ItEr76S28UserDashboard
2012-06-07 12:02:37 +02:00
Manuel Rego Casasnovas
49ecc85aef Add type information in expenses sheet list and form
FEA: ItEr76S28UserDashboard
2012-06-07 11:33:13 +02:00
Manuel Rego Casasnovas
bf1553829f Allow to sort monthly timesheest in user dashboard
Moved internal class MonthlyTimesheet to a proper file and renamed to
MonthlyTimesheetDTO.

In MonthlyTimesheetDTO all the data showed in the list will be precalculated.

FEA: ItEr76S28UserDashboard
2012-06-07 11:17:05 +02:00
Manuel Rego Casasnovas
bf0f733b90 Sort expenses area list
Allow to sort the list of personal expenses by the different columns.

FEA: ItEr76S28UserDashboard
2012-06-07 11:17:05 +02:00
Manuel Rego Casasnovas
429a3b39d8 Add class to highlight clickable rows in user dashboard
FEA: ItEr76S28UserDashboard
2012-06-07 11:17:05 +02:00