MessageListModel.m 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. //
  2. // MessageListModel.m
  3. // YBVideo
  4. //
  5. // Created by YunBao on 2018/7/13.
  6. // Copyright © 2018年 cat. All rights reserved.
  7. //
  8. #import "MessageListModel.h"
  9. #import "JCHATStringUtils.h"
  10. @implementation MessageListModel
  11. - (instancetype)initWithDic:(NSDictionary *)dic {
  12. self = [super init];
  13. if (self) {
  14. _uidStr = [NSString stringWithFormat:@"%@",[dic valueForKey:@"id"]];
  15. _unameStr = [NSString stringWithFormat:@"%@",[dic valueForKey:@"user_nickname"]];
  16. _iconStr = [NSString stringWithFormat:@"%@",[dic valueForKey:@"avatar"]];
  17. _conversation = [dic valueForKey:@"conversation"];
  18. _isAtt = minstr([dic valueForKey:@"utot"]);
  19. if ([PublicObj checkNull:minstr([dic valueForKey:@"utot"])]) {
  20. _isAtt = minstr([dic valueForKey:@"isattent"]);
  21. }
  22. _unReadStr = [NSString stringWithFormat:@"%@",_conversation.unreadCount];
  23. if (_conversation.latestMessage.timestamp != nil ) {
  24. double time = [_conversation.latestMessage.timestamp doubleValue];
  25. _timeStr = [JCHATStringUtils getFriendlyDateString:time forConversation:YES];
  26. } else {
  27. _timeStr = @"";
  28. }
  29. _contentStr = _conversation.latestMessageContentText;
  30. if ([_contentStr isEqual:@"[图片]"] ||
  31. [_contentStr isEqual:@"[语音]"] ||
  32. [_contentStr isEqual:@"[位置]"]) {
  33. NSString *subS = [_contentStr stringByReplacingOccurrencesOfString:@"[" withString:@""];
  34. subS = [subS stringByReplacingOccurrencesOfString:@"]" withString:@""];
  35. _contentStr = [NSString stringWithFormat:@"[%@]",YZMsg(subS)];
  36. }
  37. //消息撤回处理
  38. if (_conversation.latestMessage && (_conversation.latestMessage.contentType == kJMSGContentTypePrompt)) {
  39. JMSGMessage *latesMessage = _conversation.latestMessage;
  40. _contentStr = YZMsg(@"你撤回了一条消息");
  41. if (latesMessage.isReceived) {
  42. _contentStr = YZMsg(@"对方撤回了一条消息");
  43. }
  44. }else if (([_uidStr isEqual:@"dsp_admin_1"] || [_uidStr isEqual:@"dsp_admin_2"]) && [dic valueForKey:@"last_msg"]) {
  45. _contentStr = minstr([dic valueForKey:@"last_msg"]);
  46. _timeStr = minstr([dic valueForKey:@"last_time"]);
  47. }else{
  48. JMSGMessage *latesMessage = _conversation.latestMessage;
  49. if (latesMessage.contentType == kJMSGContentTypeCustom) {
  50. JMSGAbstractContent *jmsContent =latesMessage.content;
  51. JMSGCustomContent *textContent = (JMSGCustomContent *)jmsContent;
  52. NSDictionary *lastDic = textContent.customDictionary;
  53. NSLog(@"22222222222=======:%@", lastDic);
  54. if ([minstr([lastDic valueForKey:@"uid"]) isEqual:[Config getOwnID]]) {
  55. _contentStr = YZMsg(@"你关注了对方,快跟Ta聊聊天吧~");
  56. }else{
  57. _contentStr = YZMsg(@"对方已关注你,快跟Ta聊聊天吧~");
  58. }
  59. }
  60. }
  61. }
  62. return self;
  63. }
  64. +(instancetype)modelWithDic:(NSDictionary *)dic {
  65. return [[self alloc]initWithDic:dic];
  66. }
  67. @end