88 lines
2.9 KiB
C#
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();
|
|
}
|
|
}
|
|
}
|