123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292 |
- using MV485.helper;
- using MV485.model;
- using System;
- using System.Collections.Generic;
- using System.Data.SQLite;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace MV485.db
- {
- public class DBUpgradeHis
- {
- public static bool InsertUpgradeHis(TUpgradeHis his)
- {
- string sql = @"
- INSERT OR IGNORE INTO t_upgrade_his (
- his_id, device_sn, port_name, baud_rate,
- address, old_fireware, upgrade_time,
- new_fireware, upgrade_result
- )
- VALUES (
- @HisId, @DeviceSn, @PortName, @BaudRate,
- @Address, @OldFireware, @UpgradeTime,
- @NewFireware, @UpgradeResult
- )";
- SQLiteParameter[] parameters = new SQLiteParameter[]
- {
- new SQLiteParameter("@HisId", his.HisId),
- new SQLiteParameter("@DeviceSn", his.DeviceSn),
- new SQLiteParameter("@PortName", his.PortName),
- new SQLiteParameter("@BaudRate", his.BaudRate),
- new SQLiteParameter("@Address", his.Address),
- new SQLiteParameter("@OldFireware", his.OldFireware),
- new SQLiteParameter("@UpgradeTime", his.UpgradeTime),
- new SQLiteParameter("@NewFireware", his.NewFireware),
- new SQLiteParameter("@UpgradeResult", his.UpgradeResult),
- };
- try
- {
- int rows = SQLiteHelper.ExecuteSql(sql, parameters);
- return rows > 0;
- }
- catch (Exception ex)
- {
- Console.WriteLine("InsertUpgradeHis Error: " + ex.Message);
- return false;
- }
- }
- public static List<TUpgradeHis> GetUpgradeHisByDeviceSn(string deviceSn)
- {
- string sql = @"
- SELECT * FROM t_upgrade_his
- WHERE device_sn = @DeviceSn
- ORDER BY upgrade_time DESC";
- SQLiteParameter[] parameters = new SQLiteParameter[]
- {
- new SQLiteParameter("@DeviceSn", deviceSn)
- };
- List<TUpgradeHis> result = new List<TUpgradeHis>();
- using (var reader = SQLiteHelper.ExecuteReader(sql, parameters))
- {
- while (reader.Read())
- {
- result.Add(new TUpgradeHis
- {
- HisId = reader["his_id"].ToString(),
- DeviceSn = reader["device_sn"].ToString(),
- PortName = reader["port_name"].ToString(),
- BaudRate = Convert.ToInt32(reader["baud_rate"]),
- Address = Convert.ToInt32(reader["address"]),
- OldFireware = reader["old_fireware"].ToString(),
- UpgradeTime = reader["upgrade_time"].ToString(),
- NewFireware = reader["new_fireware"].ToString(),
- UpgradeResult = Convert.ToInt32(reader["upgrade_result"]),
- });
- }
- }
- return result;
- }
- public static Tuple<int, int, List<TUpgradeHis>> GetPagedUpgradeHis(int pageNumber, int pageSize, string deviceSn)
- {
- int offset = (pageNumber - 1) * pageSize;
- string sql = @"
- SELECT * FROM t_upgrade_his
- WHERE device_sn = @DeviceSn
- ORDER BY upgrade_time DESC
- LIMIT @PageSize OFFSET @Offset";
- List<SQLiteParameter> parameters = new List<SQLiteParameter>
- {
- new SQLiteParameter("@DeviceSn", deviceSn),
- new SQLiteParameter("@PageSize", pageSize),
- new SQLiteParameter("@Offset", offset),
- };
- List<TUpgradeHis> result = new List<TUpgradeHis>();
- using (var reader = SQLiteHelper.ExecuteReader(sql, parameters.ToArray()))
- {
- while (reader.Read())
- {
- result.Add(new TUpgradeHis
- {
- HisId = reader["his_id"].ToString(),
- DeviceSn = reader["device_sn"].ToString(),
- PortName = reader["port_name"].ToString(),
- BaudRate = Convert.ToInt32(reader["baud_rate"]),
- Address = Convert.ToInt32(reader["address"]),
- OldFireware = reader["old_fireware"].ToString(),
- UpgradeTime = reader["upgrade_time"].ToString(),
- NewFireware = reader["new_fireware"].ToString(),
- UpgradeResult = Convert.ToInt32(reader["upgrade_result"]),
- });
- }
- }
- string countSql = "SELECT COUNT(*) FROM t_upgrade_his WHERE device_sn = @DeviceSn";
- int total = Convert.ToInt32(SQLiteHelper.GetSingle(countSql, new SQLiteParameter("@DeviceSn", deviceSn)));
- int totalPages = (int)Math.Ceiling(total / (double)pageSize);
- return Tuple.Create(total, totalPages, result);
- }
- public static Tuple<int, int, List<TUpgradeHis>> GetPagedUpgradeHis(int pageNumber, int pageSize)
- {
- int offset = (pageNumber - 1) * pageSize;
- string sql = @"
- SELECT * FROM t_upgrade_his
- ORDER BY upgrade_time DESC
- LIMIT @PageSize OFFSET @Offset";
- List<SQLiteParameter> parameters = new List<SQLiteParameter>
- {
- new SQLiteParameter("@PageSize", pageSize),
- new SQLiteParameter("@Offset", offset),
- };
- List<TUpgradeHis> result = new List<TUpgradeHis>();
- using (var reader = SQLiteHelper.ExecuteReader(sql, parameters.ToArray()))
- {
- while (reader.Read())
- {
- result.Add(new TUpgradeHis
- {
- HisId = reader["his_id"].ToString(),
- DeviceSn = reader["device_sn"].ToString(),
- PortName = reader["port_name"].ToString(),
- BaudRate = Convert.ToInt32(reader["baud_rate"]),
- Address = Convert.ToInt32(reader["address"]),
- OldFireware = reader["old_fireware"].ToString(),
- UpgradeTime = reader["upgrade_time"].ToString(),
- NewFireware = reader["new_fireware"].ToString(),
- UpgradeResult = Convert.ToInt32(reader["upgrade_result"]),
- });
- }
- }
- string countSql = "SELECT COUNT(*) FROM t_upgrade_his";
- int total = Convert.ToInt32(SQLiteHelper.GetSingle(countSql));
- int totalPages = (int)Math.Ceiling(total / (double)pageSize);
- return Tuple.Create(total, totalPages, result);
- }
- public static bool DeleteUpgradeHisByHisId(string hisId)
- {
- string sql = "DELETE FROM t_upgrade_his WHERE his_id = @HisId";
- SQLiteParameter[] parameters = { new SQLiteParameter("@HisId", hisId) };
- try
- {
- return SQLiteHelper.ExecuteSql(sql, parameters) > 0;
- }
- catch (Exception ex)
- {
- Console.WriteLine("DeleteUpgradeHisByHisId Error: " + ex.Message);
- return false;
- }
- }
- public static bool DeleteUpgradeHisByDeviceSn(string deviceSn)
- {
- string sql = "DELETE FROM t_upgrade_his WHERE device_sn = @DeviceSn";
- SQLiteParameter[] parameters = { new SQLiteParameter("@DeviceSn", deviceSn) };
- try
- {
- return SQLiteHelper.ExecuteSql(sql, parameters) > 0;
- }
- catch (Exception ex)
- {
- Console.WriteLine("DeleteUpgradeHisByDeviceSn Error: " + ex.Message);
- return false;
- }
- }
- public static bool DeleteUpgradeAllHis()
- {
- string sql = "DELETE FROM t_upgrade_his";
- //SQLiteParameter[] parameters = { new SQLiteParameter("@DeviceSn", deviceSn) };
- try
- {
- //return SQLiteHelper.ExecuteSql(sql, parameters) > 0;
- return SQLiteHelper.ExecuteSql(sql) >= 0;
- }
- catch (Exception ex)
- {
- Console.WriteLine("DeleteUpgradeHisByDeviceSn Error: " + ex.Message);
- return false;
- }
- }
- public static bool UpdateUpgradeResult(TUpgradeHis his)
- {
- // 定义更新的 SQL 语句
- string sql = @"
- UPDATE t_upgrade_his
- SET
- upgrade_result = @UpgradeResult
- WHERE his_id = @HisId";
- // 创建 SQL 参数
- SQLiteParameter[] parameters = new SQLiteParameter[]
- {
- new SQLiteParameter("@HisId", his.HisId),
- new SQLiteParameter("@UpgradeResult", his.UpgradeResult)
- };
- try
- {
- // 调用 SQLiteHelper 执行更新操作
- int rowsAffected = SQLiteHelper.ExecuteSql(sql, parameters);
- // 如果更新成功,返回 true,否则返回 false
- return rowsAffected > 0;
- }
- catch (Exception ex)
- {
- // 处理异常(如果有的话)
- Console.WriteLine("Error updating data: " + ex.Message);
- return false;
- }
- }
- public static bool UpdateUpgradeResultAndNewFrieware(TUpgradeHis his)
- {
- // 定义更新的 SQL 语句
- string sql = @"
- UPDATE t_upgrade_his
- SET
- new_fireware = @NewFireware,
- upgrade_result = @UpgradeResult
- WHERE his_id = @HisId";
- // 创建 SQL 参数
- SQLiteParameter[] parameters = new SQLiteParameter[]
- {
- new SQLiteParameter("@HisId", his.HisId),
- new SQLiteParameter("@NewFireware", his.NewFireware),
- new SQLiteParameter("@UpgradeResult", his.UpgradeResult)
- };
- try
- {
- // 调用 SQLiteHelper 执行更新操作
- int rowsAffected = SQLiteHelper.ExecuteSql(sql, parameters);
- // 如果更新成功,返回 true,否则返回 false
- return rowsAffected > 0;
- }
- catch (Exception ex)
- {
- // 处理异常(如果有的话)
- Console.WriteLine("Error updating data: " + ex.Message);
- return false;
- }
- }
- //----------------------------------------------------------------------------------
- }
- }
|