/branches/grupo6/impl/conf/WEB-INF/struts/struts-courses.xml |
---|
164,7 → 164,7 |
<action path="/user/courseReportTools" forward="page.course.report.tools"/> |
<action path="/user/loadCourseReportTools" forward="page.course.report.tools.load"/> |
<action path="/user/editCourseReport" forward="page.course.report.edit"/> |
<action path="/user/editCourseReport" forward="/user/courseReport.do?dispatch=startEdit"/> |
<action path="/user/courseReport" |
type="pt.estgp.estgweb.web.controllers.courses.CoursesServicesController" |
173,6 → 173,7 |
parameter="dispatch" |
validate="true" |
input="page.widget.json.fail.validations"> |
<forward name="edit" path="page.course.report.edit"/> |
</action> |
/branches/grupo6/impl/src/java/pt/estgp/estgweb/services/courses/CourseReportServices.java |
---|
9,6 → 9,7 |
import org.json.JSONObject; |
import pt.estgp.estgweb.domain.*; |
import pt.estgp.estgweb.domain.dao.DaoFactory; |
import pt.estgp.estgweb.domain.dao.impl.CourseYearDaoImpl; |
import pt.estgp.estgweb.filters.chains.ResourceAccessControlEnum; |
import pt.estgp.estgweb.services.courses.coursereport.CourseReportUtils; |
import pt.estgp.estgweb.services.courses.coursereport.documentmodel.*; |
480,7 → 481,20 |
return reportDocument.toJson(); |
} |
public String loadStartEdit(String courseCode, String year) throws JSONException, IOException { |
CourseYear courseYear = DaoFactory.getCourseYearDaoImpl().findCourseYear(courseCode, year).get(0); |
String courseReportDocument = courseYear.getCourseReport(); |
if (courseYear.getCourseReport() == null){ |
courseReportDocument = new CourseReportServices().createNewCourseReportDocument(courseCode, year).toString(); |
} |
return courseReportDocument; |
} |
/****************************************************************************/ |
/* |
/branches/grupo6/impl/src/java/pt/estgp/estgweb/services/courses/coursereport/documentmodel/learningresults/components/GlobalLearningResultsChartYearImg.java |
---|
38,10 → 38,6 |
*/ |
public class GlobalLearningResultsChartYearImg extends ImageComponent |
{ |
public static final int WIDTH = 300 * 4; |
public static final int HEIGHT = 200 * 4; |
/** |
* |
* @param results |
63,7 → 59,20 |
data.addValue(new Double((int)(temp.getAprovados1720Percent())),"Aprovados 17-20",""+temp.ano + "º Ano"); |
} |
for(UnitsLearningResultYear temp: unitsLearningResultYearList) { |
data.addValue(new Double((int)(temp.getAprovados1013Percent())),"Aprovados 10-13","2º Ano"); |
data.addValue(new Double((int)(temp.getAprovados1416Percent())),"Aprovados 14-16","2º Ano"); |
data.addValue(new Double((int)(temp.getAprovados1720Percent())),"Aprovados 17-20","2º Ano"); |
} |
for(UnitsLearningResultYear temp: unitsLearningResultYearList) { |
data.addValue(new Double((int)(temp.getAprovados1013Percent())),"Aprovados 10-13","3º Ano"); |
data.addValue(new Double((int)(temp.getAprovados1416Percent())),"Aprovados 14-16","3º Ano"); |
data.addValue(new Double(32),"Aprovados 17-20","3º Ano"); |
} |
JFreeChart chart = ChartFactory.createStackedBarChart(null,null,null,data, PlotOrientation.VERTICAL,true,false,false); |
CategoryPlot plot = chart.getCategoryPlot(); |
100,7 → 109,9 |
chart.getLegend().setItemFont(new Font("Helvetica", Font.PLAIN,30)); |
chart.getLegend().setFrame(BlockBorder.NONE); |
BufferedImage image = chart.createBufferedImage(WIDTH, HEIGHT); |
BufferedImage image = chart.createBufferedImage( 300*4, 200*4); |
String pathGraficoTiposAlunos = Globals.TMP_DIR + java.io.File.separator + tempName; |
java.io.File output = new java.io.File(pathGraficoTiposAlunos); |
ImageIO.write(image, "png", new FileOutputStream(output)); |
112,7 → 123,6 |
fileUploaded.setContentType(MimeTypeGuesser.getInstance().guessMimeType(output)); |
fileUploaded.setFileSize(output.length()); |
fileUploaded.setExtension("png"); |
return fileUploaded; |
} |
/branches/grupo6/impl/src/java/pt/estgp/estgweb/services/courses/coursereport/documentmodel/learningresults/components/LearningResultsChartSem.java |
---|
1,5 → 1,6 |
package pt.estgp.estgweb.services.courses.coursereport.documentmodel.learningresults.components; |
import org.apache.commons.fileupload.FileUpload; |
import pt.estgp.estgweb.utils.documentBuilder.ImageComponent; |
/** |
24,4 → 25,6 |
public void setSemesterCode(String semesterCode) { |
this.semesterCode = semesterCode; |
} |
} |
/branches/grupo6/impl/src/java/pt/estgp/estgweb/domain/dao/impl/CourseDaoImpl.java |
---|
39,7 → 39,8 |
public CourseImpl findCourseByCode(String code) |
{ |
return (CourseImpl) createCriteria().add(eq("code", code)).uniqueResult(); |
return (CourseImpl) createCriteria() |
.add(eq("code", code)).uniqueResult(); |
} |
public List<Course> findValidateRole(String role) |
/branches/grupo6/impl/src/java/pt/estgp/estgweb/web/controllers/courses/CoursesServicesController.java |
---|
1,13 → 1,21 |
package pt.estgp.estgweb.web.controllers.courses; |
import jomm.dao.impl.AbstractDao; |
import org.apache.struts.action.ActionForm; |
import org.apache.struts.action.ActionForward; |
import org.apache.struts.action.ActionMapping; |
import org.json.JSONObject; |
import pt.estgp.estgweb.domain.CourseImpl; |
import pt.estgp.estgweb.domain.CourseYear; |
import pt.estgp.estgweb.domain.dao.DaoFactory; |
import pt.estgp.estgweb.services.courses.CourseReportServices; |
import pt.estgp.estgweb.services.courses.coursereport.documentmodel.CourseReportDocument; |
import pt.estgp.estgweb.web.controllers.utils.AbstractWidgetAjaxController; |
import pt.estgp.estgweb.web.utils.RequestUtils; |
import pt.utl.ist.berserk.logic.serviceManager.IServiceManager; |
import pt.utl.ist.berserk.logic.serviceManager.ServiceManager; |
import javax.servlet.ServletException; |
import javax.servlet.http.HttpServletRequest; |
import javax.servlet.http.HttpServletResponse; |
29,6 → 37,49 |
* @throws Throwable |
*/ |
public ActionForward startEdit( ActionMapping mapping, |
ActionForm form, |
HttpServletRequest request, |
HttpServletResponse response) |
throws Throwable, ServletException{ |
/* //String courseReportDocument = request.getParameter("courseReportDocument"); |
String courseCode = request.getParameter("courseCode"); |
String year = request.getParameter("year"); |
IServiceManager sm = ServiceManager.getInstance(); |
String json = (String) sm.execute(RequestUtils.getRequester(request, response), |
"loadStartEdit", |
new Object[]{courseReportDocument});*/ |
String courseCode = request.getParameter("courseCode"); |
String year = request.getParameter("year"); |
AbstractDao.getCurrentSession().beginTransaction(); |
CourseImpl courseImpl = DaoFactory.getCourseDaoImpl().findCourseByCode(courseCode); |
request.setAttribute("course", courseImpl); |
CourseYear courseYear = DaoFactory.getCourseYearDaoImpl().findCourseYear(courseCode, year).get(0); |
CourseReportDocument courseReport; |
if (courseYear.getCourseReport() == null){ |
courseReport = new CourseReportServices().createNewCourseReportDocument(courseCode, year); |
courseYear.setCourseReport(courseReport.toJson()); |
} |
else |
{ |
courseReport = CourseReportDocument.fromJson(courseYear.getCourseReport()); |
} |
String courseReportJson = courseReport.toJson(); |
request.setAttribute("courseDocumentJson", courseReportJson); |
request.setAttribute("courseDocument", courseReport); |
AbstractDao.getCurrentSession().getTransaction().commit(); |
return mapping.findForward("edit"); |
} |
public JSONObject generateGlobalLearningResultsChartImg(ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Throwable { |
String courseReportDocument = request.getParameter("courseReportDocument"); |
/branches/grupo6/impl/src/web/user/courses/courseReportEdit.jsp |
---|
91,25 → 91,7 |
} |
</script> |
<% |
String courseCode = request.getParameter("courseCode"); |
String year = request.getParameter("year"); |
AbstractDao.getCurrentSession().beginTransaction(); |
CourseImpl courseImpl = DaoFactory.getCourseDaoImpl().findCourseByCode(courseCode); |
request.setAttribute("course", courseImpl); |
CourseReportDocument courseReport = null; |
try { |
courseReport = new CourseReportServices().createNewCourseReportDocument(courseCode, year); |
} catch (Throwable e) { |
System.out.println(e); |
e.printStackTrace(); |
} |
String courseReportJson = courseReport.toJson(); |
request.setAttribute("courseDocumentJson", courseReportJson); |
request.setAttribute("courseDocument", courseReport); |
%> |
<%--<a href="javascript:demoFromHTML()" class="button">Run Code</a>--%> |
<div class="container-fluid"> |
165,7 → 147,7 |
courseReportApp.controller('courseReportAppController', function ($scope) { |
$scope.docAppSelector = "#courseReportApp"; |
$scope.report = <%=courseReportJson%> |
$scope.report = ${courseDocumentJson} |
$scope.resize = function (evt, ui, comp) { |
//console.log (evt,ui); |
338,6 → 320,3 |
</div> |
<!--container-fluid--> |
<% |
AbstractDao.getCurrentSession().getTransaction().commit(); |
%> |