Пример #1
0
        public static async Task CreateMessageAsync(string accessToken, int userId, string message, bool isSound)
        {
            using (TruckGoEntities db = new TruckGoEntities())
            {
                var bufferMessage = new Messages
                {
                    UserID         = userId,
                    MessageContent = message,
                    Opened         = false,
                    IsSound        = isSound,
                    CreateDate     = DateTime.Now,
                    State          = true
                };
                if (db.MessageRooms.FirstOrDefault(mr => mr.DriverUserID == userId) is MessageRooms room)
                {
                    bufferMessage.MessageRoomID = room.MessageRoomID;
                    db.Messages.Add(bufferMessage);
                }
                else
                {
                    MessageRooms createdRoom = default;
                    createdRoom = await CreateMessageRoom(accessToken);

                    bufferMessage.MessageRoomID = createdRoom.MessageRoomID;
                    db.Messages.Add(bufferMessage);
                }
                await db.SaveChangesAsync();
            }
        }
Пример #2
0
        public static async Task <MessageRooms> CreateMessageRoom(string accessToken)
        {
            MessageRooms room = default;

            using (TruckGoEntities db = new TruckGoEntities())
            {
                var user = await GetUserByAccessToken(accessToken, db);

                room = new MessageRooms
                {
                    CompanyID    = user.CompanyID,
                    DriverUserID = user.UserID,
                    State        = true,
                };
                db.MessageRooms.Add(room);
                await db.SaveChangesAsync();
            }
            return(room);
        }