package pt.estgp.estgweb.web.controllers.widgetmodel;
import org.apache.struts.action.ActionForm;
import org.json.JSONArray;
import org.json.JSONObject;
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.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Created by jorgemachado on 06/01/17.
*/
public class CoursesServicesWidgetController
extends AbstractWidgetAjaxController
{
/****************************************************************************/
/* SERVICOS WS-API
/****************************************************************************/
/**
*
* @param form
* @param request
* @param response
* @return
* @throws Throwable
*/
public JSONObject findPedagogicReport4Period
(ActionForm form,HttpServletRequest request, HttpServletResponse response
) throws 1.5.0/docs/api/java/lang/Throwable.html">Throwable {
1.5.0/docs/api/java/lang/String.html">String code = request.
getParameter("code");
1.5.0/docs/api/java/lang/String.html">String year = request.
getParameter("year");
1.5.0/docs/api/java/lang/String.html">String period = request.
getParameter("period");
IServiceManager sm = ServiceManager.
getInstance();
1.5.0/docs/api/java/lang/String.html">String json =
(1.5.0/docs/api/java/lang/String.html">String) sm.
execute(RequestUtils.
getRequester(request, response
),
"QuestionariosReportLoadReportUnidadesSalasJson",
new 5+0%2Fdocs%2Fapi+Object">Object[]{code, year, period
});
return new JSONObject
(json
);
}
public JSONObject getCourseUnitsEvaluations
(ActionForm form,HttpServletRequest request, HttpServletResponse response
) throws 1.5.0/docs/api/java/lang/Throwable.html">Throwable {
1.5.0/docs/api/java/lang/String.html">String code = request.
getParameter("code");
1.5.0/docs/api/java/lang/String.html">String year = request.
getParameter("year");
IServiceManager sm = ServiceManager.
getInstance();
1.5.0/docs/api/java/lang/String.html">String json =
(1.5.0/docs/api/java/lang/String.html">String) sm.
execute(RequestUtils.
getRequester(request, response
),
"LoadCourseEvaluationSections",
new 5+0%2Fdocs%2Fapi+Object">Object[]{code, year
});
return new JSONObject
(json
);
}
public JSONObject getCourseUnitDtpStats
(ActionForm form,HttpServletRequest request, HttpServletResponse response
) throws 1.5.0/docs/api/java/lang/Throwable.html">Throwable {
1.5.0/docs/api/java/lang/String.html">String code = request.
getParameter("code");
1.5.0/docs/api/java/lang/String.html">String year = request.
getParameter("year");
1.5.0/docs/api/java/lang/String.html">String semestre = request.
getParameter("semestre");
IServiceManager sm = ServiceManager.
getInstance();
1.5.0/docs/api/java/lang/String.html">String json =
(1.5.0/docs/api/java/lang/String.html">String) sm.
execute(RequestUtils.
getRequester(request, response
),
"LoadCourseUnitDtpStats",
new 5+0%2Fdocs%2Fapi+Object">Object[]{code, year, semestre
});
return new JSONObject
(json
);
}
public JSONObject loadPlanYearForCourseUnitCode
(ActionForm form,HttpServletRequest request, HttpServletResponse response
) throws 1.5.0/docs/api/java/lang/Throwable.html">Throwable {
1.5.0/docs/api/java/lang/String.html">String courseCode = request.
getParameter("courseCode");
1.5.0/docs/api/java/lang/String.html">String unitCode = request.
getParameter("unitCode");
1.5.0/docs/api/java/lang/String.html">String period = request.
getParameter("period");
IServiceManager sm = ServiceManager.
getInstance();
1.5.0/docs/api/java/lang/String.html">String json =
(1.5.0/docs/api/java/lang/String.html">String) sm.
execute(RequestUtils.
getRequester(request, response
),
"LoadPlanYearForCourseUnitCode",
new 5+0%2Fdocs%2Fapi+Object">Object[]{courseCode, unitCode, period
});
return new JSONObject
(json
);
}
/**
* * For Json Services
* @param form
* @param request
* @param response
* @return
* @throws Throwable
*/
public JSONObject wsListServices
(ActionForm form,HttpServletRequest request, HttpServletResponse response
) throws 1.5.0/docs/api/java/lang/Throwable.html">Throwable {
JSONObject result =
new JSONObject
();
JSONObject wsServices =
new JSONObject
();
result.
put("ws-course-services",wsServices
);
JSONObject service1 =
new JSONObject
();
service1.
put("service",
"/wsjson/api/app/ws-units-report-list");
service1.
put("name",
"getCourseUnitsEvaluations");
service1.
put("parameter1",
"code = siges code");
service1.
put("parameter3",
"year = \"201617,201718,...\"");
service1.
put("return",
"uma tabela em JSON com toda a com um array objetos do tipo CourseUnitSection");
JSONObject service2 =
new JSONObject
();
service2.
put("service",
"/wsjson/api/app/ws-course-pedagogic-results-list");
service2.
put("name",
"getPedagogicReport4Period");
service2.
put("parameter1",
"code = siges code");
service2.
put("parameter2",
"period = \"S1,S2\"");
service2.
put("parameter3",
"year = \"201617,201718,...\"");
service2.
put("return",
"uma tabela em JSON com toda a informação de reusltados do pedagogico nesse ano");
JSONObject service3 =
new JSONObject
();
service3.
put("service",
"/wsjson/api/app/ws-units-dtp-stats");
service3.
put("name",
"getCourseUnitDtpStats");
service3.
put("parameter1",
"code = siges code");
service3.
put("parameter2",
"period = \"S1,S2\"");
service3.
put("parameter3",
"year = \"201617,201718,...\"");
service3.
put("return",
"uma tabela em JSON com toda a informação de estatistica do preenchimento das pastas DTP");
JSONArray services =
new JSONArray
();
services.
put(service1
);
services.
put(service2
);
services.
put(service3
);
wsServices.
put("services",services
);
return result
;
}
/*
public static void main(String[] args) throws Throwable
{
URL url = new URL(Globals.SYSTEM_WSJSON_SERVICE_COURSE_UNITS_EVALUATION_REPORT + "?code=9119&year=201516&period=S2");
InputStream is = url.openStream();
String json = StreamsUtils.readString(is);
is.close();
JSONObject jsonObject = new JSONObject(json);
System.out.println(jsonObject.toString());
IServiceManager sm = ServiceManager.getInstance();
json = (String) sm.execute("123", "LoadCourseReportsSections", new Object[]{"9119","201516"});
System.out.println(json);
}
*/
}