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/12/26 11:27:58 UTC
svn commit: r729475 - in /ofbiz/trunk/specialpurpose/projectmgr:
script/org/ofbiz/project/ProjectServices.xml servicedef/services.xml
widget/ProjectScreens.xml widget/forms/ProjectForms.xml
Author: hansbak
Date: Fri Dec 26 02:27:58 2008
New Revision: 729475
URL: http://svn.apache.org/viewvc?rev=729475&view=rev
Log:
now show correct nbr of hours on project overview for used resources
Modified:
ofbiz/trunk/specialpurpose/projectmgr/script/org/ofbiz/project/ProjectServices.xml
ofbiz/trunk/specialpurpose/projectmgr/servicedef/services.xml
ofbiz/trunk/specialpurpose/projectmgr/widget/ProjectScreens.xml
ofbiz/trunk/specialpurpose/projectmgr/widget/forms/ProjectForms.xml
Modified: ofbiz/trunk/specialpurpose/projectmgr/script/org/ofbiz/project/ProjectServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/projectmgr/script/org/ofbiz/project/ProjectServices.xml?rev=729475&r1=729474&r2=729475&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/projectmgr/script/org/ofbiz/project/ProjectServices.xml (original)
+++ ofbiz/trunk/specialpurpose/projectmgr/script/org/ofbiz/project/ProjectServices.xml Fri Dec 26 02:27:58 2008
@@ -777,106 +777,6 @@
</if-not-empty>
</simple-method>
- <simple-method method-name="getPartiesByProject" short-description="get Project information" login-required="true">
- <!-- list of actual hours by party -->
- <entity-condition entity-name="ProjectPhaseTaskAndTimeEntryTimeSheet" list-name="tasks">
- <condition-list combine="and">
- <condition-expr field-name="projectId" operator="equals" env-name="parameters.projectId" ignore-if-empty="true"/>
- <condition-expr field-name="timesheetPartyId" operator="equals" env-name="parameters.partyId" ignore-if-empty="true"/>
- <condition-expr field-name="timesheetPartyId" operator="not-equals" env-name="null"/>
- </condition-list>
- <order-by field-name="projectId"/>
- <order-by field-name="timesheetPartyId"/>
- </entity-condition>
- <if-not-empty field="tasks">
- <iterate entry-name="task" list-name="tasks">
- <if>
- <condition>
- <and>
- <not><if-empty field="projectParty"/></not>
- <if-compare-field field="projectParty.partyId" operator="not-equals" to-field="task.timesheetPartyId"/>
- </and>
- </condition>
- <then>
- <entity-one entity-name="PartyNameView" value-name="partyNameView">
- <field-map field-name="partyId" env-name="projectParty.partyId"/>
- </entity-one>
- <if-not-empty field="partyNameView">
- <set field="projectParty.partyName" value="${partyNameView.lastName},${partyNameView.firstName} ${partyNameView.middleName}${partyNameView.groupName}"/>
- </if-not-empty>
- <entity-and entity-name="WorkEffortPartyAssignment" list-name="resources" filter-by-date="true">
- <field-map field-name="workEffortId" env-name="task.projectId"/>
- <field-map field-name="partyId" env-name="projectParty.partyId"/>
- </entity-and>
- <if-not-empty field="resources">
- <iterate list-name="resources" entry-name="resource">
- <set field="projectParty.roleTypeId" from-field="resource.roleTypeId"/>
- <set field="projectParty.fromDate" from-field="resource.fromDate"/>
- <set field="projectParty.thruDate" from-field="resource.thruDate"/>
- </iterate>
- </if-not-empty>
- <field-to-list field-name="projectParty" list-name="projectParties"/>
- <clear-field field-name="projectParty"/>
- </then>
- </if>
- <set field="projectParty.projectId" from-field="task.projectId"/>
- <set field="projectParty.partyId" from-field="task.timesheetPartyId"/>
- <calculate field-name="projectParty.actualHours">
- <calcop operator="get" field-name="projectParty.actualHours"/>
- <calcop operator="add" field-name="task.hours"/>
- </calculate>
- </iterate>
- <if-not-empty field="projectParty">
- <entity-one entity-name="PartyNameView" value-name="partyNameView">
- <field-map field-name="partyId" env-name="projectParty.partyId"/>
- </entity-one>
- <if-not-empty field="partyNameView">
- <set field="projectParty.partyName" value="${partyNameView.lastName},${partyNameView.firstName} ${partyNameView.middleName}${partyNameView.groupName}"/>
- </if-not-empty>
- <entity-and entity-name="WorkEffortPartyAssignment" list-name="resources" filter-by-date="true">
- <field-map field-name="workEffortId" env-name="projectParty.projectId"/>
- <field-map field-name="partyId" env-name="projectParty.partyId"/>
- </entity-and>
- <if-not-empty field="resources">
- <first-from-list entry-name="resource" list-name="resources"/>
- <set field="projectParty.roleTypeId" from-field="resource.roleTypeId"/>
- <set field="projectParty.fromDate" from-field="resource.fromDate"/>
- <set field="projectParty.thruDate" from-field="resource.thruDate"/>
- </if-not-empty>
- <field-to-list field-name="projectParty" list-name="projectParties"/>
- </if-not-empty>
- </if-not-empty>
- <entity-condition entity-name="WorkEffortPartyAssignment" list-name="resources" filter-by-date="true">
- <condition-expr field-name="workEffortId" operator="equals" env-name="parameters.projectId" ignore-if-empty="true"/>
- <order-by field-name="roleTypeId"/>
- </entity-condition>
- <!-- now add all project parties who did not yet register time -->
- <iterate entry-name="resource" list-name="resources">
- <entity-condition entity-name="ProjectPhaseTaskAndTimeEntryTimeSheet" list-name="tasks">
- <condition-list combine="and">
- <condition-expr field-name="projectId" operator="equals" env-name="resource.workEffortId" ignore-if-empty="true"/>
- <condition-expr field-name="timesheetPartyId" operator="equals" env-name="resource.partyId"/>
- </condition-list>
- </entity-condition>
- <if-empty field="tasks">
- <clear-field field-name="projectParty"/>
- <set field="projectParty.partyId" from-field="resource.partyId"/>
- <entity-one entity-name="PartyNameView" value-name="partyNameView">
- <field-map field-name="partyId" env-name="resource.partyId"/>
- </entity-one>
- <if-not-empty field="partyNameView">
- <set field="projectParty.partyName" value="${partyNameView.lastName},${partyNameView.firstName} ${partyNameView.middleName}${partyNameView.groupName}"/>
- </if-not-empty>
- <set field="projectParty.roleTypeId" from-field="resource.roleTypeId"/>
- <set field="projectParty.fromDate" from-field="resource.fromDate"/>
- <set field="projectParty.thruDate" from-field="resource.thruDate"/>
- <field-to-list field-name="projectParty" list-name="projectParties"/>
- </if-empty>
- </iterate>
- <order-value-list list-name="projectParties" order-by-list-name="partyName"/>
- <field-to-result field-name="projectParties"/>
- </simple-method>
-
<simple-method method-name="getTasksByParties" short-description="get task information by party member" login-required="true">
<!-- get the list of tasks optionaly selected for a party -->
<if-empty field="parameters.partyId">
Modified: ofbiz/trunk/specialpurpose/projectmgr/servicedef/services.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/projectmgr/servicedef/services.xml?rev=729475&r1=729474&r2=729475&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/projectmgr/servicedef/services.xml (original)
+++ ofbiz/trunk/specialpurpose/projectmgr/servicedef/services.xml Fri Dec 26 02:27:58 2008
@@ -206,15 +206,6 @@
<attribute name="projectParties" type="List" mode="OUT" optional="true"/>
</service>
- <service name="getPartiesByProject" engine="simple"
- location="org/ofbiz/project/ProjectServices.xml" invoke="getPartiesByProject">
- <description>Get project information</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"/>
- </service>
-
<service name="getTasksByParties" engine="simple"
location="org/ofbiz/project/ProjectServices.xml" invoke="getTasksByParties">
<description>Get project information by party</description>
Modified: ofbiz/trunk/specialpurpose/projectmgr/widget/ProjectScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/projectmgr/widget/ProjectScreens.xml?rev=729475&r1=729474&r2=729475&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/projectmgr/widget/ProjectScreens.xml (original)
+++ ofbiz/trunk/specialpurpose/projectmgr/widget/ProjectScreens.xml Fri Dec 26 02:27:58 2008
@@ -578,27 +578,10 @@
</screen>
<screen name="PartiesInfo">
<section>
- <actions>
- <service service-name="getPartiesByProject" result-map-name="result">
- <field-map field-name="projectId" env-name="projectId"/>
- </service>
- <set field="parties" from-field="result.projectParties"/>
- </actions>
- <widgets>
- <container style="screenlet">
- <container style="screenlet-title-bar">
- <container style="h3">
- <label text="${uiLabelMap.ProjectMgrResources}"/>
- </container>
- </container>
- <container style="screenlet-body">
- <section>
- <widgets>
- <include-form name="ListProjectParties" location="component://projectmgr/widget/forms/ProjectForms.xml"/>
- </widgets>
- </section>
- </container>
- </container>
+ <widgets>
+ <screenlet title="${uiLabelMap.ProjectMgrResources}">
+ <include-form name="ListProjectParties" location="component://projectmgr/widget/forms/ProjectForms.xml"/>
+ </screenlet>
</widgets>
</section>
</screen>
Modified: ofbiz/trunk/specialpurpose/projectmgr/widget/forms/ProjectForms.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/projectmgr/widget/forms/ProjectForms.xml?rev=729475&r1=729474&r2=729475&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/projectmgr/widget/forms/ProjectForms.xml (original)
+++ ofbiz/trunk/specialpurpose/projectmgr/widget/forms/ProjectForms.xml Fri Dec 26 02:27:58 2008
@@ -329,16 +329,33 @@
<field name="plannedHours"><display/></field>
<field name="actualHours"><display/></field>
</form>
- <form name="ListProjectParties" type="list" list-name="parties"
+ <form name="ListProjectParties" type="list" list-name="assigns"
odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
+ <actions>
+ <entity-condition entity-name="WorkEffortPartyAssignView" list-name="assigns" distinct="true">
+ <condition-expr field-name="workEffortId" env-name="parameters.projectId"/>
+ <select-field field-name="partyId"/>
+ <select-field field-name="firstName"/>
+ <select-field field-name="lastName"/>
+ <select-field field-name="middleName"/>
+ <select-field field-name="groupName"/>
+ <order-by field-name="lastName"/>
+ <order-by field-name="firstName"/>
+ <order-by field-name="groupName"/>
+ </entity-condition>
+ </actions>
+ <row-actions>
+ <service service-name="getProject" result-map-name="result">
+ <field-map field-name="projectId" env-name="parameters.projectId"/>
+ <field-map field-name="partyId" env-name="partyId"/>
+ </service>
+ </row-actions>
<field name="projectId"><hidden/></field>
<field name="partyName" title="${uiLabelMap.CommonName}">
- <hyperlink target="viewprofile?partyId=${partyId}" description="${partyName}"/>
+ <hyperlink target="viewprofile?partyId=${partyId}" description="${lastName}, ${firstName} ${middleName} ${groupName} [${partyId}]"/>
</field>
- <field name="actualHours"><display/></field>
- <field name="roleTypeId" title="${uiLabelMap.ProjectMgrPartyRoleTypeId}"><display-entity entity-name="RoleType" description="${description}"/></field>
- <field name="fromDate" title="${uiLabelMap.CommonFromDate}"><display type="date"/></field>
- <field name="thruDate" title="${uiLabelMap.CommonThruDate}"><display type="date"/></field>
+ <field name="actualHours" entry-name="actualHours" map-name="result.projectInfo"><display/></field>
+ <field name="nonBilledHours" entry-name="actualNonBilledHours" map-name="result.projectInfo"><display/></field>
</form>
<form name="EditProjectSkills" type="list" target="updateProjectSkillStandard" list-name="workEffortSkillStandardList" paginate-target="EditProjectSkills"
odd-row-style="alternate-row" default-table-style="basic-table hover-bar">