using DevExpress.XtraRichEdit.Fields; using Gs.DevApp.ToolBox; using Newtonsoft.Json; using System; using System.Windows.Forms; using System.Text.RegularExpressions; namespace Gs.DevApp.DevFrm.BasicData { public partial class Frm_MesItemsShow : DevExpress.XtraEditors.XtraForm { string guidList = ""; public Frm_MesItemsShow(string _guidList) { InitializeComponent(); this.guidList = _guidList; this.Text = "设置提前送货日期:" + guidList; this.btnCancel.Click += BtnCancel_Click; this.btnSave.Click += BtnSave_Click; } /// /// 验证超采率输入值 /// private bool ValidateLossPercent() { if (txt_lossPercent.EditValue == null || string.IsNullOrWhiteSpace(txt_lossPercent.Text)) { txt_lossPercent.EditValue = 0.0; return true; } if (double.TryParse(txt_lossPercent.EditValue.ToString(), out double value)) { if (value < 0.0 || value > 1.0) { MsgHelper.Warning("超采率必须在0到1之间!"); txt_lossPercent.Focus(); return false; } // 格式化显示,保留适当的小数位数 txt_lossPercent.EditValue = Math.Round(value, 4); return true; } else { MsgHelper.Warning("请输入有效的数字!"); txt_lossPercent.EditValue = 0.0; txt_lossPercent.Focus(); return false; } } private void BtnSave_Click(object sender, EventArgs e) { // 保存前验证超采率 if (!ValidateLossPercent()) { return; } var _obj = new { guidList = this.guidList, bz10 = txt_day.Value, percent = txt_lossPercent.EditValue }; try { var strJson = UtilityHelper.HttpPost("", "MesItemsManager/SetDays", JsonConvert.SerializeObject(_obj)); var _rtn = UtilityHelper.ReturnToDynamic(strJson); if (_rtn.rtnCode > 0) { MsgHelper.ShowInformation("提示:" + _rtn.rtnMsg); DialogResult = DialogResult.OK; Close(); } else { MsgHelper.ShowError("提示:" + _rtn.rtnMsg); DialogResult = DialogResult.None; } } catch (Exception ex) { DialogResult = DialogResult.Cancel; MsgHelper.ShowError("提示:" + ex.Message); } } private void BtnCancel_Click(object sender, EventArgs e) { this.Close(); } } }