You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by ha...@apache.org on 2008/01/01 15:10:01 UTC
svn commit: r607849 - in /ofbiz/trunk/specialpurpose/projectmgr: entitydef/
servicedef/ webapp/projectmgr/WEB-INF/actions/ widget/ widget/forms/
Author: hansbak
Date: Tue Jan 1 06:10:01 2008
New Revision: 607849
URL: http://svn.apache.org/viewvc?rev=607849&view=rev
Log:
added more security checks, improved the task find screen, added a new view to accomodate this, changed project find screen
Modified:
ofbiz/trunk/specialpurpose/projectmgr/entitydef/entitygroup.xml
ofbiz/trunk/specialpurpose/projectmgr/entitydef/entitymodel.xml
ofbiz/trunk/specialpurpose/projectmgr/servicedef/services.xml
ofbiz/trunk/specialpurpose/projectmgr/webapp/projectmgr/WEB-INF/actions/ListProjects.bsh
ofbiz/trunk/specialpurpose/projectmgr/widget/Menus.xml
ofbiz/trunk/specialpurpose/projectmgr/widget/TaskScreens.xml
ofbiz/trunk/specialpurpose/projectmgr/widget/forms/TaskForms.xml
Modified: ofbiz/trunk/specialpurpose/projectmgr/entitydef/entitygroup.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/projectmgr/entitydef/entitygroup.xml?rev=607849&r1=607848&r2=607849&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/projectmgr/entitydef/entitygroup.xml (original)
+++ ofbiz/trunk/specialpurpose/projectmgr/entitydef/entitygroup.xml Tue Jan 1 06:10:01 2008
@@ -26,6 +26,7 @@
<!-- ========================================================= -->
<entity-group group="org.ofbiz" entity="ProjectPartyAndPhaseAndTask"/>
+ <entity-group group="org.ofbiz" entity="ProjectAndPhaseAndTaskParty"/>
<entity-group group="org.ofbiz" entity="ProjectPartyAndPhase"/>
<entity-group group="org.ofbiz" entity="ProjectAndPhaseAndTask"/>
<entity-group group="org.ofbiz" entity="TimesheetAndTimeEntry"/>
Modified: ofbiz/trunk/specialpurpose/projectmgr/entitydef/entitymodel.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/projectmgr/entitydef/entitymodel.xml?rev=607849&r1=607848&r2=607849&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/projectmgr/entitydef/entitymodel.xml (original)
+++ ofbiz/trunk/specialpurpose/projectmgr/entitydef/entitymodel.xml Tue Jan 1 06:10:01 2008
@@ -88,6 +88,45 @@
</relation>
</view-entity>
+ <view-entity entity-name="ProjectAndPhaseAndTaskParty"
+ package-name="org.ofbiz.workeffort.project"
+ title="WorkEffort for use in party -> project -> phase -> task">
+ <member-entity entity-alias="WEP" entity-name="WorkEffort"/>
+ <member-entity entity-alias="WEPH" entity-name="WorkEffort"/>
+ <member-entity entity-alias="WET" entity-name="WorkEffort"/>
+ <member-entity entity-alias="WEPA" entity-name="WorkEffortPartyAssignment"/>
+ <alias-all entity-alias="WEPA">
+ <exclude field="facilityId"/>
+ <exclude field="workEffortId"/>
+ </alias-all>
+ <alias-all entity-alias="WET"/>
+ <alias entity-alias="WEP" field="workEffortId" name="projectId"/>
+ <alias entity-alias="WEP" field="workEffortName" name="projectName"/>
+ <alias entity-alias="WEPH" field="workEffortId" name="phaseId"/>
+ <alias entity-alias="WEPH" field="workEffortName" name="phaseName"/>
+ <view-link entity-alias="WEP" rel-entity-alias="WEPH">
+ <key-map field-name="workEffortId" rel-field-name="workEffortParentId"/>
+ </view-link>
+ <view-link entity-alias="WEPH" rel-entity-alias="WET">
+ <key-map field-name="workEffortId" rel-field-name="workEffortParentId"/>
+ </view-link>
+ <view-link entity-alias="WET" rel-entity-alias="WEPA">
+ <key-map field-name="workEffortId"/>
+ </view-link>
+ <relation type="one-nofk" rel-entity-name="PartyNameView">
+ <key-map field-name="partyId"/>
+ </relation>
+ <relation type="many" rel-entity-name="TimeEntry">
+ <key-map field-name="workEffortId"/>
+ </relation>
+ <relation type="many" rel-entity-name="WorkEffortPartyAssignment">
+ <key-map field-name="workEffortId"/>
+ </relation>
+ <relation type="many" rel-entity-name="WorkEffortSkillStandard">
+ <key-map field-name="workEffortId"/>
+ </relation>
+ </view-entity>
+
<view-entity entity-name="ProjectAndPhaseAndTask"
package-name="org.ofbiz.workeffort.project"
title="WorkEffort for use in project -> phase -> task">
Modified: ofbiz/trunk/specialpurpose/projectmgr/servicedef/services.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/projectmgr/servicedef/services.xml?rev=607849&r1=607848&r2=607849&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/projectmgr/servicedef/services.xml (original)
+++ ofbiz/trunk/specialpurpose/projectmgr/servicedef/services.xml Tue Jan 1 06:10:01 2008
@@ -52,6 +52,7 @@
<service name="updateTimeEntryByWorkeffort" engine="simple"
location="org/ofbiz/project/ProjectServices.xml" invoke="updateTimeEntryByWorkeffort">
<description>Update workeffort by workeffort and timesheetId </description>
+ <permission-service service-name="projectMgrPermission" main-action="UPDATE"/>
<attribute name="timesheetId" type="String" mode="IN" optional="false"/>
<attribute name="workEffortId" type="String" mode="IN" optional="true"/><!-- when empty will be ignored -->
<attribute name="hoursDay0" type="Double" mode="IN" optional="true"/>
@@ -66,6 +67,7 @@
<service name="getProject" engine="simple"
location="org/ofbiz/project/ProjectServices.xml" invoke="getProject">
<description>Get project information and realated phase and task info.</description>
+ <permission-service service-name="projectMgrPermission" main-action="VIEW"/>
<attribute name="projectId" type="String" mode="INOUT" optional="true"/>
<attribute name="projectInfo" type="java.util.Map" mode="OUT" optional="true"/>
</service>
@@ -107,24 +109,28 @@
<service name="copyProject" engine="simple"
location="org/ofbiz/project/ProjectServices.xml" invoke="copyProject">
<description>Copy a project planning data but ignore the actual data.</description>
+ <permission-service service-name="projectMgrPermission" main-action="CREATE"/>
<attribute name="projectId" type="String" mode="INOUT" optional="false"/>
</service>
<service name="copyProjectToTemplate" engine="simple"
location="org/ofbiz/project/ProjectServices.xml" invoke="copyProjectToTemplate">
<description>Copy a project planning data to a template project.</description>
+ <permission-service service-name="projectMgrPermission" main-action="CREATE"/>
<attribute name="projectId" type="String" mode="INOUT" optional="false"/>
</service>
<service name="scheduleProject" engine="simple"
location="org/ofbiz/project/ProjectServices.xml" invoke="scheduleProject">
<description>(re) calculate the estimated start and enddates of tasks within a project</description>
+ <permission-service service-name="projectMgrPermission" main-action="UPDATE"/>
<attribute name="projectId" type="String" mode="INOUT" optional="true"/>
</service>
<service name="getProjectIdAndName" engine="simple"
location="org/ofbiz/project/ProjectServices.xml" invoke="getProjectIdAndName">
<description>Get the projectId and Name when a phase or task is provided.</description>
+ <permission-service service-name="projectMgrPermission" main-action="VIEW"/>
<attribute name="taskId" type="String" mode="IN" optional="true"/>
<attribute name="phaseId" type="String" mode="IN" optional="true"/>
<attribute name="projectId" type="String" mode="OUT" optional="true"/>
@@ -136,6 +142,7 @@
<service name="getProjectPhaseList" engine="simple"
location="org/ofbiz/project/ProjectServices.xml" invoke="getProjectPhaseList">
<description>Get project phase information and related task info.</description>
+ <permission-service service-name="projectMgrPermission" main-action="VIEW"/>
<attribute name="projectId" type="String" mode="INOUT" optional="true"/>
<attribute name="phaseList" type="List" mode="OUT" optional="true"/>
</service>
@@ -143,6 +150,7 @@
<service name="getProjectTaskList" engine="simple"
location="org/ofbiz/project/ProjectServices.xml" invoke="getProjectTaskList">
<description>Get project phase information and related task info.</description>
+ <permission-service service-name="projectMgrPermission" main-action="VIEW"/>
<attribute name="projectId" type="String" mode="INOUT" optional="true"/>
<attribute name="taskList" type="List" mode="OUT" optional="true"/>
</service>
@@ -150,6 +158,7 @@
<service name="getProjectTask" engine="simple"
location="org/ofbiz/project/ProjectServices.xml" invoke="getProjectTask">
<description>Get project task information and related timesheet info.</description>
+ <permission-service service-name="projectMgrPermission" main-action="VIEW"/>
<attribute name="hoursPartyId" type="String" mode="IN" optional="true"/>
<attribute name="taskId" type="String" mode="INOUT" optional="true"/>
<attribute name="projectId" type="String" mode="OUT" optional="true"/>
@@ -160,6 +169,7 @@
<service name="getProjectsByParties" engine="simple"
location="org/ofbiz/project/ProjectServices.xml" invoke="getProjectsByParties">
<description>Get project information by party</description>
+ <permission-service service-name="projectMgrPermission" main-action="VIEW"/>
<attribute name="projectId" type="String" mode="INOUT" optional="true"/>
<attribute name="partyId" type="String" mode="INOUT" optional="true"/>
<attribute name="projectParties" type="List" mode="OUT" optional="true"/>
@@ -168,6 +178,7 @@
<service name="getTasksByParties" engine="simple"
location="org/ofbiz/project/ProjectServices.xml" invoke="getTasksByParties">
<description>Get project information by party</description>
+ <permission-service service-name="projectMgrPermission" main-action="VIEW"/>
<attribute name="workEffortId" type="String" mode="INOUT" optional="true"/>
<attribute name="partyId" type="String" mode="INOUT" optional="true"/>
<attribute name="taskParties" type="List" mode="OUT" optional="true"/>
Modified: ofbiz/trunk/specialpurpose/projectmgr/webapp/projectmgr/WEB-INF/actions/ListProjects.bsh
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/projectmgr/webapp/projectmgr/WEB-INF/actions/ListProjects.bsh?rev=607849&r1=607848&r2=607849&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/projectmgr/webapp/projectmgr/WEB-INF/actions/ListProjects.bsh (original)
+++ ofbiz/trunk/specialpurpose/projectmgr/webapp/projectmgr/WEB-INF/actions/ListProjects.bsh Tue Jan 1 06:10:01 2008
@@ -47,14 +47,13 @@
projectId = parameters.get("projectId");
subProjects = parameters.get("subProjects"); // if provided only give subprojects of a certain main project
projectName = parameters.get("projectName");
-
projectId_op = parameters.get("projectId_op");
projectName_op = parameters.get("projectName_op");
conditions = UtilMisc.toList(new EntityExpr("workEffortTypeId", EntityOperator.EQUALS, "PROJECT"));
if (!UtilValidate.isEmpty(fromDate)) {
- conditions.add(new EntityExpr("createdStamp", EntityOperator.GREATER_THAN_EQUAL_TO, fromDate + " 00:00:00.0"));
+ conditions.add(new EntityExpr("lastStatusUpdate", EntityOperator.GREATER_THAN_EQUAL_TO, fromDate + " 00:00:00.0"));
}
@@ -83,11 +82,19 @@
}
}
}
+
+
+entityName = "WorkEffort";
+if (security.hasPermission("PROJECTMGR_ROLE_VIEW", session)) {
+ conditions.add(new EntityExpr("partyId", EntityOperator.EQUALS, userLogin.getString("partyId")));
+ entityName = "WorkEffortAndPartyAssign";
+}
+
allConditions = new EntityConditionList( conditions, EntityOperator.AND );
-orderBy = UtilMisc.toList("createdStamp DESC");
+orderBy = UtilMisc.toList("lastStatusUpdate DESC");
projects = new LinkedList();
-listProjects = delegator.findByConditionCache("WorkEffort", allConditions, UtilMisc.toList("workEffortId"), orderBy);
+listProjects = delegator.findByConditionCache(entityName, allConditions, UtilMisc.toList("workEffortId"), orderBy);
if (!UtilValidate.isEmpty(listProjects)) {
itr = listProjects.iterator();
Modified: ofbiz/trunk/specialpurpose/projectmgr/widget/Menus.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/projectmgr/widget/Menus.xml?rev=607849&r1=607848&r2=607849&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/projectmgr/widget/Menus.xml (original)
+++ ofbiz/trunk/specialpurpose/projectmgr/widget/Menus.xml Tue Jan 1 06:10:01 2008
@@ -26,11 +26,31 @@
<menu-item name="mytime" title="${uiLabelMap.TimesheetMyTime}"><link target="MyTimesheet"/></menu-item>
<menu-item name="projects" title="${uiLabelMap.WorkEffortProjects}"><link target="FindProject"/></menu-item>
<menu-item name="task" title="${uiLabelMap.ProjectMgrTasks}"><link target="FindTask"/></menu-item>
- <menu-item name="resources" title="${uiLabelMap.ProjectMgrResources}"><link target="FindResource"/></menu-item>
- <menu-item name="timesheet" title="${uiLabelMap.Timesheet}"><link target="FindTimeSheet"/></menu-item>
- <menu-item name="SkillType" title="${uiLabelMap.ProjectMgrSkillType}"><link target="findSkillTypes"/></menu-item>
+ <menu-item name="resources" title="${uiLabelMap.ProjectMgrResources}">
+ <condition>
+ <if-has-permission permission="PARTYMGR_ADMIN"/>
+ </condition>
+ <link target="FindResource"/>
+ </menu-item>
+ <menu-item name="timesheet" title="${uiLabelMap.Timesheet}">
+ <condition>
+ <if-has-permission permission="PARTYMGR_ADMIN"/>
+ </condition>
+ <link target="FindTimeSheet"/>
+ </menu-item>
+ <menu-item name="SkillType" title="${uiLabelMap.ProjectMgrSkillType}">
+ <condition>
+ <if-has-permission permission="PARTYMGR_ADMIN"/>
+ </condition>
+ <link target="findSkillTypes"/>
+ </menu-item>
<!--menu-item name="calendar" title="${uiLabelMap.WorkEffortCalendar}"><link target="day"/></menu-item-->
- <menu-item name="request" title="${uiLabelMap.WorkEffortRequestList}"><link target="requestlist"/></menu-item>
+ <menu-item name="request" title="${uiLabelMap.WorkEffortRequestList}">
+ <condition>
+ <if-has-permission permission="PARTYMGR_ADMIN"/>
+ </condition>
+ <link target="requestlist"/>
+ </menu-item>
<menu-item name="help" title="Help" align-style="col-right">
<link target="http://docs.ofbiz.org/display/OFBENDUSER/Project+Manager+Application+Roles?decorator=printable" url-mode="plain" target-window="new"/>
@@ -48,51 +68,142 @@
<actions>
<set field="projectId" from-field="parameters.projectId" default-value="${parameters.workEffortId}"/>
</actions>
- <menu-item name="ganttchart" title="${uiLabelMap.ProjectMgrGanttChart}"><link target="ganttChart?projectId=${projectId}"/></menu-item>
- <menu-item name="projectView" title="${uiLabelMap.ProjectMgrProjectSummary}"><link target="projectView?projectId=${projectId}"/></menu-item>
- <menu-item name="editproject" title="${uiLabelMap.ProjectMgrEditPoject}"><link target="EditProject?projectId=${projectId}"/></menu-item>
- <menu-item name="phases" title="${uiLabelMap.ProjectMgrPhases}"><link target="FindPhase?projectId=${projectId}"/></menu-item>
- <menu-item name="tasks" title="${uiLabelMap.ProjectMgrTasks}"><link target="EditProjectTasks?projectId=${projectId}"/></menu-item>
- <menu-item name="parties" title="${uiLabelMap.ProjectMgrResources}"><link target="ListWorkEffortPartyAssigns?projectId=${projectId}"/></menu-item>
- <menu-item name="notes" title="${uiLabelMap.CommonNotes}"><link target="EditWorkEffortNotes?projectId=${projectId}"/></menu-item>
- <menu-item name="subprojects" title="${uiLabelMap.ProjectMgrSubProjects}"><link target="ListSubProjects?projectId=${projectId}&subProjects=true"/></menu-item>
- <menu-item name="billing" title="${uiLabelMap.ProjectMgrBilling}"><link target="projectBilling?projectId=${projectId}"/></menu-item>
- <!--menu-item name="treeDetails" title="${uiLabelMap.ProjectMgrTreeDetails}"><link target="ChildWorkEfforts?projectId=${projectId}&trail=${workEffortId}&workEffortTypeId=PROJECT&workEffortAssocTypeId=WORK_EFF_BREAKDOWN"/></menu-item-->
+ <menu-item name="ganttchart" title="${uiLabelMap.ProjectMgrGanttChart}">
+ <condition>
+ <if-has-permission permission="PARTYMGR_VIEW"/>
+ </condition>
+ <link target="ganttChart?projectId=${projectId}"/>
+ </menu-item>
+ <menu-item name="projectView" title="${uiLabelMap.ProjectMgrProjectSummary}">
+ <condition>
+ <if-has-permission permission="PARTYMGR_VIEW"/>
+ </condition>
+ <link target="projectView?projectId=${projectId}"/>
+ </menu-item>
+ <menu-item name="editproject" title="${uiLabelMap.ProjectMgrEditPoject}">
+ <condition>
+ <and>
+ <if-has-permission permission="PARTYMGR_ROLE_UPDATE"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_COMPLETED"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_ON_HOLD"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_CANCELED"/>
+ </and>
+ </condition>
+ <link target="EditProject?projectId=${projectId}"/>
+ </menu-item>
+ <menu-item name="phases" title="${uiLabelMap.ProjectMgrPhases}">
+ <condition>
+ <and>
+ <if-has-permission permission="PARTYMGR_ROLE_UPDATE"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_COMPLETED"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_ON_HOLD"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_CANCELED"/>
+ </and>
+ </condition>
+ <link target="FindPhase?projectId=${projectId}"/>
+ </menu-item>
+ <menu-item name="tasks" title="${uiLabelMap.ProjectMgrTasks}">
+ <condition>
+ <and>
+ <if-has-permission permission="PARTYMGR_ROLE_UPDATE"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_COMPLETED"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_ON_HOLD"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_CANCELED"/>
+ </and>
+ </condition>
+ <link target="EditProjectTasks?projectId=${projectId}"/>
+ </menu-item>
+ <menu-item name="parties" title="${uiLabelMap.ProjectMgrResources}">
+ <condition>
+ <and>
+ <if-has-permission permission="PARTYMGR_ROLE_UPDATE"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_COMPLETED"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_ON_HOLD"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_CANCELED"/>
+ </and>
+ </condition>
+ <link target="ListWorkEffortPartyAssigns?projectId=${projectId}"/>
+ </menu-item>
+ <menu-item name="notes" title="${uiLabelMap.CommonNotes}">
+ <condition>
+ <and>
+ <if-has-permission permission="PARTYMGR_ROLE_UPDATE"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_COMPLETED"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_ON_HOLD"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_CANCELED"/>
+ </and>
+ </condition>
+ <link target="EditWorkEffortNotes?projectId=${projectId}"/>
+ </menu-item>
+ <menu-item name="subprojects" title="${uiLabelMap.ProjectMgrSubProjects}">
+ <condition>
+ <and>
+ <if-has-permission permission="PARTYMGR_ROLE_UPDATE"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_COMPLETED"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_ON_HOLD"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_CANCELED"/>
+ </and>
+ </condition>
+ <link target="ListSubProjects?projectId=${projectId}&subProjects=true"/>
+ </menu-item>
+ <menu-item name="billing" title="${uiLabelMap.ProjectMgrBilling}">
+ <condition>
+ <and>
+ <if-has-permission permission="PARTYMGR_ROLE_UPDATE"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_COMPLETED"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_ON_HOLD"/>
+ <if-compare field-name="project.currentStatusId" operator="not-equals" value="PTS_CANCELED"/>
+ </and>
+ </condition>
+ <link target="projectBilling?projectId=${projectId}"/>
+ </menu-item>
</menu>
<menu name="ProjectSubTabBar" type="simple" menu-container-style="button-bar button-style-2" default-selected-style="selected">
<actions>
<set field="projectId" from-field="parameters.projectId" default-value="${parameters.workEffortId}"/>
</actions>
<menu-item name="newProject" title="${uiLabelMap.ProjectMgrNewProject}">
- <condition>
- <not>
- <if-empty field-name="project"/>
- </not>
+ <condition>
+ <and>
+ <not>
+ <if-empty field-name="project"/>
+ </not>
+ <if-has-permission permission="PARTYMGR_ROLE_UPDATE"/>
+ </and>
</condition>
<link target="EditProject"></link>
</menu-item>
<menu-item name="copyProject" title="${uiLabelMap.ProjectMgrCopyProject}">
- <condition>
- <not>
- <if-empty field-name="project"/>
- </not>
- </condition>
+ <condition>
+ <and>
+ <not>
+ <if-empty field-name="project"/>
+ </not>
+ <if-has-permission permission="PARTYMGR_ROLE_UPDATE"/>
+ </and>
+ </condition>
<link target="copyProject?projectId=${projectId}"></link>
</menu-item>
<menu-item name="schedule" title="${uiLabelMap.ProjectMgrSchedule}">
- <condition>
- <not>
- <if-empty field-name="project"/>
- </not>
- </condition>
+ <condition>
+ <and>
+ <not>
+ <if-empty field-name="project"/>
+ </not>
+ <if-has-permission permission="PARTYMGR_ROLE_UPDATE"/>
+ </and>
+ </condition>
<link target="scheduleProject?projectId=${projectId}"></link>
</menu-item>
<menu-item name="copyProjectToTemplate" title="${uiLabelMap.ProjectMgrSaveAsTemplate}">
- <condition>
- <not>
- <if-empty field-name="project"/>
- </not>
- </condition>
+ <condition>
+ <and>
+ <not>
+ <if-empty field-name="project"/>
+ </not>
+ <if-has-permission permission="PARTYMGR_ROLE_UPDATE"/>
+ </and>
+ </condition>
<link target="copyProjectToTemplate?projectId=${projectId}"></link>
</menu-item>
</menu>
Modified: ofbiz/trunk/specialpurpose/projectmgr/widget/TaskScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/projectmgr/widget/TaskScreens.xml?rev=607849&r1=607848&r2=607849&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/projectmgr/widget/TaskScreens.xml (original)
+++ ofbiz/trunk/specialpurpose/projectmgr/widget/TaskScreens.xml Tue Jan 1 06:10:01 2008
@@ -164,15 +164,7 @@
<actions>
<set field="titleProperty" value="PageTitleFindTask"/>
<set field="headerItem" value="task"/>
- <set field="labelTitleProperty" value="ProjectMgrMyTasks"/>
- <entity-and entity-name="WorkEffortAndPartyAssign" list-name="tasks">
- <field-map field-name="partyId" env-name="userLogin.partyId"/>
- <field-map field-name="workEffortTypeId" value="TASK"/>
- </entity-and>
- <entity-one entity-name="WorkEffort" value-name="task">
- <field-map field-name="workEffortId" value="dummy"/>
- </entity-one>
- <set field="myTask" value="notNull"/>
+ <set field="labelTitleProperty" value="ProjectMgrListTasks"/>
</actions>
<widgets>
<decorator-screen name="CommonMyTaskDecorator" location="${parameters.mainDecoratorLocation}">
@@ -182,8 +174,31 @@
<container style="screenlet">
<container style="screenlet-title-bar"><label style="boxhead">${uiLabelMap.PageTitleFindTask}</label></container>
<container style="screenlet-body">
- <include-form name="FindTask" location="component://projectmgr/widget/forms/TaskForms.xml"/>
- <include-form name="ListTasks" location="component://projectmgr/widget/forms/TaskForms.xml"/>
+ <include-form name="FindTask" location="component://projectmgr/widget/forms/TaskForms.xml"/>
+ <section>
+ <condition>
+ <if-empty field-name="parameters.partyId"/>
+ </condition>
+ <actions>
+ <set field="entityName" value="ProjectAndPhaseAndTask"/>
+ </actions>
+ <widgets>
+ <include-form name="ListTasks" location="component://projectmgr/widget/forms/TaskForms.xml"/>
+ </widgets>
+ </section>
+ <section>
+ <condition>
+ <not>
+ <if-empty field-name="parameters.partyId"/>
+ </not>
+ </condition>
+ <actions>
+ <set field="entityName" value="ProjectAndPhaseAndTaskParty"/>
+ </actions>
+ <widgets>
+ <include-form name="ListTasks" location="component://projectmgr/widget/forms/TaskForms.xml"/>
+ </widgets>
+ </section>
</container>
</container>
Modified: ofbiz/trunk/specialpurpose/projectmgr/widget/forms/TaskForms.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/projectmgr/widget/forms/TaskForms.xml?rev=607849&r1=607848&r2=607849&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/projectmgr/widget/forms/TaskForms.xml (original)
+++ ofbiz/trunk/specialpurpose/projectmgr/widget/forms/TaskForms.xml Tue Jan 1 06:10:01 2008
@@ -167,7 +167,16 @@
<field name="hideSearch"><hidden value="Y"/></field>
<field name="workEffortTypeId"><hidden value="TASK"/></field>
<field name="workEffortId" title="${uiLabelMap.ProjectMgrTaskId}"><text-find default-option="contains" ignore-case="true"/></field>
- <field name="workEffortName" title="${uiLabelMap.ProjectMgrTaskName}"><text-find default-option="contains" ignore-case="true"/></field>
+ <field name="workEffortName" title="${uiLabelMap.ProjectMgrTaskName}"><text-find default-option="contains" ignore-case="true"/></field>
+ <field name="partyId">
+ <drop-down allow-empty="true">
+ <entity-options entity-name="PartyRoleAndPartyDetail" description="${firstName} ${middleName} ${lastName}">
+ <entity-constraint name="roleTypeId" value="PROJECT_TEAM"/>
+ <entity-order-by field-name="lastName"/>
+ <entity-order-by field-name="groupName"/>
+ </entity-options>
+ </drop-down>
+ </field>
<field name="projectName"><text-find default-option="contains" ignore-case="true"/></field>
<field name="estimatedStartDate" title="${uiLabelMap.CommonFromDate}"><date-find/></field>
<field name="find" title="${uiLabelMap.CommonFind}"><submit/></field>
@@ -176,28 +185,23 @@
<actions>
<service service-name="performFind" result-map-name="result" result-map-list-name="listIt">
<field-map field-name="inputFields" env-name="parameters"/>
- <field-map field-name="entityName" value="WorkEffort"/>
- <field-map field-name="orderBy" value="lastUpdatedStamp DESC"/>
+ <field-map field-name="entityName" value="${entityName}"/>
+ <field-map field-name="orderBy" value="lastStatusUpdate DESC"/>
</service>
</actions>
<row-actions>
<service service-name="getProjectTask" result-map-name="result">
<field-map field-name="taskId" env-name="workEffortId"/>
+ <field-map field-name="hoursPartyId" env-name="partyId"/>
</service>
<set field="plannedHours" from-field="result.taskInfo.plannedHours"/>
<set field="actualHours" from-field="result.taskInfo.actualTotalHours"/>
<set field="currentStatusId" from-field="result.taskInfo.currentStatusId"/>
- <service service-name="getProjectIdAndName" result-map-name="resultProject">
- <field-map field-name="taskId" env-name="workEffortId"/>
- </service>
- <set field="projectName" from-field="resultProject.projectName"/>
- <set field="projectId" from-field="resultProject.projectId"/>
- <set field="phaseName" from-field="resultProject.phaseName"/>
</row-actions>
<field name="workEffortId" title="${uiLabelMap.ProjectMgrTaskId}" widget-style="buttontext">
<hyperlink also-hidden="false" description="${workEffortName}[${workEffortId}]" target="taskView?workEffortId=${workEffortId}"/>
</field>
- <field name="resultProject.phaseName" title="${uiLabelMap.ProjectMgrPhaseName}">
+ <field name="phaseName" title="${uiLabelMap.ProjectMgrPhaseName}">
<hyperlink also-hidden="false" description="${phaseName}" target="FindPhase?projectId=${projectId}"/>
</field>
<field name="projectName" title="${uiLabelMap.ProjectMgrProjectName}" widget-style="buttontext">