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