From 23f7b250c00597ad89282075460a4c27dffe1ada Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期六, 19 一月 2019 17:39:06 +0800
Subject: [PATCH] Merge branch 'dev-msg'

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/msg/UserSystemMsgServiceImpl.java |  102 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 102 insertions(+), 0 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/msg/UserSystemMsgServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/msg/UserSystemMsgServiceImpl.java
new file mode 100644
index 0000000..98e6df7
--- /dev/null
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/msg/UserSystemMsgServiceImpl.java
@@ -0,0 +1,102 @@
+package com.yeshi.fanli.service.impl.msg;
+
+import java.util.Date;
+import java.util.List;
+
+import javax.annotation.Resource;
+
+import org.springframework.stereotype.Service;
+
+import com.yeshi.fanli.dao.mybatis.msg.UserSystemMsgMapper;
+import com.yeshi.fanli.entity.bus.msg.UserSystemMsg;
+import com.yeshi.fanli.entity.bus.msg.UserSystemMsgTypeEnum;
+import com.yeshi.fanli.entity.bus.user.UserInfo;
+import com.yeshi.fanli.entity.system.SystemZnx;
+import com.yeshi.fanli.exception.msg.UserSystemMsgException;
+import com.yeshi.fanli.service.inter.msg.UserSystemMsgService;
+import com.yeshi.fanli.util.StringUtil;
+
+@Service
+public class UserSystemMsgServiceImpl implements UserSystemMsgService {
+
+	@Resource
+	private UserSystemMsgMapper userSystemMsgMapper;
+
+	@Override
+	public void addUserSystemMsg(Long uid, UserSystemMsgTypeEnum type, String title, String content, int timeTag,
+			SystemZnx sz) throws UserSystemMsgException {
+		if (sz == null && (StringUtil.isNullOrEmpty(title) || StringUtil.isNullOrEmpty(content) || uid == null))
+			throw new UserSystemMsgException(1, "淇℃伅涓嶅畬鏁�");
+		UserSystemMsg msg = new UserSystemMsg();
+		if (sz != null) {
+			if (userSystemMsgMapper.selectBySystemZNXId(sz.getId()) == null) {
+				msg.setCreateTime(new Date(sz.getCreateTime()));
+				msg.setRead(false);
+				msg.setSolved(false);
+				msg.setSystemZNX(sz);
+				msg.setUser(new UserInfo(uid));
+				msg.setType(type);
+				msg.setTimeTag(timeTag);
+			} else
+				throw new UserSystemMsgException(1, "娑堟伅宸插瓨鍦�");
+		} else {
+			msg.setCreateTime(new Date());
+			msg.setRead(false);
+			msg.setSolved(false);
+			msg.setContent(content);
+			msg.setTitle(title);
+			msg.setUser(new UserInfo(uid));
+			msg.setType(type);
+			msg.setTimeTag(timeTag);
+		}
+		userSystemMsgMapper.insertSelective(msg);
+	}
+
+	@Override
+	public UserSystemMsg getLatestUserSystemMsg(Long uid) {
+		UserSystemMsg msg = userSystemMsgMapper.selectLatestUserSystemMsg(uid);
+		if (msg != null)
+			if (msg.getSystemZNX() != null) {
+				msg.setTitle(msg.getSystemZNX().getTitle());
+				msg.setContent(msg.getSystemZNX().getContent());
+			}
+		return msg;
+	}
+
+	@Override
+	public List<UserSystemMsg> listUserSystemMsg(Long uid, int page, int pageSize) {
+		List<UserSystemMsg> list = userSystemMsgMapper.listByUid(uid, (page - 1) * pageSize, pageSize);
+		if (list != null)
+			for (UserSystemMsg msg : list) {
+				if (msg.getSystemZNX() != null) {
+					msg.setTitle(msg.getSystemZNX().getTitle());
+					msg.setContent(msg.getSystemZNX().getContent());
+				}
+			}
+
+		return list;
+	}
+
+	@Override
+	public long countUserSystemMsg(Long uid) {
+		return userSystemMsgMapper.countByUid(uid);
+	}
+
+	@Override
+	public void setSystemMsgSolved(Long uid, Long id) throws UserSystemMsgException {
+		UserSystemMsg msg = userSystemMsgMapper.selectByPrimaryKey(id);
+		if (msg.getUser().getId() != uid.longValue())
+			throw new UserSystemMsgException(2, "涓嶆槸鑷繁鐨勬秷鎭�");
+		UserSystemMsg update = new UserSystemMsg();
+		update.setId(id);
+		update.setSolved(true);
+		update.setUpdateTime(new Date());
+		userSystemMsgMapper.updateByPrimaryKeySelective(update);
+	}
+
+	@Override
+	public void readMsgByUid(Long uid) {
+		userSystemMsgMapper.setMsgReadByUid(uid);
+	}
+
+}

--
Gitblit v1.8.0