Commit 782f81b0ffeaa2f6bfdf217b85e00975a055c9c8
1 parent
956a996a
1.增加未知学生的判断
2.修改excel导出逻辑
Showing
2 changed files
with
882 additions
and
712 deletions
src/com/fh/controller/sunvote/paper/PaperController.java
@@ -51,98 +51,105 @@ import com.fh.util.ObjectExcelView; | @@ -51,98 +51,105 @@ import com.fh.util.ObjectExcelView; | ||
51 | import com.fh.util.ObjectExcelView2; | 51 | import com.fh.util.ObjectExcelView2; |
52 | import com.fh.util.PageData; | 52 | import com.fh.util.PageData; |
53 | 53 | ||
54 | -/** | ||
55 | - * 说明:试卷 | ||
56 | - * 创建时间:2018-05-17 | 54 | +/** |
55 | + * 说明:试卷 创建时间:2018-05-17 | ||
57 | */ | 56 | */ |
58 | @Controller | 57 | @Controller |
59 | -@RequestMapping(value="/paper") | 58 | +@RequestMapping(value = "/paper") |
60 | public class PaperController extends BaseController { | 59 | public class PaperController extends BaseController { |
61 | - | ||
62 | - String menuUrl = "paper/list.do"; //菜单地址(权限用) | ||
63 | - @Resource(name="paperService") | 60 | + |
61 | + String menuUrl = "paper/list.do"; // 菜单地址(权限用) | ||
62 | + @Resource(name = "paperService") | ||
64 | private PaperManager paperService; | 63 | private PaperManager paperService; |
65 | - | ||
66 | - @Resource(name="testpaperService") | 64 | + |
65 | + @Resource(name = "testpaperService") | ||
67 | private TestPaperManager testpaperService; | 66 | private TestPaperManager testpaperService; |
68 | - | ||
69 | - @Resource(name="testpaperinfoService") | 67 | + |
68 | + @Resource(name = "testpaperinfoService") | ||
70 | private TestPaperInfoManager testpaperinfoService; | 69 | private TestPaperInfoManager testpaperinfoService; |
71 | - | ||
72 | - @Resource(name="studentService") | 70 | + |
71 | + @Resource(name = "studentService") | ||
73 | private StudentManager stundentService; | 72 | private StudentManager stundentService; |
74 | - | ||
75 | - @Resource(name="paperquestionService") | 73 | + |
74 | + @Resource(name = "paperquestionService") | ||
76 | private PaperQuestionManager paperquestionService; | 75 | private PaperQuestionManager paperquestionService; |
77 | - | ||
78 | - @Resource(name="questionService") | 76 | + |
77 | + @Resource(name = "questionService") | ||
79 | private QuestionManager questionService; | 78 | private QuestionManager questionService; |
80 | - | 79 | + |
81 | @Resource(name = "v1Service") | 80 | @Resource(name = "v1Service") |
82 | - private V1Manager v1Service ; | ||
83 | - | ||
84 | - @Resource(name="schoolgradesubjectService") | 81 | + private V1Manager v1Service; |
82 | + | ||
83 | + @Resource(name = "schoolgradesubjectService") | ||
85 | private SchoolGradeSubjectManager schoolgradesubjectService; | 84 | private SchoolGradeSubjectManager schoolgradesubjectService; |
86 | - | ||
87 | - @Resource(name="pagetemplateService") | 85 | + |
86 | + @Resource(name = "pagetemplateService") | ||
88 | private PageTemplateManager pagetemplateService; | 87 | private PageTemplateManager pagetemplateService; |
89 | - | ||
90 | - @Resource(name="studenttestService") | 88 | + |
89 | + @Resource(name = "studenttestService") | ||
91 | private StudentTestManager studenttestService; | 90 | private StudentTestManager studenttestService; |
92 | - | ||
93 | - @Resource(name="sclassService") | 91 | + |
92 | + @Resource(name = "sclassService") | ||
94 | private SClassManager sclassService; | 93 | private SClassManager sclassService; |
95 | - | ||
96 | - /**保存 | 94 | + |
95 | + /** | ||
96 | + * 保存 | ||
97 | + * | ||
97 | * @param | 98 | * @param |
98 | * @throws Exception | 99 | * @throws Exception |
99 | */ | 100 | */ |
100 | - @RequestMapping(value="/save") | ||
101 | - public ModelAndView save() throws Exception{ | ||
102 | - logBefore(logger, Jurisdiction.getUsername()+"新增Paper"); | ||
103 | - if(!Jurisdiction.buttonJurisdiction(menuUrl, "add")){return null;} //校验权限 | 101 | + @RequestMapping(value = "/save") |
102 | + public ModelAndView save() throws Exception { | ||
103 | + logBefore(logger, Jurisdiction.getUsername() + "新增Paper"); | ||
104 | + if (!Jurisdiction.buttonJurisdiction(menuUrl, "add")) { | ||
105 | + return null; | ||
106 | + } // 校验权限 | ||
104 | ModelAndView mv = this.getModelAndView(); | 107 | ModelAndView mv = this.getModelAndView(); |
105 | PageData pd = new PageData(); | 108 | PageData pd = new PageData(); |
106 | pd = this.getPageData(); | 109 | pd = this.getPageData(); |
107 | - pd.put("PAPER_ID", this.get32UUID()); //主键 | 110 | + pd.put("PAPER_ID", this.get32UUID()); // 主键 |
108 | paperService.save(pd); | 111 | paperService.save(pd); |
109 | - mv.addObject("msg","success"); | 112 | + mv.addObject("msg", "success"); |
110 | mv.setViewName("save_result"); | 113 | mv.setViewName("save_result"); |
111 | return mv; | 114 | return mv; |
112 | } | 115 | } |
113 | - | ||
114 | - /**保存 | 116 | + |
117 | + /** | ||
118 | + * 保存 | ||
119 | + * | ||
115 | * @param | 120 | * @param |
116 | * @throws Exception | 121 | * @throws Exception |
117 | */ | 122 | */ |
118 | - @RequestMapping(value="/newpaper") | ||
119 | - public ModelAndView newPaper() throws Exception{ | ||
120 | - logBefore(logger, Jurisdiction.getUsername()+"新增Paper"); | 123 | + @RequestMapping(value = "/newpaper") |
124 | + public ModelAndView newPaper() throws Exception { | ||
125 | + logBefore(logger, Jurisdiction.getUsername() + "新增Paper"); | ||
121 | ModelAndView mv = this.getModelAndView(); | 126 | ModelAndView mv = this.getModelAndView(); |
122 | - | ||
123 | - mv.addObject("msg","success"); | 127 | + |
128 | + mv.addObject("msg", "success"); | ||
124 | mv.setViewName("save_result"); | 129 | mv.setViewName("save_result"); |
125 | return mv; | 130 | return mv; |
126 | } | 131 | } |
127 | - | ||
128 | - /**删除 | 132 | + |
133 | + /** | ||
134 | + * 删除 | ||
135 | + * | ||
129 | * @param out | 136 | * @param out |
130 | * @throws Exception | 137 | * @throws Exception |
131 | */ | 138 | */ |
132 | - @RequestMapping(value="/delete") | ||
133 | - public void delete(PrintWriter out) throws Exception{ | ||
134 | - logBefore(logger, Jurisdiction.getUsername()+"删除Paper"); | 139 | + @RequestMapping(value = "/delete") |
140 | + public void delete(PrintWriter out) throws Exception { | ||
141 | + logBefore(logger, Jurisdiction.getUsername() + "删除Paper"); | ||
135 | PageData pd = new PageData(); | 142 | PageData pd = new PageData(); |
136 | pd = this.getPageData(); | 143 | pd = this.getPageData(); |
137 | - String[] ArrayDATA_IDS = new String[]{pd.getString("PAPER_ID")}; | ||
138 | - if(pd.getString("QINGSONGKAO") != null){ | 144 | + String[] ArrayDATA_IDS = new String[] { pd.getString("PAPER_ID") }; |
145 | + if (pd.getString("QINGSONGKAO") != null) { | ||
139 | List<PageData> list = paperquestionService.listAll(pd); | 146 | List<PageData> list = paperquestionService.listAll(pd); |
140 | String[] qids = new String[list.size()]; | 147 | String[] qids = new String[list.size()]; |
141 | - int i = 0 ; | ||
142 | - for(PageData ptd : list){ | 148 | + int i = 0; |
149 | + for (PageData ptd : list) { | ||
143 | qids[i++] = ptd.getString("QUESTION_ID"); | 150 | qids[i++] = ptd.getString("QUESTION_ID"); |
144 | } | 151 | } |
145 | - if(qids.length > 0){ | 152 | + if (qids.length > 0) { |
146 | questionService.deleteAll(qids); | 153 | questionService.deleteAll(qids); |
147 | } | 154 | } |
148 | } | 155 | } |
@@ -151,77 +158,93 @@ public class PaperController extends BaseController { | @@ -151,77 +158,93 @@ public class PaperController extends BaseController { | ||
151 | out.write("success"); | 158 | out.write("success"); |
152 | out.close(); | 159 | out.close(); |
153 | } | 160 | } |
154 | - | ||
155 | - /**修改 | 161 | + |
162 | + /** | ||
163 | + * 修改 | ||
164 | + * | ||
156 | * @param | 165 | * @param |
157 | * @throws Exception | 166 | * @throws Exception |
158 | */ | 167 | */ |
159 | - @RequestMapping(value="/edit") | ||
160 | - public ModelAndView edit() throws Exception{ | ||
161 | - logBefore(logger, Jurisdiction.getUsername()+"修改Paper"); | ||
162 | - if(!Jurisdiction.buttonJurisdiction(menuUrl, "edit")){return null;} //校验权限 | 168 | + @RequestMapping(value = "/edit") |
169 | + public ModelAndView edit() throws Exception { | ||
170 | + logBefore(logger, Jurisdiction.getUsername() + "修改Paper"); | ||
171 | + if (!Jurisdiction.buttonJurisdiction(menuUrl, "edit")) { | ||
172 | + return null; | ||
173 | + } // 校验权限 | ||
163 | ModelAndView mv = this.getModelAndView(); | 174 | ModelAndView mv = this.getModelAndView(); |
164 | PageData pd = new PageData(); | 175 | PageData pd = new PageData(); |
165 | pd = this.getPageData(); | 176 | pd = this.getPageData(); |
166 | paperService.edit(pd); | 177 | paperService.edit(pd); |
167 | - mv.addObject("msg","success"); | 178 | + mv.addObject("msg", "success"); |
168 | mv.setViewName("save_result"); | 179 | mv.setViewName("save_result"); |
169 | return mv; | 180 | return mv; |
170 | } | 181 | } |
171 | - | ||
172 | - /**列表 | 182 | + |
183 | + /** | ||
184 | + * 列表 | ||
185 | + * | ||
173 | * @param page | 186 | * @param page |
174 | * @throws Exception | 187 | * @throws Exception |
175 | */ | 188 | */ |
176 | - @RequestMapping(value="/list") | ||
177 | - public ModelAndView list(Page page) throws Exception{ | ||
178 | - logBefore(logger, Jurisdiction.getUsername()+"列表Paper"); | ||
179 | - //if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;} //校验权限(无权查看时页面会有提示,如果不注释掉这句代码就无法进入列表页面,所以根据情况是否加入本句代码) | 189 | + @RequestMapping(value = "/list") |
190 | + public ModelAndView list(Page page) throws Exception { | ||
191 | + logBefore(logger, Jurisdiction.getUsername() + "列表Paper"); | ||
192 | + // if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;} | ||
193 | + // //校验权限(无权查看时页面会有提示,如果不注释掉这句代码就无法进入列表页面,所以根据情况是否加入本句代码) | ||
180 | ModelAndView mv = this.getModelAndView(); | 194 | ModelAndView mv = this.getModelAndView(); |
181 | PageData pd = new PageData(); | 195 | PageData pd = new PageData(); |
182 | pd = this.getPageData(); | 196 | pd = this.getPageData(); |
183 | - String keywords = pd.getString("keywords"); //关键词检索条件 | ||
184 | - if(null != keywords && !"".equals(keywords)){ | 197 | + String keywords = pd.getString("keywords"); // 关键词检索条件 |
198 | + if (null != keywords && !"".equals(keywords)) { | ||
185 | pd.put("keywords", keywords.trim()); | 199 | pd.put("keywords", keywords.trim()); |
186 | } | 200 | } |
187 | page.setPd(pd); | 201 | page.setPd(pd); |
188 | - List<PageData> varList = paperService.list(page); //列出Paper列表 | 202 | + List<PageData> varList = paperService.list(page); // 列出Paper列表 |
189 | mv.setViewName("sunvote/paper/paper_list"); | 203 | mv.setViewName("sunvote/paper/paper_list"); |
190 | mv.addObject("varList", varList); | 204 | mv.addObject("varList", varList); |
191 | mv.addObject("pd", pd); | 205 | mv.addObject("pd", pd); |
192 | - mv.addObject("QX",Jurisdiction.getHC()); //按钮权限 | 206 | + mv.addObject("QX", Jurisdiction.getHC()); // 按钮权限 |
193 | return mv; | 207 | return mv; |
194 | } | 208 | } |
195 | - | ||
196 | - @RequestMapping(value="/paperRep") | ||
197 | - public ModelAndView paperRep() throws Exception{ | 209 | + |
210 | + @RequestMapping(value = "/paperRep") | ||
211 | + public ModelAndView paperRep() throws Exception { | ||
198 | ModelAndView mv = this.getModelAndView(); | 212 | ModelAndView mv = this.getModelAndView(); |
199 | PageData pd = new PageData(); | 213 | PageData pd = new PageData(); |
200 | List<PageData> templist = new ArrayList<PageData>(); | 214 | List<PageData> templist = new ArrayList<PageData>(); |
201 | PageData saveData = new PageData(); | 215 | PageData saveData = new PageData(); |
202 | - DecimalFormat decimalFormat=new DecimalFormat("0.00"); | 216 | + DecimalFormat decimalFormat = new DecimalFormat("0.00"); |
203 | String total_score = ""; | 217 | String total_score = ""; |
204 | ResponseGson<PageData> res = new ResponseGson(); | 218 | ResponseGson<PageData> res = new ResponseGson(); |
205 | pd = this.getPageData(); | 219 | pd = this.getPageData(); |
206 | - if(pd.containsKey("PAPER_ID")){ | 220 | + if (pd.containsKey("PAPER_ID")) { |
207 | List<PageData> list = testpaperService.listAll(pd); | 221 | List<PageData> list = testpaperService.listAll(pd); |
208 | total_score = list.get(0).getString("TOTAL_SCORE"); | 222 | total_score = list.get(0).getString("TOTAL_SCORE"); |
209 | pd.put("testpaperlist", list); | 223 | pd.put("testpaperlist", list); |
210 | - Integer you_sum = 0; //优秀总人数 | ||
211 | - Integer liang_sum = 0; //良好总人数 | ||
212 | - Integer jige_sum = 0; //及格总人数 | ||
213 | - Integer difen_sum = 0; //低分总人数 | ||
214 | - Integer num_sum =0; //年级总人数 | ||
215 | - Float avg_sum = (float)0; //平均分的和 | 224 | + Integer you_sum = 0; // 优秀总人数 |
225 | + Integer liang_sum = 0; // 良好总人数 | ||
226 | + Integer jige_sum = 0; // 及格总人数 | ||
227 | + Integer difen_sum = 0; // 低分总人数 | ||
228 | + Integer num_sum = 0; // 年级总人数 | ||
229 | + Float avg_sum = (float) 0; // 平均分的和 | ||
216 | String testpaperList = ""; | 230 | String testpaperList = ""; |
217 | - | ||
218 | - for(int i = 0 ;i<list.size();i++){ | 231 | + |
232 | + for (int i = 0; i < list.size(); i++) { | ||
219 | PageData data = new PageData(); | 233 | PageData data = new PageData(); |
220 | - | 234 | + |
221 | PageData pdtemp = new PageData(); | 235 | PageData pdtemp = new PageData(); |
222 | - pdtemp.put("CLASS_ID", list.get(i).get("SCLASS_ID").toString()); | ||
223 | - List<PageData> studentlist = stundentService.listAllClass(pdtemp); | ||
224 | - testpaperList+=list.get(i).get("TESTPAPER_ID").toString()+","; | 236 | + if (!list.get(i).getString("SCLASS_ID").isEmpty()) { |
237 | + pdtemp.put("CLASS_ID", list.get(i).get("SCLASS_ID") | ||
238 | + .toString()); | ||
239 | + } else { | ||
240 | + pdtemp.put("CLASS_ID", ""); | ||
241 | + | ||
242 | + } | ||
243 | + | ||
244 | + List<PageData> studentlist = stundentService | ||
245 | + .listAllClass(pdtemp); | ||
246 | + testpaperList += list.get(i).get("TESTPAPER_ID").toString() | ||
247 | + + ","; | ||
225 | data.put("testpaper_id", list.get(i).get("TESTPAPER_ID")); | 248 | data.put("testpaper_id", list.get(i).get("TESTPAPER_ID")); |
226 | data.put("student_num", studentlist.size()); | 249 | data.put("student_num", studentlist.size()); |
227 | data.put("creat_time", list.get(i).get("CREATE_DATE")); | 250 | data.put("creat_time", list.get(i).get("CREATE_DATE")); |
@@ -229,89 +252,91 @@ public class PaperController extends BaseController { | @@ -229,89 +252,91 @@ public class PaperController extends BaseController { | ||
229 | data.put("class_id", list.get(i).get("SCLASS_ID")); | 252 | data.put("class_id", list.get(i).get("SCLASS_ID")); |
230 | pdtemp.put("TEST_ID", list.get(i).get("TESTPAPER_ID")); | 253 | pdtemp.put("TEST_ID", list.get(i).get("TESTPAPER_ID")); |
231 | List<PageData> l = studenttestService.listAll(pdtemp); | 254 | List<PageData> l = studenttestService.listAll(pdtemp); |
232 | - | 255 | + |
233 | Integer you = 0; | 256 | Integer you = 0; |
234 | Integer liang = 0; | 257 | Integer liang = 0; |
235 | Integer jige = 0; | 258 | Integer jige = 0; |
236 | Integer difen = 0; | 259 | Integer difen = 0; |
237 | - Float total = Float.valueOf(list.get(i).get("TOTAL_SCORE").toString()); | ||
238 | - | ||
239 | - for(int j = 0; j<l.size();j++){ | ||
240 | - Float score = Float.valueOf(l.get(j).get("SCORE").toString()); | ||
241 | - if(total != 0){ | ||
242 | - if(score/total>=0.8){ | 260 | + Float total = Float.valueOf(list.get(i).get("TOTAL_SCORE") |
261 | + .toString()); | ||
262 | + | ||
263 | + for (int j = 0; j < l.size(); j++) { | ||
264 | + Float score = Float.valueOf(l.get(j).get("SCORE") | ||
265 | + .toString()); | ||
266 | + if (total != 0) { | ||
267 | + if (score / total >= 0.8) { | ||
243 | you++; | 268 | you++; |
244 | - }else if(score/total>=0.7){ | 269 | + } else if (score / total >= 0.7) { |
245 | liang++; | 270 | liang++; |
246 | - }else if(score/total>=0.6){ | 271 | + } else if (score / total >= 0.6) { |
247 | jige++; | 272 | jige++; |
248 | - }else if(score/total<0.3){ | 273 | + } else if (score / total < 0.3) { |
249 | difen++; | 274 | difen++; |
250 | } | 275 | } |
251 | } | 276 | } |
252 | - | 277 | + |
253 | } | 278 | } |
254 | - you_sum+=you; | 279 | + you_sum += you; |
255 | liang_sum += liang; | 280 | liang_sum += liang; |
256 | - jige_sum+=jige; | ||
257 | - difen_sum+=difen; | ||
258 | - num_sum+=studentlist.size(); | ||
259 | - avg_sum+=Float.valueOf(list.get(i).get("AVG_SCORE").toString()); | ||
260 | - | ||
261 | - data.put("you",you); | ||
262 | - data.put("liang",liang); | ||
263 | - data.put("jige",jige); | ||
264 | - data.put("difen",difen); | ||
265 | - | 281 | + jige_sum += jige; |
282 | + difen_sum += difen; | ||
283 | + num_sum += studentlist.size(); | ||
284 | + avg_sum += Float.valueOf(list.get(i).get("AVG_SCORE") | ||
285 | + .toString()); | ||
286 | + | ||
287 | + data.put("you", you); | ||
288 | + data.put("liang", liang); | ||
289 | + data.put("jige", jige); | ||
290 | + data.put("difen", difen); | ||
291 | + | ||
266 | templist.add(data); | 292 | templist.add(data); |
267 | } | 293 | } |
268 | - if(list.size()>0){ | ||
269 | - PageData dataTemp = new PageData(); | ||
270 | - dataTemp.put("testpaper_id", ""); | ||
271 | - dataTemp.put("student_num", num_sum); | ||
272 | - dataTemp.put("creat_time", ""); | ||
273 | - dataTemp.put("avg_score", decimalFormat.format(avg_sum/list.size())); | ||
274 | - dataTemp.put("class_id", ""); | ||
275 | - dataTemp.put("you",you_sum); | ||
276 | - dataTemp.put("liang",liang_sum); | ||
277 | - dataTemp.put("jige",jige_sum); | ||
278 | - dataTemp.put("difen",difen_sum); | ||
279 | - dataTemp.put("testpaperList", testpaperList); | ||
280 | - templist.add(dataTemp); | 294 | + if (list.size() > 0) { |
295 | + PageData dataTemp = new PageData(); | ||
296 | + dataTemp.put("testpaper_id", ""); | ||
297 | + dataTemp.put("student_num", num_sum); | ||
298 | + dataTemp.put("creat_time", ""); | ||
299 | + dataTemp.put("avg_score", | ||
300 | + decimalFormat.format(avg_sum / list.size())); | ||
301 | + dataTemp.put("class_id", ""); | ||
302 | + dataTemp.put("you", you_sum); | ||
303 | + dataTemp.put("liang", liang_sum); | ||
304 | + dataTemp.put("jige", jige_sum); | ||
305 | + dataTemp.put("difen", difen_sum); | ||
306 | + dataTemp.put("testpaperList", testpaperList); | ||
307 | + templist.add(dataTemp); | ||
281 | } | 308 | } |
282 | } | 309 | } |
283 | - | ||
284 | - | ||
285 | - | 310 | + |
286 | saveData.put("list", templist); | 311 | saveData.put("list", templist); |
287 | pd.put("TOTAL_SCORE", total_score); | 312 | pd.put("TOTAL_SCORE", total_score); |
288 | mv.setViewName("sunvote/paper/test_list1"); | 313 | mv.setViewName("sunvote/paper/test_list1"); |
289 | mv.addObject("varList", templist); | 314 | mv.addObject("varList", templist); |
290 | - mv.addObject("pd",pd); | 315 | + mv.addObject("pd", pd); |
291 | res.setData(saveData); | 316 | res.setData(saveData); |
292 | return mv; | 317 | return mv; |
293 | } | 318 | } |
294 | - | ||
295 | - @RequestMapping(value="/export1") | ||
296 | - public ModelAndView export1() throws Exception{ | 319 | + |
320 | + @RequestMapping(value = "/export1") | ||
321 | + public ModelAndView export1() throws Exception { | ||
297 | ModelAndView mv = this.getModelAndView(); | 322 | ModelAndView mv = this.getModelAndView(); |
298 | PageData pd = new PageData(); | 323 | PageData pd = new PageData(); |
299 | List<PageData> templist = new ArrayList<PageData>(); | 324 | List<PageData> templist = new ArrayList<PageData>(); |
300 | PageData saveData = new PageData(); | 325 | PageData saveData = new PageData(); |
301 | - | ||
302 | - | 326 | + |
303 | ResponseGson<PageData> res = new ResponseGson(); | 327 | ResponseGson<PageData> res = new ResponseGson(); |
304 | pd = this.getPageData(); | 328 | pd = this.getPageData(); |
305 | - if(pd.containsKey("PAPER_ID")){ | 329 | + if (pd.containsKey("PAPER_ID")) { |
306 | List<PageData> list = testpaperService.listAll(pd); | 330 | List<PageData> list = testpaperService.listAll(pd); |
307 | - | 331 | + |
308 | pd.put("testpaperlist", list); | 332 | pd.put("testpaperlist", list); |
309 | - for(int i = 0 ;i<list.size();i++){ | 333 | + for (int i = 0; i < list.size(); i++) { |
310 | PageData data = new PageData(); | 334 | PageData data = new PageData(); |
311 | - | 335 | + |
312 | PageData pdtemp = new PageData(); | 336 | PageData pdtemp = new PageData(); |
313 | pdtemp.put("CLASS_ID", list.get(i).get("SCLASS_ID").toString()); | 337 | pdtemp.put("CLASS_ID", list.get(i).get("SCLASS_ID").toString()); |
314 | - List<PageData> studentlist = stundentService.listAllClass(pdtemp); | 338 | + List<PageData> studentlist = stundentService |
339 | + .listAllClass(pdtemp); | ||
315 | data.put("testpaper_id", list.get(i).get("TESTPAPER_ID")); | 340 | data.put("testpaper_id", list.get(i).get("TESTPAPER_ID")); |
316 | data.put("student_num", studentlist.size()); | 341 | data.put("student_num", studentlist.size()); |
317 | data.put("creat_time", list.get(i).get("CREATE_DATE")); | 342 | data.put("creat_time", list.get(i).get("CREATE_DATE")); |
@@ -319,957 +344,1088 @@ public class PaperController extends BaseController { | @@ -319,957 +344,1088 @@ public class PaperController extends BaseController { | ||
319 | data.put("class_id", list.get(i).get("SCLASS_ID")); | 344 | data.put("class_id", list.get(i).get("SCLASS_ID")); |
320 | pdtemp.put("TEST_ID", list.get(i).get("TESTPAPER_ID")); | 345 | pdtemp.put("TEST_ID", list.get(i).get("TESTPAPER_ID")); |
321 | List<PageData> l = studenttestService.listAll(pdtemp); | 346 | List<PageData> l = studenttestService.listAll(pdtemp); |
322 | - | 347 | + |
323 | Integer you = 0; | 348 | Integer you = 0; |
324 | Integer liang = 0; | 349 | Integer liang = 0; |
325 | Integer jige = 0; | 350 | Integer jige = 0; |
326 | Integer difen = 0; | 351 | Integer difen = 0; |
327 | - Float total = Float.valueOf(list.get(i).get("TOTAL_SCORE").toString()); | ||
328 | - | ||
329 | - for(int j = 0; j<l.size();j++){ | ||
330 | - Float score = Float.valueOf(l.get(j).get("SCORE").toString()); | ||
331 | - if(total != 0){ | ||
332 | - if(score/total>=0.8){ | 352 | + Float total = Float.valueOf(list.get(i).get("TOTAL_SCORE") |
353 | + .toString()); | ||
354 | + | ||
355 | + for (int j = 0; j < l.size(); j++) { | ||
356 | + Float score = Float.valueOf(l.get(j).get("SCORE") | ||
357 | + .toString()); | ||
358 | + if (total != 0) { | ||
359 | + if (score / total >= 0.8) { | ||
333 | you++; | 360 | you++; |
334 | - }else if(score/total>=0.7){ | 361 | + } else if (score / total >= 0.7) { |
335 | liang++; | 362 | liang++; |
336 | - }else if(score/total>=0.6){ | 363 | + } else if (score / total >= 0.6) { |
337 | jige++; | 364 | jige++; |
338 | - }else if(score/total<0.3){ | 365 | + } else if (score / total < 0.3) { |
339 | difen++; | 366 | difen++; |
340 | } | 367 | } |
341 | } | 368 | } |
342 | - | 369 | + |
343 | } | 370 | } |
344 | - | ||
345 | - data.put("you",you); | ||
346 | - data.put("liang",liang); | ||
347 | - data.put("jige",jige); | ||
348 | - data.put("difen",difen); | ||
349 | - | 371 | + |
372 | + data.put("you", you); | ||
373 | + data.put("liang", liang); | ||
374 | + data.put("jige", jige); | ||
375 | + data.put("difen", difen); | ||
376 | + | ||
350 | templist.add(data); | 377 | templist.add(data); |
351 | } | 378 | } |
352 | } | 379 | } |
353 | 380 | ||
354 | - Map<String,Object> dataMap = new HashMap<String,Object>(); | 381 | + Map<String, Object> dataMap = new HashMap<String, Object>(); |
355 | List<String> titles = new ArrayList<String>(); | 382 | List<String> titles = new ArrayList<String>(); |
356 | - titles.add("序号"); //1 | ||
357 | - titles.add("班级名称"); //2 | ||
358 | - titles.add("考试时间"); //3 | ||
359 | - titles.add("平均分"); //4 | ||
360 | - titles.add("班级总人数"); //5 | ||
361 | - titles.add("优秀人数"); //6 | ||
362 | - titles.add("优秀率"); //7 | ||
363 | - titles.add("良好人数"); //8 | ||
364 | - titles.add("良好率"); //9 | ||
365 | - titles.add("及格人数"); //10 | ||
366 | - titles.add("及格率"); //11 | ||
367 | - titles.add("低分人数"); //12 | ||
368 | - titles.add("低分率"); //13 | 383 | + titles.add("序号"); // 1 |
384 | + titles.add("班级名称"); // 2 | ||
385 | + titles.add("考试时间"); // 3 | ||
386 | + titles.add("平均分"); // 4 | ||
387 | + titles.add("班级总人数"); // 5 | ||
388 | + titles.add("优秀人数"); // 6 | ||
389 | + titles.add("优秀率"); // 7 | ||
390 | + titles.add("良好人数"); // 8 | ||
391 | + titles.add("良好率"); // 9 | ||
392 | + titles.add("及格人数"); // 10 | ||
393 | + titles.add("及格率"); // 11 | ||
394 | + titles.add("低分人数"); // 12 | ||
395 | + titles.add("低分率"); // 13 | ||
369 | dataMap.put("titles", titles); | 396 | dataMap.put("titles", titles); |
370 | List<PageData> varOList = templist; | 397 | List<PageData> varOList = templist; |
371 | List<PageData> varList = new ArrayList<PageData>(); | 398 | List<PageData> varList = new ArrayList<PageData>(); |
372 | - DecimalFormat decimalFormat=new DecimalFormat("0.00"); | ||
373 | - for(int i=0;i<varOList.size();i++){ | 399 | + DecimalFormat decimalFormat = new DecimalFormat("0.00"); |
400 | + for (int i = 0; i < varOList.size(); i++) { | ||
374 | PageData vpd = new PageData(); | 401 | PageData vpd = new PageData(); |
375 | vpd.put("ID", varOList.get(i).getString("class_id")); | 402 | vpd.put("ID", varOList.get(i).getString("class_id")); |
376 | PageData c = sclassService.findById(vpd); | 403 | PageData c = sclassService.findById(vpd); |
377 | vpd.remove("ID"); | 404 | vpd.remove("ID"); |
378 | - | 405 | + |
379 | Integer you = Integer.valueOf(varOList.get(i).getString("you")); | 406 | Integer you = Integer.valueOf(varOList.get(i).getString("you")); |
380 | Integer liang = Integer.valueOf(varOList.get(i).getString("liang")); | 407 | Integer liang = Integer.valueOf(varOList.get(i).getString("liang")); |
381 | Integer jige = Integer.valueOf(varOList.get(i).getString("jige")); | 408 | Integer jige = Integer.valueOf(varOList.get(i).getString("jige")); |
382 | Integer difen = Integer.valueOf(varOList.get(i).getString("difen")); | 409 | Integer difen = Integer.valueOf(varOList.get(i).getString("difen")); |
383 | - Integer student_num = Integer.valueOf(varOList.get(i).getString("student_num")); | ||
384 | - | ||
385 | - | ||
386 | - vpd.put("var1", i+1); //1 | ||
387 | - vpd.put("var2", c.getString("CLASS_NAME")); //2 | ||
388 | - vpd.put("var3", varOList.get(i).getString("creat_time")); //3 | ||
389 | - vpd.put("var4", varOList.get(i).getString("avg_score")); //4 | ||
390 | - vpd.put("var5", student_num); //5 | ||
391 | - vpd.put("var6", you); //6 | ||
392 | - vpd.put("var7", student_num==0?0:decimalFormat.format(you*100.0/student_num)+"%"); //7 | ||
393 | - vpd.put("var8", liang); //8 | ||
394 | - vpd.put("var9", student_num==0?0:decimalFormat.format(liang*100.0/student_num)+"%"); //9 | ||
395 | - vpd.put("var10", jige); //10 | ||
396 | - vpd.put("var11", student_num==0?0:decimalFormat.format(jige*100.0/student_num)+"%"); //11 | ||
397 | - vpd.put("var12", difen); //12 | ||
398 | - vpd.put("var13", student_num==0?0:decimalFormat.format(difen*100.0/student_num)+"%"); //13 | 410 | + Integer student_num = Integer.valueOf(varOList.get(i).getString( |
411 | + "student_num")); | ||
412 | + | ||
413 | + vpd.put("var1", i + 1); // 1 | ||
414 | + vpd.put("var2", c.getString("CLASS_NAME")); // 2 | ||
415 | + vpd.put("var3", varOList.get(i).getString("creat_time")); // 3 | ||
416 | + vpd.put("var4", varOList.get(i).getString("avg_score")); // 4 | ||
417 | + vpd.put("var5", student_num); // 5 | ||
418 | + vpd.put("var6", you); // 6 | ||
419 | + vpd.put("var7", | ||
420 | + student_num == 0 ? 0 : decimalFormat.format(you * 100.0 | ||
421 | + / student_num) | ||
422 | + + "%"); // 7 | ||
423 | + vpd.put("var8", liang); // 8 | ||
424 | + vpd.put("var9", | ||
425 | + student_num == 0 ? 0 : decimalFormat.format(liang * 100.0 | ||
426 | + / student_num) | ||
427 | + + "%"); // 9 | ||
428 | + vpd.put("var10", jige); // 10 | ||
429 | + vpd.put("var11", | ||
430 | + student_num == 0 ? 0 : decimalFormat.format(jige * 100.0 | ||
431 | + / student_num) | ||
432 | + + "%"); // 11 | ||
433 | + vpd.put("var12", difen); // 12 | ||
434 | + vpd.put("var13", | ||
435 | + student_num == 0 ? 0 : decimalFormat.format(difen * 100.0 | ||
436 | + / student_num) | ||
437 | + + "%"); // 13 | ||
399 | varList.add(vpd); | 438 | varList.add(vpd); |
400 | } | 439 | } |
401 | dataMap.put("varList", varList); | 440 | dataMap.put("varList", varList); |
402 | ObjectExcelView erv = new ObjectExcelView(); | 441 | ObjectExcelView erv = new ObjectExcelView(); |
403 | - mv = new ModelAndView(erv,dataMap); | 442 | + mv = new ModelAndView(erv, dataMap); |
404 | return mv; | 443 | return mv; |
405 | } | 444 | } |
406 | - @RequestMapping(value="/paperRep2") | ||
407 | - public ModelAndView paperRep2() throws Exception{ | 445 | + |
446 | + @RequestMapping(value = "/paperRep2") | ||
447 | + public ModelAndView paperRep2() throws Exception { | ||
408 | ModelAndView mv = this.getModelAndView(); | 448 | ModelAndView mv = this.getModelAndView(); |
409 | PageData pd = new PageData(); | 449 | PageData pd = new PageData(); |
410 | List<PageData> templist = new ArrayList<PageData>(); | 450 | List<PageData> templist = new ArrayList<PageData>(); |
411 | PageData saveData = new PageData(); | 451 | PageData saveData = new PageData(); |
412 | - | 452 | + |
413 | ResponseGson<PageData> res = new ResponseGson(); | 453 | ResponseGson<PageData> res = new ResponseGson(); |
414 | pd = this.getPageData(); | 454 | pd = this.getPageData(); |
415 | - if(pd.containsKey("PAPER_ID")){ | 455 | + if (pd.containsKey("PAPER_ID")) { |
416 | List<PageData> list = paperquestionService.listAll(pd); | 456 | List<PageData> list = paperquestionService.listAll(pd); |
417 | List<PageData> test = new ArrayList<PageData>(); | 457 | List<PageData> test = new ArrayList<PageData>(); |
418 | int onum[] = new int[list.size()]; | 458 | int onum[] = new int[list.size()]; |
419 | - | ||
420 | - for(int i = 0;i<list.size();i++){ | 459 | + |
460 | + for (int i = 0; i < list.size(); i++) { | ||
421 | PageData temp = new PageData(); | 461 | PageData temp = new PageData(); |
422 | String questionid = list.get(i).get("QUESTION_ID").toString(); | 462 | String questionid = list.get(i).get("QUESTION_ID").toString(); |
423 | - | ||
424 | - if(list.get(i).get("NO_NAME")==null||list.get(i).get("NO_NAME").toString().isEmpty()){ | 463 | + |
464 | + if (list.get(i).get("NO_NAME") == null | ||
465 | + || list.get(i).get("NO_NAME").toString().isEmpty()) { | ||
425 | continue; | 466 | continue; |
426 | } | 467 | } |
427 | - Float que_score = Float.valueOf(list.get(i).get("SCORE").toString()); | 468 | + Float que_score = Float.valueOf(list.get(i).get("SCORE") |
469 | + .toString()); | ||
428 | temp.put("QUESTION_ID", questionid); | 470 | temp.put("QUESTION_ID", questionid); |
429 | PageData question = questionService.findById(temp); | 471 | PageData question = questionService.findById(temp); |
430 | - temp.put("ANSWER",question.get("ANSWER").toString()); | 472 | + temp.put("ANSWER", question.get("ANSWER").toString()); |
431 | temp.put("QUESTION_RANK", list.get(i).get("RANK").toString()); | 473 | temp.put("QUESTION_RANK", list.get(i).get("RANK").toString()); |
432 | temp.put("QUESTION_SCORE", que_score); | 474 | temp.put("QUESTION_SCORE", que_score); |
433 | - | 475 | + |
434 | PageData que = questionService.findById(temp); | 476 | PageData que = questionService.findById(temp); |
435 | Integer option_num = 0; | 477 | Integer option_num = 0; |
436 | - if(!que.get("OPTION_NUM").toString().isEmpty()){ | ||
437 | - option_num = Integer.valueOf(que.get("OPTION_NUM").toString()); | ||
438 | - onum[i]=option_num; | 478 | + if (!que.get("OPTION_NUM").toString().isEmpty()) { |
479 | + option_num = Integer.valueOf(que.get("OPTION_NUM") | ||
480 | + .toString()); | ||
481 | + onum[i] = option_num; | ||
439 | } | 482 | } |
440 | String tpList = pd.get("TESTPAPER_ID").toString(); | 483 | String tpList = pd.get("TESTPAPER_ID").toString(); |
441 | String tpListArray[] = tpList.split(","); | 484 | String tpListArray[] = tpList.split(","); |
442 | - | 485 | + |
443 | temp.put("TEST_ID", tpListArray); | 486 | temp.put("TEST_ID", tpListArray); |
444 | - | ||
445 | - List<PageData> queInfo = testpaperinfoService.listTestPaperQuestionIDinfo(temp); | ||
446 | - int answer[] = new int[option_num+1]; | 487 | + |
488 | + List<PageData> queInfo = testpaperinfoService | ||
489 | + .listTestPaperQuestionIDinfo(temp); | ||
490 | + int answer[] = new int[option_num + 1]; | ||
447 | int right = 0; | 491 | int right = 0; |
448 | int lost = 0; | 492 | int lost = 0; |
449 | - for(int j=0;j<queInfo.size();j++){ | ||
450 | - if(queInfo.get(j).get("ANSWER").toString().isEmpty()){ | 493 | + for (int j = 0; j < queInfo.size(); j++) { |
494 | + if (queInfo.get(j).get("ANSWER").toString().isEmpty()) { | ||
451 | lost++; | 495 | lost++; |
452 | } | 496 | } |
453 | - if(queInfo.get(j).get("RIGHT")!=null&&!queInfo.get(j).get("RIGHT").toString().isEmpty()){ | ||
454 | - if(queInfo.get(j).get("RIGHT").toString().equals("1")){ | 497 | + if (queInfo.get(j).get("RIGHT") != null |
498 | + && !queInfo.get(j).get("RIGHT").toString() | ||
499 | + .isEmpty()) { | ||
500 | + if (queInfo.get(j).get("RIGHT").toString().equals("1")) { | ||
455 | right++; | 501 | right++; |
456 | } | 502 | } |
457 | } | 503 | } |
458 | - if(queInfo.get(j).get("ANSWER")!=null&&!queInfo.get(j).get("ANSWER").toString().isEmpty()){ | ||
459 | - for(int o=0;o<option_num;o++ ){ | ||
460 | - String s = String.valueOf((char)(65+o)) ; | ||
461 | - if(queInfo.get(j).get("ANSWER").toString().indexOf(s)>-1){ | 504 | + if (queInfo.get(j).get("ANSWER") != null |
505 | + && !queInfo.get(j).get("ANSWER").toString() | ||
506 | + .isEmpty()) { | ||
507 | + for (int o = 0; o < option_num; o++) { | ||
508 | + String s = String.valueOf((char) (65 + o)); | ||
509 | + if (queInfo.get(j).get("ANSWER").toString() | ||
510 | + .indexOf(s) > -1) { | ||
462 | answer[o]++; | 511 | answer[o]++; |
463 | } | 512 | } |
464 | - } | ||
465 | - } | ||
466 | - else{ | 513 | + } |
514 | + } else { | ||
467 | answer[option_num]++; | 515 | answer[option_num]++; |
468 | } | 516 | } |
469 | } | 517 | } |
470 | temp.put("RIGHTNUM", right); | 518 | temp.put("RIGHTNUM", right); |
471 | - temp.put("ANSWERNUM",(queInfo.size()-lost)); | ||
472 | - temp.put("ANSWERNUM2",queInfo.size()); | 519 | + temp.put("ANSWERNUM", (queInfo.size() - lost)); |
520 | + temp.put("ANSWERNUM2", queInfo.size()); | ||
473 | temp.put("optin_info", answer); | 521 | temp.put("optin_info", answer); |
474 | templist.add(temp); | 522 | templist.add(temp); |
475 | } | 523 | } |
476 | Arrays.sort(onum); | 524 | Arrays.sort(onum); |
477 | - int max = onum[onum.length-1]; | ||
478 | - pd.put("MAX",max); | ||
479 | - } | ||
480 | - | ||
481 | - Collections.sort(templist,new Comparator<PageData>(){ | 525 | + int max = onum[onum.length - 1]; |
526 | + pd.put("MAX", max); | ||
527 | + } | ||
528 | + | ||
529 | + Collections.sort(templist, new Comparator<PageData>() { | ||
482 | 530 | ||
483 | @Override | 531 | @Override |
484 | public int compare(PageData o1, PageData o2) { | 532 | public int compare(PageData o1, PageData o2) { |
485 | - Integer o1GetScore = Integer.valueOf(o1.getString("QUESTION_RANK")); | ||
486 | - Integer o2GetScore = Integer.valueOf(o2.getString("QUESTION_RANK")); | 533 | + Integer o1GetScore = Integer.valueOf(o1 |
534 | + .getString("QUESTION_RANK")); | ||
535 | + Integer o2GetScore = Integer.valueOf(o2 | ||
536 | + .getString("QUESTION_RANK")); | ||
487 | return o1GetScore.compareTo(o2GetScore); | 537 | return o1GetScore.compareTo(o2GetScore); |
488 | } | 538 | } |
489 | - | 539 | + |
490 | }); | 540 | }); |
491 | mv.setViewName("sunvote/paper/test_list2"); | 541 | mv.setViewName("sunvote/paper/test_list2"); |
492 | mv.addObject("varList", templist); | 542 | mv.addObject("varList", templist); |
493 | - mv.addObject("pd",pd); | 543 | + mv.addObject("pd", pd); |
494 | res.setData(saveData); | 544 | res.setData(saveData); |
495 | return mv; | 545 | return mv; |
496 | } | 546 | } |
497 | - | ||
498 | - @RequestMapping(value="/export2") | ||
499 | - public ModelAndView export2() throws Exception{ | 547 | + |
548 | + @RequestMapping(value = "/export2") | ||
549 | + public ModelAndView export2() throws Exception { | ||
500 | ModelAndView mv = this.getModelAndView(); | 550 | ModelAndView mv = this.getModelAndView(); |
501 | PageData pd = new PageData(); | 551 | PageData pd = new PageData(); |
502 | List<PageData> templist = new ArrayList<PageData>(); | 552 | List<PageData> templist = new ArrayList<PageData>(); |
503 | PageData saveData = new PageData(); | 553 | PageData saveData = new PageData(); |
504 | - | 554 | + |
505 | ResponseGson<PageData> res = new ResponseGson(); | 555 | ResponseGson<PageData> res = new ResponseGson(); |
506 | pd = this.getPageData(); | 556 | pd = this.getPageData(); |
507 | - if(pd.containsKey("PAPER_ID")){ | 557 | + if (pd.containsKey("PAPER_ID")) { |
508 | List<PageData> list = paperquestionService.listAll(pd); | 558 | List<PageData> list = paperquestionService.listAll(pd); |
509 | List<PageData> test = new ArrayList<PageData>(); | 559 | List<PageData> test = new ArrayList<PageData>(); |
510 | int onum[] = new int[list.size()]; | 560 | int onum[] = new int[list.size()]; |
511 | - | ||
512 | - for(int i = 0;i<list.size();i++){ | 561 | + |
562 | + for (int i = 0; i < list.size(); i++) { | ||
513 | PageData temp = new PageData(); | 563 | PageData temp = new PageData(); |
514 | String questionid = list.get(i).get("QUESTION_ID").toString(); | 564 | String questionid = list.get(i).get("QUESTION_ID").toString(); |
515 | - | ||
516 | - if(list.get(i).get("NO_NAME")==null||list.get(i).get("NO_NAME").toString().isEmpty()){ | 565 | + |
566 | + if (list.get(i).get("NO_NAME") == null | ||
567 | + || list.get(i).get("NO_NAME").toString().isEmpty()) { | ||
517 | continue; | 568 | continue; |
518 | } | 569 | } |
519 | - Float que_score = Float.valueOf(list.get(i).get("SCORE").toString()); | 570 | + Float que_score = Float.valueOf(list.get(i).get("SCORE") |
571 | + .toString()); | ||
520 | temp.put("QUESTION_ID", questionid); | 572 | temp.put("QUESTION_ID", questionid); |
521 | PageData question = questionService.findById(temp); | 573 | PageData question = questionService.findById(temp); |
522 | - temp.put("ANSWER",question.get("ANSWER").toString()); | 574 | + temp.put("ANSWER", question.get("ANSWER").toString()); |
523 | temp.put("QUESTION_RANK", list.get(i).get("RANK").toString()); | 575 | temp.put("QUESTION_RANK", list.get(i).get("RANK").toString()); |
524 | temp.put("QUESTION_SCORE", que_score); | 576 | temp.put("QUESTION_SCORE", que_score); |
525 | - | 577 | + |
526 | PageData que = questionService.findById(temp); | 578 | PageData que = questionService.findById(temp); |
527 | Integer option_num = 0; | 579 | Integer option_num = 0; |
528 | - if(!que.get("OPTION_NUM").toString().isEmpty()){ | ||
529 | - option_num = Integer.valueOf(que.get("OPTION_NUM").toString()); | ||
530 | - onum[i]=option_num; | 580 | + if (!que.get("OPTION_NUM").toString().isEmpty()) { |
581 | + option_num = Integer.valueOf(que.get("OPTION_NUM") | ||
582 | + .toString()); | ||
583 | + onum[i] = option_num; | ||
531 | } | 584 | } |
532 | - | 585 | + |
533 | String tpList = pd.get("TESTPAPER_ID").toString(); | 586 | String tpList = pd.get("TESTPAPER_ID").toString(); |
534 | String tpListArray[] = tpList.split(","); | 587 | String tpListArray[] = tpList.split(","); |
535 | - | 588 | + |
536 | temp.put("TEST_ID", tpListArray); | 589 | temp.put("TEST_ID", tpListArray); |
537 | - List<PageData> queInfo = testpaperinfoService.listTestPaperQuestionIDinfo(temp); | ||
538 | - int answer[] = new int[option_num+1]; | 590 | + List<PageData> queInfo = testpaperinfoService |
591 | + .listTestPaperQuestionIDinfo(temp); | ||
592 | + int answer[] = new int[option_num + 1]; | ||
539 | int right = 0; | 593 | int right = 0; |
540 | int lost = 0; | 594 | int lost = 0; |
541 | - for(int j=0;j<queInfo.size();j++){ | ||
542 | - if(queInfo.get(j).get("ANSWER").toString().isEmpty()){ | 595 | + for (int j = 0; j < queInfo.size(); j++) { |
596 | + if (queInfo.get(j).get("ANSWER").toString().isEmpty()) { | ||
543 | lost++; | 597 | lost++; |
544 | } | 598 | } |
545 | - if(queInfo.get(j).get("RIGHT")!=null&&!queInfo.get(j).get("RIGHT").toString().isEmpty()){ | ||
546 | - if(queInfo.get(j).get("RIGHT").toString().equals("1")){ | 599 | + if (queInfo.get(j).get("RIGHT") != null |
600 | + && !queInfo.get(j).get("RIGHT").toString() | ||
601 | + .isEmpty()) { | ||
602 | + if (queInfo.get(j).get("RIGHT").toString().equals("1")) { | ||
547 | right++; | 603 | right++; |
548 | } | 604 | } |
549 | } | 605 | } |
550 | - if(queInfo.get(j).get("ANSWER")!=null&&!queInfo.get(j).get("ANSWER").toString().isEmpty()){ | ||
551 | - for(int o=0;o<option_num;o++ ){ | ||
552 | - String s = String.valueOf((char)(65+o)) ; | ||
553 | - if(queInfo.get(j).get("ANSWER").toString().equals(s)){ | 606 | + if (queInfo.get(j).get("ANSWER") != null |
607 | + && !queInfo.get(j).get("ANSWER").toString() | ||
608 | + .isEmpty()) { | ||
609 | + for (int o = 0; o < option_num; o++) { | ||
610 | + String s = String.valueOf((char) (65 + o)); | ||
611 | + if (queInfo.get(j).get("ANSWER").toString() | ||
612 | + .equals(s)) { | ||
554 | answer[o]++; | 613 | answer[o]++; |
555 | } | 614 | } |
556 | - } | ||
557 | - } | ||
558 | - else{ | 615 | + } |
616 | + } else { | ||
559 | answer[option_num]++; | 617 | answer[option_num]++; |
560 | } | 618 | } |
561 | } | 619 | } |
562 | temp.put("RIGHTNUM", right); | 620 | temp.put("RIGHTNUM", right); |
563 | - temp.put("ANSWERNUM",(queInfo.size()-lost)); | ||
564 | - temp.put("ANSWERNUM2",queInfo.size()); | 621 | + temp.put("ANSWERNUM", (queInfo.size() - lost)); |
622 | + temp.put("ANSWERNUM2", queInfo.size()); | ||
565 | temp.put("optin_info", JSONUtils.toJSONString(answer)); | 623 | temp.put("optin_info", JSONUtils.toJSONString(answer)); |
566 | templist.add(temp); | 624 | templist.add(temp); |
567 | } | 625 | } |
568 | Arrays.sort(onum); | 626 | Arrays.sort(onum); |
569 | - int max = onum[onum.length-1]; | ||
570 | - pd.put("MAX",max); | ||
571 | - } | ||
572 | - | ||
573 | - Collections.sort(templist,new Comparator<PageData>(){ | 627 | + int max = onum[onum.length - 1]; |
628 | + pd.put("MAX", max); | ||
629 | + } | ||
630 | + | ||
631 | + Collections.sort(templist, new Comparator<PageData>() { | ||
574 | 632 | ||
575 | @Override | 633 | @Override |
576 | public int compare(PageData o1, PageData o2) { | 634 | public int compare(PageData o1, PageData o2) { |
577 | - Integer o1GetScore = Integer.valueOf(o1.getString("QUESTION_RANK")); | ||
578 | - Integer o2GetScore = Integer.valueOf(o2.getString("QUESTION_RANK")); | 635 | + Integer o1GetScore = Integer.valueOf(o1 |
636 | + .getString("QUESTION_RANK")); | ||
637 | + Integer o2GetScore = Integer.valueOf(o2 | ||
638 | + .getString("QUESTION_RANK")); | ||
579 | return o1GetScore.compareTo(o2GetScore); | 639 | return o1GetScore.compareTo(o2GetScore); |
580 | } | 640 | } |
581 | - | 641 | + |
582 | }); | 642 | }); |
583 | - | ||
584 | 643 | ||
585 | -// mv.addObject("varList", templist); | ||
586 | -// mv.addObject("pd",pd); | ||
587 | - | ||
588 | - Map<String,Object> dataMap = new HashMap<String,Object>(); | 644 | + // mv.addObject("varList", templist); |
645 | + // mv.addObject("pd",pd); | ||
646 | + | ||
647 | + Map<String, Object> dataMap = new HashMap<String, Object>(); | ||
589 | List<String> titles = new ArrayList<String>(); | 648 | List<String> titles = new ArrayList<String>(); |
590 | - titles.add("题号"); //1 | ||
591 | - titles.add("答案"); //2 | ||
592 | - titles.add("答题人数"); //3 | ||
593 | - titles.add("正确人数"); //4 | ||
594 | - titles.add("正确率"); //5 | ||
595 | - titles.add("满分值"); //6 | ||
596 | - titles.add("平均分"); //7 | 649 | + titles.add("题号"); // 1 |
650 | + titles.add("答案"); // 2 | ||
651 | + titles.add("答题人数"); // 3 | ||
652 | + titles.add("正确人数"); // 4 | ||
653 | + titles.add("正确率"); // 5 | ||
654 | + titles.add("满分值"); // 6 | ||
655 | + titles.add("平均分"); // 7 | ||
597 | Integer max = Integer.valueOf(pd.getString("MAX")); | 656 | Integer max = Integer.valueOf(pd.getString("MAX")); |
598 | - for(int x = 0 ;x<max;x++){ | ||
599 | - titles.add("选"+Myelfun.jstlInt2Char(x+1)+"人数"); //8 | ||
600 | - titles.add("选"+Myelfun.jstlInt2Char(x+1)+"比例"); //9 | 657 | + for (int x = 0; x < max; x++) { |
658 | + titles.add("选" + Myelfun.jstlInt2Char(x + 1) + "人数"); // 8 | ||
659 | + titles.add("选" + Myelfun.jstlInt2Char(x + 1) + "比例"); // 9 | ||
601 | } | 660 | } |
602 | - titles.add("漏选人数"); //10 | ||
603 | - titles.add("漏选比例"); //11 | 661 | + titles.add("漏选人数"); // 10 |
662 | + titles.add("漏选比例"); // 11 | ||
604 | dataMap.put("titles", titles); | 663 | dataMap.put("titles", titles); |
605 | List<PageData> varOList = templist; | 664 | List<PageData> varOList = templist; |
606 | List<PageData> varList = new ArrayList<PageData>(); | 665 | List<PageData> varList = new ArrayList<PageData>(); |
607 | - DecimalFormat decimalFormat=new DecimalFormat("0.00"); | ||
608 | - for(int i=0;i<varOList.size();i++){ | 666 | + DecimalFormat decimalFormat = new DecimalFormat("0.00"); |
667 | + for (int i = 0; i < varOList.size(); i++) { | ||
609 | PageData vpd = new PageData(); | 668 | PageData vpd = new PageData(); |
610 | - | ||
611 | - vpd.put("var1", varOList.get(i).getString("QUESTION_RANK")); //1 | ||
612 | - vpd.put("var2", varOList.get(i).getString("ANSWER")); //2 | ||
613 | - vpd.put("var3", varOList.get(i).getString("ANSWERNUM")); //3 | ||
614 | - vpd.put("var4", varOList.get(i).getString("RIGHTNUM")); //4 | ||
615 | - vpd.put("var5", decimalFormat.format(Double.valueOf(varOList.get(i).getString("RIGHTNUM"))*100/Double.valueOf(varOList.get(i).getString("ANSWERNUM")))+"%"); //5 | ||
616 | - vpd.put("var6", varOList.get(i).getString("QUESTION_SCORE")); //6 | ||
617 | - vpd.put("var7", decimalFormat.format(Double.valueOf(varOList.get(i).getString("RIGHTNUM"))*Double.valueOf(varOList.get(i).getString("QUESTION_SCORE"))/Double.valueOf(varOList.get(i).getString("ANSWERNUM")))); //7 | 669 | + |
670 | + vpd.put("var1", varOList.get(i).getString("QUESTION_RANK")); // 1 | ||
671 | + vpd.put("var2", varOList.get(i).getString("ANSWER")); // 2 | ||
672 | + vpd.put("var3", varOList.get(i).getString("ANSWERNUM")); // 3 | ||
673 | + vpd.put("var4", varOList.get(i).getString("RIGHTNUM")); // 4 | ||
674 | + vpd.put("var5", | ||
675 | + decimalFormat.format(Double.valueOf(varOList.get(i) | ||
676 | + .getString("RIGHTNUM")) | ||
677 | + * 100 | ||
678 | + / Double.valueOf(varOList.get(i).getString( | ||
679 | + "ANSWERNUM"))) | ||
680 | + + "%"); // 5 | ||
681 | + vpd.put("var6", varOList.get(i).getString("QUESTION_SCORE")); // 6 | ||
682 | + vpd.put("var7", decimalFormat.format(Double.valueOf(varOList.get(i) | ||
683 | + .getString("RIGHTNUM")) | ||
684 | + * Double.valueOf(varOList.get(i) | ||
685 | + .getString("QUESTION_SCORE")) | ||
686 | + / Double.valueOf(varOList.get(i).getString("ANSWERNUM")))); // 7 | ||
618 | String s = varOList.get(i).get("optin_info").toString(); | 687 | String s = varOList.get(i).get("optin_info").toString(); |
619 | s = s.replace("[", ""); | 688 | s = s.replace("[", ""); |
620 | s = s.replace("]", ""); | 689 | s = s.replace("]", ""); |
621 | - List<String> optoin = Arrays.asList(s.split(",")); | ||
622 | - for(int y = 0 ;y<max;y++){ | 690 | + List<String> optoin = Arrays.asList(s.split(",")); |
691 | + for (int y = 0; y < max; y++) { | ||
623 | Integer nn = 0; | 692 | Integer nn = 0; |
624 | - if((optoin.size()-1)>y){ | 693 | + if ((optoin.size() - 1) > y) { |
625 | nn = Integer.valueOf(optoin.get(y)); | 694 | nn = Integer.valueOf(optoin.get(y)); |
626 | - }else{ | 695 | + } else { |
627 | break; | 696 | break; |
628 | } | 697 | } |
629 | - vpd.put("var"+(8+2*y), nn); //8 | ||
630 | - vpd.put("var"+(9+2*y), decimalFormat.format(nn*100/Double.valueOf(varOList.get(i).getString("ANSWERNUM")))+"%"); //9 | ||
631 | - | 698 | + vpd.put("var" + (8 + 2 * y), nn); // 8 |
699 | + vpd.put("var" + (9 + 2 * y), | ||
700 | + decimalFormat.format(nn | ||
701 | + * 100 | ||
702 | + / Double.valueOf(varOList.get(i).getString( | ||
703 | + "ANSWERNUM"))) | ||
704 | + + "%"); // 9 | ||
705 | + | ||
632 | } | 706 | } |
633 | - | ||
634 | - vpd.put("var"+(max*2+8), Integer.valueOf(optoin.get(optoin.size()-1))); //8 | ||
635 | - vpd.put("var"+(max*2+9), decimalFormat.format(Double.valueOf(optoin.get(optoin.size()-1))*100/Double.valueOf(varOList.get(i).getString("ANSWERNUM2")))+"%"); //9 | ||
636 | - | 707 | + |
708 | + vpd.put("var" + (max * 2 + 8), | ||
709 | + Integer.valueOf(optoin.get(optoin.size() - 1))); // 8 | ||
710 | + vpd.put("var" + (max * 2 + 9), | ||
711 | + decimalFormat.format(Double.valueOf(optoin.get(optoin | ||
712 | + .size() - 1)) | ||
713 | + * 100 | ||
714 | + / Double.valueOf(varOList.get(i).getString( | ||
715 | + "ANSWERNUM2"))) | ||
716 | + + "%"); // 9 | ||
717 | + | ||
637 | varList.add(vpd); | 718 | varList.add(vpd); |
638 | } | 719 | } |
639 | dataMap.put("varList", varList); | 720 | dataMap.put("varList", varList); |
640 | ObjectExcelView erv = new ObjectExcelView(); | 721 | ObjectExcelView erv = new ObjectExcelView(); |
641 | - mv = new ModelAndView(erv,dataMap); | ||
642 | - | 722 | + mv = new ModelAndView(erv, dataMap); |
643 | 723 | ||
644 | return mv; | 724 | return mv; |
645 | } | 725 | } |
646 | - | 726 | + |
647 | /** | 727 | /** |
648 | * 按学生分析 | 728 | * 按学生分析 |
729 | + * | ||
649 | * @return | 730 | * @return |
650 | * @throws Exception | 731 | * @throws Exception |
651 | */ | 732 | */ |
652 | - @RequestMapping(value="/paperRep3") | ||
653 | - public ModelAndView paperRep3() throws Exception{ | 733 | + @RequestMapping(value = "/paperRep3") |
734 | + public ModelAndView paperRep3() throws Exception { | ||
654 | ModelAndView mv = this.getModelAndView(); | 735 | ModelAndView mv = this.getModelAndView(); |
655 | PageData pd = new PageData(); | 736 | PageData pd = new PageData(); |
656 | List<PageData> temp = new ArrayList<PageData>(); | 737 | List<PageData> temp = new ArrayList<PageData>(); |
657 | PageData saveData = new PageData(); | 738 | PageData saveData = new PageData(); |
658 | - | 739 | + |
659 | ResponseGson<PageData> res = new ResponseGson(); | 740 | ResponseGson<PageData> res = new ResponseGson(); |
660 | pd = this.getPageData(); | 741 | pd = this.getPageData(); |
661 | - if(pd.containsKey("PAPER_ID")){ | ||
662 | - | 742 | + if (pd.containsKey("PAPER_ID")) { |
743 | + | ||
663 | List<PageData> list = studenttestService.findTestInfoByPid(pd); | 744 | List<PageData> list = studenttestService.findTestInfoByPid(pd); |
664 | PageData paper = paperService.findById(pd); | 745 | PageData paper = paperService.findById(pd); |
665 | - if(paper!=null){ | 746 | + if (paper != null) { |
666 | pd.put("SCORE", paper.get("SCORE")); | 747 | pd.put("SCORE", paper.get("SCORE")); |
667 | pd.put("PAPER_NAME", paper.get("TITLE")); | 748 | pd.put("PAPER_NAME", paper.get("TITLE")); |
668 | } | 749 | } |
669 | List<String> sid = new ArrayList<String>(); | 750 | List<String> sid = new ArrayList<String>(); |
670 | Integer test_num = 0; | 751 | Integer test_num = 0; |
671 | Integer lost_num = 0; | 752 | Integer lost_num = 0; |
672 | - for(PageData item : list){ | ||
673 | - | ||
674 | - Integer index = this.indexOfStrInList(sid, item.getString("STUDENT_ID")); | ||
675 | - if(index!=-1){ | ||
676 | - | 753 | + for (PageData item : list) { |
754 | + | ||
755 | + PageData p = new PageData(); | ||
756 | + p.put("ID", item.getString("STUDENT_ID")); | ||
757 | + PageData student = stundentService.findById(p); | ||
758 | + if (student != null) { | ||
759 | + Integer index = this.indexOfStrInList(sid, | ||
760 | + item.getString("STUDENT_ID")); | ||
761 | + if (index != -1) { | ||
762 | + | ||
677 | test_num++; | 763 | test_num++; |
678 | - List<PageData> test_list = (List<PageData>) temp.get(index).get("TEST_LIST"); | 764 | + List<PageData> test_list = (List<PageData>) temp.get( |
765 | + index).get("TEST_LIST"); | ||
679 | PageData test = new PageData(); | 766 | PageData test = new PageData(); |
680 | test.put("CREATE_DATE", item.get("CREATE_DATE")); | 767 | test.put("CREATE_DATE", item.get("CREATE_DATE")); |
681 | - if(item.getString("LOST_TEST").isEmpty()){ | 768 | + if (item.getString("LOST_TEST").isEmpty()) { |
682 | test.put("SCORE", item.get("SCORE")); | 769 | test.put("SCORE", item.get("SCORE")); |
683 | - }else{ | 770 | + } else { |
684 | test.put("SCORE", "--"); | 771 | test.put("SCORE", "--"); |
685 | - temp.get(index).put("LOST_NUM", Integer.valueOf(temp.get(index).getString("LOST_NUM"))+1); | 772 | + temp.get(index).put( |
773 | + "LOST_NUM", | ||
774 | + Integer.valueOf(temp.get(index).getString( | ||
775 | + "LOST_NUM")) + 1); | ||
686 | } | 776 | } |
687 | test.put("AVG_SCORE", item.get("AVG_SCORE")); | 777 | test.put("AVG_SCORE", item.get("AVG_SCORE")); |
688 | test_list.add(test); | 778 | test_list.add(test); |
689 | - Float total = Float.valueOf(temp.get(index).getString("STUDENT_TOTAL")); | ||
690 | - temp.get(index).put("STUDENT_TOTAL",total+Float.valueOf(item.getString("SCORE"))); | 779 | + Float total = Float.valueOf(temp.get(index).getString( |
780 | + "STUDENT_TOTAL")); | ||
781 | + temp.get(index).put("STUDENT_TOTAL", | ||
782 | + total + Float.valueOf(item.getString("SCORE"))); | ||
691 | temp.get(index).put("TEST_LIST", test_list); | 783 | temp.get(index).put("TEST_LIST", test_list); |
692 | - temp.get(index).put("TEST_NUM", test_list.size()-Integer.valueOf(temp.get(index).getString("LOST_NUM"))); | ||
693 | - | ||
694 | - }else{ | ||
695 | - test_num=1; | ||
696 | - lost_num=0; | ||
697 | - PageData stu = new PageData(); | ||
698 | - stu.put("STUDENT_NAME", item.get("STUDENT_NAME")); | ||
699 | - stu.put("CLASS_NAME", item.get("CLASS_NAME")); | ||
700 | - List<PageData> testList = new ArrayList<PageData>(); | ||
701 | - PageData test = new PageData(); | ||
702 | - test.put("CREATE_DATE", item.get("CREATE_DATE")); | ||
703 | - if(item.getString("LOST_TEST").isEmpty()){ | ||
704 | - test.put("SCORE", item.get("SCORE")); | ||
705 | - }else{ | ||
706 | - test.put("SCORE", "--"); | ||
707 | - lost_num++; | 784 | + temp.get(index).put( |
785 | + "TEST_NUM", | ||
786 | + test_list.size() | ||
787 | + - Integer.valueOf(temp.get(index) | ||
788 | + .getString("LOST_NUM"))); | ||
789 | + | ||
790 | + } else { | ||
791 | + test_num = 1; | ||
792 | + lost_num = 0; | ||
793 | + PageData stu = new PageData(); | ||
794 | + stu.put("STUDENT_NAME", item.get("STUDENT_NAME")); | ||
795 | + stu.put("CLASS_NAME", item.get("CLASS_NAME")); | ||
796 | + List<PageData> testList = new ArrayList<PageData>(); | ||
797 | + PageData test = new PageData(); | ||
798 | + test.put("CREATE_DATE", item.get("CREATE_DATE")); | ||
799 | + if (item.getString("LOST_TEST").isEmpty()) { | ||
800 | + test.put("SCORE", item.get("SCORE")); | ||
801 | + } else { | ||
802 | + test.put("SCORE", "--"); | ||
803 | + lost_num++; | ||
804 | + } | ||
805 | + test.put("AVG_SCORE", item.get("AVG_SCORE")); | ||
806 | + testList.add(test); | ||
807 | + stu.put("STUDENT_TOTAL", item.get("SCORE")); | ||
808 | + stu.put("TEST_LIST", testList); | ||
809 | + stu.put("TEST_NUM", testList.size() - lost_num); | ||
810 | + stu.put("LOST_NUM", lost_num); | ||
811 | + sid.add(item.getString("STUDENT_ID")); | ||
812 | + temp.add(stu); | ||
708 | } | 813 | } |
709 | - test.put("AVG_SCORE", item.get("AVG_SCORE")); | ||
710 | - testList.add(test); | ||
711 | - stu.put("STUDENT_TOTAL",item.get("SCORE")); | ||
712 | - stu.put("TEST_LIST", testList); | ||
713 | - stu.put("TEST_NUM", testList.size()-lost_num); | ||
714 | - stu.put("LOST_NUM", lost_num); | ||
715 | - sid.add(item.getString("STUDENT_ID")); | ||
716 | - temp.add(stu); | ||
717 | } | 814 | } |
718 | - | ||
719 | } | 815 | } |
720 | } | 816 | } |
721 | - Collections.sort(temp,new Comparator<PageData>(){ | 817 | + Collections.sort(temp, new Comparator<PageData>() { |
722 | 818 | ||
723 | @Override | 819 | @Override |
724 | public int compare(PageData o1, PageData o2) { | 820 | public int compare(PageData o1, PageData o2) { |
725 | - Float o1GetScore = Float.valueOf(o1.getString("STUDENT_TOTAL"))/Float.valueOf(o1.getString("TEST_NUM")); | ||
726 | - Float o2GetScore = Float.valueOf(o2.getString("STUDENT_TOTAL"))/Float.valueOf(o2.getString("TEST_NUM")); | 821 | + |
822 | + Float o1GetScore = Float.valueOf(o1.getString("TEST_NUM")) == 0 ? 0 | ||
823 | + : Float.valueOf(o1.getString("STUDENT_TOTAL")) | ||
824 | + / Float.valueOf(o1.getString("TEST_NUM")); | ||
825 | + Float o2GetScore = Float.valueOf(o2.getString("TEST_NUM")) == 0 ? 0 | ||
826 | + : Float.valueOf(o2.getString("STUDENT_TOTAL")) | ||
827 | + / Float.valueOf(o2.getString("TEST_NUM")); | ||
727 | return o2GetScore.compareTo(o1GetScore); | 828 | return o2GetScore.compareTo(o1GetScore); |
728 | } | 829 | } |
729 | - | 830 | + |
730 | }); | 831 | }); |
731 | mv.setViewName("sunvote/paper/test_list3"); | 832 | mv.setViewName("sunvote/paper/test_list3"); |
732 | mv.addObject("varList", temp); | 833 | mv.addObject("varList", temp); |
733 | - mv.addObject("pd",pd); | 834 | + mv.addObject("pd", pd); |
734 | res.setData(saveData); | 835 | res.setData(saveData); |
735 | return mv; | 836 | return mv; |
736 | } | 837 | } |
737 | - | ||
738 | - | ||
739 | - @RequestMapping(value="/export3") | ||
740 | - public ModelAndView export3() throws Exception{ | 838 | + |
839 | + @RequestMapping(value = "/export3") | ||
840 | + public ModelAndView export3() throws Exception { | ||
741 | ModelAndView mv = this.getModelAndView(); | 841 | ModelAndView mv = this.getModelAndView(); |
742 | PageData pd = new PageData(); | 842 | PageData pd = new PageData(); |
743 | List<PageData> temp = new ArrayList<PageData>(); | 843 | List<PageData> temp = new ArrayList<PageData>(); |
744 | PageData saveData = new PageData(); | 844 | PageData saveData = new PageData(); |
745 | - | 845 | + |
746 | ResponseGson<PageData> res = new ResponseGson(); | 846 | ResponseGson<PageData> res = new ResponseGson(); |
747 | pd = this.getPageData(); | 847 | pd = this.getPageData(); |
748 | - if(pd.containsKey("PAPER_ID")){ | ||
749 | - | 848 | + if (pd.containsKey("PAPER_ID")) { |
849 | + | ||
750 | List<PageData> list = studenttestService.findTestInfoByPid(pd); | 850 | List<PageData> list = studenttestService.findTestInfoByPid(pd); |
751 | PageData paper = paperService.findById(pd); | 851 | PageData paper = paperService.findById(pd); |
752 | - if(paper!=null){ | 852 | + if (paper != null) { |
753 | pd.put("SCORE", paper.get("SCORE")); | 853 | pd.put("SCORE", paper.get("SCORE")); |
754 | pd.put("PAPER_NAME", paper.get("TITLE")); | 854 | pd.put("PAPER_NAME", paper.get("TITLE")); |
755 | } | 855 | } |
756 | List<String> sid = new ArrayList<String>(); | 856 | List<String> sid = new ArrayList<String>(); |
757 | Integer test_num = 0; | 857 | Integer test_num = 0; |
758 | Integer lost_num = 0; | 858 | Integer lost_num = 0; |
759 | - for(PageData item : list){ | ||
760 | - | ||
761 | - Integer index = this.indexOfStrInList(sid, item.getString("STUDENT_ID")); | ||
762 | - if(index!=-1){ | ||
763 | - | ||
764 | - test_num++; | ||
765 | - List<PageData> test_list = (List<PageData>) temp.get(index).get("TEST_LIST"); | ||
766 | - PageData test = new PageData(); | ||
767 | - test.put("CREATE_DATE", item.get("CREATE_DATE")); | ||
768 | - if(item.getString("LOST_TEST").isEmpty()){ | ||
769 | - test.put("SCORE", item.get("SCORE")); | ||
770 | - }else{ | ||
771 | - test.put("SCORE", "--"); | ||
772 | - temp.get(index).put("LOST_NUM", Integer.valueOf(temp.get(index).getString("LOST_NUM"))+1); | ||
773 | - } | ||
774 | - test.put("AVG_SCORE", item.get("AVG_SCORE")); | ||
775 | - test_list.add(test); | ||
776 | - Float total = Float.valueOf(temp.get(index).getString("STUDENT_TOTAL")); | ||
777 | - temp.get(index).put("STUDENT_TOTAL",total+Float.valueOf(item.getString("SCORE"))); | ||
778 | - temp.get(index).put("TEST_LIST", test_list); | ||
779 | - temp.get(index).put("TEST_NUM", test_list.size()-Integer.valueOf(temp.get(index).getString("LOST_NUM"))); | ||
780 | - | ||
781 | - }else{ | ||
782 | - test_num=1; | ||
783 | - lost_num=0; | 859 | + for (PageData item : list) { |
860 | + PageData p = new PageData(); | ||
861 | + p.put("ID", item.getString("STUDENT_ID")); | ||
862 | + PageData student = stundentService.findById(p); | ||
863 | + if (student != null) { | ||
864 | + Integer index = this.indexOfStrInList(sid, | ||
865 | + item.getString("STUDENT_ID")); | ||
866 | + if (index != -1) { | ||
867 | + | ||
868 | + test_num++; | ||
869 | + List<PageData> test_list = (List<PageData>) temp.get(index) | ||
870 | + .get("TEST_LIST"); | ||
871 | + PageData test = new PageData(); | ||
872 | + test.put("CREATE_DATE", item.get("CREATE_DATE")); | ||
873 | + if (item.getString("LOST_TEST").isEmpty()) { | ||
874 | + test.put("SCORE", item.get("SCORE")); | ||
875 | + } else { | ||
876 | + test.put("SCORE", "--"); | ||
877 | + temp.get(index).put( | ||
878 | + "LOST_NUM", | ||
879 | + Integer.valueOf(temp.get(index).getString( | ||
880 | + "LOST_NUM")) + 1); | ||
881 | + } | ||
882 | + test.put("AVG_SCORE", item.get("AVG_SCORE")); | ||
883 | + test_list.add(test); | ||
884 | + Float total = Float.valueOf(temp.get(index).getString( | ||
885 | + "STUDENT_TOTAL")); | ||
886 | + temp.get(index).put("STUDENT_TOTAL", | ||
887 | + total + Float.valueOf(item.getString("SCORE"))); | ||
888 | + temp.get(index).put("TEST_LIST", test_list); | ||
889 | + temp.get(index).put( | ||
890 | + "TEST_NUM", | ||
891 | + test_list.size() | ||
892 | + - Integer.valueOf(temp.get(index) | ||
893 | + .getString("LOST_NUM"))); | ||
894 | + | ||
895 | + } else { | ||
896 | + test_num = 1; | ||
897 | + lost_num = 0; | ||
784 | PageData stu = new PageData(); | 898 | PageData stu = new PageData(); |
785 | stu.put("STUDENT_NAME", item.get("STUDENT_NAME")); | 899 | stu.put("STUDENT_NAME", item.get("STUDENT_NAME")); |
786 | stu.put("CLASS_NAME", item.get("CLASS_NAME")); | 900 | stu.put("CLASS_NAME", item.get("CLASS_NAME")); |
787 | List<PageData> testList = new ArrayList<PageData>(); | 901 | List<PageData> testList = new ArrayList<PageData>(); |
788 | PageData test = new PageData(); | 902 | PageData test = new PageData(); |
789 | test.put("CREATE_DATE", item.get("CREATE_DATE")); | 903 | test.put("CREATE_DATE", item.get("CREATE_DATE")); |
790 | - if(item.getString("LOST_TEST").isEmpty()){ | 904 | + if (item.getString("LOST_TEST").isEmpty()) { |
791 | test.put("SCORE", item.get("SCORE")); | 905 | test.put("SCORE", item.get("SCORE")); |
792 | - }else{ | 906 | + } else { |
793 | test.put("SCORE", "--"); | 907 | test.put("SCORE", "--"); |
794 | lost_num++; | 908 | lost_num++; |
795 | } | 909 | } |
796 | test.put("AVG_SCORE", item.get("AVG_SCORE")); | 910 | test.put("AVG_SCORE", item.get("AVG_SCORE")); |
797 | testList.add(test); | 911 | testList.add(test); |
798 | - stu.put("STUDENT_TOTAL",item.get("SCORE")); | 912 | + stu.put("STUDENT_TOTAL", item.get("SCORE")); |
799 | stu.put("TEST_LIST", testList); | 913 | stu.put("TEST_LIST", testList); |
800 | - stu.put("TEST_NUM", testList.size()-lost_num); | 914 | + stu.put("TEST_NUM", testList.size() - lost_num); |
801 | stu.put("LOST_NUM", lost_num); | 915 | stu.put("LOST_NUM", lost_num); |
802 | sid.add(item.getString("STUDENT_ID")); | 916 | sid.add(item.getString("STUDENT_ID")); |
803 | temp.add(stu); | 917 | temp.add(stu); |
804 | } | 918 | } |
805 | - | 919 | + } |
806 | } | 920 | } |
807 | } | 921 | } |
808 | - Collections.sort(temp,new Comparator<PageData>(){ | 922 | + Collections.sort(temp, new Comparator<PageData>() { |
809 | 923 | ||
810 | @Override | 924 | @Override |
811 | public int compare(PageData o1, PageData o2) { | 925 | public int compare(PageData o1, PageData o2) { |
812 | - Float o1GetScore = Float.valueOf(o1.getString("STUDENT_TOTAL"))/Float.valueOf(o1.getString("TEST_NUM")); | ||
813 | - Float o2GetScore = Float.valueOf(o2.getString("STUDENT_TOTAL"))/Float.valueOf(o2.getString("TEST_NUM")); | 926 | + |
927 | + Float o1GetScore = Float.valueOf(o1.getString("TEST_NUM")) == 0 ? 0 | ||
928 | + : Float.valueOf(o1.getString("STUDENT_TOTAL")) | ||
929 | + / Float.valueOf(o1.getString("TEST_NUM")); | ||
930 | + Float o2GetScore = Float.valueOf(o2.getString("TEST_NUM")) == 0 ? 0 | ||
931 | + : Float.valueOf(o2.getString("STUDENT_TOTAL")) | ||
932 | + / Float.valueOf(o2.getString("TEST_NUM")); | ||
814 | return o2GetScore.compareTo(o1GetScore); | 933 | return o2GetScore.compareTo(o1GetScore); |
815 | } | 934 | } |
816 | - | 935 | + |
817 | }); | 936 | }); |
818 | 937 | ||
819 | mv.addObject("varList", temp); | 938 | mv.addObject("varList", temp); |
820 | - mv.addObject("pd",pd); | ||
821 | - | ||
822 | - Map<String,Object> dataMap = new HashMap<String,Object>(); | 939 | + mv.addObject("pd", pd); |
940 | + | ||
941 | + Map<String, Object> dataMap = new HashMap<String, Object>(); | ||
823 | List<String> titles = new ArrayList<String>(); | 942 | List<String> titles = new ArrayList<String>(); |
824 | - titles.add("学生姓名"); //1 | ||
825 | - titles.add("班级"); //2 | ||
826 | - titles.add("综合排名"); //3 | ||
827 | - titles.add("个人平均得分"); //4 | ||
828 | - titles.add("个人平均得分率"); //5 | ||
829 | - titles.add("个人得分"); //6 | ||
830 | - titles.add("测验平均分"); //7 | ||
831 | - titles.add("测验时间"); //8 | ||
832 | - | 943 | + titles.add("学生姓名"); // 1 |
944 | + titles.add("班级"); // 2 | ||
945 | + titles.add("综合排名"); // 3 | ||
946 | + titles.add("个人平均得分"); // 4 | ||
947 | + titles.add("个人平均得分率"); // 5 | ||
948 | + titles.add("个人得分"); // 6 | ||
949 | + titles.add("测验平均分"); // 7 | ||
950 | + titles.add("测验时间"); // 8 | ||
951 | + | ||
833 | dataMap.put("titles", titles); | 952 | dataMap.put("titles", titles); |
834 | List<PageData> varOList = temp; | 953 | List<PageData> varOList = temp; |
835 | List<PageData> varList = new ArrayList<PageData>(); | 954 | List<PageData> varList = new ArrayList<PageData>(); |
836 | - DecimalFormat decimalFormat=new DecimalFormat("0.00"); | ||
837 | - for(int i=0;i<varOList.size();i++){ | 955 | + DecimalFormat decimalFormat = new DecimalFormat("0.00"); |
956 | + | ||
957 | + for (int i = 0; i < varOList.size(); i++) { | ||
838 | PageData vpd = new PageData(); | 958 | PageData vpd = new PageData(); |
839 | - | ||
840 | - vpd.put("var1", varOList.get(i).getString("STUDENT_NAME")); //1 | ||
841 | - vpd.put("var2", varOList.get(i).getString("CLASS_NAME")); //2 | ||
842 | - vpd.put("var3", i+1); //3 | ||
843 | - vpd.put("var4", varOList.get(i).getString("TEST_NUM").equals("0")?0:decimalFormat.format(Double.valueOf(varOList.get(i).getString("STUDENT_TOTAL"))/Double.valueOf(varOList.get(i).getString("TEST_NUM")))); //4 | ||
844 | - vpd.put("var5", varOList.get(i).getString("TEST_NUM").equals("0")?0:decimalFormat.format((Double.valueOf(varOList.get(i).getString("STUDENT_TOTAL"))*100/Double.valueOf(varOList.get(i).getString("TEST_NUM")))/Double.valueOf(pd.getString("SCORE")))); //5 | ||
845 | - List<PageData> test_list = (List<PageData>)varOList.get(i).get("TEST_LIST"); | ||
846 | - | 959 | + |
960 | + vpd.put("var1", varOList.get(i).getString("STUDENT_NAME")); // 1 | ||
961 | + vpd.put("var2", varOList.get(i).getString("CLASS_NAME")); // 2 | ||
962 | + vpd.put("var3", i + 1); // 3 | ||
963 | + vpd.put("var4", | ||
964 | + varOList.get(i).getString("TEST_NUM").equals("0") ? 0 | ||
965 | + : decimalFormat.format(Double.valueOf(varOList.get( | ||
966 | + i).getString("STUDENT_TOTAL")) | ||
967 | + / Double.valueOf(varOList.get(i).getString( | ||
968 | + "TEST_NUM")))); // 4 | ||
969 | + vpd.put("var5", | ||
970 | + varOList.get(i).getString("TEST_NUM").equals("0") ? 0 | ||
971 | + : decimalFormat.format((Double.valueOf(varOList | ||
972 | + .get(i).getString("STUDENT_TOTAL")) * 100 / Double | ||
973 | + .valueOf(varOList.get(i).getString( | ||
974 | + "TEST_NUM"))) | ||
975 | + / Double.valueOf(pd.getString("SCORE")))); // 5 | ||
976 | + List<PageData> test_list = (List<PageData>) varOList.get(i).get( | ||
977 | + "TEST_LIST"); | ||
978 | + | ||
847 | List<String> score = new ArrayList<String>(); | 979 | List<String> score = new ArrayList<String>(); |
848 | List<String> AVG_SCORE = new ArrayList<String>(); | 980 | List<String> AVG_SCORE = new ArrayList<String>(); |
849 | List<String> CREATE_DATE = new ArrayList<String>(); | 981 | List<String> CREATE_DATE = new ArrayList<String>(); |
850 | - for(int x=0;x<test_list.size();x++){ | 982 | + for (int x = 0; x < test_list.size(); x++) { |
851 | score.add(test_list.get(x).getString("SCORE")); | 983 | score.add(test_list.get(x).getString("SCORE")); |
852 | AVG_SCORE.add(test_list.get(x).getString("AVG_SCORE")); | 984 | AVG_SCORE.add(test_list.get(x).getString("AVG_SCORE")); |
853 | CREATE_DATE.add(test_list.get(x).getString("CREATE_DATE")); | 985 | CREATE_DATE.add(test_list.get(x).getString("CREATE_DATE")); |
854 | - | 986 | + |
855 | } | 987 | } |
856 | vpd.put("var6", score); | 988 | vpd.put("var6", score); |
857 | vpd.put("var7", AVG_SCORE); | 989 | vpd.put("var7", AVG_SCORE); |
858 | vpd.put("var8", CREATE_DATE); | 990 | vpd.put("var8", CREATE_DATE); |
859 | varList.add(vpd); | 991 | varList.add(vpd); |
992 | + | ||
860 | } | 993 | } |
861 | dataMap.put("varList", varList); | 994 | dataMap.put("varList", varList); |
862 | ObjectExcelView2 erv = new ObjectExcelView2(); | 995 | ObjectExcelView2 erv = new ObjectExcelView2(); |
863 | - mv = new ModelAndView(erv,dataMap); | ||
864 | - | 996 | + mv = new ModelAndView(erv, dataMap); |
865 | 997 | ||
866 | return mv; | 998 | return mv; |
867 | } | 999 | } |
868 | - | ||
869 | - @RequestMapping(value="/iteminfo") | ||
870 | - public ModelAndView iteminfo() throws Exception{ | ||
871 | - logBefore(logger, Jurisdiction.getUsername()+"Paper详细信息"); | ||
872 | - //if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;} //校验权限(无权查看时页面会有提示,如果不注释掉这句代码就无法进入列表页面,所以根据情况是否加入本句代码) | 1000 | + |
1001 | + @RequestMapping(value = "/iteminfo") | ||
1002 | + public ModelAndView iteminfo() throws Exception { | ||
1003 | + logBefore(logger, Jurisdiction.getUsername() + "Paper详细信息"); | ||
1004 | + // if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;} | ||
1005 | + // //校验权限(无权查看时页面会有提示,如果不注释掉这句代码就无法进入列表页面,所以根据情况是否加入本句代码) | ||
873 | ModelAndView mv = this.getModelAndView(); | 1006 | ModelAndView mv = this.getModelAndView(); |
874 | PageData pd = new PageData(); | 1007 | PageData pd = new PageData(); |
875 | pd = this.getPageData(); | 1008 | pd = this.getPageData(); |
876 | - | ||
877 | - if(pd.containsKey("PAPER_ID")){ | ||
878 | - try{ | 1009 | + |
1010 | + if (pd.containsKey("PAPER_ID")) { | ||
1011 | + try { | ||
879 | Paper paper = new Paper(); | 1012 | Paper paper = new Paper(); |
880 | PageData ppd = paperService.findById(pd); | 1013 | PageData ppd = paperService.findById(pd); |
881 | - if(ppd != null){ | ||
882 | - paper.setTitle(ppd.getString("TITLE")); | ||
883 | - paper.setExam_time(ppd.getString("EXAM_TIME")); | ||
884 | - paper.setUser_id(ppd.getString("USER_ID")); | ||
885 | - paper.setPaper_type(ppd.getString("PAPER_TYPE")); | ||
886 | - paper.setSubject_id(ppd.getString("SUBJECT_ID")); | ||
887 | - paper.setGrade_id(ppd.getString("GRADE_ID")); | ||
888 | - paper.setScore(ppd.getString("SCORE")); | ||
889 | - paper.setQuestions(new ArrayList<Question>()); | ||
890 | - | ||
891 | - List<PageData> questList = v1Service.getTestPaperInfo(pd); | ||
892 | - for(PageData qpd : questList){ | ||
893 | - Question question = new Question(); | ||
894 | - question.setAnswer(qpd.getString("ANSWER")); | ||
895 | - question.setQuestion_id(qpd.getString("QUESTION_ID")); | ||
896 | - question.setSubject_id(qpd.getString("SUBJECT_ID")); | ||
897 | - question.setChapter_id(qpd.getString("CHAPTER_ID")); | ||
898 | - question.setProblem_type_id(qpd.getString("PROBLEM_TYPE_ID")); | ||
899 | - question.setKnowledge_id(qpd.getString("KNOWLEDGE_ID")); | ||
900 | - question.setContent(qpd.getString("CONTENT").replaceAll("<fill></fill>", "______")); | ||
901 | - question.setOption_num(qpd.getString("OPTION_NUM")); | ||
902 | - question.setOption_content(qpd.getString("OPTION_CONTENT")); | ||
903 | - question.setDifficulty(qpd.getString("DIFFICULTY")); | ||
904 | - question.setAnalysis(qpd.getString("ANALYSIS")); | ||
905 | - question.setQuestion_from(qpd.getString("QUESTION_FROM")); | ||
906 | - question.setSug_score(qpd.getString("SCORE")); | ||
907 | - question.setSug_part_score(qpd.getString("PART_SCORE")); | ||
908 | - question.setRank(qpd.getString("RANK")); | ||
909 | - question.setNo_name(qpd.getString("NO_NAME")); | ||
910 | - if("-1".equals("" + qpd.getString("P_ID"))){ | ||
911 | - PageData pidPd = new PageData(); | ||
912 | - pidPd.put("PID", question.getQuestion_id()); | ||
913 | - question.setQuestions(new ArrayList<Question>()); | ||
914 | - List<PageData> qs = v1Service.getQuestionsByPID(pidPd); | ||
915 | - for(PageData q : qs){ | ||
916 | - Question qq = new Question(); | ||
917 | - qq.setAnswer(q.getString("ANSWER")); | ||
918 | - qq.setQuestion_id(q.getString("QUESTION_ID")); | ||
919 | - qq.setSubject_id(q.getString("SUBJECT_ID")); | ||
920 | - qq.setChapter_id(q.getString("CHAPTER_ID")); | ||
921 | - qq.setProblem_type_id(q.getString("PROBLEM_TYPE_ID")); | ||
922 | - qq.setKnowledge_id(q.getString("KNOWLEDGE_ID")); | ||
923 | - qq.setContent(q.getString("CONTENT").replaceAll("<fill></fill>", "______")); | ||
924 | - qq.setOption_num(q.getString("OPTION_NUM")); | ||
925 | - qq.setOption_content(q.getString("OPTION_CONTENT")); | ||
926 | - qq.setDifficulty(q.getString("DIFFICULTY")); | ||
927 | - qq.setAnalysis(q.getString("ANALYSIS")); | ||
928 | - qq.setQuestion_from(q.getString("QUESTION_FROM")); | ||
929 | - qq.setSug_score(q.getString("SCORE")); | ||
930 | - qq.setSug_part_score(q.getString("PART_SCORE")); | ||
931 | - qq.setRank(q.getString("RANK")); | ||
932 | - qq.setNo_name(q.getString("NO_NAME")); | ||
933 | - question.getQuestions().add(qq); | 1014 | + if (ppd != null) { |
1015 | + paper.setTitle(ppd.getString("TITLE")); | ||
1016 | + paper.setExam_time(ppd.getString("EXAM_TIME")); | ||
1017 | + paper.setUser_id(ppd.getString("USER_ID")); | ||
1018 | + paper.setPaper_type(ppd.getString("PAPER_TYPE")); | ||
1019 | + paper.setSubject_id(ppd.getString("SUBJECT_ID")); | ||
1020 | + paper.setGrade_id(ppd.getString("GRADE_ID")); | ||
1021 | + paper.setScore(ppd.getString("SCORE")); | ||
1022 | + paper.setQuestions(new ArrayList<Question>()); | ||
1023 | + | ||
1024 | + List<PageData> questList = v1Service.getTestPaperInfo(pd); | ||
1025 | + for (PageData qpd : questList) { | ||
1026 | + Question question = new Question(); | ||
1027 | + question.setAnswer(qpd.getString("ANSWER")); | ||
1028 | + question.setQuestion_id(qpd.getString("QUESTION_ID")); | ||
1029 | + question.setSubject_id(qpd.getString("SUBJECT_ID")); | ||
1030 | + question.setChapter_id(qpd.getString("CHAPTER_ID")); | ||
1031 | + question.setProblem_type_id(qpd | ||
1032 | + .getString("PROBLEM_TYPE_ID")); | ||
1033 | + question.setKnowledge_id(qpd.getString("KNOWLEDGE_ID")); | ||
1034 | + question.setContent(qpd.getString("CONTENT") | ||
1035 | + .replaceAll("<fill></fill>", "______")); | ||
1036 | + question.setOption_num(qpd.getString("OPTION_NUM")); | ||
1037 | + question.setOption_content(qpd | ||
1038 | + .getString("OPTION_CONTENT")); | ||
1039 | + question.setDifficulty(qpd.getString("DIFFICULTY")); | ||
1040 | + question.setAnalysis(qpd.getString("ANALYSIS")); | ||
1041 | + question.setQuestion_from(qpd | ||
1042 | + .getString("QUESTION_FROM")); | ||
1043 | + question.setSug_score(qpd.getString("SCORE")); | ||
1044 | + question.setSug_part_score(qpd.getString("PART_SCORE")); | ||
1045 | + question.setRank(qpd.getString("RANK")); | ||
1046 | + question.setNo_name(qpd.getString("NO_NAME")); | ||
1047 | + if ("-1".equals("" + qpd.getString("P_ID"))) { | ||
1048 | + PageData pidPd = new PageData(); | ||
1049 | + pidPd.put("PID", question.getQuestion_id()); | ||
1050 | + question.setQuestions(new ArrayList<Question>()); | ||
1051 | + List<PageData> qs = v1Service | ||
1052 | + .getQuestionsByPID(pidPd); | ||
1053 | + for (PageData q : qs) { | ||
1054 | + Question qq = new Question(); | ||
1055 | + qq.setAnswer(q.getString("ANSWER")); | ||
1056 | + qq.setQuestion_id(q.getString("QUESTION_ID")); | ||
1057 | + qq.setSubject_id(q.getString("SUBJECT_ID")); | ||
1058 | + qq.setChapter_id(q.getString("CHAPTER_ID")); | ||
1059 | + qq.setProblem_type_id(q | ||
1060 | + .getString("PROBLEM_TYPE_ID")); | ||
1061 | + qq.setKnowledge_id(q.getString("KNOWLEDGE_ID")); | ||
1062 | + qq.setContent(q.getString("CONTENT") | ||
1063 | + .replaceAll("<fill></fill>", "______")); | ||
1064 | + qq.setOption_num(q.getString("OPTION_NUM")); | ||
1065 | + qq.setOption_content(q | ||
1066 | + .getString("OPTION_CONTENT")); | ||
1067 | + qq.setDifficulty(q.getString("DIFFICULTY")); | ||
1068 | + qq.setAnalysis(q.getString("ANALYSIS")); | ||
1069 | + qq.setQuestion_from(q | ||
1070 | + .getString("QUESTION_FROM")); | ||
1071 | + qq.setSug_score(q.getString("SCORE")); | ||
1072 | + qq.setSug_part_score(q.getString("PART_SCORE")); | ||
1073 | + qq.setRank(q.getString("RANK")); | ||
1074 | + qq.setNo_name(q.getString("NO_NAME")); | ||
1075 | + question.getQuestions().add(qq); | ||
1076 | + } | ||
1077 | + } | ||
1078 | + if ("-1".equals(qpd.getString("P_ID")) | ||
1079 | + || "0".equals(qpd.getString("P_ID"))) { | ||
1080 | + paper.getQuestions().add(question); | ||
934 | } | 1081 | } |
935 | } | 1082 | } |
936 | - if("-1".equals(qpd.getString("P_ID")) || "0".equals(qpd.getString("P_ID"))){ | ||
937 | - paper.getQuestions().add(question); | ||
938 | - } | ||
939 | - } | ||
940 | - pd.put("JSON", paper.toJson()); | ||
941 | - logger.info(paper.toJson()); | ||
942 | - | 1083 | + pd.put("JSON", paper.toJson()); |
1084 | + logger.info(paper.toJson()); | ||
1085 | + | ||
943 | } | 1086 | } |
944 | - }catch(Exception ex){ | 1087 | + } catch (Exception ex) { |
945 | ex.printStackTrace(); | 1088 | ex.printStackTrace(); |
946 | } | 1089 | } |
947 | } | 1090 | } |
948 | - if(isChineseLanguageClient()){ | 1091 | + if (isChineseLanguageClient()) { |
949 | mv.setViewName("sunvote/teacher/creat_question"); | 1092 | mv.setViewName("sunvote/teacher/creat_question"); |
950 | - }else{ | 1093 | + } else { |
951 | mv.setViewName("sunvote/teacher/en_creat_question"); | 1094 | mv.setViewName("sunvote/teacher/en_creat_question"); |
952 | } | 1095 | } |
953 | mv.addObject("pd", pd); | 1096 | mv.addObject("pd", pd); |
954 | - mv.addObject("QX",Jurisdiction.getHC()); //按钮权限 | 1097 | + mv.addObject("QX", Jurisdiction.getHC()); // 按钮权限 |
955 | return mv; | 1098 | return mv; |
956 | } | 1099 | } |
957 | - | ||
958 | - | ||
959 | - @RequestMapping(value="/npaper") | ||
960 | - public ModelAndView newpaper() throws Exception{ | ||
961 | - logBefore(logger, Jurisdiction.getUsername()+"Paper详细信息"); | 1100 | + |
1101 | + @RequestMapping(value = "/npaper") | ||
1102 | + public ModelAndView newpaper() throws Exception { | ||
1103 | + logBefore(logger, Jurisdiction.getUsername() + "Paper详细信息"); | ||
962 | ModelAndView mv = this.getModelAndView(); | 1104 | ModelAndView mv = this.getModelAndView(); |
963 | PageData pd = new PageData(); | 1105 | PageData pd = new PageData(); |
964 | pd = this.getPageData(); | 1106 | pd = this.getPageData(); |
965 | - String paperType = pd.getString("PAPER_TYPE") ; | 1107 | + String paperType = pd.getString("PAPER_TYPE"); |
966 | Paper paper = new Paper(); | 1108 | Paper paper = new Paper(); |
967 | paper.setTitle(pd.getString("NAME")); | 1109 | paper.setTitle(pd.getString("NAME")); |
968 | paper.setExam_time(pd.getString("TIME")); | 1110 | paper.setExam_time(pd.getString("TIME")); |
969 | Session session = Jurisdiction.getSession(); | 1111 | Session session = Jurisdiction.getSession(); |
970 | - User user = (User)session.getAttribute(Const.SESSION_USER); | 1112 | + User user = (User) session.getAttribute(Const.SESSION_USER); |
971 | paper.setUser_id(user.getUSER_ID()); | 1113 | paper.setUser_id(user.getUSER_ID()); |
972 | - paper.setPaper_type(paperType == null || "".equals(paperType.trim()) ? "1" :paperType); | 1114 | + paper.setPaper_type(paperType == null || "".equals(paperType.trim()) ? "1" |
1115 | + : paperType); | ||
973 | String subjectId = pd.getString("SUBJECT_ID"); | 1116 | String subjectId = pd.getString("SUBJECT_ID"); |
974 | - paper.setSubject_id(subjectId == null || "".equals(subjectId.trim())? getSubjectId():subjectId); | 1117 | + paper.setSubject_id(subjectId == null || "".equals(subjectId.trim()) ? getSubjectId() |
1118 | + : subjectId); | ||
975 | String gradeId = pd.getString("GRADE_ID"); | 1119 | String gradeId = pd.getString("GRADE_ID"); |
976 | - paper.setGrade_id( gradeId== null || "".equals(gradeId.trim())? getGradeID() : gradeId); | ||
977 | - String schoolId = pd.getString("SCHOOL_ID") ; | ||
978 | - paper.setSchool_id(schoolId == null || "".equals(schoolId.trim())? getSchoolID() : schoolId); | 1120 | + paper.setGrade_id(gradeId == null || "".equals(gradeId.trim()) ? getGradeID() |
1121 | + : gradeId); | ||
1122 | + String schoolId = pd.getString("SCHOOL_ID"); | ||
1123 | + paper.setSchool_id(schoolId == null || "".equals(schoolId.trim()) ? getSchoolID() | ||
1124 | + : schoolId); | ||
979 | paper.setQuestions(new ArrayList<Question>()); | 1125 | paper.setQuestions(new ArrayList<Question>()); |
980 | - | 1126 | + |
981 | pd.put("JSON", paper.toJson()); | 1127 | pd.put("JSON", paper.toJson()); |
982 | logger.info(paper.toJson()); | 1128 | logger.info(paper.toJson()); |
983 | - | 1129 | + |
984 | String TEMPLATE_ID = pd.getString("TEMPLATE_ID"); | 1130 | String TEMPLATE_ID = pd.getString("TEMPLATE_ID"); |
985 | - if(TEMPLATE_ID != null && !"".equals(TEMPLATE_ID)){ | 1131 | + if (TEMPLATE_ID != null && !"".equals(TEMPLATE_ID)) { |
986 | pd.put("PAGETEMPLATE_ID", TEMPLATE_ID); | 1132 | pd.put("PAGETEMPLATE_ID", TEMPLATE_ID); |
987 | PageData template = pagetemplateService.findById(pd); | 1133 | PageData template = pagetemplateService.findById(pd); |
988 | mv.addObject("TEMPLEATE", template); | 1134 | mv.addObject("TEMPLEATE", template); |
989 | } | 1135 | } |
990 | - | ||
991 | - if(isChineseLanguageClient()){ | 1136 | + |
1137 | + if (isChineseLanguageClient()) { | ||
992 | mv.setViewName("sunvote/teacher/creat_question"); | 1138 | mv.setViewName("sunvote/teacher/creat_question"); |
993 | - }else{ | 1139 | + } else { |
994 | mv.setViewName("sunvote/teacher/en_creat_question"); | 1140 | mv.setViewName("sunvote/teacher/en_creat_question"); |
995 | } | 1141 | } |
996 | mv.addObject("pd", pd); | 1142 | mv.addObject("pd", pd); |
997 | - if(paperType != null && "2".equals(paperType)){ | 1143 | + if (paperType != null && "2".equals(paperType)) { |
998 | mv.addObject("JUMP_URL", "/main/admin"); | 1144 | mv.addObject("JUMP_URL", "/main/admin"); |
999 | - }else{ | 1145 | + } else { |
1000 | mv.addObject("JUMP_URL", "/main/teacher"); | 1146 | mv.addObject("JUMP_URL", "/main/teacher"); |
1001 | } | 1147 | } |
1002 | - mv.addObject("QX",Jurisdiction.getHC()); //按钮权限 | 1148 | + mv.addObject("QX", Jurisdiction.getHC()); // 按钮权限 |
1003 | return mv; | 1149 | return mv; |
1004 | } | 1150 | } |
1005 | - | ||
1006 | - | ||
1007 | - | ||
1008 | - /**列表 | 1151 | + |
1152 | + /** | ||
1153 | + * 列表 | ||
1154 | + * | ||
1009 | * @param page | 1155 | * @param page |
1010 | * @throws Exception | 1156 | * @throws Exception |
1011 | */ | 1157 | */ |
1012 | - @RequestMapping(value="/list2") | ||
1013 | - public ModelAndView list2(Page page) throws Exception{ | ||
1014 | - logBefore(logger, Jurisdiction.getUsername()+"列表Paper"); | ||
1015 | - //if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;} //校验权限(无权查看时页面会有提示,如果不注释掉这句代码就无法进入列表页面,所以根据情况是否加入本句代码) | 1158 | + @RequestMapping(value = "/list2") |
1159 | + public ModelAndView list2(Page page) throws Exception { | ||
1160 | + logBefore(logger, Jurisdiction.getUsername() + "列表Paper"); | ||
1161 | + // if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;} | ||
1162 | + // //校验权限(无权查看时页面会有提示,如果不注释掉这句代码就无法进入列表页面,所以根据情况是否加入本句代码) | ||
1016 | ModelAndView mv = this.getModelAndView(); | 1163 | ModelAndView mv = this.getModelAndView(); |
1017 | PageData pd = new PageData(); | 1164 | PageData pd = new PageData(); |
1018 | pd = this.getPageData(); | 1165 | pd = this.getPageData(); |
1019 | - String keywords = pd.getString("keywords"); //关键词检索条件 | ||
1020 | - if(null != keywords && !"".equals(keywords)){ | 1166 | + String keywords = pd.getString("keywords"); // 关键词检索条件 |
1167 | + if (null != keywords && !"".equals(keywords)) { | ||
1021 | pd.put("keywords", keywords.trim()); | 1168 | pd.put("keywords", keywords.trim()); |
1022 | } | 1169 | } |
1023 | String userID = getUserID(); | 1170 | String userID = getUserID(); |
1024 | pd.put("USER_ID", userID); | 1171 | pd.put("USER_ID", userID); |
1025 | - pd.put("PAPER_TYPE","1"); | 1172 | + pd.put("PAPER_TYPE", "1"); |
1026 | page.setPd(pd); | 1173 | page.setPd(pd); |
1027 | - List<PageData> varList = paperService.list(page); //列出Paper列表 | 1174 | + List<PageData> varList = paperService.list(page); // 列出Paper列表 |
1028 | page.setLangIsChina(isChineseLanguageClient()); | 1175 | page.setLangIsChina(isChineseLanguageClient()); |
1029 | - if(isChineseLanguageClient()){ | 1176 | + if (isChineseLanguageClient()) { |
1030 | mv.setViewName("sunvote/paper/paper_list2"); | 1177 | mv.setViewName("sunvote/paper/paper_list2"); |
1031 | - }else{ | 1178 | + } else { |
1032 | mv.setViewName("sunvote/paper/en_paper_list2"); | 1179 | mv.setViewName("sunvote/paper/en_paper_list2"); |
1033 | } | 1180 | } |
1034 | - | ||
1035 | - for(PageData p:varList){ | 1181 | + |
1182 | + for (PageData p : varList) { | ||
1036 | String examTime = p.getString("EXAM_TIME"); | 1183 | String examTime = p.getString("EXAM_TIME"); |
1037 | PageData temp = new PageData(); | 1184 | PageData temp = new PageData(); |
1038 | temp.put("PAPER_ID", p.getString("PAPER_ID")); | 1185 | temp.put("PAPER_ID", p.getString("PAPER_ID")); |
1039 | List<PageData> li = testpaperService.listAll(temp); | 1186 | List<PageData> li = testpaperService.listAll(temp); |
1040 | - if(examTime != null){ | ||
1041 | - try{ | 1187 | + if (examTime != null) { |
1188 | + try { | ||
1042 | int et = Integer.parseInt(examTime); | 1189 | int et = Integer.parseInt(examTime); |
1043 | - String min = (et / 60 ) + "" ; | ||
1044 | -// if(min.length() < 2){ | ||
1045 | -// min = "0" + min ; | ||
1046 | -// } | ||
1047 | - String sec = (et % 60 ) + "" ; | ||
1048 | - if(sec.length() < 2){ | ||
1049 | - sec = "0" + sec ; | 1190 | + String min = (et / 60) + ""; |
1191 | + // if(min.length() < 2){ | ||
1192 | + // min = "0" + min ; | ||
1193 | + // } | ||
1194 | + String sec = (et % 60) + ""; | ||
1195 | + if (sec.length() < 2) { | ||
1196 | + sec = "0" + sec; | ||
1050 | } | 1197 | } |
1051 | - if(et >= 60){ | ||
1052 | - examTime = min + "时" + sec+"分"; | ||
1053 | - }else{ | ||
1054 | - examTime = "0时" + sec+"分"; | 1198 | + if (et >= 60) { |
1199 | + examTime = min + "时" + sec + "分"; | ||
1200 | + } else { | ||
1201 | + examTime = "0时" + sec + "分"; | ||
1055 | } | 1202 | } |
1056 | - }catch(Exception e){ | 1203 | + } catch (Exception e) { |
1057 | e.printStackTrace(); | 1204 | e.printStackTrace(); |
1058 | } | 1205 | } |
1059 | } | 1206 | } |
1060 | - if(examTime == null){ | 1207 | + if (examTime == null) { |
1061 | examTime = "00:00"; | 1208 | examTime = "00:00"; |
1062 | } | 1209 | } |
1063 | p.put("EXAM_TIME", examTime); | 1210 | p.put("EXAM_TIME", examTime); |
1064 | p.put("TEST_NUM", li.size()); | 1211 | p.put("TEST_NUM", li.size()); |
1065 | } | 1212 | } |
1066 | - | 1213 | + |
1067 | mv.addObject("varList", varList); | 1214 | mv.addObject("varList", varList); |
1068 | mv.addObject("pd", pd); | 1215 | mv.addObject("pd", pd); |
1069 | - mv.addObject("QX",Jurisdiction.getHC()); //按钮权限 | 1216 | + mv.addObject("QX", Jurisdiction.getHC()); // 按钮权限 |
1070 | return mv; | 1217 | return mv; |
1071 | } | 1218 | } |
1072 | - | ||
1073 | - /**列表 | 1219 | + |
1220 | + /** | ||
1221 | + * 列表 | ||
1222 | + * | ||
1074 | * @param page | 1223 | * @param page |
1075 | * @throws Exception | 1224 | * @throws Exception |
1076 | */ | 1225 | */ |
1077 | - @RequestMapping(value="/list4") | ||
1078 | - public ModelAndView list4(Page page) throws Exception{ | 1226 | + @RequestMapping(value = "/list4") |
1227 | + public ModelAndView list4(Page page) throws Exception { | ||
1079 | ModelAndView mv = this.getModelAndView(); | 1228 | ModelAndView mv = this.getModelAndView(); |
1080 | PageData pd = new PageData(); | 1229 | PageData pd = new PageData(); |
1081 | pd = this.getPageData(); | 1230 | pd = this.getPageData(); |
1082 | - String keywords = pd.getString("keywords"); //关键词检索条件 | ||
1083 | - if(null != keywords && !"".equals(keywords)){ | 1231 | + String keywords = pd.getString("keywords"); // 关键词检索条件 |
1232 | + if (null != keywords && !"".equals(keywords)) { | ||
1084 | pd.put("keywords", keywords.trim()); | 1233 | pd.put("keywords", keywords.trim()); |
1085 | } | 1234 | } |
1086 | - pd.put("PAPER_TYPE","1"); | 1235 | + pd.put("PAPER_TYPE", "1"); |
1087 | page.setPd(pd); | 1236 | page.setPd(pd); |
1088 | page.setLangIsChina(isChineseLanguageClient()); | 1237 | page.setLangIsChina(isChineseLanguageClient()); |
1089 | - List<PageData> varList = paperService.list(page); //列出Paper列表 | ||
1090 | -// pd.put("PAPER_TYPE","2"); | ||
1091 | -// List<PageData> varList2 = paperService.list(page); //列出Paper列表 | ||
1092 | -// varList.addAll(varList2); | ||
1093 | - if(isChineseLanguageClient()){ | 1238 | + List<PageData> varList = paperService.list(page); // 列出Paper列表 |
1239 | + // pd.put("PAPER_TYPE","2"); | ||
1240 | + // List<PageData> varList2 = paperService.list(page); //列出Paper列表 | ||
1241 | + // varList.addAll(varList2); | ||
1242 | + if (isChineseLanguageClient()) { | ||
1094 | mv.setViewName("sunvote/paper/paper_list4"); | 1243 | mv.setViewName("sunvote/paper/paper_list4"); |
1095 | - }else{ | 1244 | + } else { |
1096 | mv.setViewName("sunvote/paper/en_paper_list4"); | 1245 | mv.setViewName("sunvote/paper/en_paper_list4"); |
1097 | } | 1246 | } |
1098 | - | ||
1099 | - | ||
1100 | - for(PageData p:varList){ | 1247 | + |
1248 | + for (PageData p : varList) { | ||
1101 | String examTime = p.getString("EXAM_TIME"); | 1249 | String examTime = p.getString("EXAM_TIME"); |
1102 | PageData temp = new PageData(); | 1250 | PageData temp = new PageData(); |
1103 | temp.put("PAPER_ID", p.getString("PAPER_ID")); | 1251 | temp.put("PAPER_ID", p.getString("PAPER_ID")); |
1104 | List<PageData> li = testpaperService.listAll(temp); | 1252 | List<PageData> li = testpaperService.listAll(temp); |
1105 | - if(examTime != null){ | ||
1106 | - try{ | 1253 | + if (examTime != null) { |
1254 | + try { | ||
1107 | int et = Integer.parseInt(examTime); | 1255 | int et = Integer.parseInt(examTime); |
1108 | - String min = (et / 60 ) + "" ; | ||
1109 | -// if(min.length() < 2){ | ||
1110 | -// min = "0" + min ; | ||
1111 | -// } | ||
1112 | - String sec = (et % 60 ) + "" ; | ||
1113 | - if(sec.length() < 2){ | ||
1114 | - sec = "0" + sec ; | 1256 | + String min = (et / 60) + ""; |
1257 | + // if(min.length() < 2){ | ||
1258 | + // min = "0" + min ; | ||
1259 | + // } | ||
1260 | + String sec = (et % 60) + ""; | ||
1261 | + if (sec.length() < 2) { | ||
1262 | + sec = "0" + sec; | ||
1115 | } | 1263 | } |
1116 | - if(et >= 60){ | ||
1117 | - examTime = min + "时" + sec +"分"; | ||
1118 | - }else{ | ||
1119 | - examTime = "0时" + sec + "分"; | 1264 | + if (et >= 60) { |
1265 | + examTime = min + "时" + sec + "分"; | ||
1266 | + } else { | ||
1267 | + examTime = "0时" + sec + "分"; | ||
1120 | } | 1268 | } |
1121 | - }catch(Exception e){ | 1269 | + } catch (Exception e) { |
1122 | e.printStackTrace(); | 1270 | e.printStackTrace(); |
1123 | } | 1271 | } |
1124 | } | 1272 | } |
1125 | - if(examTime == null){ | 1273 | + if (examTime == null) { |
1126 | examTime = "0"; | 1274 | examTime = "0"; |
1127 | } | 1275 | } |
1128 | p.put("EXAM_TIME", examTime); | 1276 | p.put("EXAM_TIME", examTime); |
1129 | p.put("TEST_NUM", li.size()); | 1277 | p.put("TEST_NUM", li.size()); |
1130 | } | 1278 | } |
1131 | - | 1279 | + |
1132 | PageData tpd = new PageData(); | 1280 | PageData tpd = new PageData(); |
1133 | tpd.put("ID", getUserID()); | 1281 | tpd.put("ID", getUserID()); |
1134 | PageData adminInfos = v1Service.getAdminInfo(tpd); | 1282 | PageData adminInfos = v1Service.getAdminInfo(tpd); |
1135 | - List<PageData> gradeInfos = schoolgradesubjectService.listAllGrade(adminInfos); | ||
1136 | - List<PageData> subjectInfos = schoolgradesubjectService.listAllSubject(adminInfos); | ||
1137 | - | 1283 | + List<PageData> gradeInfos = schoolgradesubjectService |
1284 | + .listAllGrade(adminInfos); | ||
1285 | + List<PageData> subjectInfos = schoolgradesubjectService | ||
1286 | + .listAllSubject(adminInfos); | ||
1287 | + | ||
1138 | mv.addObject("gradeInfos", gradeInfos); | 1288 | mv.addObject("gradeInfos", gradeInfos); |
1139 | mv.addObject("subjectInfos", subjectInfos); | 1289 | mv.addObject("subjectInfos", subjectInfos); |
1140 | - | 1290 | + |
1141 | mv.addObject("varList", varList); | 1291 | mv.addObject("varList", varList); |
1142 | mv.addObject("pd", pd); | 1292 | mv.addObject("pd", pd); |
1143 | - mv.addObject("QX",Jurisdiction.getHC()); //按钮权限 | 1293 | + mv.addObject("QX", Jurisdiction.getHC()); // 按钮权限 |
1144 | return mv; | 1294 | return mv; |
1145 | } | 1295 | } |
1146 | - | ||
1147 | - | ||
1148 | - /**列表 | 1296 | + |
1297 | + /** | ||
1298 | + * 列表 | ||
1299 | + * | ||
1149 | * @param page | 1300 | * @param page |
1150 | * @throws Exception | 1301 | * @throws Exception |
1151 | */ | 1302 | */ |
1152 | - @RequestMapping(value="/list5") | ||
1153 | - public ModelAndView list5(Page page) throws Exception{ | 1303 | + @RequestMapping(value = "/list5") |
1304 | + public ModelAndView list5(Page page) throws Exception { | ||
1154 | ModelAndView mv = this.getModelAndView(); | 1305 | ModelAndView mv = this.getModelAndView(); |
1155 | PageData pd = new PageData(); | 1306 | PageData pd = new PageData(); |
1156 | pd = this.getPageData(); | 1307 | pd = this.getPageData(); |
1157 | - String keywords = pd.getString("keywords"); //关键词检索条件 | ||
1158 | - if(null != keywords && !"".equals(keywords)){ | 1308 | + String keywords = pd.getString("keywords"); // 关键词检索条件 |
1309 | + if (null != keywords && !"".equals(keywords)) { | ||
1159 | pd.put("keywords", keywords.trim()); | 1310 | pd.put("keywords", keywords.trim()); |
1160 | } | 1311 | } |
1161 | - pd.put("PAPER_TYPE","2"); | 1312 | + pd.put("PAPER_TYPE", "2"); |
1162 | pd.put("USER_ID", this.getUserID()); | 1313 | pd.put("USER_ID", this.getUserID()); |
1163 | page.setPd(pd); | 1314 | page.setPd(pd); |
1164 | page.setLangIsChina(isChineseLanguageClient()); | 1315 | page.setLangIsChina(isChineseLanguageClient()); |
1165 | - List<PageData> varList = paperService.list(page); //列出Paper列表 | ||
1166 | - if(isChineseLanguageClient()){ | 1316 | + List<PageData> varList = paperService.list(page); // 列出Paper列表 |
1317 | + if (isChineseLanguageClient()) { | ||
1167 | mv.setViewName("sunvote/paper/paper_list5"); | 1318 | mv.setViewName("sunvote/paper/paper_list5"); |
1168 | - }else{ | 1319 | + } else { |
1169 | mv.setViewName("sunvote/paper/en_paper_list5"); | 1320 | mv.setViewName("sunvote/paper/en_paper_list5"); |
1170 | } | 1321 | } |
1171 | - | ||
1172 | - for(PageData p:varList){ | 1322 | + |
1323 | + for (PageData p : varList) { | ||
1173 | String examTime = p.getString("EXAM_TIME"); | 1324 | String examTime = p.getString("EXAM_TIME"); |
1174 | PageData temp = new PageData(); | 1325 | PageData temp = new PageData(); |
1175 | temp.put("PAPER_ID", p.getString("PAPER_ID")); | 1326 | temp.put("PAPER_ID", p.getString("PAPER_ID")); |
1176 | List<PageData> li = testpaperService.listAll(temp); | 1327 | List<PageData> li = testpaperService.listAll(temp); |
1177 | - | ||
1178 | - if(examTime != null){ | ||
1179 | - try{ | 1328 | + |
1329 | + if (examTime != null) { | ||
1330 | + try { | ||
1180 | int et = Integer.parseInt(examTime); | 1331 | int et = Integer.parseInt(examTime); |
1181 | - String min = (et / 60 ) + "" ; | ||
1182 | -// if(min.length() < 2){ | ||
1183 | -// min = "0" + min ; | ||
1184 | -// } | ||
1185 | - String sec = (et % 60 ) + "" ; | ||
1186 | - if(sec.length() < 2){ | ||
1187 | - sec = "0" + sec ; | 1332 | + String min = (et / 60) + ""; |
1333 | + // if(min.length() < 2){ | ||
1334 | + // min = "0" + min ; | ||
1335 | + // } | ||
1336 | + String sec = (et % 60) + ""; | ||
1337 | + if (sec.length() < 2) { | ||
1338 | + sec = "0" + sec; | ||
1188 | } | 1339 | } |
1189 | - if(et >= 60){ | ||
1190 | - examTime = min + "时" + sec+"分"; | ||
1191 | - }else{ | ||
1192 | - examTime = "0时" + sec+"分"; | 1340 | + if (et >= 60) { |
1341 | + examTime = min + "时" + sec + "分"; | ||
1342 | + } else { | ||
1343 | + examTime = "0时" + sec + "分"; | ||
1193 | } | 1344 | } |
1194 | - }catch(Exception e){ | 1345 | + } catch (Exception e) { |
1195 | e.printStackTrace(); | 1346 | e.printStackTrace(); |
1196 | } | 1347 | } |
1197 | } | 1348 | } |
1198 | - if(examTime == null){ | 1349 | + if (examTime == null) { |
1199 | examTime = "0"; | 1350 | examTime = "0"; |
1200 | } | 1351 | } |
1201 | p.put("EXAM_TIME", examTime); | 1352 | p.put("EXAM_TIME", examTime); |
1202 | p.put("TEST_NUM", li.size()); | 1353 | p.put("TEST_NUM", li.size()); |
1203 | } | 1354 | } |
1204 | - | 1355 | + |
1205 | mv.addObject("varList", varList); | 1356 | mv.addObject("varList", varList); |
1206 | mv.addObject("pd", pd); | 1357 | mv.addObject("pd", pd); |
1207 | - mv.addObject("QX",Jurisdiction.getHC()); //按钮权限 | 1358 | + mv.addObject("QX", Jurisdiction.getHC()); // 按钮权限 |
1208 | return mv; | 1359 | return mv; |
1209 | } | 1360 | } |
1210 | - | ||
1211 | - /**列表 | 1361 | + |
1362 | + /** | ||
1363 | + * 列表 | ||
1364 | + * | ||
1212 | * @param page | 1365 | * @param page |
1213 | * @throws Exception | 1366 | * @throws Exception |
1214 | */ | 1367 | */ |
1215 | - @RequestMapping(value="/list3") | ||
1216 | - public ModelAndView list3(Page page) throws Exception{ | ||
1217 | - logBefore(logger, Jurisdiction.getUsername()+"列表Paper"); | ||
1218 | - //if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;} //校验权限(无权查看时页面会有提示,如果不注释掉这句代码就无法进入列表页面,所以根据情况是否加入本句代码) | 1368 | + @RequestMapping(value = "/list3") |
1369 | + public ModelAndView list3(Page page) throws Exception { | ||
1370 | + logBefore(logger, Jurisdiction.getUsername() + "列表Paper"); | ||
1371 | + // if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;} | ||
1372 | + // //校验权限(无权查看时页面会有提示,如果不注释掉这句代码就无法进入列表页面,所以根据情况是否加入本句代码) | ||
1219 | ModelAndView mv = this.getModelAndView(); | 1373 | ModelAndView mv = this.getModelAndView(); |
1220 | PageData pd = new PageData(); | 1374 | PageData pd = new PageData(); |
1221 | pd = this.getPageData(); | 1375 | pd = this.getPageData(); |
1222 | - String keywords = pd.getString("keywords"); //关键词检索条件 | ||
1223 | - if(null != keywords && !"".equals(keywords)){ | 1376 | + String keywords = pd.getString("keywords"); // 关键词检索条件 |
1377 | + if (null != keywords && !"".equals(keywords)) { | ||
1224 | pd.put("keywords", keywords.trim()); | 1378 | pd.put("keywords", keywords.trim()); |
1225 | } | 1379 | } |
1226 | String userID = getUserID(); | 1380 | String userID = getUserID(); |
1227 | pd.put("USER_ID", userID); | 1381 | pd.put("USER_ID", userID); |
1228 | - pd.put("PAPER_TYPE","101"); | 1382 | + pd.put("PAPER_TYPE", "101"); |
1229 | page.setPd(pd); | 1383 | page.setPd(pd); |
1230 | - List<PageData> varList = paperService.list(page); //列出Paper列表 | 1384 | + List<PageData> varList = paperService.list(page); // 列出Paper列表 |
1231 | mv.setViewName("sunvote/paper/paper_list2"); | 1385 | mv.setViewName("sunvote/paper/paper_list2"); |
1232 | - | ||
1233 | - for(PageData p:varList){ | 1386 | + |
1387 | + for (PageData p : varList) { | ||
1234 | String examTime = p.getString("EXAM_TIME"); | 1388 | String examTime = p.getString("EXAM_TIME"); |
1235 | - if(examTime != null){ | ||
1236 | - try{ | 1389 | + if (examTime != null) { |
1390 | + try { | ||
1237 | int et = Integer.parseInt(examTime); | 1391 | int et = Integer.parseInt(examTime); |
1238 | - String min = (et / 60 ) + "" ; | ||
1239 | -// if(min.length() < 2){ | ||
1240 | -// min = "0" + min ; | ||
1241 | -// } | ||
1242 | - String sec = (et % 60 ) + "" ; | ||
1243 | - if(sec.length() < 2){ | ||
1244 | - sec = "0" + sec ; | 1392 | + String min = (et / 60) + ""; |
1393 | + // if(min.length() < 2){ | ||
1394 | + // min = "0" + min ; | ||
1395 | + // } | ||
1396 | + String sec = (et % 60) + ""; | ||
1397 | + if (sec.length() < 2) { | ||
1398 | + sec = "0" + sec; | ||
1245 | } | 1399 | } |
1246 | - if(et > 60){ | ||
1247 | - examTime = min + "时" + sec+"分"; | ||
1248 | - }else{ | ||
1249 | - examTime = "0时" + sec+"分"; | 1400 | + if (et > 60) { |
1401 | + examTime = min + "时" + sec + "分"; | ||
1402 | + } else { | ||
1403 | + examTime = "0时" + sec + "分"; | ||
1250 | } | 1404 | } |
1251 | - }catch(Exception e){ | 1405 | + } catch (Exception e) { |
1252 | e.printStackTrace(); | 1406 | e.printStackTrace(); |
1253 | } | 1407 | } |
1254 | } | 1408 | } |
1255 | - if(examTime == null){ | 1409 | + if (examTime == null) { |
1256 | examTime = "0"; | 1410 | examTime = "0"; |
1257 | } | 1411 | } |
1258 | p.put("EXAM_TIME", examTime); | 1412 | p.put("EXAM_TIME", examTime); |
1259 | } | 1413 | } |
1260 | - | 1414 | + |
1261 | mv.addObject("varList", varList); | 1415 | mv.addObject("varList", varList); |
1262 | mv.addObject("pd", pd); | 1416 | mv.addObject("pd", pd); |
1263 | - mv.addObject("QX",Jurisdiction.getHC()); //按钮权限 | 1417 | + mv.addObject("QX", Jurisdiction.getHC()); // 按钮权限 |
1264 | return mv; | 1418 | return mv; |
1265 | } | 1419 | } |
1266 | - | ||
1267 | - /**去新增页面 | 1420 | + |
1421 | + /** | ||
1422 | + * 去新增页面 | ||
1423 | + * | ||
1268 | * @param | 1424 | * @param |
1269 | * @throws Exception | 1425 | * @throws Exception |
1270 | */ | 1426 | */ |
1271 | - @RequestMapping(value="/goAdd") | ||
1272 | - public ModelAndView goAdd()throws Exception{ | 1427 | + @RequestMapping(value = "/goAdd") |
1428 | + public ModelAndView goAdd() throws Exception { | ||
1273 | ModelAndView mv = this.getModelAndView(); | 1429 | ModelAndView mv = this.getModelAndView(); |
1274 | PageData pd = new PageData(); | 1430 | PageData pd = new PageData(); |
1275 | pd = this.getPageData(); | 1431 | pd = this.getPageData(); |
@@ -1277,14 +1433,16 @@ public class PaperController extends BaseController { | @@ -1277,14 +1433,16 @@ public class PaperController extends BaseController { | ||
1277 | mv.addObject("msg", "save"); | 1433 | mv.addObject("msg", "save"); |
1278 | mv.addObject("pd", pd); | 1434 | mv.addObject("pd", pd); |
1279 | return mv; | 1435 | return mv; |
1280 | - } | ||
1281 | - | ||
1282 | - /**去新增页面 | 1436 | + } |
1437 | + | ||
1438 | + /** | ||
1439 | + * 去新增页面 | ||
1440 | + * | ||
1283 | * @param | 1441 | * @param |
1284 | * @throws Exception | 1442 | * @throws Exception |
1285 | */ | 1443 | */ |
1286 | - @RequestMapping(value="/goAddTest") | ||
1287 | - public ModelAndView goAddTest()throws Exception{ | 1444 | + @RequestMapping(value = "/goAddTest") |
1445 | + public ModelAndView goAddTest() throws Exception { | ||
1288 | ModelAndView mv = this.getModelAndView(); | 1446 | ModelAndView mv = this.getModelAndView(); |
1289 | PageData pd = new PageData(); | 1447 | PageData pd = new PageData(); |
1290 | pd = this.getPageData(); | 1448 | pd = this.getPageData(); |
@@ -1292,102 +1450,112 @@ public class PaperController extends BaseController { | @@ -1292,102 +1450,112 @@ public class PaperController extends BaseController { | ||
1292 | mv.addObject("msg", "newpaper"); | 1450 | mv.addObject("msg", "newpaper"); |
1293 | mv.addObject("pd", pd); | 1451 | mv.addObject("pd", pd); |
1294 | return mv; | 1452 | return mv; |
1295 | - } | ||
1296 | - | ||
1297 | - /**去修改页面 | 1453 | + } |
1454 | + | ||
1455 | + /** | ||
1456 | + * 去修改页面 | ||
1457 | + * | ||
1298 | * @param | 1458 | * @param |
1299 | * @throws Exception | 1459 | * @throws Exception |
1300 | */ | 1460 | */ |
1301 | - @RequestMapping(value="/goEdit") | ||
1302 | - public ModelAndView goEdit()throws Exception{ | 1461 | + @RequestMapping(value = "/goEdit") |
1462 | + public ModelAndView goEdit() throws Exception { | ||
1303 | ModelAndView mv = this.getModelAndView(); | 1463 | ModelAndView mv = this.getModelAndView(); |
1304 | PageData pd = new PageData(); | 1464 | PageData pd = new PageData(); |
1305 | pd = this.getPageData(); | 1465 | pd = this.getPageData(); |
1306 | - pd = paperService.findById(pd); //根据ID读取 | 1466 | + pd = paperService.findById(pd); // 根据ID读取 |
1307 | mv.setViewName("sunvote/paper/paper_edit"); | 1467 | mv.setViewName("sunvote/paper/paper_edit"); |
1308 | mv.addObject("msg", "edit"); | 1468 | mv.addObject("msg", "edit"); |
1309 | mv.addObject("pd", pd); | 1469 | mv.addObject("pd", pd); |
1310 | return mv; | 1470 | return mv; |
1311 | - } | ||
1312 | - | ||
1313 | - /**批量删除 | 1471 | + } |
1472 | + | ||
1473 | + /** | ||
1474 | + * 批量删除 | ||
1475 | + * | ||
1314 | * @param | 1476 | * @param |
1315 | * @throws Exception | 1477 | * @throws Exception |
1316 | */ | 1478 | */ |
1317 | - @RequestMapping(value="/deleteAll") | 1479 | + @RequestMapping(value = "/deleteAll") |
1318 | @ResponseBody | 1480 | @ResponseBody |
1319 | - public Object deleteAll() throws Exception{ | ||
1320 | - logBefore(logger, Jurisdiction.getUsername()+"批量删除Paper"); | ||
1321 | -// if(!Jurisdiction.buttonJurisdiction(menuUrl, "del")){return null;} //校验权限 | ||
1322 | - PageData pd = new PageData(); | ||
1323 | - Map<String,Object> map = new HashMap<String,Object>(); | 1481 | + public Object deleteAll() throws Exception { |
1482 | + logBefore(logger, Jurisdiction.getUsername() + "批量删除Paper"); | ||
1483 | + // if(!Jurisdiction.buttonJurisdiction(menuUrl, "del")){return null;} | ||
1484 | + // //校验权限 | ||
1485 | + PageData pd = new PageData(); | ||
1486 | + Map<String, Object> map = new HashMap<String, Object>(); | ||
1324 | pd = this.getPageData(); | 1487 | pd = this.getPageData(); |
1325 | List<PageData> pdList = new ArrayList<PageData>(); | 1488 | List<PageData> pdList = new ArrayList<PageData>(); |
1326 | String DATA_IDS = pd.getString("DATA_IDS"); | 1489 | String DATA_IDS = pd.getString("DATA_IDS"); |
1327 | - if(null != DATA_IDS && !"".equals(DATA_IDS)){ | 1490 | + if (null != DATA_IDS && !"".equals(DATA_IDS)) { |
1328 | String ArrayDATA_IDS[] = DATA_IDS.split(","); | 1491 | String ArrayDATA_IDS[] = DATA_IDS.split(","); |
1329 | paperService.deleteAll(ArrayDATA_IDS); | 1492 | paperService.deleteAll(ArrayDATA_IDS); |
1330 | paperquestionService.deleteAllPaper(ArrayDATA_IDS); | 1493 | paperquestionService.deleteAllPaper(ArrayDATA_IDS); |
1331 | pd.put("msg", "ok"); | 1494 | pd.put("msg", "ok"); |
1332 | - }else{ | 1495 | + } else { |
1333 | pd.put("msg", "no"); | 1496 | pd.put("msg", "no"); |
1334 | } | 1497 | } |
1335 | pdList.add(pd); | 1498 | pdList.add(pd); |
1336 | map.put("list", pdList); | 1499 | map.put("list", pdList); |
1337 | return AppUtil.returnObject(pd, map); | 1500 | return AppUtil.returnObject(pd, map); |
1338 | } | 1501 | } |
1339 | - | ||
1340 | - /**导出到excel | 1502 | + |
1503 | + /** | ||
1504 | + * 导出到excel | ||
1505 | + * | ||
1341 | * @param | 1506 | * @param |
1342 | * @throws Exception | 1507 | * @throws Exception |
1343 | */ | 1508 | */ |
1344 | - @RequestMapping(value="/excel") | ||
1345 | - public ModelAndView exportExcel() throws Exception{ | ||
1346 | - logBefore(logger, Jurisdiction.getUsername()+"导出Paper到excel"); | ||
1347 | - if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;} | 1509 | + @RequestMapping(value = "/excel") |
1510 | + public ModelAndView exportExcel() throws Exception { | ||
1511 | + logBefore(logger, Jurisdiction.getUsername() + "导出Paper到excel"); | ||
1512 | + if (!Jurisdiction.buttonJurisdiction(menuUrl, "cha")) { | ||
1513 | + return null; | ||
1514 | + } | ||
1348 | ModelAndView mv = new ModelAndView(); | 1515 | ModelAndView mv = new ModelAndView(); |
1349 | PageData pd = new PageData(); | 1516 | PageData pd = new PageData(); |
1350 | pd = this.getPageData(); | 1517 | pd = this.getPageData(); |
1351 | - Map<String,Object> dataMap = new HashMap<String,Object>(); | 1518 | + Map<String, Object> dataMap = new HashMap<String, Object>(); |
1352 | List<String> titles = new ArrayList<String>(); | 1519 | List<String> titles = new ArrayList<String>(); |
1353 | - titles.add("试卷标题"); //1 | ||
1354 | - titles.add("出卷老师"); //2 | ||
1355 | - titles.add("试卷类型"); //3 | ||
1356 | - titles.add("科目"); //4 | ||
1357 | - titles.add("年级"); //5 | ||
1358 | - titles.add("学校"); //6 | ||
1359 | - titles.add("创建时间"); //7 | ||
1360 | - titles.add("修改时间"); //8 | ||
1361 | - titles.add("建议考试时长"); //9 | ||
1362 | - titles.add("试卷状态"); //10 | ||
1363 | - titles.add("备注"); //11 | 1520 | + titles.add("试卷标题"); // 1 |
1521 | + titles.add("出卷老师"); // 2 | ||
1522 | + titles.add("试卷类型"); // 3 | ||
1523 | + titles.add("科目"); // 4 | ||
1524 | + titles.add("年级"); // 5 | ||
1525 | + titles.add("学校"); // 6 | ||
1526 | + titles.add("创建时间"); // 7 | ||
1527 | + titles.add("修改时间"); // 8 | ||
1528 | + titles.add("建议考试时长"); // 9 | ||
1529 | + titles.add("试卷状态"); // 10 | ||
1530 | + titles.add("备注"); // 11 | ||
1364 | dataMap.put("titles", titles); | 1531 | dataMap.put("titles", titles); |
1365 | List<PageData> varOList = paperService.listAll(pd); | 1532 | List<PageData> varOList = paperService.listAll(pd); |
1366 | List<PageData> varList = new ArrayList<PageData>(); | 1533 | List<PageData> varList = new ArrayList<PageData>(); |
1367 | - for(int i=0;i<varOList.size();i++){ | 1534 | + for (int i = 0; i < varOList.size(); i++) { |
1368 | PageData vpd = new PageData(); | 1535 | PageData vpd = new PageData(); |
1369 | - vpd.put("var1", varOList.get(i).getString("TITLE")); //1 | ||
1370 | - vpd.put("var2", varOList.get(i).getString("USER_ID")); //2 | ||
1371 | - vpd.put("var3", varOList.get(i).getString("PAPER_TYPE")); //3 | ||
1372 | - vpd.put("var4", varOList.get(i).getString("SUBJECT_ID")); //4 | ||
1373 | - vpd.put("var5", varOList.get(i).getString("GRADE_ID")); //5 | ||
1374 | - vpd.put("var6", varOList.get(i).getString("SCHOOL_ID")); //6 | ||
1375 | - vpd.put("var7", varOList.get(i).getString("CREATE_DATE")); //7 | ||
1376 | - vpd.put("var8", varOList.get(i).getString("MODIFY_DATE")); //8 | ||
1377 | - vpd.put("var9", varOList.get(i).getString("EXAM_TIME")); //9 | ||
1378 | - vpd.put("var10", varOList.get(i).getString("PAPER_STATE")); //10 | ||
1379 | - vpd.put("var11", varOList.get(i).getString("REMARK")); //11 | 1536 | + vpd.put("var1", varOList.get(i).getString("TITLE")); // 1 |
1537 | + vpd.put("var2", varOList.get(i).getString("USER_ID")); // 2 | ||
1538 | + vpd.put("var3", varOList.get(i).getString("PAPER_TYPE")); // 3 | ||
1539 | + vpd.put("var4", varOList.get(i).getString("SUBJECT_ID")); // 4 | ||
1540 | + vpd.put("var5", varOList.get(i).getString("GRADE_ID")); // 5 | ||
1541 | + vpd.put("var6", varOList.get(i).getString("SCHOOL_ID")); // 6 | ||
1542 | + vpd.put("var7", varOList.get(i).getString("CREATE_DATE")); // 7 | ||
1543 | + vpd.put("var8", varOList.get(i).getString("MODIFY_DATE")); // 8 | ||
1544 | + vpd.put("var9", varOList.get(i).getString("EXAM_TIME")); // 9 | ||
1545 | + vpd.put("var10", varOList.get(i).getString("PAPER_STATE")); // 10 | ||
1546 | + vpd.put("var11", varOList.get(i).getString("REMARK")); // 11 | ||
1380 | varList.add(vpd); | 1547 | varList.add(vpd); |
1381 | } | 1548 | } |
1382 | dataMap.put("varList", varList); | 1549 | dataMap.put("varList", varList); |
1383 | ObjectExcelView erv = new ObjectExcelView(); | 1550 | ObjectExcelView erv = new ObjectExcelView(); |
1384 | - mv = new ModelAndView(erv,dataMap); | 1551 | + mv = new ModelAndView(erv, dataMap); |
1385 | return mv; | 1552 | return mv; |
1386 | } | 1553 | } |
1387 | - | 1554 | + |
1388 | @InitBinder | 1555 | @InitBinder |
1389 | - public void initBinder(WebDataBinder binder){ | 1556 | + public void initBinder(WebDataBinder binder) { |
1390 | DateFormat format = new SimpleDateFormat("yyyy-MM-dd"); | 1557 | DateFormat format = new SimpleDateFormat("yyyy-MM-dd"); |
1391 | - binder.registerCustomEditor(Date.class, new CustomDateEditor(format,true)); | 1558 | + binder.registerCustomEditor(Date.class, new CustomDateEditor(format, |
1559 | + true)); | ||
1392 | } | 1560 | } |
1393 | } | 1561 | } |
src/com/fh/util/ObjectExcelView2.java
@@ -60,36 +60,38 @@ public class ObjectExcelView2 extends AbstractExcelView{ | @@ -60,36 +60,38 @@ public class ObjectExcelView2 extends AbstractExcelView{ | ||
60 | contentStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); | 60 | contentStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); |
61 | List<PageData> varList = (List<PageData>) model.get("varList"); | 61 | List<PageData> varList = (List<PageData>) model.get("varList"); |
62 | int varCount = varList.size(); | 62 | int varCount = varList.size(); |
63 | + Integer test_num =0; | ||
63 | for(int i=0; i<varCount; i++){ | 64 | for(int i=0; i<varCount; i++){ |
64 | PageData vpd = varList.get(i); | 65 | PageData vpd = varList.get(i); |
66 | + List<String> score = (List<String>)vpd.get("var6"); | ||
65 | 67 | ||
66 | for(int j=0;j<len;j++){ | 68 | for(int j=0;j<len;j++){ |
67 | if(j<5){ | 69 | if(j<5){ |
68 | - List<String> score = (List<String>)vpd.get("var6"); | ||
69 | - if(score.size()>0){ | ||
70 | - CellRangeAddress region = new CellRangeAddress(i*score.size()+1, i*score.size()+score.size(), j, j); | 70 | + |
71 | + if(score.size()>1){ | ||
72 | + CellRangeAddress region = new CellRangeAddress(test_num+1, test_num+score.size(), j, j); | ||
71 | sheet.addMergedRegion(region); | 73 | sheet.addMergedRegion(region); |
72 | } | 74 | } |
73 | 75 | ||
74 | String varstr = vpd.getString("var"+(j+1)) != null ? vpd.getString("var"+(j+1)) : ""; | 76 | String varstr = vpd.getString("var"+(j+1)) != null ? vpd.getString("var"+(j+1)) : ""; |
75 | - cell = getCell(sheet, i*score.size()+1, j); | 77 | + cell = getCell(sheet, test_num+1, j); |
76 | cell.setCellStyle(contentStyle); | 78 | cell.setCellStyle(contentStyle); |
77 | setText(cell,varstr); | 79 | setText(cell,varstr); |
78 | }else{ | 80 | }else{ |
79 | - List<String> score = (List<String>)vpd.get("var6"); | 81 | + //List<String> score = (List<String>)vpd.get("var6"); |
80 | for(int x=0;x<score.size();x++){ | 82 | for(int x=0;x<score.size();x++){ |
81 | String varstr = vpd.getString("var"+(j+1)) != null ? vpd.getString("var"+(j+1)) : ""; | 83 | String varstr = vpd.getString("var"+(j+1)) != null ? vpd.getString("var"+(j+1)) : ""; |
82 | varstr = varstr.replace("[", ""); | 84 | varstr = varstr.replace("[", ""); |
83 | varstr = varstr.replace("]", ""); | 85 | varstr = varstr.replace("]", ""); |
84 | String[] s = varstr.split(","); | 86 | String[] s = varstr.split(","); |
85 | - cell = getCell(sheet, i*score.size()+1+x, j); | 87 | + cell = getCell(sheet, test_num+1+x, j); |
86 | cell.setCellStyle(contentStyle); | 88 | cell.setCellStyle(contentStyle); |
87 | setText(cell,s[x]); | 89 | setText(cell,s[x]); |
88 | } | 90 | } |
89 | 91 | ||
90 | } | 92 | } |
91 | } | 93 | } |
92 | - | 94 | + test_num = score.size()+test_num; |
93 | } | 95 | } |
94 | 96 | ||
95 | } | 97 | } |