/// <summary> /// 至少有当Receiver和Publisher都要求删除的时候。db中才会真正删除 /// </summary> /// <param name="currentUser"></param> /// <param name="personalMessageDao"></param> public virtual void Delete(User currentUser, IPersonalMessageDao personalMessageDao) { if (currentUser == null) { throw new ArgumentNullException("currentUser"); } if (personalMessageDao == null) { throw new ArgumentNullException("personalMessageDao"); } if (Receiver.Id == currentUser.Id) { DeleteStatus |= PersonalMessageStatus.Receiver; } else { DeleteStatus |= PersonalMessageStatus.Publisher; } if (this.DeleteStatus.HasFlag(PersonalMessageStatus.Publisher) && this.DeleteStatus.HasFlag(PersonalMessageStatus.Receiver)) { personalMessageDao.Delete(this); } }
public List <Models.User.PersonalMessage> SetMessageStatus(List <Models.User.PersonalMessage> messages, PersonalMessageStatus status) { try { var mapper = new MapperConfiguration(c => c.CreateMap <Models.User.PersonalMessage, BLL.DataTransferObjects.PersonalMessage>()).CreateMapper(); var mapped_res = mapper.Map <List <Models.User.PersonalMessage>, List <BLL.DataTransferObjects.PersonalMessage> >(messages); var res = data.SetMessageStatus(mapped_res, (Int32)status); mapper = new MapperConfiguration(c => c.CreateMap <BLL.DataTransferObjects.PersonalMessage, Models.User.PersonalMessage>()).CreateMapper(); var mapped_result = mapper.Map <List <BLL.DataTransferObjects.PersonalMessage>, List <Models.User.PersonalMessage> >(res); return(mapped_result); } catch (Exception ex) { throw ex; } }