zyy
2025-09-12 2326c31e5457433b323fd6d648dfe561a9a510f8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
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<PageInfo> findMyStockOptions(String keyWords, HttpServletRequest request, int pageNum, int pageSize, String stockType) {
 
        PageHelper.startPage(pageNum, pageSize);
        User user = this.iUserService.getCurrentUser(request);
        RPageInfo pageInfo;
 
        List<StockOption> stockOptions = this.stockOptionMapper.findMyOptionByKeywords(user.getId(), keyWords, stockType);
        List<StockListVO> 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;
 
    }
}