Changeset 20549

Show
Ignore:
Timestamp:
03/09/10 00:44:27 (5 months ago)
Author:
ritesh
Message:

- applying charge code to resource while inviting in project and business space.
- changes for getting spring services from base page.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/core/src/net/project/resource/Invitee.java

    r19825 r20549  
    170170    private Space space; 
    171171     
     172    private String chargeCodeId; 
     173     
    172174    /** 
    173175     * Sets this invitee's first name. 
     
    653655                } 
    654656         } 
     657 
     658        /** 
     659         * @return the chargeCodeId 
     660         */ 
     661        public String getChargeCodeId() { 
     662                return chargeCodeId; 
     663        } 
     664 
     665        /** 
     666         * @param chargeCodeId the chargeCodeId to set 
     667         */ 
     668        public void setChargeCodeId(String chargeCodeId) { 
     669                this.chargeCodeId = chargeCodeId; 
     670        } 
    655671} 
  • trunk/core/src/net/project/view/pages/base/BasePage.java

    r20356 r20549  
    2020import net.project.hibernate.service.IPnAssignmentWorkService; 
    2121import net.project.hibernate.service.IPnBusinessHasViewService; 
     22import net.project.hibernate.service.IPnBusinessSpaceService; 
     23import net.project.hibernate.service.IPnChargeCodeService; 
     24import net.project.hibernate.service.IPnObjectHasChargeCodeService; 
    2225import net.project.hibernate.service.IPnObjectNameService; 
    2326import net.project.hibernate.service.IPnPersonService; 
    2427import net.project.hibernate.service.IPnProjectSpaceService; 
     28import net.project.hibernate.service.IPnSpaceHasSpaceService; 
    2529import net.project.hibernate.service.IPnSpaceViewContextService; 
    2630import net.project.hibernate.service.IUtilService; 
     
    214218        } 
    215219         
     220        public IPnChargeCodeService getPnChargeCodeService(){ 
     221                return ServiceFactory.getInstance().getPnChargeCodeService(); 
     222        } 
     223 
     224        public IPnSpaceHasSpaceService getPnSpaceHasSpaceService(){ 
     225                return ServiceFactory.getInstance().getPnSpaceHasSpaceService(); 
     226        } 
     227 
     228        public IPnObjectHasChargeCodeService getPnObjectHasChargeCodeService(){ 
     229                return ServiceFactory.getInstance().getPnObjectHasChargeCodeService(); 
     230        } 
     231 
     232        public IPnBusinessSpaceService getPnBusinessSpaceService(){ 
     233                return ServiceFactory.getInstance().getPnBusinessSpaceService(); 
     234        } 
     235 
    216236        public String getParameter(String parameter) { 
    217237        return request.getParameter(parameter); 
  • trunk/core/src/net/project/view/pages/directory/AddResponsibility.java

    r20382 r20549  
    1717import net.project.directory.GroupWrapper; 
    1818import net.project.events.EventType; 
     19import net.project.hibernate.model.PnChargeCode; 
     20import net.project.hibernate.model.PnObjectHasChargeCode; 
    1921import net.project.hibernate.model.project_space.Teammate; 
    2022import net.project.hibernate.service.ServiceFactory; 
    21 import net.project.notification.EventCodes; 
    22 import net.project.persistence.PersistenceException; 
    2323import net.project.resource.Invitee; 
    24 import net.project.resource.Roster; 
    2524import net.project.resource.SpaceInvitationManager; 
    2625import net.project.security.SessionManager; 
     
    8786        @Property 
    8887        private int inviteeListSize; 
     88         
     89        private Integer spaceId; 
     90 
     91        @Property 
     92        private List<PnChargeCode> chargeCodeList = null; 
     93                 
     94        private List<PnObjectHasChargeCode> objectHasChargeCodeList = null; 
    8995         
    9096        /** 
     
    102108                versionNumber = StringUtils.deleteWhitespace(Version.getInstance().getAppVersion()); 
    103109                userRoles = new ArrayList<GroupWrapper>(); 
    104                  
     110                spaceId = Integer.valueOf(page.getUser().getCurrentSpace().getID()); 
     111 
     112                if(page.getUser().getCurrentSpace().getSpaceType().equals(SpaceTypes.BUSINESS) && page.getPnBusinessSpaceService().isRootBusines(spaceId)){ 
     113                        chargeCodeList = page.getPnChargeCodeService().getChargeCodeByBusinessId(spaceId); 
     114                } else if (page.getUser().getCurrentSpace().getSpaceType().equals(SpaceTypes.BUSINESS)){ 
     115                        chargeCodeList = page.getPnChargeCodeService().getRootBusinessChargeCodeBySubBusinessId(spaceId); 
     116                        objectHasChargeCodeList = page.getPnObjectHasChargeCodeService().getChargeCodeAssignedPersonFromParentBusiness(spaceId, "business"); 
     117                } else if (page.getUser().getCurrentSpace().getSpaceType().equals(SpaceTypes.PROJECT) && page.getPnProjectSpaceService().isRootProject(spaceId)){ 
     118                        chargeCodeList = page.getPnChargeCodeService().getChargeCodeByProjectId(spaceId); 
     119                        objectHasChargeCodeList = page.getPnObjectHasChargeCodeService().getChargeCodeAssignedPersonFromParentBusiness(spaceId, "project"); 
     120                } else{ 
     121                        chargeCodeList = page.getPnChargeCodeService().getChargeCodeByProjectId(spaceId); 
     122                        objectHasChargeCodeList = page.getPnObjectHasChargeCodeService().getChargeCodeAssignedPersonFromParentProject(spaceId); 
     123                } 
     124 
    105125                displayInvitiesList(); 
    106126                getAllRoleOptionList(); 
     
    156176                                        } 
    157177                                        invitee.setSpace(SessionManager.getUser().getCurrentSpace()); 
     178 
     179                                        String chargeCodeId = page.getRequestParameter("chargecode_"+invitee.getEmail()); 
     180                                        if(StringUtils.isNotEmpty(chargeCodeId)) 
     181                                                page.getPnObjectHasChargeCodeService().save(Integer.valueOf(invitee.getID()), Integer.valueOf(chargeCodeId), spaceId); 
    158182                                                 
    159183                                }catch(Exception e){ 
     
    196220                if(spaceInvitationWizard != null){ 
    197221                        net.project.resource.InviteeList inviteeList =  spaceInvitationWizard.getInviteeList(); 
    198                  
    199222                        List<Teammate> onlineTeammates = ServiceFactory.getInstance().getPnPersonService().getOnlineMembers(); 
    200223                        Iterator iterator = inviteeList.iterator(); 
     
    210233                                                        } 
    211234                                                } 
     235                                        invitee.setChargeCodeId(getInviteeDefaultChargeCodeFromParent(invitee.getID())); 
    212236                                } 
    213237                                inviteesList.add(invitee); 
     
    264288        } 
    265289         
     290        /** 
     291         * To get the invitee's charge code assigned in parent space of current space. 
     292         * if current space is project and there is not parent project then 
     293         *  charge code assigned in parent business will be returned. 
     294         * @return charge code id of invitee 
     295         */ 
     296        public String getInviteeDefaultChargeCodeFromParent(String inviteeId){ 
     297                String chargeCodeId = ""; 
     298                if(CollectionUtils.isNotEmpty(objectHasChargeCodeList)){ 
     299                        for(PnObjectHasChargeCode chargeCode : objectHasChargeCodeList){ 
     300                                if(inviteeId.equals(chargeCode.getComp_id().getObjectId().toString())){ 
     301                                        chargeCodeId = chargeCode.getPnChargeCode().getCodeId().toString(); 
     302                                        break; 
     303                                } 
     304                        } 
     305                } 
     306                return chargeCodeId; 
     307        } 
     308         
     309        public boolean isChargeCodeAvailable(){ 
     310                return CollectionUtils.isNotEmpty(chargeCodeList); 
     311        } 
    266312} 
  • trunk/core/web/html/directory/AddResponsibility.tml

    r20022 r20549  
    9393                                                                <td width="15%" class="cell-right-border table-header" style="color:gray;font-weight:bold;"><t:Message value="prm.directory.directorypage.roster.column.titles"/></td> 
    9494                                                                <td width="15%" class="cell-right-border table-header" style="color:gray;font-weight:bold;"><t:Message value="prm.directory.directorypage.roster.column.responsilities"/></td> 
     95                                                                <t:if test="chargeCodeAvailable"> 
     96                                                                        <td width="10%" class="cell-right-border table-header" style="color:gray;font-weight:bold;"><t:Message value="prm.business.chargecode.label"/></td> 
     97                                                                </t:if> 
    9598                                                                <td class="cell-right-border" align="center" nowrap="nowrap;"><t:Message value="prm.directory.directorypage.roster.column.teammember"/></td> 
    9699                                                                <t:loop source="userRoles" value="userRole"> 
     
    111114                                                                                <td><input type="text" name="msg_${invitees.email}" size="25" maxlength="100"/></td> 
    112115                                                                                <td><input type="text" name="resp_${invitees.email}" size="25" maxlength="500"/></td> 
     116                                                                                <t:if test="chargeCodeAvailable"> 
     117                                                                                        <td> 
     118                                                                                                <t:ComboBox id="chargecode_${invitees.email}" displayField="codeName"  
     119                                                                                                 valueField="codeId" list="chargeCodeList" value="${invitees.chargeCodeId}"  
     120                                                                                                 defaultOption="true" defaultOptionText="prm.business.chargecode.dropdownlist.defaultoption.label" /> 
     121                                                                                        </td> 
     122                                                                                </t:if>                                                   
    113123                                                                                <td align="center"><input type="checkbox" checked="checked" disabled="disabled"/></td> 
    114124                                                                                <t:loop source="userRoles" value="userRole" volatile="true">