alielie
2025-05-20 99df058a665ea04065a23e729ec79a2f23f79881
HMI.ParameterManage/ParameterModal.xaml.cs
@@ -1,18 +1,10 @@
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Linq;
using System.Reflection;
using System.Windows;
using Microsoft.Win32;
using HMI.Core.Entity;
using HMI.ParameterManage.Model;
using HMI.UI.DpUtil;
using HMI.UI.Util;
using Panuon.WPF.UI;
using HMI.Core.Annotation;
using HMI.Core.Entity;
using HMI.Core.Exceptions;
using HMI.Core.Util;
using HMI.ParameterManage.Entity;
using HMI.UI;
using System;
using System.ComponentModel;
namespace HMI.ParameterManage
{
@@ -21,15 +13,15 @@
    /// </summary>
    public partial class ParameterModal : WindowX
    {
        public ParameterModal()
        private XmlModel DataModel;
        public ParameterModal(XmlModel model)
        {
            DataModel = model;
            this.DataContext = this;
            InitializeComponent();
        }
        public ParameterData Data { get; set; }
        public SqliteHelper sqliteHelper { get; set; }
        private bool _isProcessing;
@@ -54,11 +46,11 @@
                        return;
                    }
                    SaveOrUpdateData();
                    DataModel.SaveOrUpdateParameter(Data);
                }
                catch (Exception ex)
                {
                    Panuon.WPF.UI.Toast.Show(this, "Error!", ToastPosition.Top);
                    ToastHelper.Error(this, $"Error: {ex.Message}");
                    e.Cancel = true;
                    return;
                }
@@ -73,15 +65,7 @@
        public bool ValidateName(object value, out string err)
        {
            err = null;
            string segment = string.IsNullOrEmpty(Data.Id) ? "" : $" AND id!='{Data.Id}'";
            string sql = $"SELECT 1 FROM parameter WHERE name='{TbName.Text}' AND productName='{Data.ProductName}'{segment};";
            if (sqliteHelper.HasData(sql))
            {
                err = "参数名称不能重复";
                return false;
            }
            return true;
            return DataModel.ValidateParameterName(value, out err);
        }
        private bool ValidateForm()
@@ -109,33 +93,6 @@
            TbDescription.Text = Data.Description;
            TbPGroup.Text = Data.PGroup;
            return this.ShowDialog();
        }
        private void SaveOrUpdateData()
        {
            if (string.IsNullOrEmpty(Data.Id))
            {
                InsertData(Data);
            }
            else
            {
                UpdateData(Data);
            }
        }
        public void InsertData(ParameterData data)
        {
            string sql = $@"INSERT INTO parameter (name,value,unit,description,productName,pGroup)
                VALUES
                ('{data.Name}','{data.Value}','{data.Unit}','{data.Description}','{data.ProductName}','{data.PGroup}');";
            sqliteHelper.ExecuteSql(sql);
        }
        public void UpdateData(ParameterData data)
        {
            string sql = $@"UPDATE parameter SET name='{data.Name}',value='{data.Value}',unit='{data.Unit}',
description='{data.Description}',productName='{data.ProductName}',pGroup='{data.PGroup}' WHERE id='{data.Id}';";
            sqliteHelper.ExecuteSql(sql);
        }
    }
}