package com.nq.service.impl; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.nq.common.ServerResponse; import com.nq.dao.StockMapper; import com.nq.dao.StockOptionMapper; import com.nq.pojo.Stock; import com.nq.pojo.StockOption; import com.nq.pojo.User; import com.nq.pojo.reponse.RPageInfo; import com.nq.service.IStockOptionService; import com.nq.service.IUserService; import com.nq.utils.stock.sina.StockApi; import com.nq.vo.stock.StockListVO; import java.util.ArrayList; import java.util.List; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service("iStockOptionService") public class StockOptionServiceImpl implements IStockOptionService { private static final Logger log = LoggerFactory.getLogger(StockOptionServiceImpl.class); @Resource StockOptionMapper stockOptionMapper; @Autowired IUserService iUserService; @Autowired StockMapper stockMapper; public ServerResponse findMyStockOptions(String keyWords, HttpServletRequest request, int pageNum, int pageSize, String stockType) { PageHelper.startPage(pageNum, pageSize); User user = this.iUserService.getCurrentUser(request); RPageInfo pageInfo; List stockOptions = this.stockOptionMapper.findMyOptionByKeywords(user.getId(), keyWords, stockType); List stockOptionListVOS = new ArrayList<>(); for (StockOption option : stockOptions) { StockListVO stockListVO = assembleStockOptionListVO(option); stockOptionListVOS.add(stockListVO); } pageInfo = new RPageInfo(); pageInfo.setList(stockOptionListVOS); pageInfo.setStockType(stockType); return ServerResponse.createBySuccess(pageInfo); } public ServerResponse isOption(Integer uid, String code) { StockOption stockOption = this.stockOptionMapper.isOption(uid, code); if (stockOption == null) { return ServerResponse.createBySuccessMsg("未添加"); } return ServerResponse.createByErrorMsg("已添加"); } public String isMyOption(Integer uid, String code) { StockOption stockOption = this.stockOptionMapper.isOption(uid, code); if (stockOption == null) { return "0"; } return "1"; } private StockListVO assembleStockOptionListVO(StockOption option) { Stock stock = this.stockMapper.selectByPrimaryKey(option.getStockId()); StockListVO stockVO = StockApi.getStockRealTime(stock); return stockVO; } }