iFactory.Godot/Mods/工业数据采集与分析应用分享/Scripts/ProductionTraceService.cs

45 lines
1.0 KiB
C#

using Godot;
using System;
using System.Linq;
using BITKit;
namespace BITFactory;
public partial class ProductionTraceService : Node
{
private static IDatabaseContext<SearchResult> Context;
[Export] private UXContainer container;
[ExportCategory("快速绑定")]
[Export] private UXContainer searchContainer;
[Export] private Label searchResultLabel;
[Export] private Button submitButton;
[Export] private LineEdit searchInput;
private void Search(string key)
{
Context.TrySearchArray(x=>x.Key.Contains(key) || x.Id.Contains(key) || x.Display.Contains(key), out var result);
switch (result.Length)
{
case > 1:
Entry(result);
break;
case 1:
Entry(result[0]);
break;
}
}
private void Entry(SearchResult result)
{
container.titleLabel.Text = result.Key;
container.Text = result.Display;
}
private void Entry(SearchResult[] results)
{
}
public override void _Ready()
{
Context = new SqlLiteContext<SearchResult>();
BIT4Log.Log<ProductionTraceService>("正在初始化生产追溯服务");
}
}