using DataEntity.Device; using DataEntity.Share; using DataRWDAL.Device; using HandyControl.Data; using HxEnum; using System; using System.Data; using System.Linq; using System.Windows; using System.Windows.Input; using XCommon; using XCommon.Log; using XCommon.Tip; using XHandler.View.Dialog; namespace XHandler.View.Device { /// /// 方法参数编辑 页面 /// public partial class DeviceMethodParametersAdd : System.Windows.Window { #region 参数 /// /// 操作类型(添加、修改) /// public string OperationType = ""; /// /// 主键ID /// public string MethodParameterId = ""; /// /// 设备ID /// public string DeviceconfigId = ""; /// /// 委托列表数据 /// public delegate void DelegateForm(); /// /// 委托方法名称 /// public event DelegateForm LoadListEveForm; #endregion #region 构造函数 /// /// 构造函数 /// public DeviceMethodParametersAdd() { InitializeComponent(); } #endregion #region 初始化 /// /// 初始化 /// /// /// private void Window_Loaded(object sender, RoutedEventArgs e) { try { #region 数据类型 cBoxDataType.ItemsSource = ComUtility.GetDropDownList(); cBoxDataType.SelectedIndex = 0; #endregion #region 类别 cBoxType.ItemsSource = ComUtility.GetDropDownList(); cBoxType.SelectedIndex = 0; #endregion if (OperationType == OperationTypeEnum.OperationType_Enum.EditEnum.ToString()) { var model = DeviceConfigMethodParametersDB.GetInfodById(MethodParameterId); if (model != null) { // 数据类型 cBoxDataType.SelectedValue = Convert.ToInt32(model.DataType); // 类别 cBoxType.SelectedValue = Convert.ToInt32(model.Type); // 参数中文名称 tBoxParameterChName.Text = model.Name; // 参数英文名称 tBoxParameterEnName.Text = model.ParameterName; // 参数值 tBoxValue.Text = model.Value; // 排序 tBoxSort.Text = model.Sort.ToString(); // 备注 tBoxRemark.Text = model.Remark; } } } catch (Exception ex) { LoggerHelper.ErrorLog("ERROR:", ex); } } #endregion #region 确定 /// /// 确定 /// /// /// private void btnOk_Click(object sender, RoutedEventArgs e) { if (!CheckData()) { return; } DeviceConfigMethodParametersModel deviceconfigMethodParametersModel = new DeviceConfigMethodParametersModel(); int updateCnt = 0; if (OperationType == OperationTypeEnum.OperationType_Enum.EditEnum.ToString()) { deviceconfigMethodParametersModel = DeviceConfigMethodParametersDB.GetInfodById(MethodParameterId); deviceconfigMethodParametersModel.Id = MethodParameterId; deviceconfigMethodParametersModel.ModifyName = Shared.User.username; deviceconfigMethodParametersModel.ModifyTime = DateTime.Now; } else { deviceconfigMethodParametersModel.Id = Guid.NewGuid().ToString(); deviceconfigMethodParametersModel.DeviceconfigId = DeviceconfigId; deviceconfigMethodParametersModel.DeviceconfigMethodId = MethodParameterId; deviceconfigMethodParametersModel.ProjectId = Shared.SoftwareInformation.software_information_id; deviceconfigMethodParametersModel.CreateTime = DateTime.Now; deviceconfigMethodParametersModel.CreatName = Shared.User.username; } deviceconfigMethodParametersModel.DataType = Convert.ToInt32(cBoxDataType.SelectedValue); deviceconfigMethodParametersModel.Type = Convert.ToInt32(cBoxType.SelectedValue); deviceconfigMethodParametersModel.Name = tBoxParameterChName.Text; deviceconfigMethodParametersModel.ParameterName = tBoxParameterEnName.Text; deviceconfigMethodParametersModel.Value = tBoxValue.Text; deviceconfigMethodParametersModel.Sort = Convert.ToInt32(tBoxSort.Text); deviceconfigMethodParametersModel.Remark = tBoxRemark.Text; deviceconfigMethodParametersModel.IsSocketNonstandard = EnumManagement.GetEnumValue(IsSocketNonstandardEnum.TypeBEnum); if (OperationType == OperationTypeEnum.OperationType_Enum.EditEnum.ToString()) { updateCnt = DeviceConfigMethodParametersDB.Update(deviceconfigMethodParametersModel); } else { updateCnt = DeviceConfigMethodParametersDB.Add(deviceconfigMethodParametersModel); } if (updateCnt > 0) { LoadListEveForm(); //new MessageDialog("保存成功").ShowDialog(); ShowTip.ShowNotice("保存成功", InfoType.Success); this.Close(); } } /// /// 检查输入数据 /// /// private bool CheckData() { if (string.IsNullOrWhiteSpace(tBoxParameterChName.Text)) { //new MessageDialog("请填写参数中文名称").ShowDialog(); ShowTip.ShowNotice("请填写参数中文名称", InfoType.Warning); tBoxParameterChName.Focus(); return false; } if (string.IsNullOrWhiteSpace(tBoxParameterEnName.Text)) { //new MessageDialog("请填写参数英文名称").ShowDialog(); ShowTip.ShowNotice("请填写参数英文名称", InfoType.Warning); tBoxParameterEnName.Focus(); return false; } var devMethodParametersModel = DeviceConfigMethodParametersDB.GetInfo(DeviceconfigId, MethodParameterId, Convert.ToInt32(cBoxType.SelectedValue), tBoxParameterEnName.Text); if (OperationType == OperationTypeEnum.OperationType_Enum.EditEnum.ToString()) { if (devMethodParametersModel != null && devMethodParametersModel.Count > 0) { var tempList = devMethodParametersModel.Where(x => x.Id != MethodParameterId); if (tempList != null && tempList.Count() > 0) { //new MessageDialog("参数英文名已存在").ShowDialog(); ShowTip.ShowNotice("参数英文名已存在", InfoType.Warning); tBoxParameterEnName.Focus(); return false; } } } else { if (devMethodParametersModel != null && devMethodParametersModel.Count > 0) { //new MessageDialog("参数英文名已存在").ShowDialog(); ShowTip.ShowNotice("参数英文名已存在", InfoType.Warning); tBoxParameterEnName.Focus(); return false; } } if (string.IsNullOrWhiteSpace(tBoxSort.Text)) { //new MessageDialog("请填写排序号").ShowDialog(); ShowTip.ShowNotice("请填写排序号", InfoType.Warning); tBoxSort.Focus(); return false; } return true; } #endregion #region 拖动窗体 /// /// 拖动窗体 /// /// /// private void Grid_MouseDown(object sender, MouseButtonEventArgs e) { if (e.ChangedButton == MouseButton.Left) { this.DragMove(); } } #endregion #region 关闭页面 /// /// 关闭页面 /// /// /// private void btnClose_Click(object sender, RoutedEventArgs e) { this.Close(); } #endregion #region ESC关闭画面 /// /// ESC关闭画面 /// /// /// private void Window_PreviewKeyDown(object sender, KeyEventArgs e) { if (e.Key == Key.Escape) { this.Close(); } } #endregion } }