yapi/server/models/interfaceCol.js
2018-02-24 16:47:50 +08:00

76 lines
1.5 KiB
JavaScript
Executable File

const yapi = require('../yapi.js');
const baseModel = require('./base.js');
class interfaceCol extends baseModel {
getName() {
return 'interface_col';
}
getSchema() {
return {
name: { type: String, required: true },
uid: { type: Number, required: true },
project_id: { type: Number, required: true },
desc: String,
add_time: Number,
up_time: Number,
index: { type: Number, default: 0 },
test_report: {type:String, default: '{}'}
};
}
save(data) {
let m = new this.model(data);
return m.save();
}
get(id) {
return this.model.findOne({
_id: id
}).exec();
}
checkRepeat(name) {
return this.model.count({
name: name
});
}
list(project_id) {
return this.model.find({
project_id: project_id
}).select('name uid project_id desc add_time up_time, index').exec();
}
del(id) {
return this.model.remove({
_id: id
});
}
delByProjectId(id){
return this.model.remove({
project_id: id
})
}
up(id, data) {
data.up_time = yapi.commons.time()
return this.model.update(
{
_id: id
},
data
);
}
upColIndex(id, index) {
return this.model.update({
_id: id
}, {
index: index
})
}
}
module.exports = interfaceCol;