2025-04-24 18:14:28 +08:00
const express = require ( "express" ) ;
2025-04-24 19:27:10 +08:00
const bodyParser = require ( "body-parser" ) ; // 添加 body-parser 中间件
2025-04-24 18:14:28 +08:00
const { getConnection , query } = require ( "../utils/db.util" ) ;
2025-04-24 19:27:10 +08:00
const axios = require ( "axios" ) ;
2025-04-24 11:59:10 +08:00
const router = express . Router ( ) ;
2025-04-24 19:27:10 +08:00
// 添加 body-parser 中间件
router . use ( bodyParser . json ( ) ) ;
2025-04-24 11:59:10 +08:00
// 获取角色列表
2025-04-24 18:14:28 +08:00
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 : "获取角色数据失败" } ) ;
}
2025-04-24 11:59:10 +08:00
} ) ;
2025-04-24 19:27:10 +08:00
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 ;
2025-04-24 19:34:32 +08:00
const result = await axios . post (
"http://192.168.25.110:19000/center/gm" ,
2025-04-24 20:07:41 +08:00
{ role , item : [ [ itemId , itemNum ] ] } ,
2025-04-24 19:34:32 +08:00
{
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" ,
} ,
}
) ;
2025-04-24 19:27:10 +08:00
console . log ( "物品[%s]发送给[%s]结果:%s" , itemId , roleName , result . data ) ;
2025-04-24 20:08:47 +08:00
if ( result . data == "成功" ) res . json ( { code : 0 , msg : "发送成功!" } ) ;
2025-04-24 20:07:41 +08:00
else res . json ( { code : 1 , msg : result . data . content } ) ;
2025-04-24 19:27:10 +08:00
} catch ( error ) {
console . error ( "获取角色数据失败:" , error ) ;
res . status ( 500 ) . json ( { error : "获取角色数据失败" } ) ;
}
} ) ;
2025-04-24 11:59:10 +08:00
// 获取充值列表
2025-04-24 18:14:28 +08:00
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 : "获取充值列表失败" } ) ;
}
2025-04-24 11:59:10 +08:00
} ) ;
2025-04-24 18:14:28 +08:00
module . exports = router ;