From d248fcaf389ae5c763926955d7ba0cfa80fc002f Mon Sep 17 00:00:00 2001
From: Administrator <1101184511@qq.com>
Date: 星期四, 13 二月 2025 00:52:11 +0800
Subject: [PATCH] 区域封禁

---
 src/main/java/com/taoke/autopay/service/impl/KeyOrderServiceImpl.java |   32 ++++++++++++++++++++++++++++++--
 1 files changed, 30 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/taoke/autopay/service/impl/KeyOrderServiceImpl.java b/src/main/java/com/taoke/autopay/service/impl/KeyOrderServiceImpl.java
index 31dae68..a63af44 100644
--- a/src/main/java/com/taoke/autopay/service/impl/KeyOrderServiceImpl.java
+++ b/src/main/java/com/taoke/autopay/service/impl/KeyOrderServiceImpl.java
@@ -1,5 +1,6 @@
 package com.taoke.autopay.service.impl;
 
+import com.google.gson.Gson;
 import com.taoke.autopay.dao.KeyOrderMapper;
 import com.taoke.autopay.dao.WxUserSettingsMapper;
 import com.taoke.autopay.dto.ChannelOrderStatistic;
@@ -74,6 +75,12 @@
 
     @Transactional(rollbackFor = Exception.class)
     @Override
+    public KeyOrder selectByIdForUpdate(String id) {
+        return keyOrderMapper.selectByPrimaryKeyForUpdate(id);
+    }
+
+    @Transactional(rollbackFor = Exception.class)
+    @Override
     public KeyOrder addKeyOrder(SubmitKeyInfo keyInfo, Long uid, String day, Integer orderType, DYOrderDto orderDto) throws KeyOrderException, WxOrderCountException {
         // 鍒ゆ柇鎻愪氦娆℃暟鏄惁杩囬噺
         if (uid != null) {
@@ -132,9 +139,11 @@
             order.setOrderNo(orderDto.getOrder_id());
         }
 
+        order.setIp(keyInfo.getIp());
+        if(keyInfo.getIpInfo()!=null) {
+            order.setIpInfo(new Gson().toJson(keyInfo.getIpInfo()));
+        }
         keyOrderMapper.insertSelective(order);
-
-
         return order;
     }
 
@@ -430,4 +439,23 @@
     public long countAgentId(KeyOrderMapper.DaoQuery query) {
         return keyOrderMapper.countAgentId(query);
     }
+
+    @Override
+    public long countUserNotDoOrder(Long uid, Date minCreateTime) {
+        KeyOrderMapper.DaoQuery daoQuery=new KeyOrderMapper.DaoQuery();
+        daoQuery.uid = uid;
+        daoQuery.stateList=Arrays.asList(new Integer[]{KeyOrder.STATE_NOT_PROCESS,KeyOrder.STATE_NOT_PAY});
+        daoQuery.minCreateTime = minCreateTime;
+        return keyOrderMapper.count(daoQuery);
+    }
+
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public void rejectPay(String id, String rejectMsg) {
+        KeyOrder keyOrder=new KeyOrder();
+        keyOrder.setId(id);
+        keyOrder.setState(KeyOrder.STATE_REJECT_PAY);
+        keyOrder.setStateDesc(rejectMsg);
+        update(keyOrder);
+    }
 }

--
Gitblit v1.8.0