Files
message-pusher/routers/message.js
T

60 lines
1.5 KiB
JavaScript
Raw Normal View History

2021-01-17 10:49:19 +08:00
const express = require('express');
const lexer = require('marked').lexer;
const parser = require('marked').parser;
const Message = require('../models/message').Message;
const pushWeChatMessage = require('../common/wechat').pushWeChatMessage;
const formatTime = require('../common/utils').formatTime;
2020-09-13 23:50:16 +08:00
const router = express.Router();
function md2html(markdown) {
return parser(lexer(markdown));
}
2021-01-17 10:49:19 +08:00
router.get('/:description', (req, res, next) => {
2020-09-13 23:50:16 +08:00
req.query.description = req.params.description;
next();
});
2021-01-17 10:49:19 +08:00
router.all('/', (req, res) => {
2020-09-13 23:50:16 +08:00
let message = {
2021-01-17 10:49:19 +08:00
title: req.query.title || req.body.title || '无标题',
2020-09-13 23:50:16 +08:00
status: 1,
2021-01-17 10:49:19 +08:00
created_by: '系统', // TODO
2020-09-13 23:50:16 +08:00
created_time: formatTime(),
description: req.query.description || req.body.description,
content: md2html(req.query.content || req.body.content),
};
Message.create(message)
.then((value) => {
console.log(value);
pushWeChatMessage(message.description, message.link)
.then((response) => {
res.json(response);
})
.catch((reason) => {
res.json(reason);
});
})
.catch((reason) => {
res.json(reason);
});
});
2021-01-17 10:49:19 +08:00
router.get('/detail/:id', (req, res) => {
2020-09-13 23:50:16 +08:00
const id = req.params.id;
Message.getById(id)
.then((value) => {
console.log(value);
2021-01-17 10:49:19 +08:00
res.render('message', value[0]);
2020-09-13 23:50:16 +08:00
})
.catch((reason) => {
2021-01-17 10:49:19 +08:00
res.render('info', {
message: '获取该消息时发生了错误:' + reason,
2020-09-13 23:50:16 +08:00
});
});
});
module.exports = router;