1、单个学生成绩分析Action:
/** * @功能:单个学生成绩分析 * @作者: smile * @时间:2013-1-15 下午2:23:21 * @版本:1.0 */ public class StudentScoreAnalyseAction extends AbstractAction { // 成绩单分数id private int eduScoreListId; // 成绩单id private int eduExamInfoId; // 成绩单科目 private String subjectName; // 学生id private String userid; // 学生姓名 private String userName; // 成绩单科目集合 private List<EduExam> EduExamList; // 最高分 private String maxScore; // 最低分 private String minScore; // 平均分 private String averageScore; // 子女得分 private String score; // 此次考试参加学生数 private int studentNum; // 1:总分分析 2:单个科目分析 private int flag; // 班级id private String classId; protected String go() throws Exception { ScoreManageSrevice scoreManageService = (ScoreManageSrevice) this.getBean("scoreManageSrevice"); EduExamList = scoreManageService.getSubjectByExamInfoId(eduExamInfoId); userName = java.net.URLDecoder.decode(userName, "UTF-8"); classId = scoreManageService.getClassIdByEduExamInfoId(eduExamInfoId); if (flag == 1 || flag == 3) {// 总数分析 // 统计最高分 maxScore = scoreManageService.getMaxScore(eduExamInfoId); // 统计最低分 minScore = scoreManageService.getMinScore(eduExamInfoId); // 统计子女得分 score = scoreManageService.getStudentScore(eduExamInfoId, userid); // 统计平均得分 averageScore = scoreManageService.getAverageScore(eduExamInfoId); // 统计人数 studentNum = scoreManageService.getStudentNum(eduExamInfoId); if (flag == 3) { return "success"; } return "input"; } else if (flag == 2) {// 单个科目分析 if (subjectName != null && !"".equals(subjectName)) { subjectName = java.net.URLDecoder.decode(subjectName, "UTF-8"); // 统计该科目最高分 maxScore = scoreManageService.getSubjectMaxScore(eduExamInfoId, subjectName); // 统计该科目最低分 minScore = scoreManageService.getSubjectMinScore(eduExamInfoId, subjectName); // 统计该用户userId 该科目subjectName的得分 score = scoreManageService.getSubjectStudentScore(eduExamInfoId, subjectName, userid); // 统计该科目平均分 averageScore = scoreManageService.getSubjectAverageScore(eduExamInfoId, subjectName); // 统计参加考试人数 studentNum = scoreManageService.getStudentNum(eduExamInfoId); return "success"; } } return null; } 省略get... set.... }
?2、xml配置:
<!-- 单个学生成绩分析 --> <action name="studentScoreAnalyse" class="jxq.xxt.scoremanage.action.StudentScoreAnalyseAction"> <result name="input" type="freemarker">/scoremanage/studentScoreAnalyse_index.ftl</result> <result name="success" type="json"></result> </action>
?3、页面:
$(document).ready(function(){ <!--当第一次进来页面 显示总分--> if(${flag}==1){ var chart; var chartData = [ { category:'最高分', score:'${maxScore}', color: "#FF0F00" }, { category:'最低分', score:'${minScore}', color: "#88003B" }, { category:'平均分', score:'${averageScore}', color : "#FF4D34" }, { category:'${userName}分数', score:'${score}', color : "#0081AC" } ]; AmCharts.ready(function(){ chart = new AmCharts.AmSerialChart(); chart.dataProvider = chartData; chart.categoryField = "category"; <!--the following two lines makes chart 3D--> chart.depth3D = 20; chart.angle = 30; <!--字体大小--> chart.fontSize = 13; chart.startDuration = 1; chart.columnWidth = 0.4; <!--category--> var categoryAxis = chart.categoryAxis; <!--横轴文字角度 0为水平显示 90为竖直显示 默认90--> categoryAxis.labelRotation = 0;