Changeset 20552
- Timestamp:
- 03/09/10 00:51:30 (5 months ago)
- Files:
-
- trunk/core/src/net/project/resource/AssignmentWorkCaptureHelper.java (modified) (5 diffs)
- trunk/core/src/net/project/view/pages/assignments/Timesheet.java (modified) (5 diffs)
- trunk/core/web/html/assignments/Timesheet.tml (modified) (1 diff)
- trunk/core/web/src/workCapture.js (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/core/src/net/project/resource/AssignmentWorkCaptureHelper.java
r19882 r20552 1251 1251 Set workLogsToStore = new HashSet(); 1252 1252 String comments = request.getParameter("comments"); 1253 String chargeCodeId = request.getParameter("chargeCodeId"); 1253 1254 if(StringUtils.isNotBlank(comments)){ 1254 1255 this.comments = comments; … … 1265 1266 log.error("Error occurred while parsing work assigned" + pnetEx.getMessage()); 1266 1267 } 1267 storeUserChanges(workLogsToStore, tasksToStore, scheduleCache );1268 storeUserChanges(workLogsToStore, tasksToStore, scheduleCache, chargeCodeId); 1268 1269 1269 1270 // add the pervious work performed in the week to total work … … 1281 1282 } 1282 1283 1283 public void storeUserChanges(Set workLogsToStore, Set tasksToStore, Map scheduleCache) throws PersistenceException { 1284 public void storeUserChanges(Set workLogsToStore, Set tasksToStore, Map scheduleCache, String chargeCodeId) throws PersistenceException { 1285 Integer[] assignmentWorkId = null; 1284 1286 if (!errors.errorsFound()) { 1285 1287 DBBean db = new DBBean(); … … 1294 1296 for (Iterator it = workLogsToStore.iterator(); it.hasNext();) { 1295 1297 List workLogs = (List) it.next(); 1296 new AssignmentWorkLogDAO().store(workLogs, db);1298 assignmentWorkId = new AssignmentWorkLogDAO().store(workLogs, db); 1297 1299 } 1298 1300 //Converting Set tasksToStore to scheduleEntryToStoreArray array. … … 1357 1359 } 1358 1360 } 1361 // Assign charge code to assignment work capture. 1362 if(StringUtils.isNotEmpty(chargeCodeId)){ 1363 for(Integer workCaptureId : assignmentWorkId){ 1364 if(workCaptureId != null) 1365 ServiceFactory.getInstance().getPnObjectHasChargeCodeService().save(workCaptureId, Integer.valueOf(chargeCodeId), Integer.valueOf(SessionManager.getUser().getCurrentSpace().getID())); 1366 } 1367 } 1359 1368 } 1360 1369 trunk/core/src/net/project/view/pages/assignments/Timesheet.java
r20525 r20552 30 30 import net.project.calendar.workingtime.IWorkingTimeCalendar; 31 31 import net.project.calendar.workingtime.WorkingTimeCalendarDefinition; 32 import net.project.chargecode.ChargeCodeManager; 32 33 import net.project.form.assignment.FormAssignment; 34 import net.project.hibernate.model.PnChargeCode; 33 35 import net.project.resource.ActivityAssignment; 34 36 import net.project.resource.Assignment; … … 48 50 import net.project.view.pages.base.BasePage; 49 51 52 import org.apache.commons.collections.CollectionUtils; 50 53 import org.apache.commons.lang.StringUtils; 51 54 import org.apache.log4j.Logger; 52 55 import org.apache.tapestry5.annotations.Property; 56 import org.apache.tapestry5.ioc.annotations.Inject; 53 57 54 58 /** … … 176 180 private boolean userAssigned; 177 181 182 @Property 183 private List<PnChargeCode> chargeCodeList; 184 185 @Property 186 private PnChargeCode chargeCode; 187 178 188 public void onActivate() { 179 189 if (net.project.security.SessionManager.getUser() == null) { … … 225 235 userAssigned = isUserHasAssignment(objectId); 226 236 237 Integer spaceId = Integer.valueOf(getUser().getCurrentSpace().getID()); 238 chargeCodeList = getPnChargeCodeService().getChargeCodeByProjectId(spaceId); 239 chargeCode = getPnChargeCodeService().getChargeCodeApliedOnTask(Integer.valueOf(objectId), spaceId); 240 if(chargeCode == null) 241 chargeCode = getPnChargeCodeService().getChargeCodeAppliedOnPersonInSpace(Integer.valueOf(SessionManager.getUser().getID()), spaceId); 227 242 } 228 243 229 244 /** 230 245 * Get the Saved/Non Saved timeWorkedDiv for blogit.js for the first time only. … … 387 402 } 388 403 404 /** 405 * To Check weather charge codes available for owning project of this assignment 406 * @return boolean 407 */ 408 public boolean isChargeCodeAvailable() { 409 return CollectionUtils.isNotEmpty(chargeCodeList); 410 } 411 412 /** 413 * To check weather charge code is assigned to this assignment. 414 * @return boolean 415 */ 416 public boolean isChargeCodeAssigned() { 417 return chargeCode != null; 418 } 389 419 } trunk/core/web/html/assignments/Timesheet.tml
r20515 r20552 227 227 <td class="table-content-estimates-right"></td> 228 228 </tr> 229 <t:if test="chargeCodeAvailable"> 230 <tr class="oldWorkForDay-content" id="charge-code-row"> 231 <t:if test="scrollTypeIsWeek"> 232 <td></td> <!-- used extra td for week type only --> 233 </t:if> 234 <td class="work-label"><t:Message value="prm.business.chargecode.label" /></td> 235 <td> 236 <t:if test="chargeCodeAssigned"> 237 <t:ComboBox id="chargeCodeList" displayField="codeName" valueField="codeId" 238 list="chargeCodeList" value="${chargeCode.codeId}" defaultOption="true" 239 defaultOptionText="prm.business.chargecode.dropdownlist.defaultoption.label" /> 240 <t:parameter name="else"> 241 <t:ComboBox id="chargeCodeList" displayField="codeName" valueField="codeId" 242 list="chargeCodeList" defaultOption="true" 243 defaultOptionText="prm.business.chargecode.dropdownlist.defaultoption.label" /> 244 </t:parameter> 245 </t:if> 246 </td> 247 <td colspan="5" class="oldWorkForDay-border"> 248 </td> 249 </tr> 250 </t:if> 229 251 </table> <!-- End of table timecard --> 230 252 trunk/core/web/src/workCapture.js
r20168 r20552 311 311 function submitTimeSheet(objectId) { 312 312 var urlParams = ''+moduleId 313 var chargeCodeId; 314 if(document.getElementById('chargeCodeList')) 315 chargeCodeId = getSelectedValue(document.getElementById('chargeCodeList')); 313 316 urlParams += typeof hiddenElement != 'undefined' ? hiddenElement : ''; 314 317 urlParams += typeof paramString != 'undefined' ? paramString : ''; 315 318 Ext.Ajax.request({ 316 319 url: JSPRootURL +'/assignments/My/Submit_Time_Sheet_Entries?module='+urlParams, 317 params: {module: moduleId, objectId: objectId },320 params: {module: moduleId, objectId: objectId, chargeCodeId: chargeCodeId}, 318 321 method: 'POST', 319 322 success: function(result, request){
