package service import ( "app.yhyue.com/moapp/MessageCenter/entity" "app.yhyue.com/moapp/MessageCenter/rpc/message" "log" ) type MessageService struct { } // 修改消息阅读状态 func (service *MessageService) ChangeReadStatus(data *message.ChangeReadStatusRequest) (int64, string) { orm := entity.Engine.NewSession() log.Println("123") defer orm.Close() m := entity.Message{} count, err1 := orm.Where("id=? and isdel=1 and appid=?", data.Id,data.Appid).Count(m) if count == 0 ||err1!=nil{ return 0, "该消息不存在" } m.IsRead = int(data.ReadStatus) _, err := orm.Where("id=? and isdel=1", data.Id).Cols("isRead").Update(&m) if err != nil { orm.Rollback() return 0, "修改消息阅读状态失败" } err2 := orm.Commit() if err2 != nil { return 0, "修改消息阅读状态失败" } return 1, "修改消息阅读状态成功" } // 删除消息 func (service *MessageService) DeleteMessage(id []int64,appId string) (int64, string) { orm := entity.Engine.NewSession() log.Println("123") defer orm.Close() m := entity.Message{} m.Isdel=-1 count, err := orm.Where("appid=?",appId).In("id",id).Cols("isdel").Update(&m) if err != nil ||count==0{ log.Println(err) log.Println(count) orm.Rollback() return 0, "删除消息失败" } err2 := orm.Commit() if err2 != nil { return 0, "删除消息失败" } return 1, "删除消息成功" } // 未读消息合计 func (service *MessageService) CountUnread(userId string,appId string) (int64, string,int64) { orm := entity.Engine.NewSession() log.Println("123") defer orm.Close() m := entity.Message{} m.Isdel=-1 count, err := orm.Where("receive_userid=? and isdel=1 and appid=?",userId,appId).Count(m) if err != nil ||count==0{ log.Println(err) log.Println(count) return 0, "查询未读消息失败",0 } return 1, "查询未读消息成功",count }