/branches/v3/impl/conf/berserk/sd.xml |
---|
1107,6 → 1107,18 |
</service> |
<service> |
<name>LoadCourseUnitsBySigesCodesSemestreLastYearProgram</name> |
<implementationClass>pt.estgp.estgweb.services.courseunits.LoadCourseUnitsBySigesCodesService</implementationClass> |
<description>Load a unique unit by sigescode, semestre and course code</description> |
<isTransactional>true</isTransactional> |
<defaultMethod>loadLastYearProgram</defaultMethod> |
<filterChains> |
<chain name="Logger"/> |
<chain name="Session"/> |
</filterChains> |
</service> |
<service> |
<name>LoadCourseUnitWorks</name> |
<implementationClass>pt.estgp.estgweb.services.courseunits.CourseUnitWorkService</implementationClass> |
<description>Load course unit works</description> |
/branches/v3/impl/src/java/pt/estgp/estgweb/services/courseunits/LoadCourseUnitsBySigesCodesService.java |
---|
65,4 → 65,24 |
return null; |
return new CourseUnitView(courseUnit); |
} |
public CourseUnitView loadLastYearProgram(String code, String courseCode, String semestre, UserSession userSession) throws ServiceException { |
if(semestre.equals("S3")) |
semestre = "S1"; |
else if(semestre.equals("S4")) |
semestre = "S2"; |
else if(semestre.equals("S5")) |
semestre = "S1"; |
else if(semestre.equals("S6")) |
semestre = "S2"; |
else if(semestre.startsWith("A")) |
semestre = "A"; |
CourseUnit courseUnit = DaoFactory.getCourseUnitDaoImpl().loadBySigesCodeUniqueLastYearProgram(code, courseCode,semestre); |
if(courseUnit == null) |
return null; |
return new CourseUnitView(courseUnit); |
} |
} |
/branches/v3/impl/src/java/pt/estgp/estgweb/domain/dao/impl/CourseUnitDaoImpl.java |
---|
366,13 → 366,35 |
return null; |
} |
public CourseUnit loadBySigesCodeUniqueMostRecentProgram(String sigesCode, String courseCode, String semestre) |
{ |
List<CourseUnit> cus; |
Criteria cr = createCriteria() |
.add(eq("code", sigesCode)) |
.add(eq("courseCode", courseCode)); |
if(semestre != null) |
cr.add(eq("semestre", semestre)); |
cr.add(and(isNotNull("programStreamId"),not(eq("programStreamId","")))); |
cr.addOrder(Order.desc("importYear")).setMaxResults(1); |
cus = cr.list(); |
if(cus.size() > 0) |
return cus.get(0); |
logger.warn("Accessing unit not existent with siges code " + sigesCode + " course code: " + courseCode + " semestre: " + semestre); |
return null; |
} |
public CourseUnit loadBySigesCodeUniqueLastYear(String sigesCode, String courseCode, String semestre) |
{ |
return loadBySigesCodeUniqueMostRecent(sigesCode,courseCode,semestre); |
} |
public CourseUnit loadBySigesCodeUniqueLastYearProgram(String sigesCode, String courseCode, String semestre) |
{ |
return loadBySigesCodeUniqueMostRecentProgram(sigesCode,courseCode,semestre); |
} |
public List<CourseUnit> loadBySigesCodeUnique(String sigesCode, String courseCode, String year) |
{ |
return createCriteria() |
/branches/v3/impl/src/java/pt/estgp/estgweb/web/controllers/courseunits/CourseUnitsController.java |
---|
264,7 → 264,7 |
IServiceManager sm = ServiceManager.getInstance(); |
String[] names = new String[]{}; |
Object[] args = new Object[]{unitCode,courseCode,semestre}; |
CourseUnitView cUV = (CourseUnitView) sm.execute(RequestUtils.getRequester(request, response), "LoadCourseUnitsBySigesCodesSemestreLastYear", args, names); |
CourseUnitView cUV = (CourseUnitView) sm.execute(RequestUtils.getRequester(request, response), "LoadCourseUnitsBySigesCodesSemestreLastYearProgram", args, names); |
return loadCourseUnitAndForward(cUF,cUV.getId() ,true,false, mapping, request, response); |
} |
296,7 → 296,7 |
IServiceManager sm = ServiceManager.getInstance(); |
String[] names = new String[]{}; |
Object[] args = new Object[]{unitCode,courseCode,semestre}; |
CourseUnitView cUV = (CourseUnitView) sm.execute(RequestUtils.getRequester(request, response), "LoadCourseUnitsBySigesCodesSemestreLastYear", args, names); |
CourseUnitView cUV = (CourseUnitView) sm.execute(RequestUtils.getRequester(request, response), "LoadCourseUnitsBySigesCodesSemestreLastYearProgram", args, names); |
ActionRedirect forward = new ActionRedirect(); |
forward.setPath("/repositoryStream/" + cUV.getProgramStreamId()); |