kefu/model/message.js
2017-11-01 16:57:52 +08:00

44 lines
1.1 KiB
JavaScript

var mongoose = require('../utils/mongoose').mongoose;
var Schema = mongoose.Schema;
var MessageSchema = new Schema({
from_uid : { type:String ,index: true},
to_uid : { type:String ,index: true},
content : { type:String },
chat_type : { type:String,default:'text'},
image : { type:String,default:''},
time : { type:Date, default:Date.now }
});
var MessageModel = mongoose.model("message", MessageSchema);
function add(from_uid,to_uid,content,chat_type,image,callback) {
var info = {
"from_uid" : from_uid,
"to_uid" : to_uid,
"content" : content,
"chat_type" : chat_type,
"image" : image,
};
var msgModel = new MessageModel(info);
msgModel.save(function(err, res){
return callback(err,res);
});
}
function query(page,size,uid,callback) {
var query = MessageModel.find({});
var condition = [];
if(uid){
condition.push({"from_uid":uid});
condition.push({"to_uid":uid});
}
var skip = (page - 1) * size;
query.or(condition).skip(skip).limit(size).sort({"time":-1}).exec(callback);
}
exports.add = add;
exports.query = query;