| | |
| | | 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 |
| | | { |
| | |
| | | /// </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; |
| | | |
| | |
| | | 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; |
| | | } |
| | |
| | | |
| | | 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() |
| | |
| | | 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); |
| | | } |
| | | } |
| | | } |