/* * Copyright 2007-2013 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.opentides.web; import java.util.ArrayList; import java.util.List; import org.opentides.bean.JsonKeyValue; import org.opentides.bean.user.BaseUser; import org.opentides.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; /** * * @author allanctan * */ @Controller @RequestMapping("/event") public class EventHandler { @Value("${ajax.maxResult}") private int ajaxMaxResult; @Autowired private UserService userService; /** * TODO: Check this against AjaxRequestController * @param name * @return */ @RequestMapping("/users-list") public @ResponseBody List<JsonKeyValue> getUsersList(@RequestParam("q") String name) { List<JsonKeyValue> values = new ArrayList<>(); List<BaseUser> users = this.userService.findUsersLikeLastName(name, ajaxMaxResult); for(BaseUser user : users) { JsonKeyValue keyValue = new JsonKeyValue(user.getId(), user.getFullName()); values.add(keyValue); } return values; } }