12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- package com.caimei.controller.search;
- import com.caimei.controller.user.LoginController;
- import com.caimei.entity.CmMallPage;
- import com.caimei.entity.CmWxJsonModel;
- import com.caimei.entity.CmMallOrganizeProducts;
- import com.caimei.entity.CmMallProductLadderPrice;
- import com.caimei.entity.CmMallProductSearchHistory;
- import com.caimei.service.search.SearchService;
- import com.caimei.utils.AppUtils;
- import com.github.pagehelper.PageHelper;
- 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.ResponseBody;
- import javax.servlet.http.HttpServletRequest;
- import java.util.List;
- /**
- * 搜索
- */
- @Controller
- @RequestMapping("/search")
- public class SearchController {
- @Autowired
- private SearchService searchService;
- @Autowired
- private LoginController loginController;
- @Value("${miniprogram.domain}")
- private String domain;
- /**
- * 首页搜索商品
- */
- @ResponseBody
- @RequestMapping("/product")
- public CmWxJsonModel searchProduct(Integer organizeID, String searchWord, String code, Integer index,
- Integer pageSize, HttpServletRequest request) {
- CmWxJsonModel jsonModel = loginController.login(code, request, organizeID);
- String openID = (String) jsonModel.getData();
- //保存并删除大于10条的历史记录
- searchService.saveProductRecord(organizeID, searchWord, openID);
- searchService.deleteProductRecord(organizeID, openID);
- if (index == null) index = 0;
- if (pageSize == null) pageSize = 10;
- PageHelper.startPage(index, pageSize);
- List<CmMallOrganizeProducts> list = searchService.searchProduct(organizeID, searchWord);
- for (CmMallOrganizeProducts products : list) {
- products.setMainImage(AppUtils.getImageURL("product", products.getMainImage(), 0, domain));
- //是否启用阶梯价格
- if (products.getLadderPriceFlag().equals("1")) {
- CmMallProductLadderPrice ladderPrice = searchService.findLadderPrice(products.getId());
- products.setRetailPrice(ladderPrice.getBuyPrice());
- }
- }
- CmMallPage<CmMallOrganizeProducts> productsPage = new CmMallPage<>(list);
- return CmWxJsonModel.newInstance().success(productsPage);
- }
- /**
- * 首页搜索历史记录
- */
- @ResponseBody
- @RequestMapping("/record")
- public CmWxJsonModel productRecord(Integer organizeID, String code, HttpServletRequest request) {
- CmWxJsonModel jsonModel = loginController.login(code, request, organizeID);
- String openID = (String) jsonModel.getData();
- List<CmMallProductSearchHistory> historyList = searchService.findProductRecord(organizeID, openID);
- return CmWxJsonModel.newInstance().success(historyList);
- }
- }
|