Blame view

src/com/fh/controller/sunvote/homework/HomeworkController.java 17.4 KB
be2f84a1   孙向锦   添加课后作业基础模块数据
1
2
3
4
5
6
7
8
9
10
  package com.fh.controller.sunvote.homework;
  
  import java.io.PrintWriter;
  import java.text.DateFormat;
  import java.text.SimpleDateFormat;
  import java.util.ArrayList;
  import java.util.Date;
  import java.util.HashMap;
  import java.util.List;
  import java.util.Map;
a479f295   孙向锦   添加了报表逻辑
11
  
be2f84a1   孙向锦   添加课后作业基础模块数据
12
  import javax.annotation.Resource;
a479f295   孙向锦   添加了报表逻辑
13
  
be2f84a1   孙向锦   添加课后作业基础模块数据
14
15
16
17
18
19
20
  import org.springframework.beans.propertyeditors.CustomDateEditor;
  import org.springframework.stereotype.Controller;
  import org.springframework.web.bind.WebDataBinder;
  import org.springframework.web.bind.annotation.InitBinder;
  import org.springframework.web.bind.annotation.RequestMapping;
  import org.springframework.web.bind.annotation.ResponseBody;
  import org.springframework.web.servlet.ModelAndView;
a479f295   孙向锦   添加了报表逻辑
21
  
5162dcee   孙向锦   添加上传作业接口
22
23
24
  import com.fh.bean.HomeClass;
  import com.fh.bean.Homework;
  import com.fh.bean.HomeworkQuestion;
2514d928   孙向锦   添加课后作ye,API
25
  import com.fh.controller.api.ResponseGson;
be2f84a1   孙向锦   添加课后作业基础模块数据
26
27
  import com.fh.controller.base.BaseController;
  import com.fh.entity.Page;
fcd1fe57   孙向锦   报表数据
28
  import com.fh.service.sunvote.coursemanagement.CourseManagementManager;
a479f295   孙向锦   添加了报表逻辑
29
30
  import com.fh.service.sunvote.homework.HomeworkManager;
  import com.fh.service.sunvote.homework.HomeworkReportManager;
5162dcee   孙向锦   添加上传作业接口
31
  import com.fh.service.sunvote.homeworkproblem.HomeworkProblemManager;
be2f84a1   孙向锦   添加课后作业基础模块数据
32
  import com.fh.util.AppUtil;
a479f295   孙向锦   添加了报表逻辑
33
  import com.fh.util.Jurisdiction;
be2f84a1   孙向锦   添加课后作业基础模块数据
34
35
  import com.fh.util.ObjectExcelView;
  import com.fh.util.PageData;
a479f295   孙向锦   添加了报表逻辑
36
  import com.google.gson.Gson;
be2f84a1   孙向锦   添加课后作业基础模块数据
37
  
a479f295   孙向锦   添加了报表逻辑
38
39
  /**
   * 说明:作业 创建人:FH Q313596790 创建时间:2019-03-07
be2f84a1   孙向锦   添加课后作业基础模块数据
40
41
   */
  @Controller
a479f295   孙向锦   添加了报表逻辑
42
  @RequestMapping(value = "/homework")
be2f84a1   孙向锦   添加课后作业基础模块数据
43
  public class HomeworkController extends BaseController {
a479f295   孙向锦   添加了报表逻辑
44
45
46
  
  	String menuUrl = "homework/list.do"; // 菜单地址(权限用)
  	@Resource(name = "homeworkService")
be2f84a1   孙向锦   添加课后作业基础模块数据
47
  	private HomeworkManager homeworkService;
a479f295   孙向锦   添加了报表逻辑
48
49
  	@Resource(name = "homeworkReporService")
  	private HomeworkReportManager homeworkReporService;
02c4ed52   孙向锦   更新上传作业接口
50
51
  
  	@Resource(name = "homeworkproblemService")
5162dcee   孙向锦   添加上传作业接口
52
  	private HomeworkProblemManager homeworkproblemService;
fcd1fe57   孙向锦   报表数据
53
54
55
56
57
58
  	
  	@Resource(name="coursemanagementService")
  	private CourseManagementManager coursemanagementService;
  	
  	@Resource(name="homeworkReporService")
  	private HomeworkReportManager homeworkReporkService;
a479f295   孙向锦   添加了报表逻辑
59
60
61
62
  
  	/**
  	 * 保存
  	 * 
be2f84a1   孙向锦   添加课后作业基础模块数据
63
64
65
  	 * @param
  	 * @throws Exception
  	 */
a479f295   孙向锦   添加了报表逻辑
66
67
68
  	@RequestMapping(value = "/save")
  	public ModelAndView save() throws Exception {
  		logBefore(logger, Jurisdiction.getUsername() + "新增Homework");
be2f84a1   孙向锦   添加课后作业基础模块数据
69
70
71
  		ModelAndView mv = this.getModelAndView();
  		PageData pd = new PageData();
  		pd = this.getPageData();
a479f295   孙向锦   添加了报表逻辑
72
  		pd.put("HOMEWORK_ID", this.get32UUID()); // 主键
be2f84a1   孙向锦   添加课后作业基础模块数据
73
  		homeworkService.save(pd);
a479f295   孙向锦   添加了报表逻辑
74
  		mv.addObject("msg", "success");
be2f84a1   孙向锦   添加课后作业基础模块数据
75
76
77
  		mv.setViewName("save_result");
  		return mv;
  	}
a479f295   孙向锦   添加了报表逻辑
78
79
80
81
  
  	/**
  	 * 删除
  	 * 
be2f84a1   孙向锦   添加课后作业基础模块数据
82
83
84
  	 * @param out
  	 * @throws Exception
  	 */
a479f295   孙向锦   添加了报表逻辑
85
86
87
  	@RequestMapping(value = "/delete")
  	public void delete(PrintWriter out) throws Exception {
  		logBefore(logger, Jurisdiction.getUsername() + "删除Homework");
be2f84a1   孙向锦   添加课后作业基础模块数据
88
89
90
91
92
93
  		PageData pd = new PageData();
  		pd = this.getPageData();
  		homeworkService.delete(pd);
  		out.write("success");
  		out.close();
  	}
a479f295   孙向锦   添加了报表逻辑
94
95
96
97
  
  	/**
  	 * 修改
  	 * 
be2f84a1   孙向锦   添加课后作业基础模块数据
98
99
100
  	 * @param
  	 * @throws Exception
  	 */
a479f295   孙向锦   添加了报表逻辑
101
102
  	@RequestMapping(value = "/edit")
  	public ModelAndView edit() throws Exception {
be2f84a1   孙向锦   添加课后作业基础模块数据
103
104
105
  		ModelAndView mv = this.getModelAndView();
  		PageData pd = new PageData();
  		pd = this.getPageData();
02c4ed52   孙向锦   更新上传作业接口
106
  
a479f295   孙向锦   添加了报表逻辑
107
  		mv.addObject("msg", "success");
be2f84a1   孙向锦   添加课后作业基础模块数据
108
109
110
  		mv.setViewName("save_result");
  		return mv;
  	}
a479f295   孙向锦   添加了报表逻辑
111
112
113
114
  
  	/**
  	 * 列表
  	 * 
be2f84a1   孙向锦   添加课后作业基础模块数据
115
116
117
  	 * @param page
  	 * @throws Exception
  	 */
a479f295   孙向锦   添加了报表逻辑
118
119
120
  	@RequestMapping(value = "/list")
  	public ModelAndView list(Page page) throws Exception {
  		logBefore(logger, Jurisdiction.getUsername() + "列表Homework");
be2f84a1   孙向锦   添加课后作业基础模块数据
121
122
  		ModelAndView mv = this.getModelAndView();
  		PageData pd = new PageData();
2c6bc93d   孙向锦   更新作业
123
  		pd = this.getPageData();
a479f295   孙向锦   添加了报表逻辑
124
125
  		String keywords = pd.getString("keywords"); // 关键词检索条件
  		if (null != keywords && !"".equals(keywords)) {
be2f84a1   孙向锦   添加课后作业基础模块数据
126
127
128
  			pd.put("keywords", keywords.trim());
  		}
  		page.setPd(pd);
a479f295   孙向锦   添加了报表逻辑
129
  		List<PageData> varList = homeworkService.list(page); // 列出Homework列表
be2f84a1   孙向锦   添加课后作业基础模块数据
130
131
132
  		mv.setViewName("sunvote/homework/homework_list");
  		mv.addObject("varList", varList);
  		mv.addObject("pd", pd);
a479f295   孙向锦   添加了报表逻辑
133
  		mv.addObject("QX", Jurisdiction.getHC()); // 按钮权限
be2f84a1   孙向锦   添加课后作业基础模块数据
134
135
  		return mv;
  	}
a479f295   孙向锦   添加了报表逻辑
136
137
138
139
  
  	/**
  	 * 去新增页面
  	 * 
be2f84a1   孙向锦   添加课后作业基础模块数据
140
141
142
  	 * @param
  	 * @throws Exception
  	 */
a479f295   孙向锦   添加了报表逻辑
143
144
  	@RequestMapping(value = "/goAdd")
  	public ModelAndView goAdd() throws Exception {
be2f84a1   孙向锦   添加课后作业基础模块数据
145
146
147
148
149
150
151
  		ModelAndView mv = this.getModelAndView();
  		PageData pd = new PageData();
  		pd = this.getPageData();
  		mv.setViewName("sunvote/homework/homework_edit");
  		mv.addObject("msg", "save");
  		mv.addObject("pd", pd);
  		return mv;
a479f295   孙向锦   添加了报表逻辑
152
  	}
2c6bc93d   孙向锦   更新作业
153
  
85ea5817   孙向锦   布置练习更新
154
155
156
157
158
159
160
161
162
163
164
165
166
  	/**
  	 * 去新增页面
  	 * 
  	 * @param
  	 * @throws Exception
  	 */
  	@RequestMapping(value = "/goAdd2")
  	public ModelAndView goAdd2() throws Exception {
  		ModelAndView mv = this.getModelAndView();
  		PageData pd = new PageData();
  		pd = this.getPageData();
  		mv.setViewName("sunvote/homework/homework_edit2");
  		mv.addObject("msg", "save");
8952fd04   孙向锦   添加浏览功能
167
  		mv.addObject("operation", "add");
85ea5817   孙向锦   布置练习更新
168
169
170
  		mv.addObject("pd", pd);
  		return mv;
  	}
a479f295   孙向锦   添加了报表逻辑
171
172
173
174
  
  	/**
  	 * 去修改页面
  	 * 
be2f84a1   孙向锦   添加课后作业基础模块数据
175
176
177
  	 * @param
  	 * @throws Exception
  	 */
a479f295   孙向锦   添加了报表逻辑
178
179
  	@RequestMapping(value = "/goEdit")
  	public ModelAndView goEdit() throws Exception {
be2f84a1   孙向锦   添加课后作业基础模块数据
180
181
182
  		ModelAndView mv = this.getModelAndView();
  		PageData pd = new PageData();
  		pd = this.getPageData();
a479f295   孙向锦   添加了报表逻辑
183
  		pd = homeworkService.findById(pd); // 根据ID读取
be2f84a1   孙向锦   添加课后作业基础模块数据
184
185
186
187
  		mv.setViewName("sunvote/homework/homework_edit");
  		mv.addObject("msg", "edit");
  		mv.addObject("pd", pd);
  		return mv;
a479f295   孙向锦   添加了报表逻辑
188
  	}
5162dcee   孙向锦   添加上传作业接口
189
  
8fb81e72   =   1.增加练习列表页和布置练习页面
190
191
192
193
194
195
196
197
198
199
200
201
  	/**
  	 * 去修改页面
  	 * 
  	 * @param
  	 * @throws Exception
  	 */
  	@RequestMapping(value = "/goEdit2")
  	public ModelAndView goEdit2() throws Exception {
  		ModelAndView mv = this.getModelAndView();
  		PageData pd = new PageData();
  		pd = this.getPageData();
  		pd = homeworkService.findById(pd); // 根据ID读取
85ea5817   孙向锦   布置练习更新
202
  		pd.put("QUESTIONS", homeworkproblemService.listProblem(pd));
fcd1fe57   孙向锦   报表数据
203
  		pd.put("TEACHER_ID", getTeacherID());
8fb81e72   =   1.增加练习列表页和布置练习页面
204
205
  		mv.setViewName("sunvote/homework/homework_edit2");
  		mv.addObject("msg", "edit");
8952fd04   孙向锦   添加浏览功能
206
207
208
209
210
211
  		mv.addObject("operation", "edit");
  		mv.addObject("pd", pd);
  		return mv;
  	}
  	
  	/**
892c3766   =   1、增加练习报表页面
212
  	 * 去预览页面
8952fd04   孙向锦   添加浏览功能
213
214
215
216
217
218
219
220
221
222
223
  	 * 
  	 * @param
  	 * @throws Exception
  	 */
  	@RequestMapping(value = "/goView")
  	public ModelAndView goView() throws Exception {
  		ModelAndView mv = this.getModelAndView();
  		PageData pd = new PageData();
  		pd = this.getPageData();
  		pd = homeworkService.findById(pd); // 根据ID读取
  		pd.put("QUESTIONS", homeworkproblemService.listProblem(pd));
fcd1fe57   孙向锦   报表数据
224
  		pd.put("TEACHER_ID", getTeacherID());
dafcdfc6   =   1.
225
  		mv.setViewName("sunvote/homework/homework_view");
8952fd04   孙向锦   添加浏览功能
226
227
  		mv.addObject("msg", "edit");
  		mv.addObject("operation", "view");
892c3766   =   1、增加练习报表页面
228
229
230
  		mv.addObject("pd", pd);
  		return mv;
  	}
94ab1e18   孙向锦   删除重复的action
231
  
a28085c0   孙向锦   修改班级编辑bug
232
233
234
235
236
237
238
239
240
241
242
243
244
  	
  	
  	/**
  	 * 去修改页面
  	 * 
  	 * @param
  	 * @throws Exception
  	 */
  	@RequestMapping(value = "/report")
  	public ModelAndView report() throws Exception {
  		ModelAndView mv = this.getModelAndView();
  		PageData pd = new PageData();
  		pd = this.getPageData();
fcd1fe57   孙向锦   报表数据
245
246
247
  		pd.put("TEACHER_ID", getTeacherID());
  		List<PageData> list = coursemanagementService.listTeacherClass(pd);
  		for(PageData ptd : list){
c71c6453   =   1
248
  
00af725f   孙向锦   修复bug
249
  			ptd.put("CLASS_ID", ptd.get("ID"));
c71c6453   =   1
250
  
fcd1fe57   孙向锦   报表数据
251
  			ptd.put("TEACHER_ID", pd.get("TEACHER_ID"));
bd553929   孙向锦   修改接口
252
253
254
255
256
257
258
259
260
261
262
263
  			List<PageData> homeworkList = homeworkService.listAll(ptd);
  			for(PageData hpd:homeworkList){
  				List<PageData> dataList = homeworkService.report(hpd);
  				hpd.put("STUDENTS", dataList);
  				hpd.remove("TEACHER_ID");
  				hpd.remove("CLASS_TYPE");
  				hpd.remove("BASESTATION_ID");
  				hpd.remove("SCHOOL_ID");
  				hpd.remove("GRADE_ID");
  				hpd.remove("ID");
  			}
  			ptd.put("HOMEWORKS", homeworkList);
fcd1fe57   孙向锦   报表数据
264
265
  		}
  		pd.put("CLASS", list);
00af725f   孙向锦   修复bug
266
267
268
  		pd.remove("JSON");
  		pd.remove("JSON");
  		pd.remove("ID");
a28085c0   孙向锦   修改班级编辑bug
269
270
271
272
273
  		mv.setViewName("sunvote/homework/homework_report");
  		mv.addObject("pd", pd);
  		return mv;
  	}
  
a479f295   孙向锦   添加了报表逻辑
274
275
276
277
  
  	/**
  	 * 批量删除
  	 * 
be2f84a1   孙向锦   添加课后作业基础模块数据
278
279
280
  	 * @param
  	 * @throws Exception
  	 */
a479f295   孙向锦   添加了报表逻辑
281
  	@RequestMapping(value = "/deleteAll")
be2f84a1   孙向锦   添加课后作业基础模块数据
282
  	@ResponseBody
a479f295   孙向锦   添加了报表逻辑
283
284
285
286
287
288
289
  	public Object deleteAll() throws Exception {
  		logBefore(logger, Jurisdiction.getUsername() + "批量删除Homework");
  		if (!Jurisdiction.buttonJurisdiction(menuUrl, "del")) {
  			return null;
  		} // 校验权限
  		PageData pd = new PageData();
  		Map<String, Object> map = new HashMap<String, Object>();
be2f84a1   孙向锦   添加课后作业基础模块数据
290
291
292
  		pd = this.getPageData();
  		List<PageData> pdList = new ArrayList<PageData>();
  		String DATA_IDS = pd.getString("DATA_IDS");
a479f295   孙向锦   添加了报表逻辑
293
  		if (null != DATA_IDS && !"".equals(DATA_IDS)) {
be2f84a1   孙向锦   添加课后作业基础模块数据
294
  			String ArrayDATA_IDS[] = DATA_IDS.split(",");
015d5970   孙向锦   更新删除接口
295
  			homeworkService.deleteHomeworkAll(ArrayDATA_IDS);
be2f84a1   孙向锦   添加课后作业基础模块数据
296
  			pd.put("msg", "ok");
a479f295   孙向锦   添加了报表逻辑
297
  		} else {
be2f84a1   孙向锦   添加课后作业基础模块数据
298
299
300
301
302
303
  			pd.put("msg", "no");
  		}
  		pdList.add(pd);
  		map.put("list", pdList);
  		return AppUtil.returnObject(pd, map);
  	}
a479f295   孙向锦   添加了报表逻辑
304
305
306
307
  
  	/**
  	 * 导出到excel
  	 * 
be2f84a1   孙向锦   添加课后作业基础模块数据
308
309
310
  	 * @param
  	 * @throws Exception
  	 */
a479f295   孙向锦   添加了报表逻辑
311
312
313
314
315
316
  	@RequestMapping(value = "/excel")
  	public ModelAndView exportExcel() throws Exception {
  		logBefore(logger, Jurisdiction.getUsername() + "导出Homework到excel");
  		if (!Jurisdiction.buttonJurisdiction(menuUrl, "cha")) {
  			return null;
  		}
be2f84a1   孙向锦   添加课后作业基础模块数据
317
318
319
  		ModelAndView mv = new ModelAndView();
  		PageData pd = new PageData();
  		pd = this.getPageData();
a479f295   孙向锦   添加了报表逻辑
320
  		Map<String, Object> dataMap = new HashMap<String, Object>();
be2f84a1   孙向锦   添加课后作业基础模块数据
321
  		List<String> titles = new ArrayList<String>();
a479f295   孙向锦   添加了报表逻辑
322
323
324
325
326
327
328
329
330
331
332
  		titles.add("作业代码"); // 1
  		titles.add("作业名称"); // 2
  		titles.add("科目ID"); // 3
  		titles.add("班级ID"); // 4
  		titles.add("年级ID"); // 5
  		titles.add("学校ID"); // 6
  		titles.add("需要完成时间"); // 7
  		titles.add("创建时间"); // 8
  		titles.add("修改时间"); // 9
  		titles.add("完成次数"); // 10
  		titles.add("总分"); // 11
be2f84a1   孙向锦   添加课后作业基础模块数据
333
334
335
  		dataMap.put("titles", titles);
  		List<PageData> varOList = homeworkService.listAll(pd);
  		List<PageData> varList = new ArrayList<PageData>();
a479f295   孙向锦   添加了报表逻辑
336
  		for (int i = 0; i < varOList.size(); i++) {
be2f84a1   孙向锦   添加课后作业基础模块数据
337
  			PageData vpd = new PageData();
a479f295   孙向锦   添加了报表逻辑
338
339
340
341
342
343
344
345
346
347
348
  			vpd.put("var1", varOList.get(i).getString("CODE")); // 1
  			vpd.put("var2", varOList.get(i).getString("NAME")); // 2
  			vpd.put("var3", varOList.get(i).getString("SUBJECT_ID")); // 3
  			vpd.put("var4", varOList.get(i).getString("CLASS_ID")); // 4
  			vpd.put("var5", varOList.get(i).getString("GRADE_ID")); // 5
  			vpd.put("var6", varOList.get(i).getString("SCHOOL_ID")); // 6
  			vpd.put("var7", varOList.get(i).getString("COMPLETE_DATE")); // 7
  			vpd.put("var8", varOList.get(i).getString("CREATE_DATE")); // 8
  			vpd.put("var9", varOList.get(i).getString("MODIFY_DATE")); // 9
  			vpd.put("var10", varOList.get(i).get("COMPLETE_COUNT").toString()); // 10
  			vpd.put("var11", varOList.get(i).get("ALL_SCORE").toString()); // 11
be2f84a1   孙向锦   添加课后作业基础模块数据
349
350
351
352
  			varList.add(vpd);
  		}
  		dataMap.put("varList", varList);
  		ObjectExcelView erv = new ObjectExcelView();
a479f295   孙向锦   添加了报表逻辑
353
  		mv = new ModelAndView(erv, dataMap);
be2f84a1   孙向锦   添加课后作业基础模块数据
354
355
  		return mv;
  	}
a479f295   孙向锦   添加了报表逻辑
356
  
be2f84a1   孙向锦   添加课后作业基础模块数据
357
  	@InitBinder
a479f295   孙向锦   添加了报表逻辑
358
  	public void initBinder(WebDataBinder binder) {
be2f84a1   孙向锦   添加课后作业基础模块数据
359
  		DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
a479f295   孙向锦   添加了报表逻辑
360
361
362
363
364
365
366
367
368
369
370
371
372
373
  		binder.registerCustomEditor(Date.class, new CustomDateEditor(format,
  				true));
  	}
  
  	/**
  	 * 批量删除
  	 * 
  	 * @param
  	 * @throws Exception
  	 */
  	@RequestMapping(value = "/homereport", produces = "application/json;charset=UTF-8")
  	@ResponseBody
  	public String getHomeReport() throws Exception {
  		PageData pd = this.getPageData();
a28085c0   孙向锦   修改班级编辑bug
374
375
376
377
378
379
380
381
382
383
384
  		if(pd.get("HOMEWORK_ID") != null && !"".equals(pd.get("HOMEWORK_ID").toString().trim())){
  			pd = homeworkService.findById(pd);
  			if(pd != null){
  				List<PageData> data = homeworkReporService.findByHomeworkID(pd);
  				pd.put("STUDENTS", data);
  			}else{
  				pd.put("HOMEWORK_ID", "no");
  			}
  		}else{
  			pd.put("HOMEWORK_ID", "no data"); 
  		}
a479f295   孙向锦   添加了报表逻辑
385
386
  		Gson gson = new Gson();
  		return gson.toJson(pd);
be2f84a1   孙向锦   添加课后作业基础模块数据
387
  	}
a28085c0   孙向锦   修改班级编辑bug
388
389
  	
  	
5162dcee   孙向锦   添加上传作业接口
390
  
2514d928   孙向锦   添加课后作ye,API
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
  	/**
  	 * 列表
  	 * 
  	 * @param page
  	 * @throws Exception
  	 */
  	@RequestMapping(value = "/listdata", produces = "application/json;charset=UTF-8")
  	@ResponseBody
  	public String listdata(Page page) throws Exception {
  		PageData pd = new PageData();
  		pd = this.getPageData();
  		String keywords = pd.getString("keywords"); // 关键词检索条件
  		if (null != keywords && !"".equals(keywords)) {
  			pd.put("keywords", keywords.trim());
  		}
  		page.setPd(pd);
  		List<PageData> varList = homeworkService.list(page); // 列出Homework列表
  		Gson gson = new Gson();
  		return gson.toJson(varList);
  	}
5162dcee   孙向锦   添加上传作业接口
411
412
413
  
  	@RequestMapping(value = "/savedata", produces = "application/json;charset=UTF-8")
  	@ResponseBody
2514d928   孙向锦   添加课后作ye,API
414
415
416
  	public String savedata() throws Exception {
  		PageData pd = new PageData();
  		pd = this.getPageData();
5162dcee   孙向锦   添加上传作业接口
417
  		pd.put("HOMEWORK_ID", this.get32UUID());
2514d928   孙向锦   添加课后作ye,API
418
419
420
421
422
  		homeworkService.save(pd);
  		ResponseGson<String> responseGson = new ResponseGson<String>();
  		responseGson.setData(pd.getString("HOMEWORK_ID"));
  		return responseGson.toJson();
  	}
02c4ed52   孙向锦   更新上传作业接口
423
  
5162dcee   孙向锦   添加上传作业接口
424
425
426
427
428
429
430
431
  	@RequestMapping(value = "/uploadHomework", produces = "application/json;charset=UTF-8")
  	@ResponseBody
  	public String uploadHomework() throws Exception {
  		PageData pd = new PageData();
  		pd = this.getPageData();
  		DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
  		String data = pd.getJsonString();
  		ResponseGson<String> responseGson = new ResponseGson<String>();
02c4ed52   孙向锦   更新上传作业接口
432
  
5162dcee   孙向锦   添加上传作业接口
433
  		Homework homework = Homework.parse(data);
02c4ed52   孙向锦   更新上传作业接口
434
  
5162dcee   孙向锦   添加上传作业接口
435
  		PageData hpd = new PageData();
02c4ed52   孙向锦   更新上传作业接口
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
  		if (homework != null) {
  			hpd.put("CODE", get32UUID());
  			hpd.put("NAME", homework.getNAME());
  			hpd.put("SUBJECT_ID", homework.getSUBJECT_ID());
  			hpd.put("ALL_SCORE", homework.getALL_SCORE());
  			hpd.put("HOMEWORK_DESC", homework.getHOMEWORK_DESC());
  			hpd.put("QUESTION_COUNT", homework.getQUESTION_COUNT());
  			hpd.put("CREATE_DATE", format.format(new Date()));
  			hpd.put("MODIFY_DATE", format.format(new Date()));
  			hpd.put("COMPLETE_COUNT", 0);
  			hpd.put("TEACHER_ID", homework.getTEACHER_ID());
  			hpd.put("COMPLETE_DESC", "");
  
  			if (homework.getCLASSLIST() != null
  					&& homework.getCLASSLIST().size() > 0
  					&& homework.getQUESTIONS() != null
  					&& homework.getQUESTIONS().size() > 0) {
  				for (HomeClass homeclass : homework.getCLASSLIST()) {
  					hpd.put("CLASS_ID", homeclass.getCLASS_ID());
  					hpd.put("COMPLETE_DATE", homeclass.getCOMPLETE_DATE());
  					hpd.put("HOMEWORK_ID", this.get32UUID());
  					homeworkService.save(hpd);
  				}
  
  				for (HomeworkQuestion homeworkQuestion : homework
  						.getQUESTIONS()) {
  					PageData qpd = new PageData();
  					qpd.put("RANK", homeworkQuestion.getRANK());
  					qpd.put("CODE", hpd.get("CODE"));
  					qpd.put("NAME", homeworkQuestion.getNAME());
  					qpd.put("OPTION_NUM", homeworkQuestion.getOPTION_NUM());
  					qpd.put("SCORE", homeworkQuestion.getSCORE());
  					qpd.put("RIGHT_ANSWER", homeworkQuestion.getRIGHT_ANSWER());
  					qpd.put("TYPE", homeworkQuestion.getTYPE());
  					qpd.put("HOMEWORKPROBLEM_ID", this.get32UUID());
  					qpd.put("HOMEWORK_ID", hpd.get("CODE"));
  					homeworkproblemService.save(qpd);
  				}
  
85ea5817   孙向锦   布置练习更新
475
  				responseGson.setData(hpd.getString("CODE"));
02c4ed52   孙向锦   更新上传作业接口
476
477
478
479
480
  			} else {
  				responseGson.setDataError();
  			}
  		} else {
  			responseGson.setDataError();
5162dcee   孙向锦   添加上传作业接口
481
  		}
5162dcee   孙向锦   添加上传作业接口
482
483
  		return responseGson.toJson();
  	}
2c6bc93d   孙向锦   更新作业
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
  
  	@RequestMapping(value = "/updateHomework", produces = "application/json;charset=UTF-8")
  	@ResponseBody
  	public String updateHomework() throws Exception {
  		PageData pd = new PageData();
  		pd = this.getPageData();
  		DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
  		String data = pd.getJsonString();
  		ResponseGson<String> responseGson = new ResponseGson<String>();
  
  		Homework homework = Homework.parse(data);
  
  		PageData hpd = new PageData();
  		if (homework != null) {
  			if (homework.getHOMEWORK_ID() != null
  					&& !"".equals(homework.getHOMEWORK_ID().trim())) {
  				hpd.put("HOMEWORK_ID", homework.getHOMEWORK_ID());
  				hpd = homeworkService.findById(hpd);
  				if(hpd != null){
  					hpd.put("NAME", homework.getNAME());
  					hpd.put("SUBJECT_ID", homework.getSUBJECT_ID());
  					hpd.put("ALL_SCORE", homework.getALL_SCORE());
  					hpd.put("HOMEWORK_DESC", homework.getHOMEWORK_DESC());
  					hpd.put("QUESTION_COUNT", homework.getQUESTION_COUNT());
  					hpd.put("CREATE_DATE", format.format(new Date()));
  					hpd.put("MODIFY_DATE", format.format(new Date()));
  					hpd.put("COMPLETE_COUNT", 0);
  					hpd.put("TEACHER_ID", homework.getTEACHER_ID());
  					hpd.put("COMPLETE_DESC", "");
  					if(homeworkService.findByCode(hpd).size() > 1){
  						hpd.put("CODE", get32UUID());
  						for (HomeClass homeclass : homework.getCLASSLIST()) {
  							hpd.put("CLASS_ID", homeclass.getCLASS_ID());
  							hpd.put("COMPLETE_DATE", homeclass.getCOMPLETE_DATE());
  							homeworkService.edit(hpd);
  						}
  						for (HomeworkQuestion homeworkQuestion : homework
  								.getQUESTIONS()) {
  							PageData qpd = new PageData();
  							qpd.put("RANK", homeworkQuestion.getRANK());
  							qpd.put("CODE", hpd.get("CODE"));
  							qpd.put("NAME", homeworkQuestion.getNAME());
  							qpd.put("OPTION_NUM", homeworkQuestion.getOPTION_NUM());
  							qpd.put("SCORE", homeworkQuestion.getSCORE());
  							qpd.put("RIGHT_ANSWER",
  									homeworkQuestion.getRIGHT_ANSWER());
  							qpd.put("TYPE", homeworkQuestion.getTYPE());
  							qpd.put("HOMEWORKPROBLEM_ID", this.get32UUID());
  							qpd.put("HOMEWORK_ID", hpd.get("CODE"));
  							homeworkproblemService.save(qpd);
  						}
  						responseGson.setData(hpd.getString("CODE"));
  					}else{
  						for (HomeClass homeclass : homework.getCLASSLIST()) {
  							hpd.put("CLASS_ID", homeclass.getCLASS_ID());
  							hpd.put("COMPLETE_DATE", homeclass.getCOMPLETE_DATE());
  							homeworkService.edit(hpd);
  						}
  						homeworkproblemService.deleteByCode(hpd);
  						for (HomeworkQuestion homeworkQuestion : homework
  								.getQUESTIONS()) {
  							PageData qpd = new PageData();
  							qpd.put("RANK", homeworkQuestion.getRANK());
  							qpd.put("CODE", hpd.get("CODE"));
  							qpd.put("NAME", homeworkQuestion.getNAME());
  							qpd.put("OPTION_NUM", homeworkQuestion.getOPTION_NUM());
  							qpd.put("SCORE", homeworkQuestion.getSCORE());
  							qpd.put("RIGHT_ANSWER",
  									homeworkQuestion.getRIGHT_ANSWER());
  							qpd.put("TYPE", homeworkQuestion.getTYPE());
  							qpd.put("HOMEWORKPROBLEM_ID", this.get32UUID());
  							qpd.put("HOMEWORK_ID", hpd.get("CODE"));
  							homeworkproblemService.save(qpd);
  						}
  						responseGson.setData(hpd.getString("CODE"));
  					}
  				}else{
  					responseGson.setDataError();
  				}
  			} else {
  				responseGson.setDataError();
  			}
  		} else {
  			responseGson.setDataError();
  		}
  		return responseGson.toJson();
  	}
be2f84a1   孙向锦   添加课后作业基础模块数据
571
  }