@RequestMapping(value = "client/version/update") public ModelAndView updateVersionInfo( Model model, @RequestParam String currentVersion, @RequestParam String requiredVersion, @RequestParam String currentVersionInfo, @RequestParam char osType, @RequestParam char clientType) throws JsonGenerationException, JsonMappingException, IOException { if (StringUtils.isBlank(currentVersion) || StringUtils.isBlank(requiredVersion)) { return new ModelAndView(new RedirectView("/client/version/view.controller")); } String finalKey = clientHelper.toFinalKey(clientType, osType); Map<String, Object> para = new HashMap<String, Object>(); para.put("key", finalKey); List<KeyValueEntity> keyValues = keyValueDao.select("selectByKey", para); if (CollectionUtils.isEmpty(keyValues)) { Map<String, String> value = new HashMap<String, String>(); value.put(ClientHelper.ATTR_CURRENT_VERSION, currentVersion); value.put(ClientHelper.ATTR_CURRENT_VERSION_INFO, currentVersionInfo); value.put(ClientHelper.ATTR_REQUIRED_VERSION, requiredVersion); KeyValueEntity entity = new KeyValueEntity(); entity.setKey(finalKey); entity.setValue(mapper.writeValueAsString(value)); entity.setAddTime(new Date()); entity.setUpdateTime(new Date()); keyValueDao.add("addKeyValue", entity); } else { Map<String, String> value = new HashMap<String, String>(); value.put(ClientHelper.ATTR_CURRENT_VERSION, currentVersion); value.put(ClientHelper.ATTR_CURRENT_VERSION_INFO, currentVersionInfo); value.put(ClientHelper.ATTR_REQUIRED_VERSION, requiredVersion); KeyValueEntity entity = keyValues.get(0); entity.setValue(mapper.writeValueAsString(value)); entity.setUpdateTime(new Date()); keyValueDao.update("updateById", entity); } model.addAttribute(ClientHelper.ATTR_CURRENT_VERSION, currentVersion); model.addAttribute(ClientHelper.ATTR_CURRENT_VERSION_INFO, currentVersionInfo); model.addAttribute(ClientHelper.ATTR_REQUIRED_VERSION, requiredVersion); return new ModelAndView(new RedirectView("/client/version/view.controller")); }
@SuppressWarnings("unchecked") @RequestMapping(value = "client/notification/notify.controller") public String notificationNotify( Model model, @RequestParam(value = "target", required = false) Integer target, @RequestParam(value = "clientUIds", required = false) String clientUIds, @RequestParam(value = "content", required = false) String content, @RequestParam(value = "sendTime", required = false) String sendTime) { if (StringUtils.isEmpty(content)) { return "redirect:/client/notification/list.controller"; } else { if (!StringUtils.isEmpty(clientUIds)) { target = ClientNotificationEntity.TargetEnum.Custom.value; } try { ClientNotificationEntity notification = new ClientNotificationEntity(); notification.setContent(content); notification.setTarget(target); notification.setClientUIDs(clientUIds); Date time = new Date(); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm"); notification.setSendTime(df.parse(sendTime)); notification.setStatus(ClientNotificationEntity.StatusEnum.Unprocessed.value); notification.setAccountID(HouseMartContext.getCurrentUserId()); int id = clientNotificationDao.add("addClientNotification", notification); } catch (Exception ex) { } return "redirect:/client/notification/list.controller"; } }
@SuppressWarnings("unchecked") @RequestMapping(value = "client/notification/list.controller") public String notificationList( Model model, @RequestParam(value = "page", required = false) Integer page, @RequestParam(value = "pageSize", required = false) Integer pageSize) { page = (page == null ? 0 : page); pageSize = (pageSize == null ? 50 : pageSize); Map<String, Object> map = new HashMap<String, Object>(); map.put("skip", page * pageSize); map.put("count", pageSize); map.put("orderByClause", "cn.SendTime DESC"); List<ClientNotificationEntity> list = clientNotificationDao.select("findClientNotificationList", map); model.addAttribute("notificationList", list); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm"); Date defaultTime = new Date(); model.addAttribute("defaultTime", df.format(defaultTime)); Map<Object, Object> pager = new HashMap<Object, Object>(); pager.put("page", page); pager.put("pageSize", pageSize); model.addAttribute("pager", pager); return "client/notificationNotify"; }
@SuppressWarnings("unchecked") @RequestMapping(value = "client/version/view") public String viewVersionInfo(Model model) throws JsonParseException, JsonMappingException, IOException { for (ClientTypeEnum clientType : ClientTypeEnum.values()) { for (OsTypeEnum osType : OsTypeEnum.values()) { String finalKey = clientHelper.toFinalKey(clientType.toString().charAt(0), osType.toString().charAt(0)); Map<String, Object> para = new HashMap<String, Object>(); para.put("key", finalKey); List<KeyValueEntity> keyValues = keyValueDao.select("selectByKey", para); if (CollectionUtils.isNotEmpty(keyValues)) { KeyValueEntity entity = keyValues.get(0); Map<String, String> value = mapper.readValue(entity.getValue(), Map.class); model.addAttribute( ClientHelper.ATTR_CURRENT_VERSION, value.get(ClientHelper.ATTR_CURRENT_VERSION)); model.addAttribute( ClientHelper.ATTR_CURRENT_VERSION_INFO, value.get(ClientHelper.ATTR_CURRENT_VERSION_INFO)); model.addAttribute( ClientHelper.ATTR_REQUIRED_VERSION, value.get(ClientHelper.ATTR_REQUIRED_VERSION)); model.addAttribute(finalKey, value); } } } return ("client/version"); }