整合管理器应用端(MAUI跨平台)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
2.0 KiB

using System;
using System.Collections.Generic;
using System.Data;
using System.Text;
using System.Linq;
namespace SunlightAggregationTerminal.Models
{
// 定义枚举
public enum MsgType
{
Notice, // 通知
Message, // 信息
System // 系统
}
// 定义显示用的模型
public class NotificationItem
{
public Int64 Id { get; set; }
public string? Title { get; set; }
public string? Content { get; set; }
public DateTime Time { get; set; }
public MsgType Type { get; set; }
}
public class DyelotItem
{
public string? Dyelot { get; set; }
public string? Machine { get; set; }
public string? CreationTime { get; set; }
public string? FabricName { get; set; }
public string? ColorName { get; set; }
public string? CustomerName { get; set; }
}
public static class DataService
{
// 直接返回 List
public static List<NotificationItem> _NotificationData = new List<NotificationItem>();
public static List<NotificationItem> GetAllItems()
{
DataSet? data = AppModels.Select("select * from Notification Where Time > '" +
DateTime.Now.AddDays(-30).ToString("yyyy-MM-dd HH:mm:ss.fff") + "'");
_NotificationData.Clear();
if (data != null)
{
foreach (DataRow dr in data.Tables[0].Rows)
{
_NotificationData.Add(new NotificationItem
{
Id = dr.Field<Int64>("Id"),
Title = dr.Field<string>("Title") ,
Content = dr.Field<string>("Content"),
Time = DateTime.Parse(dr.Field<string>("Time")!),
Type = (MsgType)dr.Field<Int64>("Type")
});
}
}
// 倒序返回
return _NotificationData.OrderByDescending(x => x.Time).ToList();
}
}
}