zyy
2025-08-04 7f73eadee4c6b73f2c0608254bc9e9b82f023c3d
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
package com.nq.service.impl;
 
import com.nq.common.ServerResponse;
import com.nq.dao.RealTimeMapper;
import com.nq.pojo.RealTime;
import com.nq.service.RealTimeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
 
@Service
public class RealTimeServiceImpl implements RealTimeService {
 
    @Autowired
    RealTimeMapper realTimeMapper;
 
    public ServerResponse deleteRealTime() {
        this.realTimeMapper.deleteStockCode();
        return ServerResponse.createBySuccessMsg("删除成功");
    }
 
    public ServerResponse deleteFuturesRealTime() {
        this.realTimeMapper.deleteStockFuturesCode();
        return ServerResponse.createBySuccessMsg("删除成功");
    }
 
    public ServerResponse findStock(String stockCode) {
        List<RealTime> stock = new ArrayList<>();
        if (stockCode.startsWith("6", 0)) {
            stock = this.realTimeMapper.findStock("sh" + stockCode);
        } else if (stockCode.startsWith("3", 0) || stockCode.startsWith("0", 0) || stockCode.startsWith("2", 0)) {
            stock = this.realTimeMapper.findStock("sz" + stockCode);
        } else if (stockCode.startsWith("4",0)||stockCode.startsWith("8",0)) {
            stock = this.realTimeMapper.findStock("bj"+stockCode);
        } else {
            stock = this.realTimeMapper.findStock(stockCode);
        }
 
        Map<String, Object> map = new HashMap<>();
        List<Double> price = new ArrayList();
        List<Double> averagePrice = new ArrayList();
        List<Double> rates = new ArrayList();
        List<String> time = new ArrayList();
        List<Integer> volumes = new ArrayList();
        List<Integer> amounts = new ArrayList();
        map.put("stockCode", stockCode);
        map.put("size", Integer.valueOf(stock.size()));
        for (RealTime realTime : stock) {
            double p = realTime.getPrice();
            price.add(Double.valueOf(p));
            /*double avg = realTime.getAveragePrice();
            averagePrice.add(Double.valueOf(avg));*/
            double r = realTime.getRates();
            rates.add(Double.valueOf(r));
            String t = realTime.getTime();
            time.add(t);
            int v = realTime.getVolumes();
            volumes.add(Integer.valueOf(v));
            int a = realTime.getAmounts();
            amounts.add(Integer.valueOf(a));
        }
        map.put("time", time);
        map.put("volumes", volumes);
        map.put("price", price);
        map.put("averagePrice", averagePrice);
        map.put("rates", rates);
        map.put("amounts", amounts);
        return ServerResponse.createBySuccess(map);
    }
 
}