|
|
@@ -1,69 +1,90 @@
|
|
|
-import { query } from '../sql/query'; // 确保路径是正确的
|
|
|
+import { query } from "../sql/query"; // 确保路径是正确的
|
|
|
|
|
|
class ServerModel {
|
|
|
- //获取
|
|
|
- async getServerList(tag: any, status: number) {
|
|
|
- if (status) {
|
|
|
- return await query(`SELECT id,status,name,ip,port,tips,white_list FROM game_server WHERE tag = ? and status = ?`, [tag, status])
|
|
|
- } else {
|
|
|
- return await query(`SELECT id,status,name,ip,port,tips,white_list FROM game_server WHERE tag = ?`, [tag])
|
|
|
- }
|
|
|
- }
|
|
|
- async getServerListById(tag: any, id: any) {
|
|
|
- return await query(`SELECT * FROM game_enter_server WHERE id = ? `, [id])
|
|
|
+ //获取
|
|
|
+ async getServerList(tag: any, status: number) {
|
|
|
+ if (status) {
|
|
|
+ return await query(
|
|
|
+ `SELECT id,status,name,ip,port,tips,white_list FROM game_server WHERE tag = ? and status = ?`,
|
|
|
+ [tag, status]
|
|
|
+ );
|
|
|
+ } else {
|
|
|
+ return await query(
|
|
|
+ `SELECT id,status,name,ip,port,tips,white_list FROM game_server WHERE tag = ?`,
|
|
|
+ [tag]
|
|
|
+ );
|
|
|
}
|
|
|
- async getAllServerList(tag: any, ip: string) {
|
|
|
- const rows = await query(`SELECT id,status,name,ip,port,tips,white_list FROM game_server WHERE tag = ?`, [tag])
|
|
|
- const resultArray = (rows as any[]).map(row => {
|
|
|
- let status = row.status
|
|
|
- if ((status == 0 || status == 3) && row.white_list) {
|
|
|
- const list = row.white_list.split(",");
|
|
|
- if (list.length > 0) {
|
|
|
- if (list.includes(ip)) {
|
|
|
- status = 1
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ }
|
|
|
+ async getServerListById(tag: any, id: any) {
|
|
|
+ return await query(`SELECT * FROM game_enter_server WHERE id = ? `, [id]);
|
|
|
+ }
|
|
|
+ async getAllServerList(tag: any, ip: string) {
|
|
|
+ const rows = await query(
|
|
|
+ `SELECT id,status,name,ip,port,tips,white_list FROM game_server WHERE tag = ?`,
|
|
|
+ [tag]
|
|
|
+ );
|
|
|
+ const resultArray = (rows as any[]).map((row) => {
|
|
|
+ let status = row.status;
|
|
|
+ if ((status == 0 || status == 3) && row.white_list) {
|
|
|
+ const list = row.white_list.split(",");
|
|
|
+ if (list.length > 0) {
|
|
|
+ if (list.includes(ip)) {
|
|
|
+ status = 1;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- return {
|
|
|
- sid: row.id,
|
|
|
- id: row.id,
|
|
|
- name: row.name,
|
|
|
- server: `ws://${row.ip}:${row.port}`,
|
|
|
- status: status,
|
|
|
- tips: row.tips,
|
|
|
- ip: row.ip,
|
|
|
- port: row.port
|
|
|
- };
|
|
|
- });
|
|
|
- return resultArray
|
|
|
- }
|
|
|
+ return {
|
|
|
+ sid: row.id,
|
|
|
+ id: row.id,
|
|
|
+ name: row.name,
|
|
|
+ server: `ws://${row.ip}:${row.port}`,
|
|
|
+ status: status,
|
|
|
+ tips: row.tips,
|
|
|
+ ip: row.ip,
|
|
|
+ port: row.port,
|
|
|
+ };
|
|
|
+ });
|
|
|
+ return resultArray;
|
|
|
+ }
|
|
|
|
|
|
- async checkEnterServerByUid(uid: any, server_id: any) {
|
|
|
- return await query(`SELECT * FROM game_enter_server where uid = ? and server_id = ?`, [uid, server_id])
|
|
|
- }
|
|
|
+ async checkEnterServerByUid(uid: any, server_id: any) {
|
|
|
+ return await query(
|
|
|
+ `SELECT * FROM game_enter_server where uid = ? and server_id = ?`,
|
|
|
+ [uid, server_id]
|
|
|
+ );
|
|
|
+ }
|
|
|
|
|
|
- async getEnterServerListByUid(uid: any) {
|
|
|
- return await query(`SELECT ges.id, ges.uid, ges.server_id, ges.create_time as last_login_time , gs.ip, gs.port,gs.status,gs.name,gs.tips FROM game_enter_server as ges left join game_server as gs on ges.server_id = gs.id WHERE ges.uid = ? order by ges.create_time desc `, [uid])
|
|
|
- }
|
|
|
+ async getEnterServerListByUid(uid: any) {
|
|
|
+ return await query(
|
|
|
+ `SELECT ges.id, ges.uid, ges.server_id, ges.create_time as last_login_time , gs.ip, gs.port,gs.status,gs.name,gs.tips FROM game_enter_server as ges left join game_server as gs on ges.server_id = gs.id WHERE ges.uid = ? order by ges.create_time desc `,
|
|
|
+ [uid]
|
|
|
+ );
|
|
|
+ }
|
|
|
|
|
|
- //记录进区
|
|
|
- async enterServer(
|
|
|
- uid: any,
|
|
|
- server_id: any,
|
|
|
- create_time: string
|
|
|
- ) {
|
|
|
- return await query(`INSERT INTO game_enter_server(uid,server_id,create_time) VALUES('${uid}','${server_id}', '${create_time}')`, [])
|
|
|
- }
|
|
|
+ //记录进区
|
|
|
+ async enterServer(uid: any, server_id: any, create_time: string) {
|
|
|
+ return await query(
|
|
|
+ `INSERT INTO game_enter_server(uid,server_id,create_time) VALUES('${uid}','${server_id}', '${create_time}')`,
|
|
|
+ []
|
|
|
+ );
|
|
|
+ }
|
|
|
|
|
|
- //更新进区
|
|
|
- async updateEnterServer(
|
|
|
- id: any,
|
|
|
- create_time: string
|
|
|
- ) {
|
|
|
- const sql = 'UPDATE game_enter_server SET create_time = ? WHERE id = ?';
|
|
|
- return await query(sql, [create_time, id])
|
|
|
- }
|
|
|
+ //更新进区
|
|
|
+ async updateEnterServer(id: any, create_time: string) {
|
|
|
+ const sql = "UPDATE game_enter_server SET create_time = ? WHERE id = ?";
|
|
|
+ return await query(sql, [create_time, id]);
|
|
|
+ }
|
|
|
+
|
|
|
+ //更新状态
|
|
|
+ async updateServerStatus(id: any, status: any) {
|
|
|
+ const sql =
|
|
|
+ "UPDATE game_server SET status = ? WHERE id in (?)";
|
|
|
+ return await query(sql, [
|
|
|
+ status,
|
|
|
+ id,
|
|
|
+ ]);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
-module.exports = new ServerModel()
|
|
|
+module.exports = new ServerModel();
|