NewArrivalSceneController.java 1.97 KB
package com.yoho.search.restapi.scene;

import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import com.yoho.search.common.downgrade.persional.PersionalRateLimit;
import com.yoho.search.common.utils.HttpServletRequestUtils;
import com.yoho.search.models.SearchApiResult;
import com.yoho.search.service.scene.NewArrivalSceneService;

/**
 * 新频到着相关接口
 * 
 * @author gufei.hu
 *
 */
@Controller
public class NewArrivalSceneController {

	@Autowired
	private NewArrivalSceneService newArrivalService;

	/**
	 * 新品到着列表
	 *
	 * @return
	 */
	@PersionalRateLimit(isOrderUseable = true)
	@RequestMapping(method = RequestMethod.GET, value = "/newArrival/productList")
	@ResponseBody
	public SearchApiResult newArrivalProductList(HttpServletRequest request) {
		Map<String, String> paramMap = HttpServletRequestUtils.transParamType(request);
		return newArrivalService.productList(paramMap);
	}

	/**
	 * 新品到着筛选项
	 *
	 * @return
	 */
	@PersionalRateLimit(isOrderUseable = false)
	@RequestMapping(method = RequestMethod.GET, value = "/newArrival/aggregations")
	@ResponseBody
	public SearchApiResult newArrivalAggregations(HttpServletRequest request) {
		Map<String, String> paramMap = HttpServletRequestUtils.transParamType(request);
		return newArrivalService.aggregations(paramMap);
	}

	/**
	 * 新品到着筛选项-RN
	 *
	 * @return
	 */
	@RequestMapping(method = RequestMethod.GET, value = "/newArrival/old/aggregations")
	@ResponseBody
	public SearchApiResult newArrivalOldAggregations(HttpServletRequest request) {
		Map<String, String> paramMap = HttpServletRequestUtils.transParamType(request);
		return newArrivalService.oldAggregations(paramMap);
	}
}