Преглед на файлове

Merge branch 'master' of http://git.dayaedu.com/yonge/collect_fee

孙镇亮 преди 5 години
родител
ревизия
d1657f05de

+ 7 - 2
src/main/java/com/ym/mec/collectfee/controller/YqPayController.java

@@ -72,12 +72,16 @@ public class YqPayController extends BaseController {
     @PostMapping("/toPay")
     @Transactional(rollbackFor = Exception.class)
     public Object toPay(@ModelAttribute @Validated Order order) throws Exception {
-        logger.info(order.toString());
         BigDecimal amount = new BigDecimal("0");
         School school = schoolService.get(order.getClassId());
         //计划招生人数有更新,更新
         orderService.getSchoolDetail(school.getSchoolId());
 
+        //判断用户是否已存在订单
+        Order userOrder = orderService.findOrderByStatus(order.getUserId(), 1);
+        if (userOrder != null) {
+            return failed("您有待支付的订单,请稍后重试");
+        }
         //1、判断已报名人数
         CourseGroupInfo courseGroupInfo = CourseGroupInfoService.get(order.getCourseId());
         if (courseGroupInfo.getRegNum().compareTo(courseGroupInfo.getPlanNum()) >= 0) {
@@ -406,6 +410,7 @@ public class YqPayController extends BaseController {
         resultMap.put("merOrderNoList", merOrderNos);
         Map<String, Object> requestMap = new YqPayUtil(notifyUrl, resultMap).getRequestMap();
         Msg queryRs = yqQueryService.orderQuery(requestMap);
+        logger.info("查询易乾结果" + queryRs.toString());
         if (queryRs.getCode().equals("88")) {
             //更新订单状态
             String[] statusArr = {"0", "1", "7"};
@@ -491,7 +496,7 @@ public class YqPayController extends BaseController {
             return;
         }
         Calendar beforeTime = Calendar.getInstance();
-        beforeTime.add(Calendar.MINUTE, -5);// 5分钟之前的时间
+        beforeTime.add(Calendar.MINUTE, -15);// 5分钟之前的时间
         Date beforeDate = beforeTime.getTime();
         Map<String, Object> rqMap = new HashMap<>();
         rqMap.put("orderNoList", orderNoList);

+ 3 - 0
src/main/java/com/ym/mec/collectfee/service/OrderService.java

@@ -6,6 +6,7 @@ import com.ym.mec.collectfee.entity.Account;
 import com.ym.mec.collectfee.entity.Order;
 import com.ym.mec.collectfee.entity.School;
 import com.ym.mec.collectfee.utils.yqpay.YqPayUtil;
+import org.apache.ibatis.annotations.Param;
 
 import javax.xml.bind.JAXBException;
 import java.math.BigDecimal;
@@ -101,4 +102,6 @@ public interface OrderService extends BaseService<Integer, Order> {
     List<Order> findPayingOrdersOver(Map<String,Object> map);
 
     Integer getPayingOrderNums(int groupId);
+
+    Order findOrderByStatus(Integer userId,Integer status);
 }

+ 4 - 0
src/main/java/com/ym/mec/collectfee/service/impl/OrderServiceImpl.java

@@ -208,5 +208,9 @@ public class OrderServiceImpl extends BaseServiceImpl<Integer, Order> implements
         return orderDao.getPayingOrderNums(groupId);
     }
 
+    @Override
+    public Order findOrderByStatus(Integer userId, Integer status) {
+        return orderDao.findOrderByStatus(userId, status);
+    }
 
 }

+ 8 - 8
src/main/resources/config/mybatis/OrderMapper.xml

@@ -38,7 +38,7 @@
 
     <!-- 根据主键查询一条记录 -->
     <select id="get" resultMap="Order">
-		SELECT * FROM `order` WHERE id = #{id}
+		SELECT * FROM `order` WHERE `id` = #{id}
 	</select>
 
     <!-- 全查询 -->
@@ -158,29 +158,29 @@
     </select>
 
     <select id="getOrderByBatch" resultMap="Order">
-		SELECT * FROM `order` WHERE batch_num = #{batchNum}
+		SELECT * FROM `order` WHERE `batch_num` = #{batchNum}
 	</select>
     <select id="countOrder" resultType="java.lang.Integer">
-		SELECT COUNT(DISTINCT user_id) num FROM `order` WHERE po_name = #{poName} AND voicy_part = #{voicePort} AND status >= 1
+		SELECT COUNT(DISTINCT user_id) num FROM `order` WHERE `po_name` = #{poName} AND `voicy_part` = #{voicePort} AND `status` >= 1
 	</select>
 
     <select id="getOrderByOrderNo" resultMap="Order">
-		SELECT * FROM `order` WHERE order_no = #{orderNo} AND status = 1
+		SELECT * FROM `order` WHERE `order_no` = #{orderNo} AND `status` = 1
 	</select>
     <select id="findOrderByStatus" resultType="com.ym.mec.collectfee.entity.Order">
-		SELECT * FROM `order` WHERE user_id = #{userId} AND status = #{status}
+		SELECT * FROM `order` WHERE `user_id` = #{userId} AND `status` = #{status}
 	</select>
     <!-- 获取支付中和成功的订单数-->
     <select id="getPayOrderNums" resultType="java.lang.Integer">
-		SELECT COUNT(*) FROM `order` WHERE status >= 1
+		SELECT COUNT(*) FROM `order` WHERE `status` >= 1
 	</select>
     <!-- 获取支付中的订单-->
     <select id="findPayingOrders" resultMap="Order">
-		SELECT * FROM `order` WHERE status = 1
+		SELECT * FROM `order` WHERE `status` = 1
 	</select>
     <!-- 获取支付中和成功的订单数-->
     <select id="getPayingOrderNums" resultType="java.lang.Integer" parameterType="java.lang.Integer">
-		SELECT COUNT(*) FROM `order` WHERE `group_id`= #{groupId} AND status = 1
+		SELECT COUNT(*) FROM `order` WHERE `group_id`= #{groupId} AND `status` = 1
 	</select>
 
     <!-- 根据id和status更新订单 -->