Subversion Repositories bacoAlunos

Compare Revisions

Ignore whitespace Rev 1913 → Rev 1919

/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();
%>