This commit is contained in:
Administrator committed 2026-06-11 00:36:14 +08:00
commit 683f8ac880
3 files changed
+119 -7

No files matched your search

+60 -6
View File
@@ -40,12 +40,14 @@ namespace SunlightAggregationManager.ViewModel
public static string SERVERNAME = "";
public static string SERVERUSER = "";
public static string SERRVERPASWORD = "";
public static int ChemicalNumber, DyeMeasurementNumber, DyeDissolveNumber, PowderNumber;
private static Timer? _timer;
public static DataTable ChemicalStatistics = new DataTable();
public static DataBase dataBase = new DataBase();
public static UserClass.SqliteHelper SQLiteHelpers = null!; //定义数据库
private readonly string DBAddress = Environment.CurrentDirectory + "\\DataBase\\SunlightAggregationManager.db"; //数据库路径
public static DataTable ActionLog = new DataTable();
[ObservableProperty]
public static DataTable _machines = new DataTable(); //设备表缓存
[ObservableProperty]
@@ -150,11 +152,13 @@ namespace SunlightAggregationManager.ViewModel
Service.Rows.Add(3, "RUN", "Sunlight_Server_Link");
AsyncTcpClient.Configuration(SERVERIP, SERVERNAME, SERVERUSER, SERRVERPASWORD);
Service.EndInit();
_timer = new Timer(EXTask, null, TimeSpan.FromSeconds(60), TimeSpan.FromMinutes(30));
}
//Machines操作数据库
private void Machines_Updata(object sender, DataRowChangeEventArgs e)
{
Dictionary<string, object> row_entity = new Dictionary<string, object>();
@@ -202,7 +206,7 @@ namespace SunlightAggregationManager.ViewModel
SQLiteHelpers.InsertData("ActionLog", userlog);
}
}
//UserData操作数据库
private void UserData_Updata(object sender, DataRowChangeEventArgs e)
{
Dictionary<string, object> row_entity = new Dictionary<string, object>();
@@ -256,6 +260,8 @@ namespace SunlightAggregationManager.ViewModel
SQLiteHelpers.InsertData("ActionLog", userlog);
}
}
//数据表操作
public static void Insert_Memory(DataTable DB, Dictionary<string, object> Value)//插入数据
{
try
@@ -379,5 +385,53 @@ namespace SunlightAggregationManager.ViewModel
}
}
private static async void EXTask(object? state)
{
try
{
string DyelotsBulkedRecipe_sql = "SELECT [ProductCode],[ProductName],SUM(DispenseGrams)/1000 " +
"as TotalDispenseGrams,COUNT(*) as PrescriptionCount FROM [BatchDyeingCentral].[dbo].[DyelotsBulkedRecipe] " +
"where DispenseEndTime > '" + DateTime.Now.ToString("yyyy-MM-dd") + "' AND DispenseEndTime < '" +
DateTime.Now.AddDays(1).ToString("yyyy-MM-dd") + "'AND DispenseGrams IS NOT NULL" + " GROUP BY " +
"[ProductCode],[ProductName] ORDER BY TotalDispenseGrams DESC ";
string Dye_sql =
"SELECT [Dyelot],[ReDye],[StepNumber] FROM [BatchDyeingCentral].[dbo].[DyelotsBulkedRecipe] " +
"where ((DispenseEndTime >= '" + DateTime.Now.ToString("yyyy-MM-dd") + "' AND DispenseEndTime < '" +
DateTime.Now.AddDays(1).ToString("yyyy-MM-dd") + "') OR (DispenseTime >= '" + DateTime.Now.ToString("yyyy-MM-dd") +
"' AND DispenseTime < '" + DateTime.Now.AddDays(1).ToString("yyyy-MM-dd") + "')) " +
"AND ProductType = 1 GROUP BY [Dyelot],[ReDye],[StepNumber];";
string Chemical_sql =
"SELECT [Dyelot],[ReDye],[StepNumber] FROM [BatchDyeingCentral].[dbo].[DyelotsBulkedRecipe] " +
"where ((DispenseEndTime >= '" + DateTime.Now.ToString("yyyy-MM-dd") + "' AND DispenseEndTime < '" +
DateTime.Now.AddDays(1).ToString("yyyy-MM-dd") + "') OR (DispenseTime >= '" + DateTime.Now.ToString("yyyy-MM-dd") +
"' AND DispenseTime < '" + DateTime.Now.AddDays(1).ToString("yyyy-MM-dd") + "')) " +
"AND ProductType = 2 GROUP BY [Dyelot],[ReDye],[StepNumber];";
string Powder_sql =
"SELECT [Dyelot],[ReDye],[StepNumber] FROM [BatchDyeingCentral].[dbo].[DyelotsBulkedRecipe] " +
"where ((DispenseEndTime >= '" + DateTime.Now.ToString("yyyy-MM-dd") + "' AND DispenseEndTime < '" +
DateTime.Now.AddDays(1).ToString("yyyy-MM-dd") + "') OR (DispenseTime >= '" + DateTime.Now.ToString("yyyy-MM-dd") +
"' AND DispenseTime < '" + DateTime.Now.AddDays(1).ToString("yyyy-MM-dd") + "')) " +
"AND ProductType = 3 GROUP BY [Dyelot],[ReDye],[StepNumber];";
string DyeDissolve =
"SELECT *FROM [BatchDyeingCentral].[dbo].[DyeSolutionHistory] " + "where DispenseEndTime >= '" +
DateTime.Now.ToString("yyyy-MM-dd") + "' AND DispenseEndTime < '" + DateTime.Now.AddDays(1).ToString("yyyy-MM-dd") + "'";
ChemicalStatistics = await dataBase.ExecuteQueryAsync(DyelotsBulkedRecipe_sql);
DyeMeasurementNumber = await dataBase.ExecuteQueryAsyncCount(Dye_sql);
ChemicalNumber = await dataBase.ExecuteQueryAsyncCount(Chemical_sql);
PowderNumber = await dataBase.ExecuteQueryAsyncCount(Powder_sql);
DyeDissolveNumber = await dataBase.ExecuteQueryAsyncCount(DyeDissolve);
}
catch (Exception ex)
{//错误处理
LogGing.ERRDATA(ex);
Console.WriteLine(ex.ToString());
}
finally {
Console.WriteLine("当日染料称量["+ DyeMeasurementNumber+ "]染料输送["+ DyeDissolveNumber + "]" +
"助剂输送["+ ChemicalNumber + "]粉体输送["+ PowderNumber + "]");
}
}
}
}
}