blog-server/controllers/grouping.js

52 lines
1.5 KiB
JavaScript
Raw Permalink Normal View History

2019-12-02 16:08:44 +08:00
//添加分组
2019-12-02 17:38:42 +08:00
//groupname:分组名 fuid :父分组
// 父分组=0时是一级分组
2019-11-19 19:02:28 +08:00
var groupadd = async (ctx, next) => {
2019-12-02 16:36:45 +08:00
await dbs.add("group", { groupname: ctx.query.groupname, fuid: ctx.query.fuid == null ? '0' : ctx.query.fuid })
2019-11-19 19:02:28 +08:00
ctx.body = "添加成功"
2019-12-02 17:10:38 +08:00
next()
2019-11-19 19:02:28 +08:00
}
2019-12-02 16:08:44 +08:00
// 删除分组
2019-12-02 17:38:42 +08:00
// num_key 操作使用的id
2019-11-19 19:02:28 +08:00
var groupdel = async (ctx, next) => {
await dbs.remove("group", { num_key: parseInt(ctx.query.key) })
ctx.body = "删除成功"
2019-12-02 17:10:38 +08:00
next()
2019-11-19 19:02:28 +08:00
}
2019-12-02 16:08:44 +08:00
// 获取分组
2019-11-19 19:02:28 +08:00
var groupfind = async (ctx, next) => {
await dbs.find("group").then((res) => {
2019-12-02 16:08:44 +08:00
let tree = function (data) {
let map = {};
let val = [];
//生成数据对象集合
data.forEach(it => {
map[it.num_key] = it;
})
//生成结果集
data.forEach(it => {
const parent = map[it.fuid];
if (parent) {
if (!Array.isArray(parent.children)) parent.children = [];
parent.children.push(it);
} else {
val.push(it);
2019-11-19 19:02:28 +08:00
}
2019-12-02 16:36:45 +08:00
console.log(parent)
2019-12-02 16:08:44 +08:00
})
return val;
2019-11-19 19:02:28 +08:00
}
2019-12-02 17:10:38 +08:00
if (res.data.length == 0) {
ctx.body = "{code:0,data:[]}"
} else {
2019-12-02 16:36:45 +08:00
ctx.body = JSON.stringify(tree(res.data))
2019-11-20 17:56:02 +08:00
2019-12-02 16:36:45 +08:00
}
2019-12-02 16:08:44 +08:00
next()
2019-11-19 19:02:28 +08:00
})
}
module.exports = {
'GET /groupadd': groupadd,
'GET /groupdel': groupdel,
'GET /groupfind': groupfind,
};