1
zj
2025-08-13 68000e03cee9417da3611a8f6cb62a67420b560d
1
4 files modified
43 ■■■■■ changed files
src/main/java/com/nq/controller/backend/SmartIntradayController.java 36 ●●●● patch | view | raw | blame | history
src/main/java/com/nq/controller/smart/IntradayOrderController.java 1 ●●●● patch | view | raw | blame | history
src/main/java/com/nq/vo/smart/IntradayOrderVo.java 4 ●●●● patch | view | raw | blame | history
src/main/resources/mapper/IntradayOrderMapper.xml 2 ●●● patch | view | raw | blame | history
src/main/java/com/nq/controller/backend/SmartIntradayController.java
@@ -185,7 +185,7 @@
        intradayOrder.setStockQuantity(vo.getStockQuantity());
        intradayOrder.setPriceType(vo.getPriceType());
        intradayOrder.setStockPrice(new BigDecimal(vo.getStockPrice()));
        intradayOrder.setAuditStatus(vo.getAuditStatus());
        intradayOrder.setAuditStatus(1);
        intradayOrder.setOrderTime(DateUtil.parse(vo.getOrderTime(),"yyyy-MM-dd HH:mm:ss"));
        intradayOrder.setIsLocked(vo.getIsLocked());
        intradayOrder.setStockId(stock.getId());
@@ -193,13 +193,6 @@
        // 手续费率
        BigDecimal siteSettingBuyFee = new BigDecimal(iStockConfigServices.queryByKey(EConfigKey.BUY_HANDLING_CHARGE.getCode()).getCValue()) ;
        if(vo.getAuditStatus() == 2){
            UserAssets userAssets = iUserAssetsServices.assetsByTypeAndUserId(EStockType.JP.getCode(), intradayOrder.getUserId());
            BigDecimal orderAmount = vo.getOrderAmount();
            userAssets.setAvailableBalance(userAssets.getAvailableBalance().add(orderAmount));
            userAssetsMapper.updateById(userAssets);
            return ServerResponse.createBySuccessMsg("操作成功");
        }
        BigDecimal stockQuantity = new BigDecimal(intradayOrder.getStockQuantity());//股票数量
        BigDecimal orderTotalPrice = intradayOrder.getStockPrice().multiply(stockQuantity);//订单总价
@@ -210,7 +203,6 @@
        if(intradayOrder.getOrderAmount().compareTo(totalPrice) < 0){
            return ServerResponse.createByErrorMsg("股票总价超过订单金额!");
        }
        User user = userMapper.selectById(intradayOrder.getUserId());
@@ -252,10 +244,30 @@
        UserAssets userAssets = iUserAssetsServices.assetsByTypeAndUserId(EStockType.JP.getCode(), intradayOrder.getUserId());
        userAssets.setAvailableBalance(userAssets.getAvailableBalance().add(surplusAmount));
        userAssets.setFreezeMoney(userPosition.getOrderTotalPrice());
        userAssets.setFreezeMoney(userAssets.getFreezeMoney().add(userPosition.getOrderTotalPrice()));
        userAssetsMapper.updateById(userAssets);
        intradayOrder.setPositionOrder(userPosition.getId());
        intradayOrder.setPurchaseAmount(totalPrice);
        intradayOrderMapper.updateById(intradayOrder);
        return ServerResponse.createBySuccessMsg("操作成功");
    }
    /**
     * 驳回订单
     * @return
     */
    @RequestMapping(value = {"rejectIntraday.do"}, method = {RequestMethod.POST})
    @ResponseBody
    @Transactional(rollbackFor = Exception.class) // 异常时回滚
    public ServerResponse rejectIntraday(@RequestParam("id") Integer id) {
        IntradayOrder intradayOrder = intradayOrderSerivce.getById(id);
        if(intradayOrder.getAuditStatus() != 0){
            return ServerResponse.createByErrorMsg("订单已操作");
        }
        UserAssets userAssets = iUserAssetsServices.assetsByTypeAndUserId(EStockType.JP.getCode(), intradayOrder.getUserId());
        userAssets.setAvailableBalance(userAssets.getAvailableBalance().add(intradayOrder.getOrderAmount()));
        userAssetsMapper.updateById(userAssets);
        intradayOrder.setAuditStatus(2);
        intradayOrderMapper.updateById(intradayOrder);
        return ServerResponse.createBySuccessMsg("操作成功");
    }
@@ -288,6 +300,10 @@
    @RequestMapping(value = {"deleteIntraday.do"}, method = {RequestMethod.POST})
    @ResponseBody
    public ServerResponse deleteIntraday( @RequestParam("id") Integer id) {
        IntradayOrder orderSerivceById = intradayOrderSerivce.getById(id);
        if(orderSerivceById.getAuditStatus() == 0){
            return ServerResponse.createByErrorMsg("订单状态未审核,不允许删除");
        }
        intradayOrderSerivce.removeById(id);
        return ServerResponse.createBySuccessMsg("删除成功");
    }
src/main/java/com/nq/controller/smart/IntradayOrderController.java
@@ -125,6 +125,7 @@
        List<IntradayOrder> intradayOrderList = intradayOrderMapper.selectList(new LambdaQueryWrapper<>(IntradayOrder.class)
                .eq(IntradayOrder::getAuditStatus,status)
                .eq(IntradayOrder::getUserId,user.getId())
                .orderByDesc(IntradayOrder::getCreatedAt)
        );
        return ServerResponse.createBySuccess(intradayOrderList);
    }
src/main/java/com/nq/vo/smart/IntradayOrderVo.java
@@ -37,8 +37,8 @@
    private String positionOrder; // 持仓订单
    private String stockPrice; // 股票价格
    private Integer auditStatus = 0; // 审核状态: 0-未审核,1-审核通过,2-审核拒绝
//
//    private Integer auditStatus = 0; // 审核状态: 0-未审核,1-审核通过,2-审核拒绝
    private String orderTime; // 下单时间
src/main/resources/mapper/IntradayOrderMapper.xml
@@ -29,7 +29,7 @@
            </if>
        </where>
        GROUP BY o.id
        ORDER BY o.order_time DESC
        ORDER BY o.created_at DESC
    </select>
</mapper>