2025-06-28 15:38:37 -04:00

88 lines
2.9 KiB
C#

using MySql.Data.MySqlClient;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace PoEco.Net.DB
{
internal class Item
{
public static MySqlConnection MxPoEDB()
{
MySqlConnection conn;
string myConnectionString;
myConnectionString = $"server={JSON.Settings.GetdbHost()};port={JSON.Settings.GetdbPort()};uid={JSON.Settings.GetdbUser()};pwd={JSON.Settings.GetdbPass()};database={JSON.Settings.GetdbName()};";
conn = new MySqlConnection();
conn.ConnectionString = myConnectionString;
return conn;
}
public static bool CheckItemExistsByUIID(string uuid)
{
MySqlConnection con = MxPoEDB();
string cmdText = $"SELECT * FROM poeco_items WHERE uiid = '{uuid}'";
MySqlCommand cmd = new MySqlCommand(cmdText, con);
con.Open();
var row = cmd.ExecuteReader();
if (row.HasRows)
{
con.Close();
return true;
} else
{
con.Close();
return false;
}
}
public static int CountItemByUID(int uid, int tid)
{
MySqlConnection con = MxPoEDB();
string cmdText = $"SELECT COUNT(*) FROM poeco_items WHERE uid = '{uid}' AND tid = '{tid}'";
MySqlCommand cmd = new MySqlCommand(cmdText, con);
con.Open();
int count = Convert.ToInt32(cmd.ExecuteScalar());
return count;
}
public static List<string> EnumerateItemByUID(int uid, int tid)
{
List<string> i = new List<string>();
MySqlConnection con = MxPoEDB();
string cmdText = $"SELECT * FROM poeco_items WHERE uid = '{uid}' AND tid = '{tid}'";
MySqlCommand cmd = new MySqlCommand(cmdText, con);
con.Open();
MySqlDataReader DR = cmd.ExecuteReader();
while (DR.Read())
{
i.Add(DR.GetString(2));
}
con.Close();
return i;
}
public static void DeleteItemByUIID(int uid, int tid, string uiid)
{
MySqlConnection con = MxPoEDB();
string cmdText = $"DELETE FROM poeco_items WHERE uid = '{uid}' AND tid = '{tid}' AND uiid = '{uiid}'";
MySqlCommand cmd = new MySqlCommand(cmdText, con);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}
public static void DeleteAllItemsByUID(int uid)
{
MySqlConnection con = MxPoEDB();
string cmdText = $"DELETE FROM poeco_items WHERE uid = '{uid}'";
MySqlCommand cmd = new MySqlCommand(cmdText, con);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}
}
}