Changeset 17911
- Timestamp:
- 08/20/08 03:51:10 (3 months ago)
- Files:
-
- trunk/core/src/net/project/form/FormData.java (modified) (2 diffs)
- trunk/core/src/net/project/resource/mvc/handler/PercentCompleteChangedHandler.java (modified) (5 diffs)
- trunk/core/src/net/project/resource/mvc/handler/UpdateAssignmentsProcessingHandler.java (modified) (1 diff)
- trunk/core/web/jsp/form/FormEdit.jsp (modified) (1 diff)
- trunk/core/web/jsp/form/FormEditProcessing.jsp (modified) (1 diff)
- trunk/core/web/jsp/form/include/FormEdit.jsp (modified) (3 diffs)
- trunk/core/web/jsp/resource/include/UpdateAssignments.jsp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/core/src/net/project/form/FormData.java
r17771 r17911 393 393 394 394 FormField titleField = m_form.getFirstEditableField(); 395 if(titleField != null) { 396 String titleFieldValue = null; 397 if(this.get(titleField.getSQLName()) != null && ((FieldData)this.get(titleField.getSQLName())) != null 398 && ((FieldData)this.get(titleField.getSQLName())).size() > 0){ 399 titleFieldValue = (String) ((FieldData)this.get(titleField.getSQLName())).get(0); 400 } 401 if(titleFieldValue != null && !"".equals(titleFieldValue.trim())){ 395 if (titleField != null) { 396 String titleFieldValue = null; 397 if (this.get(titleField.getSQLName()) != null && ((FieldData) this.get(titleField.getSQLName())) != null && ((FieldData) this.get(titleField.getSQLName())).size() > 0) { 398 titleFieldValue = (String) ((FieldData) this.get(titleField.getSQLName())).get(0); 399 } 400 if (titleFieldValue != null && !"".equals(titleFieldValue.trim())) { 402 401 return titleFieldValue; 403 } 404 else{ 405 return m_form.getAbbreviation() + "-" + this.getSeqNum(); 402 } else { 403 return m_form.getAbbreviation() + "-" + this.getSeqNum(); 406 404 } 407 405 } … … 788 786 db.pstmt.setString(++index, m_form.getFirstEditableField() == null ? m_form.getAbbreviation() + "-" + sequenceNum : getName()); 789 787 DatabaseUtils.setInteger(db.pstmt, ++index, dataObjectID); 790 db.executePreparedUpdate(); 788 int updateCount = db.executePreparedUpdate(); 789 //sjmittal: if this is form created prior to the additon of assignable for or hook then insert new row 790 if(updateCount == 0) { 791 index = 0; 792 db.prepareStatement("INSERT INTO PN_OBJECT_NAME (object_id, name) VALUES (?, ?)"); 793 DatabaseUtils.setInteger(db.pstmt, ++index, dataObjectID); 794 String formName = m_form.getFirstEditableField() == null ? m_form.getAbbreviation() + "-" + sequenceNum : getName(); 795 db.pstmt.setString(++index, formName); 796 db.executePreparedUpdate(); 797 } 791 798 } else { 792 799 trunk/core/src/net/project/resource/mvc/handler/PercentCompleteChangedHandler.java
r16593 r17911 36 36 import net.project.base.mvc.IView; 37 37 import net.project.base.property.PropertyProvider; 38 import net.project.form.assignment.FormAssignment; 39 import net.project.resource.ActivityAssignment; 40 import net.project.resource.Assignment; 38 41 import net.project.resource.ScheduleEntryAssignment; 39 42 import net.project.resource.mvc.view.PercentCompleteChangedView; … … 126 129 //Get the assignment for this work 127 130 Map assignmentMap = (Map)request.getSession().getAttribute("updateAssignmentsMap"); 128 ScheduleEntryAssignment assn = (ScheduleEntryAssignment)assignmentMap.get(objectID);131 Assignment assn = (Assignment)assignmentMap.get(objectID); 129 132 130 133 //Figure out the total amount of work that has been completed. 131 TimeQuantity workComplete = assn.getWorkComplete();134 TimeQuantity workComplete = getWorkComplete(assn); 132 135 133 136 for (int i = 0; i < 7; i++) { … … 140 143 if (workComplete.isZero()) { 141 144 errors.addError(PropertyProvider.get("prm.personal.assignments.cannotsetpercentcomplete.message")); 142 model.put("percentComplete", nf.formatPercent( assn.getPercentComplete().doubleValue()));145 model.put("percentComplete", nf.formatPercent(getPercentComplete(assn).doubleValue())); 143 146 return; 144 147 } … … 156 159 if(!Validator.isInRange(percentComplete.doubleValue(), 0.00001, 1)) { 157 160 errors.addError(new ErrorDescription(PropertyProvider.get("prm.resource.updatework.error.pencentcomplete.range.message"))); 158 model.put("percentComplete", nf.formatPercent( assn.getPercentComplete().doubleValue()));161 model.put("percentComplete", nf.formatPercent(getPercentComplete(assn).doubleValue())); 159 162 return; 160 163 } … … 166 169 model.put("workRemaining", workRemaining); 167 170 } 171 172 private TimeQuantity getWorkComplete(Assignment assn) { 173 if(assn instanceof ScheduleEntryAssignment) 174 return((ScheduleEntryAssignment) assn).getWorkComplete(); 175 else if(assn instanceof FormAssignment) 176 return ((FormAssignment) assn).getWorkComplete(); 177 else 178 return ((ActivityAssignment) assn).getWork(); 179 } 180 181 private BigDecimal getPercentComplete(Assignment assn) { 182 if(assn instanceof ScheduleEntryAssignment) 183 return((ScheduleEntryAssignment) assn).getPercentComplete(); 184 else if(assn instanceof FormAssignment) 185 return ((FormAssignment) assn).getPercentComplete(); 186 else 187 return new BigDecimal(1.0); 188 } 168 189 } trunk/core/src/net/project/resource/mvc/handler/UpdateAssignmentsProcessingHandler.java
r17673 r17911 629 629 newWork = new TimeQuantity(new BigDecimal(workUpdateString), TimeQuantityUnit.HOUR); 630 630 fAssignment.setWork(newWork); 631 //store any work changes here as you may not get a chance to do that later 632 fAssignment.store(); 631 633 } 632 634 } else if (assignment instanceof ActivityAssignment) { trunk/core/web/jsp/form/FormEdit.jsp
r17766 r17911 208 208 theForm = self.document.forms[0]; 209 209 isLoaded = true; 210 var workComplete = Ext.DomQuery.selectNode("#work_complete"); 211 if(workComplete && workComplete.value == '0') { 212 var workPercentComplete = Ext.DomQuery.selectNode("#work_percent_complete"); 213 if(workPercentComplete) 214 workPercentComplete.readOnly = true; 215 } 210 216 } 211 217 trunk/core/web/jsp/form/FormEditProcessing.jsp
r17178 r17911 89 89 TimeQuantity newWork = TimeQuantity.parse(work, workUnits); 90 90 TimeQuantity oldWorkComplete = assignment.getWorkComplete(); 91 if(newWork.compareTo(oldWorkComplete) > 0) {91 if(newWork.compareTo(oldWorkComplete) >= 0) { 92 92 assignment.setWork(newWork); 93 93 } trunk/core/web/jsp/form/include/FormEdit.jsp
r17673 r17911 92 92 93 93 editMode = "modify"; 94 %><% 94 95 95 } else {// Creating new form instance, requires Form object in session 96 96 id = null; … … 369 369 </td> 370 370 <td nowrap width="25%"> 371 <input:text elementID="work" name="work" size="5" maxLength="10" on Blur="workChanged();" value='<%=assigned == null ? "" : assigned.getWork().formatAmount()%>' />371 <input:text elementID="work" name="work" size="5" maxLength="10" onChange="workChanged();" value='<%=assigned == null ? "" : assigned.getWork().formatAmount()%>' /> 372 372 <input:select elementID="work_units" name="work_units" onChange="workUnitsChanged();" options="<%=availableUnits%>" defaultSelected="<%=assigned == null ? TimeQuantityUnit.HOUR : assigned.getWork().getUnits()%>" /> 373 373 </td> … … 378 378 </td> 379 379 <td nowrap width="15%" > 380 <input:text elementID="work_percent_complete" name="work_percent_complete" on Blur="workPercentCompleteChanged();" value='<%=assigned == null ? "" :assigned.getPercentCompleteString()%>' size="4" maxLength="7"/>380 <input:text elementID="work_percent_complete" name="work_percent_complete" onChange="workPercentCompleteChanged();" value='<%=assigned == null ? "" :assigned.getPercentCompleteString()%>' size="4" maxLength="7"/> 381 381 </td> 382 382 <td nowrap width="15%" id="startDate"> trunk/core/web/jsp/resource/include/UpdateAssignments.jsp
r17673 r17911 488 488 <%=work.toShortString(0,2)%> <br> 489 489 <% if(!readOnly) { %> 490 <input type="text" size="1" maxlength=" 2" name='<%=valueName%>' <%=valueValue%> onChange="workChanged(<%=assignment.getObjectID()%>, <%=showFilterPane.booleanValue()%>,<%=name%>);"/><a id="timerLink" href='javascript:specifyTimes("<%=assignment.getObjectID()%>", <%=name%>, theForm.<%=valueName%>.value, <%=showFilterPane.booleanValue()%>);'><img src="<%= SessionManager.getJSPRootURL() %>/images/sm_clock.gif" border="0"/></a>490 <input type="text" size="1" maxlength="5" name='<%=valueName%>' <%=valueValue%> onChange="workChanged(<%=assignment.getObjectID()%>, <%=showFilterPane.booleanValue()%>,<%=name%>);"/><a id="timerLink" href='javascript:specifyTimes("<%=assignment.getObjectID()%>", <%=name%>, theForm.<%=valueName%>.value, <%=showFilterPane.booleanValue()%>);'><img src="<%= SessionManager.getJSPRootURL() %>/images/sm_clock.gif" border="0"/></a> 491 491 <% } %> 492 492 </td>
