- 将判断条件从 result.data.result 修改为 result.data == "成功" - 优化了发送结果的判断逻辑,确保正确处理发送成功和失败的情况
68 lines
2.5 KiB
JavaScript
68 lines
2.5 KiB
JavaScript
const express = require("express");
|
|
const bodyParser = require("body-parser"); // 添加 body-parser 中间件
|
|
const { getConnection, query } = require("../utils/db.util");
|
|
const axios = require("axios");
|
|
|
|
const router = express.Router();
|
|
|
|
// 添加 body-parser 中间件
|
|
router.use(bodyParser.json());
|
|
|
|
// 获取角色列表
|
|
router.get("/roles", async (req, res) => {
|
|
try {
|
|
const { search = "" } = req.query;
|
|
const connection = await getConnection();
|
|
const results = await query(`SELECT * FROM role where name like '%${search}%'`, [], connection);
|
|
res.json(results);
|
|
} catch (error) {
|
|
console.error("获取角色数据失败:", error);
|
|
res.status(500).json({ error: "获取角色数据失败" });
|
|
}
|
|
});
|
|
|
|
router.post("/item/send", async (req, res) => {
|
|
try {
|
|
const { roleName, itemId, itemNum = 1 } = req.body;
|
|
if (!roleName || !itemId) res.json({ code: 1, msg: "缺少必要参数" });
|
|
const roleId = await query(`SELECT id FROM role where name = '${roleName}' limit 1`);
|
|
if (roleId?.length != 1) res.json({ code: 1, msg: "没有找到角色" });
|
|
const role = roleId[0].id;
|
|
const result = await axios.post(
|
|
"http://192.168.25.110:19000/center/gm",
|
|
{ role, item: [[itemId, itemNum]] },
|
|
{
|
|
headers: {
|
|
Accept: "application/json, text/plain, */*",
|
|
"Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",
|
|
Connection: "keep-alive",
|
|
"Content-Type": "application/json",
|
|
"User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1 Edg/121.0.0.0",
|
|
"Accept-Encoding": "gzip",
|
|
"X-Mgip-sign": "gzip",
|
|
},
|
|
}
|
|
);
|
|
console.log("物品[%s]发送给[%s]结果:%s", itemId, roleName, result.data);
|
|
if (result.data == "成功") res.json({ code: 0, msg: "发送成功!" });
|
|
else res.json({ code: 1, msg: result.data.content });
|
|
} catch (error) {
|
|
console.error("获取角色数据失败:", error);
|
|
res.status(500).json({ error: "获取角色数据失败" });
|
|
}
|
|
});
|
|
|
|
// 获取充值列表
|
|
router.get("/recharges", async (req, res) => {
|
|
try {
|
|
const connection = await getConnection();
|
|
const results = await query("SELECT * FROM recharge", [], connection);
|
|
res.json(results);
|
|
} catch (error) {
|
|
console.error("获取充值列表失败:", error);
|
|
res.status(500).json({ error: "获取充值列表失败" });
|
|
}
|
|
});
|
|
|
|
module.exports = router;
|