Browse Source

Merge branch 'main' of https://github.com/KeyKoder/cards-simulator into main

new_protocol
KeyKoder 5 years ago
parent
commit
55bf3e0f43
  1. 10
      server/src/db.rs
  2. 26
      server/src/main.rs
  3. 12
      server/src/setup.sql

10
server/src/db.rs

@ -1,4 +1,4 @@
use sqlx::{pool::PoolConnection, prelude::*, query, query_as, query_file, SqliteConnection, SqlitePool}; use sqlx::{pool::PoolConnection, prelude::*, query_unchecked, query_as, query_file_unchecked, SqliteConnection, SqlitePool};
use tokio::stream::StreamExt; use tokio::stream::StreamExt;
pub mod types; pub mod types;
@ -14,7 +14,7 @@ impl DbPool {
let mut conn = pool.acquire().await.unwrap(); let mut conn = pool.acquire().await.unwrap();
query_file!("src/setup.sql") query_file_unchecked!("src/setup.sql")
.execute(&mut conn) .execute(&mut conn)
.await .await
.unwrap(); .unwrap();
@ -50,7 +50,7 @@ impl DbConnection {
let uuid = Uuid::new_v4(); let uuid = Uuid::new_v4();
// println!("{:?}", uuid.as_bytes().to_vec()); // println!("{:?}", uuid.as_bytes().to_vec());
self.conn self.conn
.execute(query!( .execute(query_unchecked!(
"INSERT INTO Users(uuid, name) VALUES(?, ?)", "INSERT INTO Users(uuid, name) VALUES(?, ?)",
uuid.as_bytes().to_vec(), uuid.as_bytes().to_vec(),
name.to_string() name.to_string()
@ -70,7 +70,7 @@ impl DbConnection {
pub async fn create_lobby(&mut self) -> u32 { pub async fn create_lobby(&mut self) -> u32 {
let id = rand::random(); let id = rand::random();
self.conn self.conn
.execute(query!( .execute(query_unchecked!(
"INSERT INTO Lobbies(id) VALUES(?)", "INSERT INTO Lobbies(id) VALUES(?)",
id as i32 id as i32
)) ))
@ -81,7 +81,7 @@ impl DbConnection {
pub async fn join_lobby(&mut self, user: Uuid, lobby: u32) { pub async fn join_lobby(&mut self, user: Uuid, lobby: u32) {
self.conn self.conn
.execute(query!( .execute(query_unchecked!(
"INSERT INTO UsersInLobbies(UserId, LobbyId) VALUES(?, ?)", "INSERT INTO UsersInLobbies(UserId, LobbyId) VALUES(?, ?)",
user.as_bytes().to_vec(), user.as_bytes().to_vec(),
lobby as i32 lobby as i32

26
server/src/main.rs

@ -7,25 +7,25 @@ mod logger;
async fn main() { async fn main() {
let (close, _stdin) = logger::setup().unwrap(); let (close, _stdin) = logger::setup().unwrap();
// protobuf::route_guide_grpc::RouteGuid // protobuf::route_guide_grpc::RouteGuid
for i in 0..100 { // for i in 0..100 {
std::thread::sleep(std::time::Duration::from_secs_f32(0.1)); // std::thread::sleep(std::time::Duration::from_secs_f32(0.1));
if i == 69 { // if i == 69 {
log::info!("69 Nͬ͂ͧi̽̅̽҉̫̕͢ĉ͆̚҉̢͞͏eͫ̑͑"); // log::info!("69 Nͬ͂ͧi̽̅̽҉̫̕͢ĉ͆̚҉̢͞͏eͫ̑͑");
std::thread::sleep(std::time::Duration::from_secs_f32(0.2)); // std::thread::sleep(std::time::Duration::from_secs_f32(0.2));
}else{ // }else{
log::info!("{}", i); // log::info!("{}", i);
} // }
} // }
let games = games::load_games(); let games = games::load_games();
log::info!("{:?}", games); log::info!("{:?}", games);
games[0].run(4); games[0].run(4);
let pool = db::DbPool::new().await; let pool = db::DbPool::new().await;
let mut conn = pool.acquire().await; // let mut conn = pool.acquire().await;
println!("{}", conn.add_user("Hi").await); // println!("{}", conn.add_user("Hi").await);
println!("{:?}", conn.users().await); // println!("{:?}", conn.users().await);
conn.close().await; // conn.close().await;
grpc::start(pool).await; grpc::start(pool).await;
close.close(); close.close();

12
server/src/setup.sql

@ -1,5 +1,3 @@
-- Add migration script here
DROP TABLE IF EXISTS `UsersInLobbies`; DROP TABLE IF EXISTS `UsersInLobbies`;
DROP TABLE IF EXISTS `Users`; DROP TABLE IF EXISTS `Users`;
DROP TABLE IF EXISTS `Lobbies`; DROP TABLE IF EXISTS `Lobbies`;
@ -22,13 +20,3 @@ CREATE TABLE UsersInLobbies (
FOREIGN KEY (LobbyID) REFERENCES Lobbies(ID), FOREIGN KEY (LobbyID) REFERENCES Lobbies(ID),
FOREIGN KEY (UserID) REFERENCES Users(UUID) FOREIGN KEY (UserID) REFERENCES Users(UUID)
); );
-- INSERT INTO Users(UUID, Name) VALUES("0123456789abcdef", "Hi");
-- INSERT INTO Lobbies(ID) VALUES(0);
-- INSERT INTO Users(UUID, Name) VALUES("0123456789abcdff", "Hi2");
-- INSERT INTO UsersInLobbies(UserID,LobbyID) VALUES("0123456789abcdff", 0);
-- INSERT INTO Users(UUID, Name) VALUES("0123456789abcdfe", "Hi3");
-- INSERT INTO UsersInLobbies(UserID,LobbyID) VALUES("0123456789abcdfe", 1);
Loading…
Cancel
Save