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

41 lines
1.0 KiB
C#

#if Deprecated
using Godot;
using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
using BITKit;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace BITFactory;
[GlobalClass]
public partial class IDIS_RegisterDB : FormDBProvider
{
public override void Submit(string data)
{
var jObject = JsonConvert.DeserializeObject<JObject>(data);
var handle = jObject["handle"]!.ToObject<string>();
var values = jObject["values"]!.ToObject<List<IDIS_Data>>();
var references = jObject["references"]!.ToObject<List<string>>();
var createUser = jObject["createUser"]!.ToObject<string>();
if(Regex.IsMatch(handle,IDIS_Code.AddressRegex) is false)
{
throw new InvalidOperationException("标识格式不正确");
}
IDIS_Service.Singleton.Register(handle, createUser);
foreach (var x in values)
{
IDIS_Service.Singleton.Register(handle,x.Name, x.Format, x.Value,x.Category);
}
foreach (var x in references)
{
IDIS_Service.Singleton.RegisterReference(handle,x);
}
}
}
#endif