zj
2024-06-03 4afe73cb84c5a609662b8b4ee20693de9b86b9a3
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
package com.nq.service.impl;
 
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.google.common.collect.Lists;
import com.nq.common.ServerResponse;
import com.nq.common.lanage.MessageLocaleResolver;
import com.nq.pojo.Stock;
import com.nq.pojo.StockSubscribe;
import com.nq.service.IStockSubscribeService;
import com.nq.dao.StockSubscribeMapper;
import com.nq.utils.stock.sina.SinaStockApi;
import com.nq.vo.stock.StockAdminListVO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.List;
 
/**
 * @author 11527
 * @description 针对表【stock_subscribe(新股)】的数据库操作Service实现
 * @createDate 2022-10-24 23:27:27
 */
@Service
@Slf4j
public class StockSubscribeServiceImpl extends ServiceImpl<StockSubscribeMapper, StockSubscribe>
        implements IStockSubscribeService {
    @Resource
    StockSubscribeMapper stockSubscribeMapper;
 
    /**
     * @Description: 用户新股列表
     * @Param:
     * @return:
     * @Author: tf
     * @Date: 2022/10/25
     */
    @Override
    public ServerResponse list(String name, String code, Integer zt, Integer isLock, Integer type, HttpServletRequest request) {
 
        //name和code模糊查询
        QueryWrapper<StockSubscribe> queryWrapper = new QueryWrapper();
        if (name != null && !name.equals("")) {
            queryWrapper.like("name", name);
        }
        if (code != null && !code.equals("")) {
            queryWrapper.like("code", code);
        }
        if (zt != null && !zt.equals("")) {
            queryWrapper.eq("zt", zt);
        }
        if (isLock != null && !isLock.equals("")) {
            queryWrapper.eq("is_lock", isLock);
        }
        if (type != null && !type.equals("")) {
            queryWrapper.eq("type", type);
        }
        queryWrapper.orderByDesc("newlist_id");
        List<StockSubscribe> stockSubscribeList = this.stockSubscribeMapper.selectList(queryWrapper);
        PageInfo pageInfo = new PageInfo(stockSubscribeList);
        pageInfo.setList(stockSubscribeList);
 
        return ServerResponse.createBySuccess(pageInfo);
    }
 
    /**
     * @Description: 新增新股
     * @Param:
     * @return:
     * @Author: tf
     * @Date: 2022/10/25
     */
    @Override
    public ServerResponse add(StockSubscribe model, HttpServletRequest request) {
        //判断是否已经存在
        log.info("model:{}", model);
        List<StockSubscribe> stockSubscribeList = this.stockSubscribeMapper.selectList(new QueryWrapper<StockSubscribe>().eq("code", model.getCode()));
        if (stockSubscribeList != null && stockSubscribeList.size() > 0) {
            return ServerResponse.createByErrorMsg("The new stock already exists, do not add it again.",request.getHeader(MessageLocaleResolver.LANG));
        }
//        String sinaStock = SinaStockApi.getInStockDetail(model.getCode());
//        String[] arrayOfString = sinaStock.split(",");
//        if (arrayOfString.length < 10)
//        return ServerResponse.createByErrorMsg("数据源无该新股");
        //添加新股
        int resultCount = this.stockSubscribeMapper.insert(model);
        if (resultCount > 0) {
            return ServerResponse.createBySuccessMsg("New stock added successfully",request.getHeader(MessageLocaleResolver.LANG));
        }
        return ServerResponse.createByErrorMsg("Failed to add new shares",request.getHeader(MessageLocaleResolver.LANG));
    }
 
    /**
     * @Description: 修改新股
     * @Param:
     * @return:
     * @Author: tf
     * @Date: 2022/10/25
     */
    @Override
    public ServerResponse update(StockSubscribe model, HttpServletRequest request) {
        StockSubscribe stockSubscribe = this.stockSubscribeMapper.selectById(model.getNewlistId());
        if (stockSubscribe == null) {
            return ServerResponse.createByErrorMsg("New shares do not exist",request.getHeader(MessageLocaleResolver.LANG));
        }
        //修改新股
        int resultCount = this.stockSubscribeMapper.updateById(model);
        if (resultCount > 0) {
            return ServerResponse.createBySuccessMsg("Modification of new shares successful",request.getHeader(MessageLocaleResolver.LANG));
        }
        return ServerResponse.createByErrorMsg("Failed to modify new shares",request.getHeader(MessageLocaleResolver.LANG));
    }
 
    /**
     * @Description: 删除新股
     * @Param:
     * @return:
     * @Author: tf
     * @Date: 2022/10/25
     */
    @Override
    public ServerResponse del(Integer id, HttpServletRequest request) {
        StockSubscribe stockSubscribe = this.stockSubscribeMapper.selectById(id);
        if (stockSubscribe == null) {
            return ServerResponse.createByErrorMsg("New shares do not exist",request.getHeader(MessageLocaleResolver.LANG));
        }
        //删除新股
        int resultCount = this.stockSubscribeMapper.deleteById(id);
        if (resultCount > 0) {
            return ServerResponse.createBySuccessMsg("New shares deleted successfully",request.getHeader(MessageLocaleResolver.LANG));
        }
        return ServerResponse.createByErrorMsg("Failed to delete new shares",request.getHeader(MessageLocaleResolver.LANG));
    }
 
}