/** * 我发起的签到记录 * * @return */ @RequestMapping( value = "getMyLaunchSignRecord", method = {RequestMethod.GET, RequestMethod.POST}) public @ResponseBody DataResult getMyLaunchSignRecord() { String spageIndex = HttpRequestUtil.getInstance().getString("pageIndex"); String spageSize = HttpRequestUtil.getInstance().getString("pageSize"); String type = HttpRequestUtil.getInstance().getString("type"); int pageIndex = -1; int pageSize = -1; if (StringUtils.isNotEmpty(spageIndex)) { pageIndex = Integer.valueOf(spageIndex); } if (StringUtils.isNotEmpty(spageSize)) { pageSize = Integer.valueOf(spageSize); } Sign sign = new Sign(); Map<String, Object> params = new HashMap<String, Object>(); // params.put("userId", // SystemCacheUtil.getInstance().getCurrentUser().getUserid()); sign.setUserId(SystemCacheUtil.getInstance().getCurrentUser().getUserid()); if ("0".equals(type)) { params.put("isNoEnd", true); } else if ("1".equals(type)) { params.put("isEnd", true); } return signService.querySignRecord(sign, params, pageIndex, pageSize); }
/** * 签到处,显示今天所有的签到信息 * * @param model * @return */ @RequestMapping( value = "signView", method = {RequestMethod.GET, RequestMethod.POST}) public ModelAndView signView(HttpServletRequest request) { ModelAndView modelAndView = super.createModelAndView("sign"); Sign sign = new Sign(); sign.setSignType(SignType.KQ.value()); Map<String, Object> params = new HashMap<String, Object>(); params.put("userId", SystemCacheUtil.getInstance().getCurrentUser().getUserid()); List<Map<String, Object>> signListMap = (List<Map<String, Object>>) signService.querySignRecord(sign, params, -1, -1).getData(); modelAndView.addObject("signListMap", signListMap); return modelAndView; }
/** * 签到详情 * * @return */ @RequestMapping(value = "signDetailView", method = RequestMethod.GET) public ModelAndView signDetailView(HttpServletRequest request) { ModelAndView modelAndView = super.createModelAndViewWithSign("sign_detail", request); Map<String, Object> requestParams = getRequestParams(request); String id = StringUtil.getString(requestParams.get("id")); if (StringUtils.isEmpty(id)) { throw new BusinessEnergyException( SpringContextUtil.getI18n("1002002", new String[] {"id"}, null)); } // 需要获取签到信息 Sign sign = new Sign(); sign.setId(id); List<Map<String, Object>> signListMap = signService.getSign(sign); if (!CollectionUtils.isEmpty(signListMap)) { modelAndView.addObject("signInfo", signListMap.get(0)); } else { if (CollectionUtils.isEmpty(signListMap)) { throw new EnergyException( SpringContextUtil.getI18n("1002003", new String[] {"id", id}, null)); } } // 判断如果已经过期需要提醒 Date currentDate = new Date(); String signType = (String) signListMap.get(0).get("signType"); Date beginTime = (Date) signListMap.get(0).get("beginTime"); SignUser signUser = new SignUser(); signUser.setSignId(id); signUser.setUserId(SystemCacheUtil.getInstance().getCurrentUser().getUserid()); List<Map<String, Object>> signUserList = signUserService.getSignUser(signUser); if (!CollectionUtils.isEmpty(signUserList)) { Map<String, Object> temp = null; for (int i = 0, size = signUserList.size(); i < size; i++) { temp = signUserList.get(i); // 签到信息 if ("0".equals(temp.get("attendType"))) { modelAndView.addObject("sign_in", temp); List<Accessory> accessoryList = accessoryService.getAccessoryByEntityId(StringUtil.getString(temp.get("id"))); if (!CollectionUtils.isEmpty(accessoryList)) { modelAndView.addObject("signInAccessoryInfor", accessoryList); } } else /** 签退信息 */ { modelAndView.addObject("sign_out", temp); List<Accessory> accessoryList = accessoryService.getAccessoryByEntityId(StringUtil.getString(temp.get("id"))); if (!CollectionUtils.isEmpty(accessoryList)) { modelAndView.addObject("signOutAccessoryInfor", accessoryList); } } } } if ("0".equals(signType) && signUserList.size() < 2) { // 判断如果不是当天的考勤不能正常进行 if (!DateUtil.dateToString(currentDate, "yyyy-MM-dd") .equals(DateUtil.dateToString(beginTime, "yyyy-MM-dd"))) { throw new BusinessEnergyException(SpringContextUtil.getI18n("1002007")); } } Date curentDate = new Date(); modelAndView.addObject( "date", DateUtil.dateToString(curentDate, "MM月dd日") + DateUtil.getDayOfWeek(curentDate)); modelAndView.addObject("time", DateUtil.dateToString(curentDate, "HH:mm")); return modelAndView; }