Compare commits
2 Commits
be589aed1d
...
b4c8096c41
| Author | SHA1 | Date | |
|---|---|---|---|
| b4c8096c41 | |||
| c316a099f8 |
@@ -119,11 +119,11 @@ public class CloudFile : ModelBase, ICloudFile, IIdentifiedResource
|
|||||||
UploadedAt = UploadedAt?.ToTimestamp(),
|
UploadedAt = UploadedAt?.ToTimestamp(),
|
||||||
// Convert file metadata
|
// Convert file metadata
|
||||||
FileMeta = ByteString.CopyFromUtf8(
|
FileMeta = ByteString.CopyFromUtf8(
|
||||||
System.Text.Json.JsonSerializer.Serialize(FileMeta, GrpcTypeHelper.SystemTextSerializerOptions)
|
JsonConvert.SerializeObject(FileMeta, GrpcTypeHelper.SerializerSettings)
|
||||||
),
|
),
|
||||||
// Convert user metadata
|
// Convert user metadata
|
||||||
UserMeta = ByteString.CopyFromUtf8(
|
UserMeta = ByteString.CopyFromUtf8(
|
||||||
System.Text.Json.JsonSerializer.Serialize(UserMeta, GrpcTypeHelper.SystemTextSerializerOptions)
|
JsonConvert.SerializeObject(UserMeta, GrpcTypeHelper.SerializerSettings)
|
||||||
)
|
)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
using DysonNetwork.Shared.Proto;
|
using DysonNetwork.Shared.Proto;
|
||||||
using Google.Protobuf;
|
using Google.Protobuf;
|
||||||
|
using Newtonsoft.Json;
|
||||||
|
|
||||||
namespace DysonNetwork.Shared.Data;
|
namespace DysonNetwork.Shared.Data;
|
||||||
|
|
||||||
@@ -41,13 +42,13 @@ public class CloudFileReferenceObject : ModelBase, ICloudFile
|
|||||||
{
|
{
|
||||||
Id = proto.Id,
|
Id = proto.Id,
|
||||||
Name = proto.Name,
|
Name = proto.Name,
|
||||||
FileMeta = System.Text.Json.JsonSerializer.Deserialize<Dictionary<string, object?>>(
|
FileMeta = JsonConvert.DeserializeObject<Dictionary<string, object?>>(
|
||||||
proto.FileMeta.ToStringUtf8(),
|
proto.FileMeta.ToStringUtf8(),
|
||||||
GrpcTypeHelper.SystemTextSerializerOptions
|
GrpcTypeHelper.SerializerSettings
|
||||||
) ?? [],
|
) ?? [],
|
||||||
UserMeta = System.Text.Json.JsonSerializer.Deserialize<Dictionary<string, object?>>(
|
UserMeta = JsonConvert.DeserializeObject<Dictionary<string, object?>>(
|
||||||
proto.UserMeta.ToStringUtf8(),
|
proto.UserMeta.ToStringUtf8(),
|
||||||
GrpcTypeHelper.SystemTextSerializerOptions
|
GrpcTypeHelper.SerializerSettings
|
||||||
) ?? [],
|
) ?? [],
|
||||||
MimeType = proto.MimeType,
|
MimeType = proto.MimeType,
|
||||||
Hash = proto.Hash,
|
Hash = proto.Hash,
|
||||||
@@ -75,12 +76,12 @@ public class CloudFileReferenceObject : ModelBase, ICloudFile
|
|||||||
|
|
||||||
// Convert file metadata
|
// Convert file metadata
|
||||||
proto.FileMeta = ByteString.CopyFromUtf8(
|
proto.FileMeta = ByteString.CopyFromUtf8(
|
||||||
System.Text.Json.JsonSerializer.Serialize(FileMeta, GrpcTypeHelper.SystemTextSerializerOptions)
|
JsonConvert.SerializeObject(FileMeta, GrpcTypeHelper.SerializerSettings)
|
||||||
);
|
);
|
||||||
|
|
||||||
// Convert user metadata
|
// Convert user metadata
|
||||||
proto.UserMeta = ByteString.CopyFromUtf8(
|
proto.UserMeta = ByteString.CopyFromUtf8(
|
||||||
System.Text.Json.JsonSerializer.Serialize(UserMeta, GrpcTypeHelper.SystemTextSerializerOptions)
|
JsonConvert.SerializeObject(UserMeta, GrpcTypeHelper.SerializerSettings)
|
||||||
);
|
);
|
||||||
|
|
||||||
return proto;
|
return proto;
|
||||||
|
|||||||
@@ -9,13 +9,6 @@ namespace DysonNetwork.Shared.Proto;
|
|||||||
|
|
||||||
public abstract class GrpcTypeHelper
|
public abstract class GrpcTypeHelper
|
||||||
{
|
{
|
||||||
public static readonly JsonSerializerOptions SystemTextSerializerOptions = new()
|
|
||||||
{
|
|
||||||
PropertyNamingPolicy = JsonNamingPolicy.SnakeCaseLower,
|
|
||||||
DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull,
|
|
||||||
Converters = { new JsonStringEnumConverter() }
|
|
||||||
};
|
|
||||||
|
|
||||||
public static readonly JsonSerializerSettings SerializerSettings = new()
|
public static readonly JsonSerializerSettings SerializerSettings = new()
|
||||||
{
|
{
|
||||||
ContractResolver = new DefaultContractResolver { NamingStrategy = new SnakeCaseNamingStrategy() },
|
ContractResolver = new DefaultContractResolver { NamingStrategy = new SnakeCaseNamingStrategy() },
|
||||||
|
|||||||
@@ -341,13 +341,13 @@ public partial class ChatService(
|
|||||||
m => m!.ChatRoomId,
|
m => m!.ChatRoomId,
|
||||||
m => m
|
m => m
|
||||||
);
|
);
|
||||||
|
|
||||||
var messageSenders = messages
|
var messageSenders = messages
|
||||||
.Select(m => m.Value!.Sender)
|
.Select(m => m.Value!.Sender)
|
||||||
.DistinctBy(x => x.Id)
|
.DistinctBy(x => x.Id)
|
||||||
.ToList();
|
.ToList();
|
||||||
messageSenders = await crs.LoadMemberAccounts(messageSenders);
|
messageSenders = await crs.LoadMemberAccounts(messageSenders);
|
||||||
|
|
||||||
foreach (var message in messages)
|
foreach (var message in messages)
|
||||||
message.Value!.Sender = messageSenders.First(x => x.Id == message.Value.SenderId);
|
message.Value!.Sender = messageSenders.First(x => x.Id == message.Value.SenderId);
|
||||||
|
|
||||||
@@ -470,6 +470,7 @@ public partial class ChatService(
|
|||||||
.ToListAsync();
|
.ToListAsync();
|
||||||
|
|
||||||
var changesMembers = changes
|
var changesMembers = changes
|
||||||
|
.Where(c => c.Message != null)
|
||||||
.Select(c => c.Message!.Sender)
|
.Select(c => c.Message!.Sender)
|
||||||
.DistinctBy(x => x.Id)
|
.DistinctBy(x => x.Id)
|
||||||
.ToList();
|
.ToList();
|
||||||
@@ -595,4 +596,4 @@ public class SyncResponse
|
|||||||
{
|
{
|
||||||
public List<MessageChange> Changes { get; set; } = [];
|
public List<MessageChange> Changes { get; set; } = [];
|
||||||
public Instant CurrentTimestamp { get; set; }
|
public Instant CurrentTimestamp { get; set; }
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user