"use strict"; let express = require('express'); let router = express.Router(); let request = require('request'); let http = require('http'); let configFile = require('../../include/commons').CONFIG_FILE; let config = require('../../resources/config/' + configFile); let ImDb = require('../../repository/oracle/db/im.db'); let WlyySDK = require("../../util/wlyy.sdk"); let log = require('../../util/log.js'); const APIv2 = require('../../include/endpoints').APIv2; /** * 获取应用角标数。 * * TODO: 角标数字为所有消息的总和+扩展业务消息数 * * URL: * /application/badge_no?user_id=sand * * 参数: * uid:用户id */ router.get(APIv2.Application.BadgeNo, function (req, response) { let userId = req.query.user_id; ImDb.execQuery({ "sql": "SELECT imei, token from user_tokens WHERE user = ?", "args": [userId], "handler": function (err, result) { if (err || result.length == 0) { return; } WlyySDK.request(userId, '', result[0].token, result[0].imei, '/im/common/message/messages', 'POST', function (err, res) { let count = 0; res = JSON.parse(res) if (res.status == 200) { let data = res.data; count = JSON.parse(data.imMsgCount).count + data.system.amount + data.healthIndex.amount + data.sign.amount; } response.status(200).send({"count": count}); }); } }); }); module.exports = router;