Bläddra i källkod

发送日志优化

yq 3 år sedan
förälder
incheckning
33f9e4c9f8

+ 1 - 1
src/main/java/com/usky/dxtop/model/MsgLog.java

@@ -54,7 +54,7 @@ public class MsgLog implements Serializable {
 
     private Integer msgFlag;
 
-    private Long businessId;
+    private String businessId;
 
     /**
      * 创建时间

+ 30 - 0
src/main/java/com/usky/dxtop/service/constant/MsgLogBusinessCode.java

@@ -0,0 +1,30 @@
+package com.usky.dxtop.service.constant;
+
+/**
+ * @author yq
+ * @date 2022/1/12 14:48
+ */
+public class MsgLogBusinessCode {
+    /**
+     * 订单
+      */
+    public static final String ORDER = "order-";
+    /**
+     * 人员
+     */
+    public static final String STAFF = "staff-";
+
+    /**
+     * 人脸
+     */
+    public static final String FACE = "face-";
+    /**
+     * 部门
+     */
+    public static final String DEPT = "dept-";
+    
+    /**
+     * 余额
+     */
+    public static final String BALANCE = "balance-";
+}

+ 2 - 1
src/main/java/com/usky/dxtop/service/impl/DeptServiceImpl.java

@@ -15,6 +15,7 @@ import com.usky.dxtop.model.MsgLog;
 import com.usky.dxtop.service.DeptService;
 import com.usky.dxtop.service.MsgLogService;
 import com.usky.dxtop.service.config.rabbitmq.group.GroupConsumeConfig;
+import com.usky.dxtop.service.constant.MsgLogBusinessCode;
 import com.usky.dxtop.service.vo.StaffRequest;
 import org.springframework.amqp.rabbit.connection.CorrelationData;
 import org.springframework.amqp.rabbit.core.RabbitTemplate;
@@ -124,7 +125,7 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements De
         map.put("id",dept.getDId());
         map.put("name",dept.getName());
         MsgLog msgLog = new MsgLog();
-        msgLog.setBusinessId(dept.getDId());
+        msgLog.setBusinessId(String.format("%s%s", MsgLogBusinessCode.DEPT,dept.getDId()));
         msgLog.setExchange(GroupConsumeConfig.NAME);
         msgLog.setRoutingKey(GroupConsumeConfig.NAME);
         msgLog.setMsg(JSON.toJSONString(map));

+ 3 - 0
src/main/java/com/usky/dxtop/service/impl/MsgLogServiceImpl.java

@@ -11,6 +11,8 @@ import com.usky.dxtop.service.emun.MsgLogStatus;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 
+import java.util.Date;
+
 /**
  * <p>
  *  服务实现类
@@ -39,6 +41,7 @@ public class MsgLogServiceImpl extends ServiceImpl<MsgLogMapper, MsgLog> impleme
             }else {
                 msgLog.setIsSuccess(false);
             }
+            msgLog.setUpdateTime(new Date());
             msgLog.setConsequence(consequence);
             msgLog.setMsgFlag(MsgLogStatus.CONSUMER_SUCCESS.getCode());
             this.updateById(msgLog);

+ 2 - 1
src/main/java/com/usky/dxtop/service/impl/OrderServiceImpl.java

@@ -20,6 +20,7 @@ import com.usky.dxtop.model.*;
 import com.usky.dxtop.service.*;
 import com.usky.dxtop.service.api.TopApiConfiger;
 import com.usky.dxtop.service.config.rabbitmq.charge.ChargeConsumeConfig;
+import com.usky.dxtop.service.constant.MsgLogBusinessCode;
 import com.usky.dxtop.service.emun.AsyncResultType;
 import com.usky.dxtop.service.emun.OrderPayType;
 import com.usky.dxtop.service.emun.OrderSceneCode;
@@ -196,7 +197,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
             }
             chargeVo.setCard(order.getCard());
             MsgLog msgLog = new MsgLog();
-            msgLog.setBusinessId(order.getId());
+            msgLog.setBusinessId(String.format("%s%s",MsgLogBusinessCode.ORDER,order.getId()));
             msgLog.setExchange(ChargeConsumeConfig.NAME);
             msgLog.setRoutingKey(ChargeConsumeConfig.NAME);
             msgLog.setMsg(JSON.toJSONString(chargeVo));

+ 4 - 3
src/main/java/com/usky/dxtop/service/impl/StaffServiceImpl.java

@@ -18,6 +18,7 @@ import com.usky.dxtop.service.StaffService;
 import com.usky.dxtop.service.config.rabbitmq.cartget.CartGetConsumeConfig;
 import com.usky.dxtop.service.config.rabbitmq.face.FaceConsumeConfig;
 import com.usky.dxtop.service.config.rabbitmq.profile.ProfileConsumeConfig;
+import com.usky.dxtop.service.constant.MsgLogBusinessCode;
 import com.usky.dxtop.service.vo.StaffRequest;
 import org.springframework.amqp.rabbit.connection.CorrelationData;
 import org.springframework.amqp.rabbit.core.RabbitTemplate;
@@ -71,7 +72,7 @@ public class StaffServiceImpl extends ServiceImpl<StaffMapper, Staff> implements
     @Override
     public String getBalance(String card) {
         MsgLog msgLog = new MsgLog();
-        msgLog.setBusinessId(0L);
+        msgLog.setBusinessId(String.format("%s%s", MsgLogBusinessCode.BALANCE,card));
         msgLog.setExchange(CartGetConsumeConfig.NAME);
         msgLog.setRoutingKey(CartGetConsumeConfig.NAME);
         msgLog.setRemark("获取卡余额");
@@ -110,7 +111,7 @@ public class StaffServiceImpl extends ServiceImpl<StaffMapper, Staff> implements
         map.put("tel",staff.getContacts());
         map.put("level_name","员工卡");
         MsgLog msgLog = new MsgLog();
-        msgLog.setBusinessId(staff.getSId());
+        msgLog.setBusinessId(String.format("%s%s", MsgLogBusinessCode.STAFF,staff.getSId()));
         msgLog.setExchange(ProfileConsumeConfig.NAME);
         msgLog.setRoutingKey(ProfileConsumeConfig.NAME);
         msgLog.setMsg(JSON.toJSONString(map));
@@ -131,7 +132,7 @@ public class StaffServiceImpl extends ServiceImpl<StaffMapper, Staff> implements
         Map<String,Object> map = new HashMap<>();
         map.put("mob",staff.getId());
         MsgLog msgLog = new MsgLog();
-        msgLog.setBusinessId(staff.getSId());
+        msgLog.setBusinessId(String.format("%s%s", MsgLogBusinessCode.FACE,staff.getSId()));
         msgLog.setExchange(FaceConsumeConfig.NAME);
         msgLog.setRoutingKey(FaceConsumeConfig.NAME);
         map.put("img",staff.getFaceId());

+ 6 - 1
src/main/java/com/usky/dxtop/service/listener/ChargeMqListener.java

@@ -2,11 +2,13 @@ package com.usky.dxtop.service.listener;
 
 import com.alibaba.fastjson.JSONObject;
 import com.usky.dxtop.common.exception.CustomException;
+import com.usky.dxtop.common.utils.StringUtils;
 import com.usky.dxtop.model.MsgLog;
 import com.usky.dxtop.model.Order;
 import com.usky.dxtop.service.MsgLogService;
 import com.usky.dxtop.service.OrderService;
 import com.usky.dxtop.service.config.rabbitmq.charge.ChargeProduceConfig;
+import com.usky.dxtop.service.constant.MsgLogBusinessCode;
 import com.usky.dxtop.service.emun.MsgLogStatus;
 import com.usky.dxtop.service.emun.OrderStatus;
 import lombok.extern.slf4j.Slf4j;
@@ -17,6 +19,7 @@ import org.springframework.stereotype.Component;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.nio.charset.StandardCharsets;
+import java.util.Date;
 
 /**
  * @author yq
@@ -44,7 +47,8 @@ public class ChargeMqListener {
             MsgLog msgLog = msgLogService.getById(msgId);
             if (msgLogService.isRepetition(msgLog)){
                 Order order = new Order();
-                order.setId(msgLog.getBusinessId());
+                String orderId = StringUtils.remove(msgLog.getBusinessId(), MsgLogBusinessCode.ORDER);
+                order.setId(Long.parseLong(orderId));
                 if ("1".equals(jsonObject.get("code").toString())) {
                     order.setOrderFlag(OrderStatus.COMPLETE.getCode());
                     msgLog.setIsSuccess(true);
@@ -53,6 +57,7 @@ public class ChargeMqListener {
                     msgLog.setIsSuccess(false);
                 }
                 orderService.updateById(order);
+                msgLog.setUpdateTime(new Date());
                 msgLog.setConsequence(s);
                 msgLog.setMsgFlag(MsgLogStatus.CONSUMER_SUCCESS.getCode());
                 msgLogService.updateById(msgLog);