Created
May 29, 2012 03:12
-
-
Save jinweijie/2822314 to your computer and use it in GitHub Desktop.
code_good
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Constructor | |
*/ | |
public ControllerStudentOCLevel(){ | |
//1. validate input | |
this.CurrentStudentId = ApexPages.currentPage().getParameters().get('studentId'); | |
if( this.CurrentStudentId == null || this.CurrentStudentId.trim() == '') | |
throw new InvalidParameterValueException('studentId','Missing parameter studentId.'); | |
//2. create model | |
this.MStudentOCLevel = new ModelStudentOCLevel(); | |
Contact currentStudent = ServiceStudent.getStudentByContactId(this.CurrentStudentId); | |
if( currentStudent == null ) | |
throw new ExEtownStudentNotExistException('Cannot find student with id:' + this.CurrentStudentId); | |
this.MStudentOCLevel.CurrentStudent = currentStudent; | |
intialOCLevelList(); | |
getHIMATestLevel(currentStudent.EtownMemberId__c); | |
} | |
private void getHIMATestLevel(decimal etownMemberId){ | |
system.debug('[EXEC] getHIMATestLevel, etownmemberId=' + etownmemberId); | |
String partnerCode = ServiceStudent.getPartnerCodeValueByStudentId(this.CurrentStudentId); | |
this.HIMATestLevel = ServiceStudent.getStudentHIMATest(etownMemberId, partnerCode); | |
this.HIMATestLevel = convertEtownHIMATestLevelToSFLevel(this.HIMATestLevel, partnerCode); | |
} | |
private String convertEtownHIMATestLevelToSFLevel(String testLevel, String partnerCode){ | |
system.debug('[EXEC] convertEtownHIMATestLevelToSFLevel, testLevel=' + testLevel); | |
String levelCode; | |
if (partnerCode == Constants.PARTNER_CODE_MINI){ | |
if (testLevel == Constants.LEVEL_0A){ | |
levelCode = Constants.LEVEL_ONE; | |
} | |
else if (testLevel == Constants.LEVEL_0B){ | |
levelCode = Constants.LEVEL_TWO; | |
} | |
else{ | |
levelCode = String.valueOf(integer.valueOf(testLevel) + 2); | |
} | |
} | |
else{ | |
throw new ExPartnerCodeNotFoundException('Cannot find partner code:' + partnercode); | |
} | |
return levelCode; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment