using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using CoreFS.CA06; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.YdmBase; using System.Collections; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Control; using Infragistics.Win.UltraWinGrid; using Infragistics.Win; using Core.Mes.Client.Comm.Format; using Core.StlMes.Client.PipeLeaveFactory.YdmObject; using Core.StlMes.Client.PipeLeaveFactory.Tool; namespace Core.StlMes.Client.PipeLeaveFactory { public partial class frmPipeTrainDay : FrmBase { /// /// 用户销售组织权限 /// private string[] _salgPermissions = null; private int index = -1; ArrayList pram = new ArrayList(); string planno = ""; public frmPipeTrainDay() { InitializeComponent(); this.IsLoadUserView = true; } /// /// 初始化 /// /// /// private void frmPipeTrainDay_Load(object sender, EventArgs e) { PlanDay.Value = DateTime.Parse(DateTime.Now.AddMonths(-1).ToString()); GetCustomer(); _salgPermissions = InitPermissions(); BaseHelper.InitOrderUnit(cmbCustomer, _salgPermissions, this.ob); BaseHelper.InitMonth(cmbMonth); BaseHelper.InitYear(cmbYear); cmbMonth.Value = string.Format("{0:00}", DateTime.Now.Month); cmbYear.Value = DateTime.Now.Year.ToString(); } /// /// 重写基类方法 /// /// /// public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "Query": doQuery(); break; case "Add": doAdd(); break; case "Delete": doDelete(); break; case "Down": doDown(); break; case "Refresh": doRefresh(); break; case "Export": if (ultraTabControl1.SelectedTab.Key.Equals("0")) { GridHelper.ulGridToExcel(ultraGrid2, "铁运月计划"); } else { GridHelper.ulGridToExcel(ultraGrid1, "铁运日计划"); } break; case "Close": this.Close(); break; } } /// /// 下拉框绑定数据 /// private void GetCustomer() { //专用线 YdmBaseClass.InitComboEditor(cmbSpcl, "com.steering.pss.ydm.pipeleavefactory.FrmPipeSendList.queryPrivateSid", "SPCL_LN_NO", ob, false); //到站 YdmBaseClass.InitComboEditor(cmbStation, "com.steering.pss.ydm.pipeleavefactory.FrmPipeSendList.queryArriveStation", "STATION_NO", ob, false); } /// /// 获取用户的销售组织权限 /// /// private string[] InitPermissions() { ArrayList list = new ArrayList(); string[] userDptIds = this.ValidDataPurviewIds; for (int i = 0; i < userDptIds.Length; i++) { string userDptId = userDptIds[i]; if (userDptId.Length < 6) { if (!list.Contains("100101")) { list.Add("100101"); } if (!list.Contains("100102")) { list.Add("100102"); } if (!list.Contains("100103")) { list.Add("100103"); } string[] strs = new string[list.Count]; for (int j = 0; j < list.Count; j++) { strs[j] = list[j].ToString(); } return strs; } else { if (userDptId.StartsWith("002002")) { if (!list.Contains("100102")) { list.Add("100102"); } } else { if (userDptId.Length < 9) { if (!list.Contains("100101")) { list.Add("100101"); } if (!list.Contains("100103")) { list.Add("100103"); } } else { if (userDptId.StartsWith("002001004")) { if (!list.Contains("100101")) { list.Add("100101"); } } else { if (!list.Contains("100103")) { list.Add("100103"); } } } } } } if (list.Count == 0) { return null; } else { string[] strs = new string[list.Count]; for (int i = 0; i < list.Count; i++) { strs[i] = list[i].ToString(); } return strs; } } /// /// 查询 /// private void doQuery() { string custnm = ""; string spcl = ""; string station = ""; string strTime = ""; if (chkDate.Checked) { if (DateTime.Parse(PlanDay.Value.ToString()) > DateTime.Parse(EndTime.Value.ToString())) { MessageUtil.ShowTips("开始时间不能大于结束时间!"); return; } } if (chkCustomer.Checked) { if (cmbCustomer.SelectedItem == null) { MessageUtil.ShowTips("请选择订货单位!"); return; } custnm = cmbCustomer.Value.ToString(); } if (chkSpcl.Checked) { if (cmbSpcl.SelectedItem == null) { MessageUtil.ShowTips("请选择专用线!"); return; } spcl = cmbSpcl.Value.ToString(); } if (chkStation.Checked) { if (cmbStation.SelectedItem == null) { MessageUtil.ShowTips("请选择到站!"); return; } station = cmbStation.Value.ToString(); } if (chkYearMatch.Checked) { strTime = cmbYear.Text.Trim()+cmbMonth.Text.Trim(); } pram.Clear(); pram.Add(custnm); pram.Add(custnm); pram.Add(custnm); pram.Add(spcl); pram.Add(spcl); pram.Add(spcl); pram.Add(station); pram.Add(station); pram.Add(station); if (ultraTabControl1.SelectedTab.Key.Equals("0")) { pram.Add(strTime); dataTable4.Clear(); DataTable dtm = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.querySendPlanM", new object[] { pram, this.ValidDataPurviewIds}, this.ob); GridHelper.CopyDataToDatatable(ref dtm, ref dataTable3, true); if (dtm.Rows.Count == 0) return; DataTable dtc = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.querySendPlanC", null, this.ob); dtc = YdmBaseClass.FilterTable(dtm, dtc, "SEND_PLAN_NO"); GridHelper.CopyDataToDatatable(ref dtc, ref dataTable4, true); foreach (UltraGridRow row in ultraGrid2.Rows) { if (row.HasChild()) { foreach (UltraGridRow crow in row.ChildBands[0].Rows) { crow.Cells["EDI_WT_C"].Value = crow.Cells["REM_WT"].Value.ToString(); } } } } else { string strday = ""; string endday = ""; if(chkDate.Checked) { strday = DateTime.Parse(PlanDay.Value.ToString()).ToString("yyyy-MM-dd") + " 00:00:00"; endday = DateTime.Parse(EndTime.Value.ToString()).ToString("yyyy-MM-dd") + " 23:59:59"; } pram.Add(strday); pram.Add(strday); pram.Add(strday); pram.Add(endday); pram.Add(endday); string status = ""; if (ChcStatus.Checked) { status = ComStatus.Value.ToString(); } dataTable2.Clear(); DataTable dtm = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.queryPlanDayInfoM", new object[] { pram, this.ValidDataPurviewIds, status }, this.ob); GridHelper.CopyDataToDatatable(ref dtm, ref dataTable1, true); if (dtm.Rows.Count == 0) return; DataTable dtc = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.queryPlanDayInfoC", null, this.ob); dtc = YdmBaseClass.FilterTable(dtm, dtc, "SEND_DAYPLAN_NO"); GridHelper.CopyDataToDatatable(ref dtc, ref dataTable2, true); } } private int GetGridSelectCount() { foreach (UltraGridRow row in ultraGrid2.Rows) { //if (row.Cells["CHOOSE"].Value.ToString() == "True") //{ // return 1; //} UltraGridRow[] rows = GridHelper.GetRowsWithKey(row.ChildBands[0], new string[] { "CHOOSE" }, new string[] { "True" }); if (rows.Length > 0) { return 1; } } return 0; } /// /// 新增 /// private void doAdd() { double totalwt = 0; double totalnum = 0; double totallen = 0; UltraGridRow row = this.ultraGrid2.ActiveRow; if (row == null) { MessageUtil.ShowTips("无数据,不能进行此操作!"); return; } ArrayList baseData = new ArrayList(); ArrayList childData = new ArrayList(); string strTime = DateTime.Now.ToString(); YdmZcDaysendplanTrainMEntity ydm = null; if (GetGridSelectCount() == 0) { MessageUtil.ShowTips("请选择您要操作的记录!"); return; } for (int i = 0; i < ultraGrid2.Rows.Count; i++) { totalwt = 0; totalnum = 0; totallen = 0; planno = ""; int incount = 0; UltraGridRow ugr = ultraGrid2.Rows[i]; UltraGridRow ugrc = null; //从表操作 if (ugr.HasChild()) { foreach (UltraGridRow crow in ugr.ChildBands[0].Rows) { ugrc = crow; if (Convert.ToBoolean(ugrc.Cells["CHOOSE"].Value)) { incount += 1;//判断主表是否循环 YdmZcDaysendplanTrainCEntity comc = GetChildData(ugrc, ugr); if (comc == null) { return; } if (comc.PlanNum.ToString() != "") { totalnum += Convert.ToDouble(comc.PlanNum); } if (comc.PlanTotlLen.ToString() != "") { totallen += Convert.ToDouble(comc.PlanTotlLen); } if (comc.PlanWt.ToString() != "") { totalwt += Convert.ToDouble(comc.PlanWt); } comc.CreateTime = strTime; childData.Add(JSONFormat.Format(comc)); } } if (incount > 0) { ydm = GetBaseData(ugr); if (ydm == null) { return; } ydm.SendDayplanNo = planno; ydm.PlanWt = totalwt.ToString("f3"); ydm.PlanNum = totalnum.ToString(); ydm.PlanTotlLen = totallen.ToString(); baseData.Add(JSONFormat.Format(ydm)); } } } if (baseData.Count > 1) { MessageUtil.ShowWarning("不能跨发运计划号新增!"); return; } if (MessageBox.Show("是否确认新增日计划?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) return; if (baseData.Count > 0 || childData.Count > 0) { CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay"; ccp.MethodName = "saveYdmSendPlan"; ccp.ServerParams = new object[] { baseData, childData }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == -1) return; MessageBox.Show("新增日计划成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.None); doQuery(); foreach (UltraGridRow ugrow in ultraGrid2.Rows) { if (ugrow.Cells["SEND_PLAN_NO"].Value.ToString().Equals(ydm.SendPlanNo.ToString())) { ugrow.Activate(); ugrow.ExpandAll(); } } //} } else { MessageUtil.ShowTips("新增失败!"); return; } } /// /// 新增子记录数据 /// /// /// private YdmZcDaysendplanTrainCEntity GetChildData(UltraGridRow ugrc, UltraGridRow ugr) { YdmZcDaysendplanTrainCEntity com = new YdmZcDaysendplanTrainCEntity(); // 编制量 string prepwt = ugrc.Cells["EDI_WT_C"].Value.ToString(); if (prepwt == "0") { MessageUtil.ShowTips("编制量不能为零!"); ugrc.Cells["CHOOSE"].Value = false; return null; } string sale = ugr.Cells["SALE_ORG"].Value.ToString(); string salecode = ""; switch (sale) { case "100101": salecode = "X"; break; case "100102": salecode = "M"; break; case "100103": salecode = "G"; break; default: break; } string Daytime = DateTime.Now.ToString("yyMMdd"); com.SendPlanNo = ugrc.Cells["SEND_PLAN_NO"].Value.ToString(); com.OrderNo = ugrc.Cells["ORDER_NO"].Value.ToString(); com.OrderSeq = ugrc.Cells["ORDER_SEQ"].Value.ToString(); com.DeliveryNo = ugrc.Cells["DELIVERY_NO"].Value.ToString(); //com.SendDayplanNo = com.OrderNo + "," + salecode + "2" + "D" + Daytime + "," + com.OrderSeq + ""; com.SendDayplanNo = salecode + "2" + "D" + Daytime; planno = com.SendDayplanNo.ToString(); com.MaterialNo = ugrc.Cells["MATERIAL_NO"].Value.ToString(); com.MaterialName = ugrc.Cells["MATERIAL_NAME"].Value.ToString(); com.Produccode = ugrc.Cells["PRODUCCODE"].Value.ToString(); com.Producname = ugrc.Cells["PRODUCNAME"].Value.ToString(); com.PrdCls = ugrc.Cells["PRD_CLS"].Value.ToString(); com.Psc = ugrc.Cells["PSC"].Value.ToString(); com.PscDesc = ugrc.Cells["PSC_DESC"].Value.ToString(); com.SpecCode = ugrc.Cells["SPEC_CODE"].Value.ToString(); com.SpecName = ugrc.Cells["SPEC_NAME"].Value.ToString(); com.LenNo = ugrc.Cells["LEN_NO"].Value.ToString(); com.LenDesc = ugrc.Cells["LEN_DESC"].Value.ToString(); com.PlanWt = ugrc.Cells["EDI_WT_C"].Value.ToString(); com.PlanNum = ugrc.Cells["EDI_NUM_C"].Value.ToString(); com.PlanTotlLen = ugrc.Cells["EDI_TOTL_LEN_C"].Value.ToString(); com.CreateName = this.UserInfo.GetUserName(); com.UpdateName = this.UserInfo.GetUserName(); com.OrdPk = ugrc.Cells["ORD_PK"].Text.Trim(); com.OrdLnPk = ugrc.Cells["ORD_LN_PK"].Text.Trim(); com.OrdLnDlyPk = ugrc.Cells["ORD_LN_DLY_PK"].Text.Trim(); return com; } private YdmZcDaysendplanTrainMEntity GetBaseData(UltraGridRow ugr) { YdmZcDaysendplanTrainMEntity com = new YdmZcDaysendplanTrainMEntity(); ArrayList list = new ArrayList(); list.Add(ugr.Cells["SEND_PLAN_NO"].Value.ToString()); DataTable dt = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmShipmentApp.doQueryFalg", new object[] { list }, ob); if (dt.Rows.Count>0) { if (dt.Rows[0]["APP_FLAG"].ToString().Equals("0")) { MessageUtil.ShowTips("你选中的记录月车皮申请数未审批,请重新选择!"); return null; } } if (ugr.Cells["VEHICLE_60_NUM"].Value.ToString() == "0") { MessageUtil.ShowTips("请输入日申请数量!"); return null; } com.SendPlanNo = ugr.Cells["SEND_PLAN_NO"].Value.ToString(); com.SaleOrg = ugr.Cells["SALE_ORG"].Value.ToString(); com.SaleOrgDesc = ugr.Cells["SALE_ORG_DESC"].Value.ToString(); com.CustomerNo = ugr.Cells["CUSTOMER_NO"].Value.ToString(); com.CustomerNm = ugr.Cells["CUSTOMER_NM"].Value.ToString(); com.ReceivNo = ugr.Cells["RECEIV_NO"].Value.ToString(); com.ReceivNm = ugr.Cells["RECEIV_NM"].Value.ToString(); com.StationNo = ugr.Cells["STATION_NO"].Value.ToString(); com.StationNm = ugr.Cells["STATION_NM"].Value.ToString(); com.SpclLnNo = ugr.Cells["SPCL_LN_NO"].Value.ToString(); com.SpclLnNm = ugr.Cells["SPCL_LN_NM"].Value.ToString(); com.WagonsPlanNo = ugr.Cells["WAGONS_PLAN_NO"].Value.ToString(); com.Vehicle60Num = ugr.Cells["VEHICLE_60_NUM"].Value.ToString(); com.Vehicle70Num = ugr.Cells["VEHICLE_70_NUM"].Value.ToString(); com.VehicleDayNum = (double.Parse(ugr.Cells["VEHICLE_60_NUM"].Value.ToString())).ToString(); //com.PlanNum = ugr.Cells["PLAN_NUM"].Value.ToString(); //com.PlanWt = ugr.Cells["PLAN_WT"].Value.ToString(); //com.PlanTotlLen = ugr.Cells["PLAN_TOTL_LEN"].Value.ToString(); com.PlanStartTime = DateTime.Now.AddDays(1).ToString("yyyy/MM/dd"); com.PlanEndTime = DateTime.Now.AddDays(1).ToString("yyyy/MM/dd"); com.ApplyDay = DateTime.Now.ToString("yyyy/MM/dd"); com.CreateName = this.UserInfo.GetUserName(); com.UpdateName = this.UserInfo.GetUserName(); com.DepartmentCode = ugr.Cells["DEPARTMENT_CODE"].Value.ToString(); com.DepartmentDesc = ugr.Cells["DEPARTMENT_DESC"].Value.ToString(); com.ManagementNo = ugr.Cells["MANAGEMENT_NO"].Value.ToString(); com.ManagementName = ugr.Cells["MANAGEMENT_NAME"].Value.ToString(); return com; } /// ///下发 /// private void doDown() { UltraGridRow ugr = this.ultraGrid1.ActiveRow; ArrayList list1 = new ArrayList(); int isSelect = 0;//是否选择行 if (ugr == null) { MessageUtil.ShowTips("无数据,不能进行此操作!"); return; } string strTime = DateTime.Now.ToString(); foreach (UltraGridRow row in ultraGrid1.Rows) { if (Convert.ToBoolean(row.Cells["CHK"].Text) == true) { isSelect += 1; ArrayList prList = new ArrayList(); prList.Add(row.Cells["SEND_DAYPLAN_NO"].Value.ToString()); DataTable dt = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.queryPlanState", new Object[] { prList }, this.ob); if (dt.Rows.Count > 0) { if (dt.Rows[0]["SEND_DAYPLAN_STATUS"].ToString() != "编辑") { MessageUtil.ShowTips("您选中的记录已" + dt.Rows[0]["SEND_DAYPLAN_STATUS"].ToString() + "不能进行此操作!"); return; } if (dt.Rows[0]["APP_FLAG"].ToString().Equals("0")) { MessageUtil.ShowTips("您选中的记录批复数未审批,不能进行此操作!"); return; } } else { MessageUtil.ShowTips("你选中的记录已不存在,请重新选择!"); return; } ArrayList list = new ArrayList(); list.Add(this.UserInfo.GetUserName()); list.Add(strTime); list.Add(row.Cells["SEND_DAYPLAN_NO"].Text.Trim()); list1.Add(list); } } if (isSelect == 0) { MessageUtil.ShowTips("请选择要下发的数据!"); return; } if (MessageBox.Show("是否确认下发?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)return; int count = ServerHelper.SetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.queryPlanIssued", new Object[] { list1 }, this.ob); if (count != 0) { MessageUtil.ShowTips("下发成功!"); doQuery(); } } /// /// 废除 /// private void doDelete() { ArrayList pramliat = new ArrayList(); ArrayList listall = new ArrayList(); int isSelect = 0;//是否选择行 UltraGridRow ugr = this.ultraGrid1.ActiveRow; if (ugr == null) { MessageUtil.ShowTips("无数据,不能进行此操作!"); return; } string strTime = DateTime.Now.ToString(); foreach (UltraGridRow row in ultraGrid1.Rows) { if (Convert.ToBoolean(row.Cells["CHK"].Text) == true) { isSelect += 1; if (!doQueryFalg(row)) return; ArrayList pram = new ArrayList(); pram.Add(this.UserInfo.GetUserName()); pram.Add(strTime); pram.Add(ugr.Cells["SEND_DAYPLAN_NO"].Text.Trim()); pram.Add(ugr.Cells["SEND_PLAN_NO"].Text.Trim()); pramliat.Add(pram); //从表数据 if (row.HasChild()) { foreach (UltraGridRow crow in row.ChildBands[0].Rows) { ArrayList list = new ArrayList(); list.Add(crow.Cells["SEND_DAYPLAN_NO"].Value.ToString()); list.Add(crow.Cells["SEND_PLAN_NO"].Value.ToString()); list.Add(crow.Cells["ORDER_NO"].Value.ToString()); list.Add(crow.Cells["ORDER_SEQ"].Value.ToString()); list.Add(crow.Cells["DELIVERY_NO"].Value.ToString()); list.Add(this.UserInfo.GetUserName()); list.Add(strTime); listall.Add(list); } } } } if (isSelect == 0) { MessageUtil.ShowTips("请选择要撤销的数据!"); return; } if (MessageBox.Show("是否确认撤销?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) return; //主表子表有效标志置为无效 int count = ServerHelper.SetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.deltePlanSend", new Object[] { pramliat, listall }, this.ob); if (count != 0) { MessageUtil.ShowTips("撤销成功!"); doQuery(); } } //刷新 private void doRefresh() { GetCustomer(); } /// /// 判断废除条件 /// /// 选中的行ultraGrid.ActiveRow /// 返回true之通过,flase不通过 private bool doQueryFalg(UltraGridRow ugr) { if (ugr == null) return false; ArrayList prList = new ArrayList(); prList.Clear(); prList.Add(ugr.Cells["SEND_DAYPLAN_NO"].Value.ToString()); DataTable dt = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.queryPlanState", new Object[] { prList }, this.ob); if (dt.Rows.Count > 0) { if (dt.Rows[0]["SEND_DAYPLAN_STATUS"].ToString() != "编辑" && dt.Rows[0]["SEND_DAYPLAN_STATUS"].ToString() != "下发") { MessageUtil.ShowTips("您选中的记录已" + dt.Rows[0]["SEND_DAYPLAN_STATUS"].ToString() + "不能进行此操作!"); return false; } if (dt.Rows[0]["APP_FLAG"].ToString().Equals("1")) { MessageUtil.ShowTips("您选中的记录车皮运号已审批,不能进行此操作!"); return false; } } else { MessageUtil.ShowTips("你选中的记录已不存在,请重新选择!"); return false; } return true; } /// /// Check选择事件 /// /// /// private void chkCustomer_CheckedChanged(object sender, EventArgs e) { if (chkCustomer.Checked) cmbCustomer.ReadOnly = false; else cmbCustomer.ReadOnly = true; if (chkSpcl.Checked) cmbSpcl.ReadOnly = false; else cmbSpcl.ReadOnly = true; if (chkStation.Checked) cmbStation.ReadOnly = false; else cmbStation.ReadOnly = true; if (chkDate.Checked) { PlanDay.Enabled = true; EndTime.Enabled = true; } else { PlanDay.Enabled = false; EndTime.Enabled = false; } if (chkYearMatch.Checked) { cmbYear.ReadOnly = false; cmbMonth.ReadOnly = false; } else { cmbYear.ReadOnly = true; cmbMonth.ReadOnly = true; } if (ChcStatus.Checked) { ComStatus.ReadOnly = false; } else { ComStatus.ReadOnly = true; } } /// /// 判断录入限制 /// /// /// private void ultraGrid2_CellChange(object sender, CellEventArgs e) { ultraGrid2.UpdateData(); //获取父行(没有上一层) if (!e.Cell.Row.HasParent()) { string vehiMonth = e.Cell.Row.Cells["VEHICLE_MONTH_NUM"].Value.ToString(); string vehi60= e.Cell.Row.Cells["VEHICLE_60_NUM"].Value.ToString(); string actnum = e.Cell.Row.Cells["ACT_MONTH_NUM"].Value.ToString();//月使用量 string batchnum = e.Cell.Row.Cells["BATCH_MONTH_NUM"].Value.ToString();//月批复量 string dayVehi = e.Cell.Row.Cells["VEHICLE_DAY_NUM"].Value.ToString();//日申请车皮数 DataTable dt = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.queryDaySendPlan", new object[] { e.Cell.Row.Cells["SEND_PLAN_NO"].Text.Trim() }, this.ob); string vehiDay = dt.Rows[0]["BATCH_DAY_NUM"].ToString(); if (vehi60 == "") { vehi60 = "0"; e.Cell.Row.Cells["VEHICLE_60_NUM"].Value = "0"; } if (e.Cell.Column.Key.Equals("VEHICLE_60_NUM")) { if (Convert.ToDouble(batchnum) - Convert.ToDouble(actnum) < Convert.ToDouble(e.Cell.Row.Cells["VEHICLE_60_NUM"].Value)) { MessageUtil.ShowTips("月车皮数不足,请重新输入!"); e.Cell.Row.Cells["VEHICLE_60_NUM"].Value = 0; return; } } } else { index = e.Cell.Row.Index; #region 可编制量 string rem_wt = e.Cell.Row.Cells["REM_WT"].Value.ToString(); string rem_num = e.Cell.Row.Cells["REM_NUM"].Value.ToString(); string rem_len = e.Cell.Row.Cells["REM_TOTL_LEN"].Value.ToString(); #endregion #region 编制量 string edi_wt = e.Cell.Row.Cells["EDI_WT_C"].Value.ToString(); string edi_num = e.Cell.Row.Cells["EDI_NUM_C"].Value.ToString(); string edi_len = e.Cell.Row.Cells["EDI_TOTL_LEN_C"].Value.ToString(); #endregion if (edi_wt == "") { edi_wt = "0"; e.Cell.Row.Cells["EDI_WT_C"].Value = "0"; } if (e.Cell.Column.Key.Equals("EDI_WT_C")) { if (Convert.ToDouble(rem_wt) < Convert.ToDouble(edi_wt)) { MessageUtil.ShowTips("编制量不能大于可编制量,请重新输入!"); e.Cell.Row.Cells["EDI_WT_C"].Value = "0"; return; } } //foreach (UltraGridRow row in ultraGrid2.Rows) //{ // if (row.HasChild()) // { // double planCont = 0; // double planWt = 0; // double planLen = 0; // foreach (UltraGridRow crow in row.ChildBands[0].Rows) // { // if (Convert.ToBoolean(crow.Cells["CHOOSE"].Text) == true) // { // planCont += Double.Parse(crow.Cells["EDI_NUM_C"].Value.ToString()); // planWt += Double.Parse(crow.Cells["EDI_WT_C"].Value.ToString()); // planLen += Double.Parse(crow.Cells["EDI_TOTL_LEN_C"].Value.ToString()); // } // } // row.Cells["EDI_NUM"].Value = planCont.ToString(); // row.Cells["EDI_WT"].Value = planWt.ToString(); // row.Cells["EDI_TOTL_LEN"].Value = planLen.ToString(); // } //} } } private void frmPipeStow_Shown(object sender, EventArgs e) { toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.False; toolMenu.Toolbars[0].Tools["Down"].InstanceProps.Visible = DefaultableBoolean.False; } private void ultraTabControl1_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e) { if (toolMenu == null) return; if (e.Tab.TabControl.SelectedTab.Key.Equals("0")) { toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.False; toolMenu.Toolbars[0].Tools["Down"].InstanceProps.Visible = DefaultableBoolean.False; toolMenu.Toolbars[0].Tools["Add"].InstanceProps.Visible = DefaultableBoolean.True; PlanDay.Visible = false; EndTime.Visible = false; label1.Visible = false; chkDate.Visible = false; chkYearMatch.Visible = true; cmbYear.Visible = true; cmbMonth.Visible = true; ChcStatus.Visible = false; ComStatus.Visible = false; } else { toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.True; toolMenu.Toolbars[0].Tools["Down"].InstanceProps.Visible = DefaultableBoolean.True; toolMenu.Toolbars[0].Tools["Add"].InstanceProps.Visible = DefaultableBoolean.False; PlanDay.Visible = true; EndTime.Visible = true; label1.Visible = true; chkDate.Visible = true; chkYearMatch.Visible = false; cmbYear.Visible = false; cmbMonth.Visible = false; ChcStatus.Visible = true; ComStatus.Visible = true ; } } private void ultraGrid2_AfterRowActivate(object sender, EventArgs e) { //if (index != -1) //{ // if (ultraGrid1.ActiveRow.HasParent()) // { // //ultraGrid1.ActiveRow.ParentRow.ChildBands[0].Rows[index].Activate(); // UltraGridCell cell = ultraGrid1.ActiveRow.ParentRow.ChildBands[0].Rows[index].Cells["PLAN_UNIT"]; // cell.Activate(); // cell.IsInEditMode = true; // // = cell.Value.ToString().Length - 1; // index = -1; // } //} } private void ultraGrid1_AfterSelectChange(object sender, AfterSelectChangeEventArgs e) { try { ultraGrid1.UpdateData(); foreach (UltraGridRow r in ultraGrid1.Rows) { r.Cells["CHK"].Value = r.Selected; } } catch { } } } }