From 81da61b828e29b7745e1382dfbbaeb685dc083ef Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 23 一月 2024 17:17:55 +0800
Subject: [PATCH] 抖音转链修改

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/msg/MsgOverViewsServiceImpl.java |  101 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 98 insertions(+), 3 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/msg/MsgOverViewsServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/msg/MsgOverViewsServiceImpl.java
index 9254fb7..85da43e 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/msg/MsgOverViewsServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/msg/MsgOverViewsServiceImpl.java
@@ -1,19 +1,45 @@
 package com.yeshi.fanli.service.impl.msg;
 
 import com.yeshi.fanli.dao.user.msg.MsgOverViewsDao;
-import com.yeshi.fanli.entity.bus.msg.MsgOverViews;
+import com.yeshi.fanli.entity.bus.msg.*;
+import com.yeshi.fanli.lijin.entity.MsgLijinVIPDetail;
+import com.yeshi.fanli.lijin.service.MsgLijinVIPService;
+import com.yeshi.fanli.lijin.service.impl.MsgLijinVIPServiceImpl;
+import com.yeshi.fanli.service.inter.money.msg.MsgMoneyDetailService;
+import com.yeshi.fanli.service.inter.msg.MsgOtherDetailService;
 import com.yeshi.fanli.service.inter.msg.MsgOverViewsService;
+import com.yeshi.fanli.service.inter.msg.UserSystemMsgService;
+import com.yeshi.fanli.service.inter.order.msg.MsgOrderDetailService;
+import com.yeshi.fanli.service.inter.user.invite.MsgInviteDetailService;
+import com.yeshi.fanli.service.inter.user.msg.MsgAccountDetailService;
+import org.springframework.data.mongodb.core.query.Criteria;
+import org.springframework.data.mongodb.core.query.Query;
+import org.springframework.data.mongodb.core.query.Update;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
-import java.util.Date;
-import java.util.List;
+import java.io.Serializable;
+import java.util.*;
 
 @Service
 public class MsgOverViewsServiceImpl implements MsgOverViewsService {
 
     @Resource
     private MsgOverViewsDao msgOverViewsDao;
+    @Resource
+    private MsgAccountDetailService msgAccountDetailService;
+    @Resource
+    private MsgInviteDetailService msgInviteDetailService;
+    @Resource
+    private MsgMoneyDetailService msgMoneyDetailService;
+    @Resource
+    private MsgOrderDetailService msgOrderDetailService;
+    @Resource
+    private MsgOtherDetailService msgOtherDetailService;
+    @Resource
+    private MsgLijinVIPService msgLijinVIPService;
+    @Resource
+    private UserSystemMsgService userSystemMsgService;
 
     @Override
     public void save(MsgOverViews msgOverViews) {
@@ -27,6 +53,15 @@
         }
 
         msgOverViewsDao.save(msgOverViews);
+    }
+
+    @Override
+    public void updateTime(String id, Date updateTime) {
+        Update update = new Update();
+        update.set("updateTime", updateTime);
+        Query query = new Query();
+        query.addCriteria(Criteria.where("id").is(id));
+        msgOverViewsDao.update(query, update);
     }
 
     @Override
@@ -44,4 +79,64 @@
         daoQuery.uid = uid;
         return msgOverViewsDao.count(daoQuery);
     }
+
+    @Override
+    public List<Object> listDetail(List<MsgOverViews> msgList) {
+        Object[] objs = new Object[msgList.size()];
+        //鍒嗙被鍨嬫煡璇㈣鎯�
+        Map<MsgTypeEnum, List<Long>> map = new HashMap<>();
+        Map<String, Integer> positionMap = new HashMap<>();
+        int p = 0;
+        for (MsgOverViews views : msgList) {
+            positionMap.put(views.getMsgType().name() + "#" + views.getIdentityCode(), p++);
+            if (map.get(views.getMsgType()) == null) {
+                map.put(views.getMsgType(), new ArrayList<>());
+            }
+            map.get(views.getMsgType()).add(views.getIdentityCode());
+        }
+
+        for (Iterator<MsgTypeEnum> its = map.keySet().iterator(); its.hasNext(); ) {
+            MsgTypeEnum type = its.next();
+            List<Long> ids = map.get(type);
+            if (type == MsgTypeEnum.lijinVip) {
+                List<MsgLijinVIPDetail> list = (msgLijinVIPService.listDetail(ids));
+                for (MsgLijinVIPDetail detail : list) {
+                    objs[positionMap.get(type.name() + "#" + detail.getId())] = detail;
+                }
+            } else if (type == MsgTypeEnum.money) {
+                List<MsgMoneyDetail> list = (msgMoneyDetailService.listDetail(ids));
+                for (MsgMoneyDetail detail : list) {
+                    objs[positionMap.get(type.name() + "#" + detail.getId())] = detail;
+                }
+            } else if (type == MsgTypeEnum.order) {
+                List<MsgOrderDetail> list = (msgOrderDetailService.listDetail(ids));
+                for (MsgOrderDetail detail : list) {
+                    objs[positionMap.get(type.name() + "#" + detail.getId())] = detail;
+                }
+            } else if (type == MsgTypeEnum.other) {
+                List<MsgOtherDetail> list = (msgOtherDetailService.listDetail(ids));
+                for (MsgOtherDetail detail : list) {
+                    objs[positionMap.get(type.name() + "#" + detail.getId())] = detail;
+                }
+            } else if (type == MsgTypeEnum.account) {
+                List<MsgAccountDetail> list = (msgAccountDetailService.listDetail(ids));
+                for (MsgAccountDetail detail : list) {
+                    objs[positionMap.get(type.name() + "#" + detail.getId())] = detail;
+                }
+            } else if (type == MsgTypeEnum.invite) {
+                List<MsgInviteDetail> list = (msgInviteDetailService.listDetail(ids));
+                for (MsgInviteDetail detail : list) {
+                    objs[positionMap.get(type.name() + "#" + detail.getId())] = detail;
+                }
+            } else if (type == MsgTypeEnum.system) {
+                List<UserSystemMsg> list = (userSystemMsgService.listDetail(ids));
+                for (UserSystemMsg detail : list) {
+                    objs[positionMap.get(type.name() + "#" + detail.getId())] = detail;
+                }
+            }
+        }
+        return Arrays.asList(objs);
+    }
+
+
 }

--
Gitblit v1.8.0