Exemplo n.º 1
0
 public MessageDetail(MessageDetailDto messageDetailDto) : this()
 {
     LastUpdateTime = messageDetailDto.LastUpdateTime;
     MessageId      = messageDetailDto.MessageId;
     UserId         = messageDetailDto.UserId;
     IsRead         = messageDetailDto.IsRead;
 }
Exemplo n.º 2
0
 public void Update(MessageDetailDto messageDetailDto)
 {
     LastUpdateTime = messageDetailDto.LastUpdateTime;
     MessageId      = messageDetailDto.MessageId;
     UserId         = messageDetailDto.UserId;
     IsRead         = messageDetailDto.IsRead;
 }
 public async Task InsertMessageUserAsync(string userId, string content)
 {
     var strategy = base.BaseData.BaseDB.BaseDataContext.Database.CreateExecutionStrategy();
     await strategy.ExecuteAsync(async() =>
     {
         await BeginTransactionAsync(async() =>
         {
             MessagesDto messagesDto = new MessagesDto()
             {
                 Title   = content,
                 Content = content,
                 Method  = 1,
                 Status  = 2
             };
             var messageInfo = await messagesService.CreateOrUpdateAsync(messagesDto);
             MessageDetailDto messageDetailDto = new MessageDetailDto()
             {
                 MessageId = messageInfo.Id,
                 UserId    = userId,
                 IsRead    = 2
             };
             await CreateOrUpdateAsync(messageDetailDto);
         });
     });
 }
Exemplo n.º 4
0
        public async Task <MessageDetailDto> GetAllMessagesOfSender(int idReceiver, int idSender)
        {
            var messageList = await _messageRepository.GetAllMessagesOfSender(idReceiver, idSender);

            var messageDetailDto = new MessageDetailDto
            {
                SenderUser = new UserWrapper
                {
                    IdUser    = messageList.FirstOrDefault().Sender,
                    firstName = messageList.FirstOrDefault().SenderNavigation.FirstName,
                    lastName  = messageList.FirstOrDefault().SenderNavigation.LastName,
                    imageUrl  = messageList.FirstOrDefault().SenderNavigation.Avatar
                },
                ReceiverUser = new UserWrapper
                {
                    IdUser    = messageList.FirstOrDefault().Receiver,
                    firstName = messageList.FirstOrDefault().ReceiverNavigation.FirstName,
                    lastName  = messageList.FirstOrDefault().ReceiverNavigation.LastName,
                    imageUrl  = messageList.FirstOrDefault().ReceiverNavigation.Avatar
                },
                Messages = messageList.Select(msg => new MessageDto
                {
                    IdMessage = msg.IdMessage,
                    Sender    = msg.Sender,
                    Receiver  = msg.Receiver,
                    Message1  = msg.Message1,
                    CreatedOn = msg.CreatedOn
                }).ToList()
            };

            return(messageDetailDto);
        }
Exemplo n.º 5
0
        /// <summary>
        /// Handler=Save
        /// </summary>
        /// <returns></returns>
        public async Task <IActionResult> OnPostSaveAsync([FromBody] MessageDetailDto messageDetailDto)
        {
            if (messageDetailDto == null)
            {
                return(Ok(false));
            }
            await _messageDetailService.CreateOrUpdateAsync(messageDetailDto);

            return(Ok(true));
        }
        public async Task CreateOrUpdateAsync(MessageDetailDto dto)
        {
            MessageDetail messageDetail;

            if (String.IsNullOrEmpty(dto.Id))
            {
                messageDetail = new MessageDetail(dto);
            }
            else
            {
                messageDetail = await GetObjectAsync(_ => _.Id == dto.Id);

                messageDetail.Update(dto);
            }
            await SaveObjectAsync(messageDetail);
        }
        /// <summary>
        /// 获取消息详情
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public async Task <MessageDetailDto> ApiGetDetailAsync(string id)
        {
            //获取用户当前的的消息
            var seh = new SenparcExpressionHelper <MessageDetail>();

            seh.ValueCompare.AndAlso(!string.IsNullOrEmpty(id), _ => _.Id.Equals(id));
            var where = seh.BuildWhereExpression();
            var response = await base.GetObjectAsync(where);

            //更新消息是否已读
            MessageDetailDto messageDetailDto = Mapper.Map <MessageDetailDto>(response);

            messageDetailDto.IsRead = 1;
            await CreateOrUpdateAsync(messageDetailDto);

            return(messageDetailDto);
        }