From a47f9e486847396e5adbdec7a6476a854a38d352 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Sat, 27 Apr 2024 16:00:36 +0800
Subject: [PATCH] 1
---
src/main/java/com/nq/utils/task/YEBTask.java | 7 ++++++-
src/main/java/com/nq/service/impl/StockServiceImpl.java | 6 ++++++
src/main/java/com/nq/service/impl/EchoServices.java | 3 +++
src/main/java/com/nq/service/impl/UserPositionServiceImpl.java | 2 +-
src/main/java/com/nq/service/impl/UserServiceImpl.java | 30 +++++++++++++++++++++++++++++-
5 files changed, 45 insertions(+), 3 deletions(-)
diff --git a/src/main/java/com/nq/service/impl/EchoServices.java b/src/main/java/com/nq/service/impl/EchoServices.java
index a3b441d..319c337 100644
--- a/src/main/java/com/nq/service/impl/EchoServices.java
+++ b/src/main/java/com/nq/service/impl/EchoServices.java
@@ -14,6 +14,7 @@
import com.nq.pojo.reponse.OrderEChoReponse;
import com.nq.service.IEchoServices;
import com.nq.service.IUserService;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -23,6 +24,7 @@
import java.util.ArrayList;
import java.util.List;
+@Slf4j
@Service
public class EchoServices implements IEchoServices {
@@ -102,6 +104,7 @@
queryWrapper.eq("state", 1);
queryWrapper.lt("end_time", System.currentTimeMillis());
List<OrderEchoBean> list = orderEchoMapper.selectList(queryWrapper);
+ log.info("基金定时任务执行数量:{}",list.size());
for (OrderEchoBean orderEchoBean : list) {
BigDecimal money = new BigDecimal(orderEchoBean.getMoney()); // 本金
BigDecimal rate = new BigDecimal(orderEchoBean.getReturnOfRate()); // 收益率
diff --git a/src/main/java/com/nq/service/impl/StockServiceImpl.java b/src/main/java/com/nq/service/impl/StockServiceImpl.java
index 71aac38..9399bef 100644
--- a/src/main/java/com/nq/service/impl/StockServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/StockServiceImpl.java
@@ -15,6 +15,7 @@
import com.nq.service.*;
import com.nq.utils.http.HttpClientRequest;
import com.nq.utils.PropertiesUtil;
+import com.nq.utils.redis.RedisKeyUtil;
import com.nq.utils.redis.RedisShardedPoolUtils;
import com.nq.utils.stock.pinyin.GetPyByChinese;
import com.nq.utils.stock.qq.QqStockApi;
@@ -193,6 +194,7 @@
if (StringUtils.isBlank(code))
return ServerResponse.createByErrorMsg("");
Stock stock = stockMapper.findStockByCode(code);
+ DataStockBean cacheBaseStock = RedisKeyUtil.getCacheBaseStock(stock);
Integer depositAmt = 0;
String introduction = null;
StockVO stockVO = StockApi.assembleInStockVO(stock);
@@ -204,6 +206,10 @@
stockVO.setName(stock.getStockName());
stockVO.setSpell(stock.getStockSpell());
stockVO.setGid(stock.getStockGid().toUpperCase());
+ if(null != cacheBaseStock){
+ stockVO.setOpen_px(cacheBaseStock.getOpen());
+ stockVO.setPreclose_px(cacheBaseStock.getPrevClose());
+ }
Map map = Maps.newHashMap();
map.put("introduction", introduction);
map.put("stock", stockVO);
diff --git a/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java b/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
index 6209313..2762d34 100644
--- a/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
@@ -164,7 +164,7 @@
}
if (!priceServices.isLimitUpBuy(stock.getStockCode())) {
- return ServerResponse.createByErrorMsg("股票涨停,无法购买", request);
+ return ServerResponse.createByErrorMsg("暂无配额", request);
}
//股票类型 现价 数据源的处理
diff --git a/src/main/java/com/nq/service/impl/UserServiceImpl.java b/src/main/java/com/nq/service/impl/UserServiceImpl.java
index 4405146..d22ca98 100644
--- a/src/main/java/com/nq/service/impl/UserServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserServiceImpl.java
@@ -13,6 +13,7 @@
import com.nq.pojo.*;
import com.nq.pojo.reponse.RUserAssets;
import com.nq.service.*;
+import com.nq.utils.UserPointUtil;
import com.nq.utils.timeutil.DateTimeUtil;
import com.nq.utils.PropertiesUtil;
import com.nq.utils.SymmetricCryptoUtil;
@@ -27,6 +28,7 @@
import com.nq.vo.indexposition.IndexPositionVO;
import com.nq.vo.position.PositionProfitVO;
import com.nq.vo.position.PositionVO;
+import com.nq.vo.position.UserPositionVO;
import com.nq.vo.stock.StockListVO;
import com.nq.vo.user.UserInfoVO;
@@ -120,7 +122,11 @@
@Autowired
private ApplyLeverMapper applyLeverMapper;
+ @Autowired
+ private UserPositionMapper userPositionMapper;
+ @Autowired
+ IPriceServices priceServices;
public ServerResponse reg(String yzmCode, String agentCode, String phone, String userPwd, HttpServletRequest request) {
@@ -549,7 +555,7 @@
rUserAssets.setCumulativeProfitAndLossUSD(cumulativeProfitAndLossUSD.setScale(s,BigDecimal.ROUND_UP).toString());
rUserAssets.setHandlingChargeUSD(handlingChargeUSD.setScale(s,BigDecimal.ROUND_UP).toString());
rUserAssets.setProfitAndLossUSD(profitAndLossUSD.setScale(s,BigDecimal.ROUND_UP).toString());
-
+ rUserAssets.setProfitAndLoss(getProfitAndLose(userId).toString());
AllProfitAndLose = AllProfitAndLose.add(profitAndLossUSD);
allTotalAssets = allTotalAssets.add(totleMoneyUSD);
allAmt = allAmt.add(availableBalanceUSD);
@@ -588,6 +594,28 @@
return ServerResponse.createBySuccess(rUserAssetsList);
}
+ public BigDecimal getProfitAndLose(Integer userId){
+ List<UserPosition> userPositions;
+ userPositions = userPositionMapper.
+ findMyPositionByCodeAndSpell(userId,
+ "","",
+ 0, "IN");
+
+
+ List<UserPositionVO> userPositionVOS = Lists.newArrayList();
+ if (userPositions.size() > 0) {
+ for (UserPosition position : userPositions) {
+ UserPositionVO userPositionVO = UserPointUtil.assembleUserPositionVO(position, priceServices.getNowPrice(position.getStockCode()));
+ userPositionVOS.add(userPositionVO);
+ }
+ }
+ BigDecimal profitAndLose = BigDecimal.ZERO;
+ for (UserPositionVO f : userPositionVOS) {
+ profitAndLose = profitAndLose.add(f.getProfitAndLose());
+ }
+ return profitAndLose;
+ }
+
@Override
public ServerResponse transfer(String fromType, String toType, String amt,HttpServletRequest request) {
User user = userService.getCurrentUser(request);
diff --git a/src/main/java/com/nq/utils/task/YEBTask.java b/src/main/java/com/nq/utils/task/YEBTask.java
index fd8b1b0..de9d595 100644
--- a/src/main/java/com/nq/utils/task/YEBTask.java
+++ b/src/main/java/com/nq/utils/task/YEBTask.java
@@ -2,14 +2,17 @@
import com.nq.service.IEchoServices;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
import org.springframework.stereotype.Controller;
/**
* 余额宝定时任务
* */
-@Controller
+@Slf4j
+@Component
public class YEBTask {
@@ -23,7 +26,9 @@
* */
@Scheduled(cron = "0 0/1 * * * ?")
public void sendYEBMoney(){
+ log.info("基金定时任务-------开始");
echoServices.sendMoney();
+ log.info("基金定时任务-------结束");
}
}
--
Gitblit v1.9.3