package com.jyw.recruitstudent.controller; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.jyw.model.*; import com.jyw.recruitstudent.service.StudentInfoService; import com.jyw.recruitstudent.service.TrackRecordInfoService; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.propertyeditors.CustomDateEditor; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.ServletRequestDataBinder; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import java.util.Map; /** * 跟踪记录的控制器 * Created by 59545 on 2016/11/14. */ @Controller @RequestMapping("/trackrecordinfo/") @SessionAttributes("staff") public class TrackRecordInfoController { //跟踪记录的Service @Resource(name="trackRecordInfoServiceImpl") private TrackRecordInfoService trackRecordInfoService; //学员管理的Service @Resource(name="studentInfoServiceImpl") private StudentInfoService studentInfoService; /** * 查询跟踪记录信息 * @return */ @RequestMapping("list.do") public String list(String studentName,TrackRecordInfo trackRecordInfo,Map<String ,Object> map,@RequestParam(required = false,defaultValue = "1") int pageNum,@ModelAttribute("staff") StaffInfo staffInfo){ if (StringUtils.isEmpty(studentName)){ studentName="%%"; }else { studentName="%"+studentName+"%"; } PageHelper.startPage(pageNum,10); List<TrackRecordInfo> list = trackRecordInfoService.selectByTrackRecordInfo(studentName,trackRecordInfo,staffInfo.getStaffId()); PageInfo page = new PageInfo(list); map.put("page", page); return "recruitstudent/trackrecord/trackrecord_list"; } /** * 加载添加页面 * @return */ @RequestMapping("loadadd.do") public String loadAdd(Map<String,Object> map,@ModelAttribute("staff") StaffInfo staffInfo){ StudentInfoCriteria criteria = new StudentInfoCriteria(); StudentInfo stuinfo=new StudentInfo(); if (staffInfo != null) { //获取领取学员人的信息,也就是当前登录用户的信息 criteria.or().andStaffIdEqualTo(staffInfo.getStaffId()); } criteria.or().andStudentMarkEqualTo("1"); List<StudentInfo> list = studentInfoService.selectByExample(criteria); map.put("list", list); return "recruitstudent/trackrecord/trackrecord_add"; } /** * 添加信息 * @param info * @param map * * @return */ @RequestMapping("add.do") public String add(TrackRecordInfo info, Map<String,Object> map,@ModelAttribute("staff") StaffInfo staffInfo){ //添加方法 int count = trackRecordInfoService.insertSelective(info); //判断 if (count > 0) { map.put("info", "添加学员跟踪记录信息成功"); } else { map.put("info", "添加学员跟踪记录信息失败"); } return list("",info,map,1,staffInfo); } /** * 根据编号查询跟踪记录信息 * @param trackRecordId * @param map * @param staffInfo * @return */ @RequestMapping("load.do") public String loadUpdate(@RequestParam("trackRecordId") Integer trackRecordId, Map<String, Object> map,@ModelAttribute("staff") StaffInfo staffInfo){ StudentInfoCriteria criteria = new StudentInfoCriteria(); StudentInfo stuinfo=new StudentInfo(); if (staffInfo != null) { //获取领取学员人的信息,也就是当前登录用户的信息 criteria.or().andStaffIdEqualTo(staffInfo.getStaffId()); } criteria.or().andStudentMarkEqualTo("1"); List<StudentInfo> list = studentInfoService.selectByExample(criteria); map.put("list", list); TrackRecordInfo trackRecordInfo=trackRecordInfoService.selectByPrimaryKey(trackRecordId); map.put("trackinfo",trackRecordInfo); return "recruitstudent/trackrecord/trackrecord_update"; } /** * 修改信息 * @param info * @param map * * @return */ @RequestMapping("update.do") public String update(TrackRecordInfo info, Map<String,Object> map,@ModelAttribute("staff") StaffInfo staffInfo){ //添加方法 int count = trackRecordInfoService.updateByPrimaryKeySelective(info); //判断 if (count > 0) { map.put("info", "修改学员跟踪记录信息成功"); } else { map.put("info", "修改学员跟踪记录信息失败"); } return list("",info,map,1,staffInfo); } /** * 删除信息 * @return */ @RequestMapping("delete.do") public String detele(@RequestParam("trackRecordId") Integer trackRecordId,TrackRecordInfo info, Map<String,Object> map,@ModelAttribute("staff") StaffInfo staffInfo){ //添加方法 int count = trackRecordInfoService.deleteByPrimaryKey(trackRecordId); //判断 if (count > 0) { map.put("info", "删除学员跟踪记录信息成功"); } else { map.put("info", "删除学员跟踪记录信息失败"); } return list("",info,map,1,staffInfo); } /** * 时间属性的编辑器 */ @InitBinder public void initBinder(ServletRequestDataBinder bin) { bin.registerCustomEditor(Date.class, new CustomDateEditor( new SimpleDateFormat("yyyy-MM-dd"), true)); } }