From cc5cf127da76d03ce7086da4d70f34b20e9803e0 Mon Sep 17 00:00:00 2001
From: admin <1101184511@qq.com>
Date: 星期三, 30 七月 2025 01:57:55 +0800
Subject: [PATCH] 功能完善

---
 src/main/java/com/taoke/autopay/factory/OrderFactory.java |   42 ++++++++++++++++++++++++------------------
 1 files changed, 24 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/taoke/autopay/factory/OrderFactory.java b/src/main/java/com/taoke/autopay/factory/OrderFactory.java
index bfd4d06..6b65a0d 100644
--- a/src/main/java/com/taoke/autopay/factory/OrderFactory.java
+++ b/src/main/java/com/taoke/autopay/factory/OrderFactory.java
@@ -1,12 +1,16 @@
 package com.taoke.autopay.factory;
 
+import com.google.gson.Gson;
 import com.taoke.autopay.entity.ClientInfo;
 import com.taoke.autopay.entity.KeyOrder;
 import com.taoke.autopay.entity.OrderChannelEnum;
 import com.taoke.autopay.entity.WxUserOrderCount;
+import com.taoke.autopay.entity.agent.ChannelAgent;
 import com.taoke.autopay.utils.Constant;
+import com.taoke.autopay.utils.IPUtil;
 import com.taoke.autopay.utils.StringUtil;
 import com.taoke.autopay.utils.TimeUtil;
+import com.taoke.autopay.utils.order.OrderChannelUtil;
 import com.taoke.autopay.vo.AgentOrderVO;
 import com.taoke.autopay.vo.UserInfoVO;
 import com.taoke.autopay.vo.admin.AdminOrderVO;
@@ -46,6 +50,7 @@
                 vo.setState(KeyOrderVO.STATE_PROCESSED);
                 break;
         }
+        vo.setPayType(order.getPayType());
         return vo;
     }
 
@@ -54,7 +59,7 @@
         String time=TimeUtil.getGernalTime(order.getCreateTime().getTime(), "yyyy.MM.dd HH:mm:ss");
         time = time.replace(" ","<br>");
         return AgentOrderVO.builder()
-                .payMoney(order.getOrderMoney().toString())
+                .payMoney(order.getOrderMoney()!=null?order.getOrderMoney().toString():"鏈煡")
                 .settleMoney(money.toString())
                 .createTime(time)
                 .valid(order.getPayTime() != null && order.getState() == KeyOrder.STATE_PAY)
@@ -62,7 +67,7 @@
                 .build();
     }
 
-    private static String getOrderStateDesc(Integer orderState, Integer orderType) {
+    public static String getOrderStateDesc(Integer orderState, Integer orderType) {
 
         if (orderState == null || orderType == null) {
             return "鏈煡";
@@ -91,25 +96,12 @@
 
     }
 
-    public static AdminOrderVO createAdminVO(KeyOrder order, ClientInfo info) {
+    public static AdminOrderVO createAdminVO(KeyOrder order, ClientInfo info, ChannelAgent agent) {
         AdminOrderVO vo = new AdminOrderVO();
         vo.setCreateTime(order.getCreateTime());
         vo.setId(order.getId());
         vo.setKey(order.getKey());
-        switch (order.getState()) {
-            case KeyOrder.STATE_NOT_PROCESS:
-                vo.setState(KeyOrderVO.STATE_NOT_PROCESS);
-                break;
-            case KeyOrder.STATE_NOT_PAY:
-                vo.setState(KeyOrderVO.STATE_PROCESS_ERROR);
-                break;
-            case KeyOrder.STATE_PAY:
-                vo.setState(KeyOrderVO.STATE_PROCESSED);
-                break;
-            case KeyOrder.STATE_REJECT_PAY:
-                vo.setState(KeyOrderVO.STATE_PROCESSED);
-                break;
-        }
+        vo.setState(order.getState());
         vo.setStateDesc(order.getStateDesc());
         vo.setOrderStateDesc(getOrderStateDesc(order.getOrderState(), order.getOrderType()));
         vo.setExcutePayTime(order.getExcutePayTime());
@@ -119,11 +111,25 @@
         vo.setDistributedTime(order.getDistributeTime());
         vo.setDistributedClientInfo(info);
         vo.setUid(order.getUid());
+        OrderChannelEnum orderChannel=OrderChannelUtil.getChannelByKey(order.getOrderChannel());
+        vo.setOrderChannel(orderChannel==null?"鏈煡":orderChannel.getName());
+        vo.setPayMerchant(order.getPayMerchant());
+        vo.setIp(order.getIp());
+        vo.setIgnore(order.getIgnore());
+        if(!StringUtil.isNullOrEmpty(order.getIpInfo())){
+            vo.setIpInfo(new Gson().fromJson(order.getIpInfo(), IPUtil.IPInfo.class));
+        }
+        if(agent!=null){
+            vo.setAgent(agent.getName());
+        }else{
+            vo.setAgent("");
+        }
+
         return vo;
     }
 
     public static String createId(WxUserOrderCount orderCountInfo) {
-        return String.format("%s-%s-%s", orderCountInfo.getDay(), orderCountInfo.getUid(), orderCountInfo.getOrderType());
+        return String.format("%s-%s-%s-%s", orderCountInfo.getDay(), orderCountInfo.getUid(), orderCountInfo.getOrderType(),orderCountInfo.getOrderChannel()==null?"": orderCountInfo.getOrderChannel().name());
     }
 
 

--
Gitblit v1.8.0