Commit c6ae0625 authored by Steven杜宇's avatar Steven杜宇

// 银河管家入口

parent 2ae972d9
......@@ -251,7 +251,7 @@ extension YHHomeHoldViewPageViewController {
[weak self] success, error in
guard let self = self else { return }
DispatchQueue.main.async {
self.msgUnreadView.unreadCount = self.msgViewModel.unreadTotalCount
self.msgUnreadView.unreadCount = self.msgViewModel.unreadTotalCount + YHButlerServiceManager.shared.unreadCount
}
}
}
......@@ -312,6 +312,10 @@ extension YHHomeHoldViewPageViewController {
NotificationCenter.default.addObserver(self, selector: #selector(clickMsgitem), name: YhConstant.YhNotification.clickHomeMsgNotifiction, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(didRefreshMessageCount), name: YhConstant.YhNotification.didQiYuUnReadMsgCountChangeNotification, object: nil)
for i in 0..<arrItemTitles.count {
if i == 0 {
......
......@@ -101,6 +101,14 @@ class YHMessageListVC: YHBaseViewController {
view.backgroundColor = .white
view.addSubview(navBar)
view.addSubview(tableView)
// 银河管家 始终放在第一位
let mgrMsg = YHMessageInfoModel()
mgrMsg.type = YHMessageType.yinheManager.rawValue
mgrMsg.unreadCount = YHButlerServiceManager.shared.unreadCount
msgArr.append(mgrMsg)
self.tableView.reloadData()
navBar.snp.makeConstraints { make in
make.left.right.equalToSuperview()
make.top.equalToSuperview().offset(k_Height_statusBar())
......@@ -119,6 +127,7 @@ class YHMessageListVC: YHBaseViewController {
NotificationCenter.default.addObserver(self, selector: #selector(getUnreadMsgList), name: YhConstant.YhNotification.didRequestUnreadMsgListNotification, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(getUnreadMsgList), name: YhConstant.YhNotification.didRequestUnreadMsgListNotification, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(checkNotificationPermisson), name: YhConstant.YhNotification.didReqeustNotifyPermissionNotification, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(didRefreshYinHeManagerUnreadMsg), name: YhConstant.YhNotification.didQiYuUnReadMsgCountChangeNotification, object: nil)
}
deinit {
......@@ -138,8 +147,7 @@ class YHMessageListVC: YHBaseViewController {
}
@objc func didCleanButtonClicked() {
// gotoYinHeManager()
// return
let unreadMessages = self.msgArr.filter { $0.unreadCount > 0 }
if unreadMessages.count <= 0 {
YHHUD.flash(message: "暂无未读消息~")
......@@ -161,7 +169,12 @@ class YHMessageListVC: YHBaseViewController {
self.viewModel.getUnreadMsgList {
[weak self] success, error in
guard let self = self else { return }
msgArr.removeAll()
// 保留第一个元素银河管家,删除其他元素
if msgArr.count > 1 {
msgArr.removeSubrange(1..<msgArr.count)
}
if success {
var hasUnreadMsg = false
......@@ -324,6 +337,20 @@ extension YHMessageListVC {
}
YHButlerServiceManager.shared.gotoButlerServiceSessionVC(navigationController: navigationController, completion: { _ in })
}
@objc func didRefreshYinHeManagerUnreadMsg() {
for msg in msgArr {
if msg.type == YHMessageType.yinheManager.rawValue { // 银河管家
msg.unreadCount = YHButlerServiceManager.shared.unreadCount
if let lastMsg = YHButlerServiceManager.shared.lastMessage {
msg.lastMessage = lastMsg.content
msg.lastMessageTime = Int64(lastMsg.timeStamp)
self.tableView.reloadData()
break
}
}
}
}
}
......@@ -370,7 +397,12 @@ extension YHMessageListVC: UITableViewDelegate, UITableViewDataSource {
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if 0 <= indexPath.row && indexPath.row < msgArr.count {
let msgItem = msgArr[indexPath.row]
if msgItem.type == YHMessageType.yinheManager.rawValue { // 进银河管家
self.gotoYinHeManager()
return
}
let vc = YHMessageDetailListVC()
vc.type = msgItem.type
vc.title = msgItem.getTitle()
......
......@@ -19,12 +19,14 @@ enum YHMessageType: Int {
case identityApproved = 6 // 身份获批
case goToHK = 7 // 赴港办证
case renewal = 8 // 身份续签
case yinheManager = 9527 // 银河管家
}
class YHMessageInfoModel: SmartCodable {
var unreadCount: Int = 0
var lastMessage: String = ""
var lastMessageTime: Int = 0
var lastMessageTime: Int64 = 0
var type: Int = 0
required init() {
......@@ -39,7 +41,11 @@ class YHMessageInfoModel: SmartCodable {
}
func getTitle() -> String {
if type == YHMessageType.infoFill.rawValue {
if type == YHMessageType.yinheManager.rawValue {
return "银河管家"
} else if type == YHMessageType.infoFill.rawValue {
return "资料填写"
} else if type == YHMessageType.cerUpload.rawValue {
......
......@@ -34,7 +34,10 @@ class YHMessageSessionCell: UITableViewCell {
self.nameLabel.text = model.getTitle()
if model.type == YHMessageType.infoFill.rawValue {
if model.type == YHMessageType.yinheManager.rawValue {
self.iconImgView.image = UIImage(named: "msg_icon_info_fill")
} else if model.type == YHMessageType.infoFill.rawValue {
self.iconImgView.image = UIImage(named: "msg_icon_info_fill")
} else if model.type == YHMessageType.cerUpload.rawValue {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment