From b6c17624a50c6fe44049e63a1854822838a1675a Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Tue, 04 Nov 2025 17:16:20 +0800
Subject: [PATCH] 1
---
src/main/java/com/nq/service/impl/UserPendingorderServiceImpl.java | 35 ++++++++++++++++++++++++++++++++++-
1 files changed, 34 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/nq/service/impl/UserPendingorderServiceImpl.java b/src/main/java/com/nq/service/impl/UserPendingorderServiceImpl.java
index c26b761..d186c53 100644
--- a/src/main/java/com/nq/service/impl/UserPendingorderServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserPendingorderServiceImpl.java
@@ -5,6 +5,7 @@
import java.util.Date;
import java.util.List;
+import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -143,7 +144,7 @@
if (nowPrice == null) {
nowPrice = String.valueOf(0);
}
- userPendingorderVO.setNowPrice(new BigDecimal(nowPrice));
+ userPendingorderVO.setNowPrice(userPendingorder.getTargetPrice());
// userPendingorderVO.setStockName(stock.getStockName());
userPendingorderVO.setStockName(stock.getStockSpell());
userPendingorderVO.setStockId(stock.getStockCode());
@@ -350,6 +351,38 @@
log.info("===========删除挂单任务结束==========");
}
+ public ServerResponse cancelPendingOrder(HttpServletRequest request, Integer id){
+ log.info("===========撤销挂单==========");
+ UserPendingorder userPendingorder = this.userPendingorderMapper.selectById(id);
+ if(ObjectUtil.isEmpty(userPendingorder)){
+ return ServerResponse.createByErrorMsg("订单不存在!",request);
+ }else if(userPendingorder.getStatus() == 2){
+ return ServerResponse.createByErrorMsg("订单已撤销,请勿重复操作!",request);
+ }
+ //修改状态
+ userPendingorder.setStatus(2);
+ userPendingorderMapper.updateById(userPendingorder);
+ //退款
+ QueryWrapper<UserAssets> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("accect_type","US");
+ queryWrapper.eq("user_id",userPendingorder.getUserId());
+ UserAssets userAssets = userAssetsMapper.selectOne(queryWrapper);
+ String before = userAssets.getAvailableBalance().toString();
+ userAssets.setAvailableBalance(userAssets.getAvailableBalance().add(userPendingorder.getBuyAmt()));
+ userAssetsMapper.updateById(userAssets);
+ MoneyLog moneyLog = new MoneyLog();
+ moneyLog.setDescs(EUserAssets.BUY_REFUND.getDesc());
+ moneyLog.setBeFore(before);
+ moneyLog.setAfter(userAssets.getAvailableBalance().toString());
+ moneyLog.setAmount(userAssets.getAvailableBalance().toString());
+ moneyLog.setAccectType("US");
+ moneyLog.setType(EUserAssets.BUY_REFUND.getCode());
+ moneyLog.setUserId(userPendingorder.getUserId()+"");
+ moneyLog.setSymbol(EStockType.getEStockTypeByCode("US").getSymbol());
+ moneyLog.setCreateTime(new Date());
+ moneyLogMapper.insert(moneyLog);
+ return ServerResponse.createBySuccess("撤销成功!",request);
+ }
@Override
public ServerResponse orderListByAdmin(int pageNum, int pageSize, String keywords, String status, HttpServletRequest request) {
--
Gitblit v1.9.3