Mise à jour et ajout de controllers, routes, services et utilities
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
var mongoose = require('mongoose'),
|
||||
HWClan = mongoose.model('HWClan');
|
||||
|
||||
class ClanService {
|
||||
static async createClan(data) {
|
||||
let clan = new HWClan();
|
||||
Object.assign(clan, data);
|
||||
return clan.save().then(function () {
|
||||
return ClanService.getClanById(data.id);
|
||||
});
|
||||
}
|
||||
|
||||
static async getAllClans(query, limit, offset) {
|
||||
return Promise.all([
|
||||
HWClan.find(query)
|
||||
.skip(Number(offset))
|
||||
.limit(Number(limit))
|
||||
.sort({ title: 'asc' })
|
||||
.populate('author')
|
||||
.exec(),
|
||||
HWClan.count(query).exec()
|
||||
]).then(function (results) {
|
||||
const clans = results[0];
|
||||
const clansCount = results[1];
|
||||
return {
|
||||
clans: clans,
|
||||
clansCount: clansCount
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
static async getClanById(id) {
|
||||
return HWClan.findOne({ id: id })
|
||||
.populate('author')
|
||||
.then(function (clan) {
|
||||
if (!clan) {
|
||||
return null;
|
||||
}
|
||||
return clan;
|
||||
});
|
||||
}
|
||||
|
||||
static async getClanByTitle(title) {
|
||||
return HWClan.findOne({ title: title })
|
||||
.populate('author')
|
||||
.then(function (clan) {
|
||||
if (!clan) {
|
||||
return null;
|
||||
}
|
||||
return clan;
|
||||
});
|
||||
}
|
||||
|
||||
static async updateClan(data) {
|
||||
return data.save().then(function () {
|
||||
return ClanService.getClanById(data.id);
|
||||
});
|
||||
}
|
||||
|
||||
static async deleteClan(data) {
|
||||
return data.remove();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
module.exports = ClanService;
|
||||
@@ -0,0 +1,5 @@
|
||||
/**
|
||||
* Mongoose models for MongoDB
|
||||
*/
|
||||
exports.ClanService = require('./clan.service');
|
||||
exports.MemberService = require('./member.service');
|
||||
@@ -0,0 +1,66 @@
|
||||
var mongoose = require('mongoose'),
|
||||
HWMember = mongoose.model('HWMember');
|
||||
|
||||
class MemberService {
|
||||
static async createMember(data) {
|
||||
let member = new HWMember();
|
||||
Object.assign(member, data);
|
||||
return member.save().then(function () {
|
||||
return MemberService.getMemberById(data.id);
|
||||
});
|
||||
}
|
||||
|
||||
static async getAllMembers(query, limit, offset) {
|
||||
return Promise.all([
|
||||
HWMember.find(query)
|
||||
.skip(Number(offset))
|
||||
.limit(Number(limit))
|
||||
.sort({ name: 'asc' })
|
||||
.populate('author')
|
||||
.exec(),
|
||||
HWMember.count(query).exec()
|
||||
]).then(function (results) {
|
||||
const members = results[0];
|
||||
const membersCount = results[1];
|
||||
return {
|
||||
members: members,
|
||||
membersCount: membersCount
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
static async getMemberById(id) {
|
||||
return HWMember.findOne({ id: id })
|
||||
.populate('author')
|
||||
.then(function (member) {
|
||||
if (!member) {
|
||||
return null;
|
||||
}
|
||||
return member;
|
||||
});
|
||||
}
|
||||
|
||||
static async getMemberByName(name) {
|
||||
return HWMember.findOne({ name: name })
|
||||
.populate('author')
|
||||
.then(function (member) {
|
||||
if (!member) {
|
||||
return null;
|
||||
}
|
||||
return member;
|
||||
});
|
||||
}
|
||||
|
||||
static async updateMember(data) {
|
||||
return data.save().then(function () {
|
||||
return MemberService.getMemberById(data.id);
|
||||
});
|
||||
}
|
||||
|
||||
static async deleteMember(data) {
|
||||
return data.remove();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
module.exports = MemberService;
|
||||
Reference in New Issue
Block a user