fix: align backend APIs and upload flow
This commit is contained in:
@@ -57,24 +57,22 @@ namespace MessageService.Domain.Entities
|
||||
AddDomainEvent(new ConversationCreatedDomainEvent(this));
|
||||
}
|
||||
|
||||
public void Update(long? LastReadSequenceId = default, int? unreadCount = default, string? lastMsg = default)
|
||||
public void SetLastReadSequence(long sequenceId)
|
||||
{
|
||||
if (LastReadSequenceId != null)
|
||||
{
|
||||
LastReadSequenceId = LastReadSequenceId.Value;
|
||||
this.NotifyModified();
|
||||
}
|
||||
if (unreadCount != null)
|
||||
{
|
||||
UnreadCount += unreadCount.Value;
|
||||
NotifyModified();
|
||||
}
|
||||
LastReadSequenceId = sequenceId;
|
||||
NotifyModified();
|
||||
}
|
||||
|
||||
if (lastMsg != null)
|
||||
{
|
||||
LastMessage = lastMsg;
|
||||
NotifyModified();
|
||||
}
|
||||
public void IncrementUnread()
|
||||
{
|
||||
UnreadCount += 1;
|
||||
NotifyModified();
|
||||
}
|
||||
|
||||
public void UpdateLastMessage(string lastMessage)
|
||||
{
|
||||
LastMessage = lastMessage;
|
||||
NotifyModified();
|
||||
}
|
||||
|
||||
|
||||
@@ -86,6 +84,7 @@ namespace MessageService.Domain.Entities
|
||||
UnreadCount = 0;
|
||||
if (lastReadSequenceId.HasValue)
|
||||
LastReadSequenceId = lastReadSequenceId.Value;
|
||||
NotifyModified();
|
||||
}
|
||||
|
||||
public void UpdateProfile(string name, string avatar)
|
||||
|
||||
@@ -91,10 +91,10 @@ namespace MessageService.Domain.Entities
|
||||
/// <param name="thumb">预览图</param>
|
||||
/// <param name="sequenceId"></param>
|
||||
/// <returns></returns>
|
||||
public static Message BuildImg(MessageCreateContext ctx, string url,
|
||||
int width, int height, string thumb, long sequenceId)
|
||||
public static Message BuildImg(MessageCreateContext ctx, string? url,
|
||||
int width, int height, string thumb, long sequenceId, Guid? fileId = null)
|
||||
{
|
||||
var content = new MessageContent("[图片]", new ImageBody(url, width, height, thumb));
|
||||
var content = new MessageContent("[图片]", new ImageBody(url, width, height, thumb, fileId));
|
||||
return new Message(ctx, sequenceId, MessageType.Image, content);
|
||||
}
|
||||
/// <summary>
|
||||
@@ -107,10 +107,10 @@ namespace MessageService.Domain.Entities
|
||||
/// <param name="thumb"></param>
|
||||
/// <param name="sequenceId"></param>
|
||||
/// <returns></returns>
|
||||
public static Message BuildVideo(MessageCreateContext ctx, string url,
|
||||
int width, int height, string thumb, long sequenceId)
|
||||
public static Message BuildVideo(MessageCreateContext ctx, string? url,
|
||||
int width, int height, string thumb, long sequenceId, Guid? fileId = null)
|
||||
{
|
||||
var content = new MessageContent("[视频]", new VideoBody(url, width, height, thumb));
|
||||
var content = new MessageContent("[视频]", new VideoBody(url, width, height, thumb, fileId));
|
||||
return new Message(ctx, sequenceId, MessageType.Video, content);
|
||||
}
|
||||
/// <summary>
|
||||
@@ -121,10 +121,10 @@ namespace MessageService.Domain.Entities
|
||||
/// <param name="duration">持续时间</param>
|
||||
/// <param name="sequenceId"></param>
|
||||
/// <returns></returns>
|
||||
public static Message BuildVoice(MessageCreateContext ctx, string url,
|
||||
int duration, long sequenceId)
|
||||
public static Message BuildVoice(MessageCreateContext ctx, string? url,
|
||||
int duration, long sequenceId, Guid? fileId = null)
|
||||
{
|
||||
var content = new MessageContent("[音频]", new VoiceBody(url, duration));
|
||||
var content = new MessageContent("[音频]", new VoiceBody(url, duration, fileId));
|
||||
return new Message(ctx, sequenceId, MessageType.Voice, content);
|
||||
}
|
||||
/// <summary>
|
||||
@@ -137,11 +137,11 @@ namespace MessageService.Domain.Entities
|
||||
/// <param name="format">文件格式</param>
|
||||
/// <param name="sequenceId"></param>
|
||||
/// <returns></returns>
|
||||
public static Message BuildFile(MessageCreateContext ctx, string url,
|
||||
public static Message BuildFile(MessageCreateContext ctx, Guid fileId, string? url,
|
||||
string name, long size,
|
||||
string format, long sequenceId)
|
||||
{
|
||||
var content = new MessageContent("[文件]", new FileBody(url, name, size, format));
|
||||
var content = new MessageContent("[文件]", new FileBody(fileId, url, name, size, format));
|
||||
return new Message(ctx, sequenceId, MessageType.File, content);
|
||||
}
|
||||
/// <summary>
|
||||
|
||||
Reference in New Issue
Block a user