1
zj
2025-04-30 27310910e4c545b7acfffbca9e2e85c566561fe8
src/main/java/com/nq/service/impl/StockDzServiceImpl.java
@@ -16,6 +16,7 @@
import com.nq.pojo.StockDz;
import com.nq.pojo.UserPosition;
import com.nq.pojo.reponse.RPageInfo;
import com.nq.service.IPriceServices;
import com.nq.service.StockDzService;
import com.nq.utils.stock.sina.StockApi;
import com.nq.utils.timeutil.DateTimeUtil;
@@ -28,6 +29,7 @@
import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -51,12 +53,20 @@
    private StockMapper stockMapper;
    @Autowired
    private UserPositionMapper userPositionMapper;
    @Autowired
    IPriceServices iPriceServices;
    @Override
    public ServerResponse getDzList(int pageNum, int pageSize, String orderBy, String keyWords,  HttpServletRequest request) {
        PageHelper.startPage(pageNum, pageSize);
        String formatDate = DateUtil.format(new Date(), DatePattern.NORM_DATETIME_PATTERN);
        List<StockDz> stockTypeDz = stockMapper.findStockTypeDz(orderBy, keyWords,formatDate);
        stockTypeDz.forEach(f->{
            String price = iPriceServices.getNowPrice(f.getStockCode()).toString();
            BigDecimal subtract = f.getNowPrice().subtract(new BigDecimal(price));
            f.setPriceSpread(subtract);
            f.setPriceSpreadPercentum(
                    subtract.divide(new BigDecimal(price), 4, RoundingMode.HALF_UP).multiply(new BigDecimal(100))
            );        });
        RPageInfo pageInfo = new RPageInfo();
        pageInfo.setList(stockTypeDz);
        return ServerResponse.createBySuccess(pageInfo);