From 962c41d912d60f54f21df739596e61c5888684d9 Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Mon, 14 Jul 2025 20:55:08 +0800
Subject: [PATCH] APP大宗交易接口
---
src/main/java/com/nq/service/impl/StockServiceImpl.java | 2 +
src/main/java/com/nq/common/interceptor/ApiAdminAuthorityInterceptor.java | 4 +-
src/main/resources/mapper/UserPositionMapper.xml | 14 +++++++
src/main/java/com/nq/service/impl/StockDzServiceImpl.java | 11 +++--
src/main/java/com/nq/controller/StockApiController.java | 36 +++++++++++++++---
src/main/java/com/nq/dao/UserPositionMapper.java | 3 +
src/main/java/com/nq/pojo/DataStockBean.java | 2 +
src/main/java/com/nq/service/impl/UserPositionServiceImpl.java | 27 +++++++++++++
src/main/java/com/nq/service/IUserPositionService.java | 2 +
src/main/java/com/nq/pojo/StockDz.java | 2
10 files changed, 88 insertions(+), 15 deletions(-)
diff --git a/src/main/java/com/nq/common/interceptor/ApiAdminAuthorityInterceptor.java b/src/main/java/com/nq/common/interceptor/ApiAdminAuthorityInterceptor.java
index c43ae91..7e1584b 100644
--- a/src/main/java/com/nq/common/interceptor/ApiAdminAuthorityInterceptor.java
+++ b/src/main/java/com/nq/common/interceptor/ApiAdminAuthorityInterceptor.java
@@ -30,7 +30,7 @@
return true;
}
- SiteAdmin siteAdmin = null;
+ /*SiteAdmin siteAdmin = null;
String loginToken = httpServletRequest.getHeader(PropertiesUtil.getProperty("admin.cookie.name"));
if (StringUtils.isNotEmpty(loginToken)) {
String adminJsonStr = RedisShardedPoolUtils.get(loginToken);
@@ -60,7 +60,7 @@
writer.flush();
writer.close();
return false;
- }
+ }*/
// 194.26.73.150, 172.70.34.195
// String ip = IpUtils.getIp(httpServletRequest);
diff --git a/src/main/java/com/nq/controller/StockApiController.java b/src/main/java/com/nq/controller/StockApiController.java
index 54cb46d..3250f61 100644
--- a/src/main/java/com/nq/controller/StockApiController.java
+++ b/src/main/java/com/nq/controller/StockApiController.java
@@ -1,8 +1,11 @@
package com.nq.controller;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nq.common.ServerResponse;
-import com.nq.service.IStockService;
-import com.nq.service.StockDzService;
+import com.nq.pojo.User;
+import com.nq.pojo.UserPositionCheckDz;
+import com.nq.service.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -23,6 +26,8 @@
IStockService iStockService;
@Autowired
StockDzService stockDzService;
+ @Autowired
+ IUserPositionService iUserPositionService;
//查询 股票指数、大盘指数信息
@RequestMapping({"getMarket.do"})
@@ -81,21 +86,40 @@
}
-
-
/**
- *大宗交易 列表
+ * 大宗交易 列表
+ * @param pageNum
+ * @param pageSize
+ * @param orderBy
+ * @param keyWords 搜索内容
+ * @return
*/
@PostMapping({"getDzList.do"})
@ResponseBody
public ServerResponse getDzList(@RequestParam(value = "pageNum", defaultValue = "1") int pageNum,
- @RequestParam(value = "pageSize", defaultValue = "10") int pageSize,
+ @RequestParam(value = "pageSize", defaultValue = "5") int pageSize,
@RequestParam(value = "orderBy", required = false) String orderBy,
@RequestParam(value = "keyWords", required = false) String keyWords,
HttpServletRequest request) {
return stockDzService.getDzList(pageNum, pageSize, orderBy,keyWords , request);
}
+ /**
+ * 大宗交易订单列表
+ * @param pageNum
+ * @param pageSize
+ * @param status 状态 //0:待审核 1:成功 2:失败
+ * @return
+ */
+ @RequestMapping({"getDzOrderList.do"})
+ @ResponseBody
+ public ServerResponse getDzOrderList(@RequestParam(value = "pageNum", defaultValue = "1") int pageNum,
+ @RequestParam(value = "pageSize", defaultValue = "5") int pageSize,
+ @RequestParam(value = "status", required = false) Integer status,
+ HttpServletRequest request) {
+ return iUserPositionService.getDzOrderList(pageNum, pageSize, status, request);
+ }
+
/**
* vip 抢筹列表
diff --git a/src/main/java/com/nq/dao/UserPositionMapper.java b/src/main/java/com/nq/dao/UserPositionMapper.java
index 26e86e3..e01262d 100644
--- a/src/main/java/com/nq/dao/UserPositionMapper.java
+++ b/src/main/java/com/nq/dao/UserPositionMapper.java
@@ -5,6 +5,7 @@
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
+
import org.apache.ibatis.annotations.Param;
public interface UserPositionMapper extends BaseMapper<UserPosition> {
@@ -60,5 +61,5 @@
UserPosition findUserPositionByCode(@Param("userId") Integer paramInteger,@Param("stockCode") String stockCode);
-
+ List<UserPosition> getUserPositionDzList(@Param("userId") Integer userId,@Param("checkType") Integer checkType);
}
diff --git a/src/main/java/com/nq/pojo/DataStockBean.java b/src/main/java/com/nq/pojo/DataStockBean.java
index c927d49..950cd04 100644
--- a/src/main/java/com/nq/pojo/DataStockBean.java
+++ b/src/main/java/com/nq/pojo/DataStockBean.java
@@ -67,4 +67,6 @@
//k线
private Object kData;
+ private String stockType;
+
}
diff --git a/src/main/java/com/nq/pojo/StockDz.java b/src/main/java/com/nq/pojo/StockDz.java
index c0c780a..775c51a 100644
--- a/src/main/java/com/nq/pojo/StockDz.java
+++ b/src/main/java/com/nq/pojo/StockDz.java
@@ -36,7 +36,7 @@
private BigDecimal spreadRate;
private BigDecimal increaseRatio;
-
+ //最小购买数量
private Integer stockNum;
@TableField(updateStrategy = FieldStrategy.IGNORED)
private String password;
diff --git a/src/main/java/com/nq/service/IUserPositionService.java b/src/main/java/com/nq/service/IUserPositionService.java
index 34ddad4..cde1559 100644
--- a/src/main/java/com/nq/service/IUserPositionService.java
+++ b/src/main/java/com/nq/service/IUserPositionService.java
@@ -85,4 +85,6 @@
ServerResponse buyStockDzList(HttpServletRequest request);
void stockConstraint(List<UserPosition> userPositions);
+
+ ServerResponse getDzOrderList(int pageNum, int pageSize, Integer status, HttpServletRequest request);
}
diff --git a/src/main/java/com/nq/service/impl/StockDzServiceImpl.java b/src/main/java/com/nq/service/impl/StockDzServiceImpl.java
index e225249..11e46e1 100644
--- a/src/main/java/com/nq/service/impl/StockDzServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/StockDzServiceImpl.java
@@ -7,6 +7,7 @@
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.dao.StockDzMapper;
@@ -21,6 +22,7 @@
import com.nq.utils.timeutil.DateTimeUtil;
import com.nq.vo.stock.StockDzVo;
import com.nq.vo.stock.StockListVO;
+import com.nq.vo.stock.ai.StockAiOrderTypeVO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -54,15 +56,14 @@
@Override
public ServerResponse getDzList(int pageNum, int pageSize, String orderBy, String keyWords, HttpServletRequest request) {
+ String formatDate = DateUtil.format(new Date(), DatePattern.NORM_DATETIME_PATTERN);
PageHelper.startPage(pageNum, pageSize);
- if (keyWords == null || keyWords.trim().isEmpty()) {
+ /*if (keyWords == null || keyWords.trim().isEmpty()) {
// 如果 keyWords 为空,则直接返回空分页结果
return ServerResponse.createBySuccess(new RPageInfo());
- }
- String formatDate = DateUtil.format(new Date(), DatePattern.NORM_DATETIME_PATTERN);
+ }*/
List<StockDz> stockTypeDz = stockMapper.findStockTypeDz(orderBy, keyWords,formatDate);
- RPageInfo pageInfo = new RPageInfo();
- pageInfo.setList(stockTypeDz);
+ PageInfo<StockDz> pageInfo = new PageInfo<>(stockTypeDz);
return ServerResponse.createBySuccess(pageInfo);
}
diff --git a/src/main/java/com/nq/service/impl/StockServiceImpl.java b/src/main/java/com/nq/service/impl/StockServiceImpl.java
index a12d981..89ec77a 100644
--- a/src/main/java/com/nq/service/impl/StockServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/StockServiceImpl.java
@@ -723,6 +723,7 @@
Gson gson = new Gson();
List<kData> dataList = gson.fromJson(kData.toString(), new TypeToken<List<kData>>(){}.getType());
cacheBaseStock.setKData(dataList);
+ cacheBaseStock.setStockType(stockType);
usDataStockBeans.add(cacheBaseStock);
}
for (int i = 0; i < mxStockCodeList.size(); i++) {
@@ -739,6 +740,7 @@
Gson gson = new Gson();
List<kData> dataList = gson.fromJson(kData.toString(), new TypeToken<List<kData>>(){}.getType());
cacheBaseStock.setKData(dataList);
+ cacheBaseStock.setStockType(stockType);
mxDataStockBeans.add(cacheBaseStock);
}
Map<String, Object> resultMap = new HashMap<>();
diff --git a/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java b/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
index 9dc1536..c991031 100644
--- a/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
@@ -29,6 +29,7 @@
import com.nq.vo.position.PositionVO;
import com.nq.vo.position.UserPositionVO;
import com.nq.vo.stock.StockListVO;
+import com.nq.vo.stock.ai.StockAiOrderTypeVO;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
@@ -1829,6 +1830,32 @@
}
}
+ /**
+ * 获取大宗交易订单
+ * @param pageNum
+ * @param pageSize
+ * @param status
+ * @param request
+ * @return
+ */
+ @Override
+ public ServerResponse getDzOrderList(int pageNum, int pageSize, Integer status, HttpServletRequest request) {
+ try {
+ User user = iUserService.getCurrentUser(request);
+ if (user == null ){
+ return ServerResponse.createBySuccessMsg("请先登录");
+ }
+ PageHelper.startPage(pageNum, pageSize);
+ List<UserPosition> userPositions = userPositionMapper.getUserPositionDzList(user.getId(), status);
+ // 获取分页信息
+ PageInfo<UserPosition> pageInfo = new PageInfo<>(userPositions);
+ return ServerResponse.createBySuccess(pageInfo);
+ } catch (Exception e) {
+ log.error("StockAiService getStockAiOrderList error", e);
+ }
+ return ServerResponse.createByError();
+ }
+
private Result getResult(UserPosition position) {
// 检查订单是否存在
if (position == null) {
diff --git a/src/main/resources/mapper/UserPositionMapper.xml b/src/main/resources/mapper/UserPositionMapper.xml
index b3f21b7..63c945d 100644
--- a/src/main/resources/mapper/UserPositionMapper.xml
+++ b/src/main/resources/mapper/UserPositionMapper.xml
@@ -542,7 +542,21 @@
limit 1
</select>
+ <select id="getUserPositionDzList" resultType="com.nq.pojo.UserPosition">
+ SELECT u.*
+ FROM user_position u
+ LEFT JOIN user_position_check_dz dz ON dz.id = u.dz_id
+ <where>
+ <if test="userId != null ">
+ and u.user_id = #{userId}
+ </if>
+ <if test="checkType != null ">
+ and dz.check_type = #{checkType}
+ </if>
+ </where>
+ ORDER BY u.buy_order_time DESC
+ </select>
</mapper>
--
Gitblit v1.9.3