| | |
| | | using System.Threading.Tasks; |
| | | using System.Windows.Forms; |
| | | |
| | | |
| | | |
| | | namespace Gs.DevApp.DevFrm |
| | | { |
| | | public partial class Frm_MesInvItemArn : XtraForm |
| | |
| | | public Frm_MesInvItemArn() |
| | | { |
| | | InitializeComponent(); |
| | | this.chkAllUrgent.CheckedChanged += ChkAllUrgent_CheckedChanged; |
| | | toolBarMenu1.btnAddClick += ToolBarMenu1_btnAddClick; |
| | | toolBarMenu1.btnEdtClick += ToolBarMenu1_btnEdtClick; |
| | | toolBarMenu1.btnSaveClick += ToolBarMenu1_btnSaveClick; |
| | |
| | | gvMx1quantity.OptionsColumn.ReadOnly = true; |
| | | txt_paperBillNo.ReadOnly = true; |
| | | txt_isSrm.Checked = true; |
| | | |
| | | DataTable _newTable = dt.rtnData; |
| | | _oldTable = _newTable; |
| | | } |
| | |
| | | Task.Delay(100); |
| | | getPageList(1); |
| | | } |
| | | /// <summary> |
| | | /// 全单急料开关切换事件 |
| | | /// </summary> |
| | | private void ChkAllUrgent_CheckedChanged(object sender, EventArgs e) |
| | | { |
| | | if (gvMx1.DataRowCount == 0) return; |
| | | if (chkAllUrgent.Properties.ReadOnly) return; |
| | | |
| | | bool isUrgent = chkAllUrgent.Checked; |
| | | string targetTxt = isUrgent ? "1:急料" : "0:普通"; |
| | | |
| | | gvMx1.BeginDataUpdate(); |
| | | try |
| | | { |
| | | for (int i = 0; i < gvMx1.DataRowCount; i++) |
| | | { |
| | | // 注意:SetRowCellValue 会触发 Grid 的 CellValueChanged 事件(如果有的话) |
| | | gvMx1.SetRowCellValue(i, "urgentFlagTxt", targetTxt); |
| | | } |
| | | } |
| | | finally |
| | | { |
| | | gvMx1.EndDataUpdate(); |
| | | // 强制刷新视图,确保文字变了 |
| | | gvMx1.RefreshData(); |
| | | } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 分页事件 |
| | |
| | | setSrm(); |
| | | txt_receiveOrgId.IsReadly = true; |
| | | txt_suppId.IsReadly = true; |
| | | if (chkAllUrgent != null) |
| | | { |
| | | // 1. 确保控件启用 |
| | | chkAllUrgent.Enabled = true; |
| | | chkAllUrgent.Properties.ReadOnly = false; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | AboutGuid = Gs.DevApp.ToolBox.UtilityHelper.ToGuid(row["aboutGuid"].ToString()), |
| | | ItemId = int.Parse(row["itemId"].ToString()), |
| | | Quantity = decimal.Parse(row["quantity"].ToString()), |
| | | UrgentFlag = (row["urgentFlagTxt"].ToString().Replace(":","").Replace("普通", "").Replace("急料", "").Replace("一般", "")), |
| | | // 这段保存代码不用动,它能自动识别上面设置的文字 |
| | | UrgentFlag = (row["urgentFlagTxt"] != null && row["urgentFlagTxt"].ToString().Contains("急料")) ? "1" : "0", |
| | | Remark = row["memo"].ToString(), |
| | | }); |
| | | } |
| | |
| | | gcMx1.ForceInitialize(); |
| | | gvMx1.BestFitColumns(); |
| | | Gs.DevApp.ToolBox.UtilityHelper.SetGridLayout(gvMx1); |
| | | if (chkAllUrgent != null) |
| | | { |
| | | chkAllUrgent.CheckedChanged -= ChkAllUrgent_CheckedChanged; |
| | | bool allUrgent = true; |
| | | foreach (DataRow dr in dt.Rows) |
| | | { |
| | | // 假设字段名是 urgentFlagTxt,值是 "1:急料" |
| | | string val = dr["urgentFlagTxt"]?.ToString() ?? ""; |
| | | if (!val.Contains("1:急料")) |
| | | { |
| | | allUrgent = false; |
| | | break; |
| | | } |
| | | } |
| | | // 3. 设置开关状态 |
| | | chkAllUrgent.Checked = allUrgent; |
| | | // 4. 根据当前模式(编辑/查看)决定是否可用 |
| | | // 如果是 add 或 edit 模式,且有权限,则允许点击 |
| | | chkAllUrgent.Enabled = isEdit || toolBarMenu1.currentAction == "add"; |
| | | chkAllUrgent.Properties.ReadOnly = !(isEdit || toolBarMenu1.currentAction == "add"); |
| | | chkAllUrgent.CheckedChanged += ChkAllUrgent_CheckedChanged; |
| | | } |
| | | } |
| | | else |
| | | { |