private void btn_SXHLSJ_Click(object sender, EventArgs e) { WaitingFrom.ShowWait(""); DataTable dt = bll.GetListByXM("", "不锈钢").Tables[0]; foreach (DataRow item in dt.Rows) { Mod_TSP_PLAN_SMS mod = bll.GetModel(item["C_ID"].ToString()); if (mod.C_HL == "Y") { if (mod.D_KP_END_TIME == null) { mod.D_HL_START_TIME = Convert.ToDateTime(mod.D_P_END_TIME).AddHours(2); mod.D_HL_END_TIME = Convert.ToDateTime(mod.D_HL_START_TIME).AddHours(Convert.ToDouble(mod.N_HL_TIME)); } else { mod.D_HL_START_TIME = Convert.ToDateTime(mod.D_KP_END_TIME).AddHours(2); mod.D_HL_END_TIME = Convert.ToDateTime(mod.D_HL_START_TIME).AddHours(Convert.ToDouble(mod.N_HL_TIME)); } bll.Update(mod); } } WaitingFrom.CloseWait(); BindInfo(); }
private void btn_lc_down_Click(object sender, EventArgs e) { try { int rowIndex = this.gridView2.FocusedRowHandle; if (rowIndex == 0) { MessageBox.Show("已经是最后一行了!", "提示"); return; } int A = Convert.ToInt32(gridView2.GetRowCellValue(rowIndex, "N_SORT").ToString());//获取当前行的序号 gridView2.SetRowCellValue(rowIndex + 1, "N_SORT", A); gridView2.SetRowCellValue(rowIndex, "N_SORT", A + 1); #region 保存当前排序 for (int i = 0; i < gridView2.RowCount; i++) { Mod_TSP_PLAN_SMS modpx = bll_lcjh.GetModel(gridView2.GetRowCellValue(i, "C_ID").ToString()); modpx.N_SORT = Convert.ToInt32(gridView2.GetRowCellValue(i, "N_SORT").ToString()); bll_lcjh.Update(modpx); } WaitingFrom.ShowWait(""); gridView1_Click(null, null); WaitingFrom.CloseWait(); #endregion this.gridView2.SelectRow(rowIndex + 1); this.gridView2.FocusedRowHandle = rowIndex + 1; } catch (Exception) { } }
/// <summary> /// 撤回开坯计划 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_canale_Click(object sender, EventArgs e) { WaitingFrom.ShowWait("计划正在撤回,请稍候..."); int[] rownumber = this.gv_KPZPJH.GetSelectedRows();//获取选中行号数组; for (int i = 0; i < rownumber.Length; i++) { int selectedHandle = rownumber[i]; string c_id = gv_KPZPJH.GetRowCellValue(selectedHandle, "C_ID").ToString(); Mod_TRP_PLAN_COGDOWN mod = bll_kp.GetModel(c_id); if (mod.N_STATUS == 1 && mod.N_GROUP_WGT == 0) { string order_id = mod.C_ORDER_NO; Mod_TSP_PLAN_SMS mod_sms = bll_sms.GetModel(order_id); if (mod_sms != null) { mod_sms.N_CREAT_ZG_PLAN = 0; bll_sms.Update(mod_sms); bll_kp.Delete(c_id); } } } WaitingFrom.CloseWait(); btn_query_zg_Click(null, null); btn_query_kpplan_Click(null, null); }
/// <summary> /// 明细顺序修改 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_Update_Click(object sender, EventArgs e) { try { if (DialogResult.No == MessageBox.Show("是否确认修改?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)) { return; } DataRow dr = this.gv_JCMX.GetDataRow(this.gv_JCMX.FocusedRowHandle); string stype = ""; if (Convert.ToInt32(cbo_SCSX.Text.ToString()) > Convert.ToInt32(dr["N_SORT"].ToString())) { stype = "0"; } else { stype = "1"; } bll_tsp_plan.Update_SX(dr["C_ID"].ToString(), dr["C_CAST_NO"].ToString(), Convert.ToInt32(cbo_SCSX.Text.ToString()), Convert.ToInt32(dr["N_SORT"].ToString()), stype); Mod_TSP_PLAN_SMS mod = bll_tsp_plan.GetModel(dr["C_ID"].ToString()); mod.N_SORT = Convert.ToInt32(cbo_SCSX.Text.ToString()); bll_tsp_plan.Update(mod); gv_SJXX_FocusedRowChanged(null, null); MessageBox.Show("修改成功!"); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
private void btn_save_lc_Click(object sender, EventArgs e) { // WaitingFrom.ShowWait("正在保存,请稍后..."); if (sms_plan.Count > 0) { for (int i = 0; i < sms_plan.Count; i++) { DataTable dtdown = bll_plan_sms.GetDownPlan(sms_plan[i].C_ID); if (dtdown.Rows.Count == 0) { int maxsort = bll_plan_sms.GetMaxSortYXMES(sms_plan[i].C_CCM_ID); Mod_TSP_PLAN_SMS modlc = bll_plan_sms.GetModel(sms_plan[i].C_ID); if (sms_plan[i].N_CREAT_PLAN < 3 && modlc.N_CREAT_PLAN == sms_plan[i].N_CREAT_PLAN)//没有下发MES并状态和数据库状态一致才能修改 { if (maxsort < sms_plan[i].N_SORT) { bll_plan_sms.Update(sms_plan[i]); } } } } MessageBox.Show("数据已保存!"); } WaitingFrom.CloseWait(); }
private void btn_save_Click(object sender, EventArgs e) { WaitingFrom.ShowWait(""); DateTime st = dt_KSSJ.DateTime; DateTime time = dt_KSSJ.DateTime; for (int i = 0; i < lst.Count; i++) { Mod_TSP_PLAN_SMS mod = bll.GetModel(lst[i].C_ID); mod.N_XM_SORT = i + 1; mod.D_XM_START_TIME = lst[i].D_XM_START_TIME; if (Convert.ToDateTime(mod.D_XM_CAN_START_TIME) > mod.D_XM_START_TIME) { MessageBox.Show("序号(" + lst[i].N_XM_SORT + ")" + "修磨开始时间不能在钢坯可修磨时间之前"); return; } //if (mod.C_HL == "N") //{ // if (mod.D_KP_END_TIME == null) // { // if (Convert.ToDateTime(mod.D_P_END_TIME).AddHours(26) > mod.D_XM_START_TIME) // { // MessageBox.Show("序号(" + lst[i].N_XM_SORT + ")" + "修磨开始时间不能在连铸生产时间后26小时之前"); // return; // } // } // else // { // if (Convert.ToDateTime(mod.D_KP_END_TIME).AddHours(26) > mod.D_XM_START_TIME) // { // MessageBox.Show( ",序号(" + lst[i].N_XM_SORT + ")" + "修磨开始时间不能在开坯结束时间后26小时之前"); // return; // } // } //} //else //{ // if (Convert.ToDateTime(mod.D_HL_END_TIME).AddHours(2) > mod.D_XM_START_TIME) // { // MessageBox.Show(",序号(" + lst[i].N_XM_SORT + ")" + "修磨时间不能在热轧坯缓冷结束时间后2个小时之前"); // return; // } //} //double sl = Convert.ToDouble(lst[i].N_SLAB_WGT) / 16.7; //lst[i].D_XM_END_TIME = Convert.ToDateTime(lst[i].D_XM_START_TIME).AddHours(sl); //time = Convert.ToDateTime(mod.D_XM_END_TIME); mod.D_XM_END_TIME = lst[i].D_XM_END_TIME; bll.Update(mod); } string result = bll.P_SLAB_CAN_USETIMEG(); BindInfo(); WaitingFrom.CloseWait(); }
/// <summary> /// 保存编辑的炉次计划 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSaveLcPlan_Click(object sender, EventArgs e) { if (sms_plan == null) { return; } for (int i = 0; i < sms_plan.Count; i++) { Mod_TSP_PLAN_SMS mod = sms_plan[i]; bll_plan_sms.Update(mod); } MessageBox.Show("计划已保存!"); }
/// <summary> ///删除炉次计划 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_delete_lc_Click(object sender, EventArgs e) { if (DialogResult.Yes == MessageBox.Show("是否确定删除当前选中的炉次计划?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)) { int rowIndex = this.gridView2.FocusedRowHandle; if (rowIndex >= 0) { string C_ID = gridView2.GetRowCellValue(rowIndex, "C_ID").ToString(); //获取当前行的序号 Mod_TSP_PLAN_SMS moddq = bll_lcjh.GetModel(C_ID); string C_CCM_ID = moddq.C_CCM_ID; // gridView2.GetRowCellValue(rowIndex, "C_CCM_ID").ToString(); string C_STL_GRD = moddq.C_STL_GRD; // gridView2.GetRowCellValue(rowIndex, "C_STL_GRD").ToString(); string C_STD_CODE = moddq.C_STD_CODE; // gridView2.GetRowCellValue(rowIndex, "C_STD_CODE").ToString(); string C_CAST_NO = moddq.C_CAST_NO; // gridView2.GetRowCellValue(rowIndex, "C_CAST_NO").ToString(); int n_sort = Convert.ToInt32(moddq.N_SORT); //当前行的序号 //判断当前选中的炉次计划能否删除 string C_STATUS = moddq.C_STATE; // gridView1.GetRowCellValue(rowIndex, "C_STATE").ToString();//判断当前选中炉次计划是否是有订单计划 0 有 // T.N_CREAT_PLAN < 2 if (Convert.ToInt32(moddq.N_CREAT_PLAN) == 2) { MessageBox.Show("计划炼钢已经排产!"); return; } if (C_STATUS == "1")//没有订单的炉次计划 { bll_lcjh.Delete(C_ID); bll_lcjh.UpdateSort(C_CCM_ID, n_sort - 1); } else//有订单的炉次计划 { DataTable dtjc = bll_lcjh.GetWPLC(C_CCM_ID, C_STL_GRD, C_STD_CODE, n_sort, C_CAST_NO);//查找是否有没有订单的炉次计划 if (dtjc.Rows.Count > 0) { Mod_TSP_PLAN_SMS mod1 = bll_lcjh.GetModel(dtjc.Rows[0]["C_ID"].ToString());//将需要置换的炉次获取 moddq.N_SORT = mod1.N_SORT; moddq.C_CAST_NO = mod1.C_CAST_NO; moddq.C_INITIALIZE_ITEM_ID = mod1.C_INITIALIZE_ITEM_ID; bll_lcjh.Update(moddq); bll_lcjh.Delete(dtjc.Rows[0]["C_ID"].ToString()); bll_lcjh.UpdateSort(C_CCM_ID, n_sort - 1); } else { MessageBox.Show("当前炉次计划有生产订单,不能单独删除!"); } } WaitingFrom.ShowWait(""); btn_query_Click(null, null); WaitingFrom.CloseWait(); } } }
private void btn_QR_Click(object sender, EventArgs e) { WaitingFrom.ShowWait(""); int[] row = gv_GP.GetSelectedRows(); foreach (var item in row) { string id = gv_GP.GetRowCellValue(item, "C_ID").ToString(); Mod_TSP_PLAN_SMS mod = bll.GetModel(id); mod.C_KP_ID = cbo_KP.EditValue.ToString(); bll.Update(mod); } MessageBox.Show("确认成功"); WaitingFrom.CloseWait(); BindInfo(); }
private void btn_tz_dd_Click(object sender, EventArgs e) { WaitingFrom.ShowWait(""); int[] row = gv_GP.GetSelectedRows(); foreach (var item in row) { string id = gv_GP.GetRowCellValue(item, "C_ID").ToString(); Mod_TSP_PLAN_SMS mod = bll.GetModel(id); mod.C_XM_ID = this.cbo_xmdd2.Text.Trim(); bll.Update(mod); } MessageBox.Show("计划修磨地点已调整!"); WaitingFrom.CloseWait(); BindInfo(); }
private void btn_bcGZ_Click(object sender, EventArgs e) { WaitingFrom.ShowWait(""); int[] row = gv_GP.GetSelectedRows(); foreach (var item in row) { string id = gv_GP.GetRowCellValue(item, "C_ID").ToString(); Mod_TSP_PLAN_SMS mod = bll.GetModel(id); mod.C_BXGGZ = icbo_xm.Properties.Items[this.icbo_xm.SelectedIndex].Value.ToString(); bll.Update(mod); } MessageBox.Show("已成功修改计划修磨要求!"); WaitingFrom.CloseWait(); this.icbo_xm.SelectedIndex = 0; BindInfo(); }
private DateTime UpSort(int sort, DataTable dt, DateTime date) { Mod_TSP_PLAN_SMS mod = bll.GetModel(dt.Rows[0]["C_ID"].ToString()); mod.N_KP_SORT = sort; mod.N_SFKPPC = 1; mod.D_KP_START_TIME = date; if (mod.D_KP_CAN_START_TIME > mod.D_KP_START_TIME) { mod.D_KP_START_TIME = mod.D_KP_CAN_START_TIME; } decimal sl = Convert.ToDecimal(mod.N_SLAB_WGT) / 114; mod.D_KP_END_TIME = Convert.ToDateTime(mod.D_KP_START_TIME).AddHours(Convert.ToDouble(sl)); bll.Update(mod); return(Convert.ToDateTime(mod.D_KP_END_TIME)); }
/// <summary> /// 保存 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_Seave_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(btnEdit_STL.Text.Trim())) { MessageBox.Show("请选择钢种!"); return; } if (string.IsNullOrEmpty(icbo_lz3.Text.Trim())) { MessageBox.Show("请选择连铸!"); return; } try { Mod_TSP_CAST_PLAN mod = new Mod_TSP_CAST_PLAN(); DataTable dt_Max = bll_cast_plan.GetList_Max(icbo_lz3.EditValue.ToString()).Tables[0]; Mod_TB_MATRL_MAIN mod_matrl = bll_matrl.GetModel(str_ID); mod.C_CCM_ID = icbo_lz3.EditValue.ToString(); mod.C_CCM_CODE = icbo_lz3.Text.Trim(); int group_max = 0; int sort_max = 0; if (dt_Max.Rows[0]["GROUP_MAX"].ToString() == "") { group_max = 1; } else { group_max = (Convert.ToInt32(dt_Max.Rows[0]["GROUP_MAX"].ToString()) + 1); } if (dt_Max.Rows[0]["SORT_MAX"].ToString() == "") { sort_max = 1; } else { sort_max = (Convert.ToInt32(dt_Max.Rows[0]["SORT_MAX"].ToString()) + 1); } mod.C_ID = System.Guid.NewGuid().ToString(); mod.N_GROUP = group_max; mod.N_TOTAL_WGT = Convert.ToInt32(txt_ZJCLS.Text.Trim()); mod.N_ZJCLS = Convert.ToInt32(txt_ZJCLS.Text.Trim()); mod.N_ZJCLZL = Convert.ToInt32(txt_ZJCLS.Text.Trim()) * 77; mod.N_MLZL = 77; mod.N_SORT = sort_max; mod.C_STL_GRD = btnEdit_STL.Text.Trim(); mod.N_JSCN = 144; DataTable dt_SWL = bll_endtoend.GetSWLSteel(btnEdit_STL.Text.Trim(), txt_STD.Text.Trim(), ""); if (dt_SWL.Rows.Count != 0) { mod.C_BY1 = dt_SWL.Rows[0]["C_B_E_STOVE_STEEL"].ToString() + "`" + dt_SWL.Rows[0]["C_BORDER_STD_CODE"].ToString(); } mod.C_BY2 = ""; mod.C_BY3 = ""; mod.C_STD_CODE = txt_STD.Text.Trim(); if (icbo_lz3.Text == "5#铸机" || icbo_lz3.Text == "7#铸机") { mod.C_SLAB_TYPE = "大方坯"; } else { mod.C_SLAB_TYPE = "小方坯"; } mod.C_STL_GRD_TYPE = mod_matrl.C_PROD_KIND; mod.C_PROD_NAME = mod_matrl.C_PROD_NAME; mod.C_REMARK = btnEdit_STL.Text.Trim() + "`" + txt_STD.Text.Trim(); DataTable dtgylx = bll_gylx.GetGYLX(mod.C_STL_GRD, mod.C_STD_CODE, ""); if (dtgylx.Rows.Count > 0) { if (dtgylx.Rows[0]["C_ROUTE_DESC"].ToString().Contains("RH")) { mod.C_RH = "Y"; } else { mod.C_RH = "N"; } if (dtgylx.Rows[0]["C_ROUTE_DESC"].ToString().Contains("XM")) { mod.C_XM = "Y"; } else { mod.C_XM = "N"; } if (dtgylx.Rows[0]["C_ROUTE_DESC"].ToString().Contains("DHL")) { mod.C_DFP_HL = "Y"; } else { mod.C_DFP_HL = "N"; } if (dtgylx.Rows[0]["C_ROUTE_DESC"].ToString().Contains("HL")) { mod.C_HL = "Y"; } else { mod.C_HL = "N"; } if (dtgylx.Rows[0]["C_ROUTE_DESC"].ToString().Contains("TL")) { mod.C_TL = "Y"; } else { mod.C_TL = "N"; } } if (bll_cast_plan.Add(mod)) { for (int l = 0; l < Convert.ToInt32(txt_ZJCLS.Text.Trim()); l++) { Mod_TSP_PLAN_SMS mod_add_lc2 = new Mod_TSP_PLAN_SMS(); mod_add_lc2.C_ID = System.Guid.NewGuid().ToString(); mod_add_lc2.C_FK = mod.C_ID; mod_add_lc2.N_SORT = l; mod_add_lc2.C_STATE = "1"; mod_add_lc2.C_STL_GRD = mod.C_STL_GRD; mod_add_lc2.C_STD_CODE = mod.C_STD_CODE; mod_add_lc2.C_CCM_ID = mod.C_CCM_ID; mod_add_lc2.C_CCM_DESC = mod.C_CCM_CODE; mod_add_lc2.N_SLAB_WGT = mod.N_MLZL; mod_add_lc2.C_SLAB_SIZE = mod_matrl.C_SLAB_SIZE; mod_add_lc2.C_SLAB_LENGTH = mod_matrl.N_LTH.ToString(); mod_add_lc2.N_JC_SORT = mod.N_SORT; mod_add_lc2.C_BY1 = mod.C_BY1; mod_add_lc2.C_ROUTE = txt_GYLX.Text.Trim(); mod_add_lc2.C_FREE1 = txt_ZYX1.Text.Trim(); mod_add_lc2.C_FREE2 = txt_ZYX2.Text.Trim(); mod_add_lc2.C_RH = mod.C_RH; mod_add_lc2.C_DFP_HL = mod.C_DFP_HL; mod_add_lc2.C_HL = mod.C_HL; mod_add_lc2.C_XM = mod.C_XM; mod_add_lc2.C_TL = mod.C_TL; mod_add_lc2.C_BY2 = "手动添加"; bll_Plan_SMS.Add(mod_add_lc2); } } MessageBox.Show("添加成功!"); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
/// <summary> /// 增加一条数据 /// </summary> public bool Add(Mod_TSP_PLAN_SMS model) { return(dal.Add(model)); }
/// <summary> /// 添加炼钢计划 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_Save2_Click(object sender, EventArgs e) { try { if (DialogResult.No == MessageBox.Show("是否确认添加计划?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)) { return; } string user_id = RV.UI.UserInfo.userID; for (int i = 0; i < dt_Group.Rows.Count; i++) { DataRow dr = dt_Group.Rows[i]; string strLS = dr["整浇次炉数"].ToString();//浇次炉数 if (string.IsNullOrEmpty(strLS)) { MessageBox.Show("没查到符合条件的浇次炉数信息,不能安排生产计划!"); return; } double d_WGT = Convert.ToDouble(dr["整浇次重量"].ToString()) / Convert.ToDouble(strLS);//炉次重量 if (d_WGT <= 0) { MessageBox.Show("没查到符合条件的炉次重量,不能安排生产计划!"); return; } double jc_wgt = Convert.ToDouble(dr["整浇次重量"].ToString()); //浇次理论总重量 int jc_num = Convert.ToInt32(dr["排产浇次数"].ToString()); //可以排整浇次数 string str_CC_ID = dr["连铸主键"].ToString(); for (int kk = 0; kk < jc_num; kk++) { int sort_plan = 1; int cast_sort = bll_TPP_CAST.GetMaxSort(str_CC_ID) + 1; //该方案下浇次顺序号 string cast_no = bll_TPP_CAST.GetMaxCastNo(str_CC_ID); //获取最大浇次号 if (cast_no == "0") { cast_no = DateTime.Now.ToString("yyyyMMdd") + bll_TB_STA.Get_STA_CODE(str_CC_ID).Substring(0, 1) + "00001"; } else { cast_no = (Convert.ToInt64(cast_no) + 1).ToString(); } #region 浇次计划主表信息 Mod_TPP_CAST modCast = new Mod_TPP_CAST(); modCast.C_CAST_NO = cast_no; //浇次号 modCast.C_CAST_LS = strLS; //浇次炉数 modCast.N_CAST_WGT = Convert.ToDecimal(jc_wgt); //浇次总重量 modCast.N_SORT = cast_sort; //生产顺序 modCast.C_CCM_ID = str_CC_ID; //铸机号主键 modCast.N_SFZJC = 1; bll_TPP_CAST.Add(modCast); #endregion for (int mm = 0; mm < Convert.ToInt32(strLS); mm++) { Mod_TMO_ORDER mod_Order = bll_TMO_ORDER.Get_PC_ORDER(dr["组号"].ToString()); if (mod_Order == null) { break; } string str_PLAN_SMS_ID = bll_TSP_PLAN_SMS.GetMax_PlanID(); if (str_PLAN_SMS_ID == "0") { str_PLAN_SMS_ID = DateTime.Now.ToString("yyyyMM") + "00001"; } else { str_PLAN_SMS_ID = (Convert.ToInt64(str_PLAN_SMS_ID) + 1).ToString(); } Mod_TSP_PLAN_SMS modTspPlanSms = new Mod_TSP_PLAN_SMS(); //modTspPlanSms.C_PLAN_SMS_ID = str_PLAN_SMS_ID;//计划号 modTspPlanSms.C_CAST_NO = cast_no; modTspPlanSms.N_SORT = sort_plan; modTspPlanSms.C_CCM_ID = str_CC_ID; modTspPlanSms.C_CCM_DESC = dr["连铸"].ToString(); modTspPlanSms.C_STD_CODE = dr["连铸代码"].ToString(); modTspPlanSms.C_STL_GRD = dr["C_STL_GRD"].ToString(); //modTspPlanSms.N_WGT_PROD = Convert.ToDecimal(d_WGT); modTspPlanSms.C_ORDER_NO = mod_Order.C_ORDER_NO; modTspPlanSms.C_EMP_ID = user_id; string strEndTime = RV.UI.ServerTime.timeNow().ToString(); if (sort_plan == 1) { Mod_TPP_CAST modCastOld = bll_TPP_CAST.GetModel((cast_sort - 1).ToString(), str_CC_ID); if (modCastOld != null) { strEndTime = bll_TSP_PLAN_SMS.Get_EndTime(modCastOld.C_CAST_NO, modCastOld.C_CAST_LS); if (strEndTime == "0") { strEndTime = RV.UI.ServerTime.timeNow().ToString(); } } } else { strEndTime = bll_TSP_PLAN_SMS.Get_EndTime(cast_no, (sort_plan - 1).ToString()); if (strEndTime == "0") { strEndTime = RV.UI.ServerTime.timeNow().ToString(); } } modTspPlanSms.D_P_START_TIME = Convert.ToDateTime(strEndTime); double scTime = Convert.ToDouble(d_WGT) / Convert.ToDouble(dr["机时产能"].ToString()); modTspPlanSms.D_P_END_TIME = Convert.ToDateTime(modTspPlanSms.D_P_START_TIME).AddHours(scTime); bll_TSP_PLAN_SMS.Add(modTspPlanSms); decimal dec_Wgt = Convert.ToDecimal(mod_Order.N_WGT - mod_Order.N_SLAB_MATCH_WGT - mod_Order.N_SMS_PROD_WGT); ////判断计划是否需要跨订单 //if (dec_Wgt >= 0) //{ // mod_Order.N_SMS_PROD_WGT = Convert.ToDecimal(d_WGT); // bll_TMO_ORDER.Update(mod_Order);//变更订单排产重量 // #region 添加计划明细 // Mod_TSP_PLAN_SMS_ITEM mod_plan_sms_item = new Mod_TSP_PLAN_SMS_ITEM(); // mod_plan_sms_item.C_PRODUCTION_PLAN_ID = dr["C_ID"].ToString(); // mod_plan_sms_item.C_PLAN_SMS_ID = mod_TSP_PLAN_SMS.C_PLAN_SMS_ID;//计划号 // mod_plan_sms_item.N_WGT = mod_TSP_PLAN_SMS.N_WGT_PROD;//计划重量 // mod_plan_sms_item.C_EMP_ID = user_id; // bll_TSP_PLAN_SMS_MAIN.Add(mod_plan_sms_item); // #endregion //} //else //{ // Mod_TPP_INITIALIZE_ORDER mod_TPPINITIALIZEORDER = bll_ini_order.GetModel(dr["C_ID"].ToString()); // mod_TPPINITIALIZEORDER.N_SMS_PROD_WGT = mod_TPPINITIALIZEORDER.N_WGT; // if (mod_TPPINITIALIZEORDER.N_SMS_PROD_WGT >= 0) // { // mod_TPPINITIALIZEORDER.N_LGPC_STATUS = 1; // } // bll_ini_order.Update(mod_TPPINITIALIZEORDER);//变更方案计划表数据 // #region 添加计划明细 // Mod_TSP_PLAN_SMS_ITEM mod_plan_sms_item1 = new Mod_TSP_PLAN_SMS_ITEM(); // mod_plan_sms_item1.C_PRODUCTION_PLAN_ID = dr["C_ID"].ToString(); // mod_plan_sms_item1.C_PLAN_SMS_ID = mod_TSP_PLAN_SMS.C_PLAN_SMS_ID;//计划号 // mod_plan_sms_item1.N_WGT = Convert.ToDecimal(dd_wgt + d_WGT);//计划重量 // mod_plan_sms_item1.C_EMP_ID = user_id; // bll_TSP_PLAN_SMS_MAIN.Add(mod_plan_sms_item1); // #endregion // decimal dd = Convert.ToDecimal(d_WGT - (dd_wgt + d_WGT)); // foreach (DataRow dr2 in orderdt.Rows) // { // Mod_TPP_INITIALIZE_ORDER mod_TPPINITIALIZEORDER2 = bll_ini_order.GetModel(dr2["C_ID"].ToString()); // if (mod_TPPINITIALIZEORDER2.N_SMS_PROD_WGT == mod_TPPINITIALIZEORDER2.N_WGT) // { // continue; // } // if (mod_TPPINITIALIZEORDER2.N_WGT >= dd) // { // mod_TPPINITIALIZEORDER2.N_SMS_PROD_WGT = (mod_TPPINITIALIZEORDER2.N_SMS_PROD_WGT != null ? mod_TPPINITIALIZEORDER2.N_SMS_PROD_WGT : 0) + dd; // if (mod_TPPINITIALIZEORDER2.N_SMS_PROD_WGT >= 0) // { // mod_TPPINITIALIZEORDER2.N_LGPC_STATUS = 1; // } // bll_ini_order.Update(mod_TPPINITIALIZEORDER2);//变更方案计划表数据 // #region 添加计划明细 // Mod_TSP_PLAN_SMS_ITEM mod_plan_sms_item2 = new Mod_TSP_PLAN_SMS_ITEM(); // mod_plan_sms_item2.C_PRODUCTION_PLAN_ID = dr2["C_ID"].ToString(); // mod_plan_sms_item2.C_PLAN_SMS_ID = mod_TSP_PLAN_SMS.C_PLAN_SMS_ID;//计划号 // mod_plan_sms_item2.N_WGT = dd;//计划重量 // mod_plan_sms_item2.C_EMP_ID = user_id; // bll_TSP_PLAN_SMS_MAIN.Add(mod_plan_sms_item2); // #endregion // break; // } // else // { // mod_TPPINITIALIZEORDER2.N_SMS_PROD_WGT = (mod_TPPINITIALIZEORDER2.N_SMS_PROD_WGT != null ? mod_TPPINITIALIZEORDER2.N_SMS_PROD_WGT : 0) + mod_TPPINITIALIZEORDER2.N_WGT; // if (mod_TPPINITIALIZEORDER2.N_SMS_PROD_WGT >= mod_TPPINITIALIZEORDER2.N_WGT) // { // mod_TPPINITIALIZEORDER2.N_LGPC_STATUS = 1; // } // bll_ini_order.Update(mod_TPPINITIALIZEORDER2);//变更方案计划表数据 // #region 添加计划明细 // Mod_TSP_PLAN_SMS_ITEM mod_plan_sms_item2 = new Mod_TSP_PLAN_SMS_ITEM(); // mod_plan_sms_item2.C_PRODUCTION_PLAN_ID = dr2["C_ID"].ToString(); // mod_plan_sms_item2.C_PLAN_SMS_ID = mod_TSP_PLAN_SMS.C_PLAN_SMS_ID;//计划号 // mod_plan_sms_item2.N_WGT = mod_TPPINITIALIZEORDER2.N_WGT;//计划重量 // mod_plan_sms_item2.C_EMP_ID = user_id; // bll_TSP_PLAN_SMS_MAIN.Add(mod_plan_sms_item2); // #endregion // } // dd = Convert.ToDecimal(dd - mod_TPPINITIALIZEORDER2.N_WGT); // } //} } //mm } //kk } //i } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
private void btn_xf_Click(object sender, EventArgs e) { if (this.icbo_zx3.SelectedIndex < 0) { MessageBox.Show("请选择开坯线!"); this.icbo_zx3.Focus(); return; } WaitingFrom.ShowWait(""); int[] rownumber = this.gridView1.GetSelectedRows();//获取选中行号数组; for (int i = 0; i < rownumber.Length; i++) { int selectedHandle = rownumber[i]; Mod_TRP_PLAN_COGDOWN mod = new Mod_TRP_PLAN_COGDOWN(); mod.C_ID = System.Guid.NewGuid().ToString(); mod.N_STATUS = 1; mod.C_ORDER_NO = this.gridView1.GetRowCellValue(selectedHandle, "C_ID").ToString(); // mod.C_INITIALIZE_ITEM_ID = this.gridView1.GetRowCellValue(selectedHandle, "N_JC_SORT").ToString(); // mod.N_SORT = Convert.ToInt32(this.gridView1.GetRowCellValue(selectedHandle, "N_SORT").ToString()); mod.N_WGT = Convert.ToDecimal(this.gridView1.GetRowCellValue(selectedHandle, "N_SLAB_WGT").ToString()); mod.C_MAT_CODE = this.gridView1.GetRowCellValue(selectedHandle, "C_MATRL_CODE_KP").ToString(); mod.C_MAT_NAME = this.gridView1.GetRowCellValue(selectedHandle, "C_MATRL_NAME_KP").ToString(); mod.C_SPEC = this.gridView1.GetRowCellValue(selectedHandle, "C_KP_SIZE").ToString(); mod.C_STL_GRD = this.gridView1.GetRowCellValue(selectedHandle, "C_STL_GRD").ToString(); mod.C_STD_CODE = this.gridView1.GetRowCellValue(selectedHandle, "C_STD_CODE").ToString(); mod.N_LENTH = Convert.ToDecimal(this.gridView1.GetRowCellValue(selectedHandle, "N_KP_LENGTH").ToString()); try { mod.D_P_START_TIME = Convert.ToDateTime(this.gridView1.GetRowCellValue(selectedHandle, "D_KP_START_TIME").ToString()); mod.D_P_END_TIME = Convert.ToDateTime(this.gridView1.GetRowCellValue(selectedHandle, "D_KP_END_TIME").ToString()); } catch (Exception) { } mod.C_STA_ID = this.icbo_zx3.Properties.Items[this.icbo_zx3.SelectedIndex].Value.ToString(); mod.C_CAST_NO = this.gridView1.GetRowCellValue(selectedHandle, "C_STOVE_NO").ToString(); mod.C_LINE_DESC = this.icbo_zx3.Properties.Items[this.icbo_zx3.SelectedIndex].Description.ToString(); mod.C_FREE1 = this.gridView1.GetRowCellValue(selectedHandle, "C_FREE1").ToString(); mod.C_FREE2 = this.gridView1.GetRowCellValue(selectedHandle, "C_FREE2").ToString(); mod.C_EMP_ID = RV.UI.UserInfo.userID; mod.D_MOD_DT = RV.UI.ServerTime.timeNow(); mod.N_PW = Convert.ToDecimal(this.gridView1.GetRowCellValue(selectedHandle, "N_KP_PW").ToString()); mod.C_MATRL_CODE_SLAB = this.gridView1.GetRowCellValue(selectedHandle, "C_MATRL_NO").ToString(); mod.C_MATRL_NAME_SLAB = this.gridView1.GetRowCellValue(selectedHandle, "C_MATRL_NAME").ToString(); mod.C_SLAB_SIZE = this.gridView1.GetRowCellValue(selectedHandle, "C_SLAB_SIZE").ToString(); mod.N_SLAB_LENGTH = Convert.ToDecimal(this.gridView1.GetRowCellValue(selectedHandle, "C_SLAB_LENGTH").ToString()); mod.N_SLAB_PW = Convert.ToDecimal(this.gridView1.GetRowCellValue(selectedHandle, "N_SLAB_PW").ToString()); Mod_TSP_PLAN_SMS mod_sms = bll_sms.GetModel(mod.C_ORDER_NO); mod_sms.N_CREAT_ZG_PLAN = 1; bll_sms.Update(mod_sms); bll_kp.Add(mod); } #region MyRegion //for (int i = 0; i < rownumber.Length; i++) //{ // int selectedHandle = rownumber[i]; // Mod_TRP_PLAN_COGDOWN mod = new Mod_TRP_PLAN_COGDOWN(); // mod.C_ID = System.Guid.NewGuid().ToString(); // mod.N_STATUS = 1; // mod.C_INITIALIZE_ITEM_ID = this.gridView1.GetRowCellValue(selectedHandle, "N_JC_SORT").ToString(); // mod.N_SORT = Convert.ToInt32(this.gridView1.GetRowCellValue(selectedHandle, "N_SORT").ToString()); // mod.N_WGT = Convert.ToDecimal(this.gridView1.GetRowCellValue(selectedHandle, "N_SLAB_WGT").ToString()); // mod.C_MAT_CODE = this.gridView1.GetRowCellValue(selectedHandle, "C_MATRL_CODE_KP").ToString(); // mod.C_MAT_NAME = this.gridView1.GetRowCellValue(selectedHandle, "C_MATRL_NAME_KP").ToString(); // mod.C_SPEC = this.gridView1.GetRowCellValue(selectedHandle, "C_KP_SIZE").ToString(); // mod.C_STL_GRD = this.gridView1.GetRowCellValue(selectedHandle, "C_STL_GRD").ToString(); // mod.C_STD_CODE = this.gridView1.GetRowCellValue(selectedHandle, "C_STD_CODE").ToString(); // mod.N_LENTH = Convert.ToDecimal(this.gridView1.GetRowCellValue(selectedHandle, "N_KP_LENGTH").ToString()); // try // { // mod.D_P_START_TIME = Convert.ToDateTime(this.gridView1.GetRowCellValue(selectedHandle, "D_P_START_TIME").ToString()); // mod.D_P_END_TIME = Convert.ToDateTime(this.gridView1.GetRowCellValue(selectedHandle, "D_P_END_TIME").ToString()); // } // catch (Exception) // { // } // mod.C_STA_ID = this.icbo_zx3.Properties.Items[this.icbo_zx3.SelectedIndex].Value.ToString(); // mod.C_FREE1 = this.gridView1.GetRowCellValue(selectedHandle, "C_FREE1").ToString(); // mod.C_FREE2 = this.gridView1.GetRowCellValue(selectedHandle, "C_FREE2").ToString(); // mod.C_EMP_ID = RV.UI.UserInfo.userID; // mod.D_MOD_DT = RV.UI.ServerTime.timeNow(); // mod.N_PW = Convert.ToDecimal(this.gridView1.GetRowCellValue(selectedHandle, "N_KP_PW").ToString()); // mod.C_MATRL_CODE_SLAB = this.gridView1.GetRowCellValue(selectedHandle, "C_MATRL_NO").ToString(); // mod.C_MATRL_NAME_SLAB = this.gridView1.GetRowCellValue(selectedHandle, "C_MATRL_NAME").ToString(); // mod.C_SLAB_SIZE = this.gridView1.GetRowCellValue(selectedHandle, "C_SLAB_SIZE").ToString(); // mod.N_SLAB_LENGTH = Convert.ToDecimal(this.gridView1.GetRowCellValue(selectedHandle, "C_SLAB_LENGTH").ToString()); // mod.N_SLAB_PW = Convert.ToDecimal(this.gridView1.GetRowCellValue(selectedHandle, "N_SLAB_PW").ToString()); // bll_sms.Down_KP(mod.C_STL_GRD, mod.C_MATRL_CODE_SLAB, mod.C_STD_CODE, mod.C_MAT_CODE, mod.C_INITIALIZE_ITEM_ID); // bll_kp.Add(mod); //} #endregion btn_query_zg_Click(null, null); btn_query_kpplan_Click(null, null); WaitingFrom.CloseWait(); }
/// <summary> /// 更新一条数据 /// </summary> public bool Update(Mod_TSP_PLAN_SMS model) { return(dal.Update(model)); }
private void btn_save_Click(object sender, EventArgs e) { try { WaitingFrom.ShowWait(""); DataTable dt = bll.GetKPSTA().Tables[0]; foreach (DataRow item in dt.Rows) { Mod_TB_STA sta = bll_sta.GetModel(item["C_KP_ID"].ToString()); List <Mod_TSP_PLAN_SMS> list = lst.Where(x => x.C_KP_ID == item["C_KP_ID"].ToString()).ToList(); for (int i = 0; i < list.Count; i++) { Mod_TSP_PLAN_SMS mod = bll.GetModel(list[i].C_ID); mod.N_KP_SORT = i + 1; mod.D_KP_START_TIME = list[i].D_KP_START_TIME; mod.D_KP_CAN_START_TIME = list[i].D_KP_CAN_START_TIME; if (mod.D_KP_START_TIME == null) { return; } if (mod.D_KP_CAN_START_TIME > Convert.ToDateTime(mod.D_KP_START_TIME)) { MessageBox.Show(sta.C_STA_DESC + ",序号(" + list[i].N_KP_SORT + ")" + "开坯开始时间不能在可开坯时间之前"); return; } if (mod.C_DFP_HL == "N") { if (mod.D_P_END_TIME > Convert.ToDateTime(mod.D_KP_START_TIME).AddHours(-2)) { MessageBox.Show(sta.C_STA_DESC + ",序号(" + list[i].N_KP_SORT + ")" + "开坯开始时间不能在连铸结束时间后2个小时之内"); return; } } else { if (mod.D_DFPHL_END_TIME > Convert.ToDateTime(mod.D_KP_START_TIME).AddHours(-2)) { MessageBox.Show(sta.C_STA_DESC + ",序号(" + list[i].N_KP_SORT + ")" + "开坯时间不能在大方坯缓冷结束时间后2个小时之内"); return; } } decimal sl = Convert.ToDecimal(mod.N_SLAB_WGT) / 114; mod.D_KP_END_TIME = list[i].D_KP_END_TIME; //mod.D_KP_END_TIME = Convert.ToDateTime(mod.D_KP_START_TIME).AddHours(Convert.ToDouble(sl)); //time = Convert.ToDateTime(mod.D_KP_END_TIME); if (mod.C_HL == "Y") { int N_HL_TIME = (int)mod.N_HL_TIME; mod.D_HL_START_TIME = Convert.ToDateTime(mod.D_KP_END_TIME).AddHours(2); mod.D_HL_END_TIME = Convert.ToDateTime(mod.D_HL_START_TIME).AddHours(N_HL_TIME); if (mod.C_XM == "Y") { mod.D_XM_CAN_START_TIME = Convert.ToDateTime(mod.D_HL_END_TIME).AddHours(2); } } bll.Update(mod); } } string result = bll.P_SLAB_CAN_USETIMEG(); WaitingFrom.CloseWait(); MessageBox.Show("保存成功"); BindInfo(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
/// <summary> /// 调整浇次计划连铸信息 /// </summary> /// <param name="c_id">浇次计划主键</param> /// <param name="c_ccm_id">调整后连铸主键</param> /// <param name="c_remark">调整说明</param> public string ChangeCCM(string c_id, string c_ccm_id, string c_remark) { string c_ccm_desc = bll_sta.GetModel(c_ccm_id).C_STA_CODE; //连铸代码 Mod_TSP_CAST_PLAN mod = bll_cast_plan.GetModel(c_id); List <Mod_TSP_PLAN_SMS> lst_sms = new List <Mod_TSP_PLAN_SMS>(); //新浇次的炉次计划 if (mod.N_MLZL > 50 && mod.N_MLZL < 60) //不锈钢 { return("不锈钢计划只能在6#连铸生产!"); } if (mod.C_RH == "Y") { return("过真空的浇次计划不能调整!"); } decimal n_mlzl_e = 0;//调整后的炉次重量 if (c_ccm_id == "77B9FDA79B884D07AA2B3601D1DA11A2") { n_mlzl_e = 77; } else { n_mlzl_e = 47; } Mod_TPB_SCLX modlx = bll_lx.GetModel(c_ccm_id); #region 添加新的浇次计划 Mod_TSP_CAST_PLAN mod_cast = new Mod_TSP_CAST_PLAN(); mod_cast = mod; mod_cast.C_ID = System.Guid.NewGuid().ToString(); mod_cast.N_SORT = bll_cast_plan.Max_jc_sort(c_ccm_id) + 1; mod_cast.C_CCM_ID = c_ccm_id; mod_cast.C_CCM_CODE = c_ccm_desc; mod_cast.N_PRODUCE_TIME = 0; mod_cast.N_MLZL = n_mlzl_e; mod_cast.C_TZ_REMARK = c_remark; #endregion int lsxh = bll_plan_sms.GetMaxSort(c_ccm_id); int ypls = 0; var lcjh = bll_plan_sms.GetModelListByJcID(c_id); //当前浇次的炉次计划 //调整有计划的连铸计划 var lst_lc = bll_plan_sms.GetModelListByJcID(c_id).Where(ba => ba.C_STATE == "0" && ba.N_CREAT_PLAN == 1).GroupBy(ca => new { ca.C_STL_GRD, ca.C_STD_CODE }).Select(ca => new { n_wgt = ca.Sum(p => p.N_SLAB_WGT), ca.First().C_STL_GRD, ca.First().C_STD_CODE }).ToList(); if (lst_lc.Count > 0) { for (int i = 0; i < lst_lc.Count; i++) { Mod_TSP_PLAN_SMS mod_sms = new Mod_TSP_PLAN_SMS(); decimal n_wgt = (decimal)lst_lc[i].n_wgt; // ypls = (int)Math.Ceiling(n_wgt / n_mlzl_e); //应排炉数 mod_sms = lcjh[0]; mod_sms.N_SLAB_WGT = n_mlzl_e; //新的每炉重量 mod_sms.C_STATE = "0"; mod_sms.C_CCM_ID = c_ccm_id; mod_sms.C_CCM_DESC = c_ccm_desc; mod_sms.N_JC_SORT = mod_cast.N_SORT; mod_sms.C_FK = mod_cast.C_ID; mod_sms.C_LF_ID = modlx.C_LF; mod_sms.C_RH_ID = modlx.C_RH; mod_sms.C_ZL_ID = modlx.C_ZL; mod_sms.N_PRODUCE_TIME = 0; mod_sms.N_USE_WGT = n_mlzl_e; List <Mod_TPB_SLAB_CAPACITY> lstjscn = bll_jscn.GetListByCCM(mod_sms.C_STL_GRD, mod_sms.C_STD_CODE, mod_sms.C_CCM_ID); if (lstjscn.Count > 0) { mod_sms.N_JSCN = lstjscn[0].N_CAPACITY; } if (mod_sms.N_JSCN == 0) { mod_sms.N_JSCN = mod_sms.C_CCM_DESC == "5#CC" ? 114 : 88; } mod_cast.N_JSCN = mod_sms.N_JSCN; //?机时产量 mod_sms.N_PROD_TIME = n_mlzl_e / mod_sms.N_JSCN; //?生产时间 for (int j = 0; j < ypls; j++) { mod_sms.C_ID = System.Guid.NewGuid().ToString(); mod_sms.N_SORT = lsxh + 1; lsxh = lsxh + 1; bll_plan_sms.Add(mod_sms); } } } //调整非计划的连铸计划 var lst_lc_fjh = bll_plan_sms.GetModelListByJcID(c_id).Where(ba => ba.C_STATE == "1" && ba.N_CREAT_PLAN == 1).GroupBy(ca => new { ca.C_STL_GRD, ca.C_STD_CODE }).Select(ca => new { n_wgt = ca.Sum(p => p.N_SLAB_WGT), ca.First().C_STL_GRD, ca.First().C_STD_CODE }).ToList(); if (lst_lc_fjh.Count > 0) { for (int i = 0; i < lst_lc_fjh.Count; i++) { Mod_TSP_PLAN_SMS mod_sms = new Mod_TSP_PLAN_SMS(); decimal n_wgt = (decimal)lst_lc_fjh[i].n_wgt; // ypls = (int)Math.Ceiling(n_wgt / n_mlzl_e); //应排炉数 mod_sms = lcjh[0]; mod_sms.N_SLAB_WGT = n_mlzl_e; //新的每炉重量 mod_sms.C_STATE = "1"; mod_sms.C_CCM_ID = c_ccm_id; mod_sms.C_CCM_DESC = c_ccm_desc; mod_sms.N_JC_SORT = mod_cast.N_SORT; mod_sms.C_FK = mod_cast.C_ID; mod_sms.C_LF_ID = modlx.C_LF; mod_sms.C_RH_ID = modlx.C_RH; mod_sms.C_ZL_ID = modlx.C_ZL; mod_sms.N_PRODUCE_TIME = 0; mod_sms.N_USE_WGT = n_mlzl_e; List <Mod_TPB_SLAB_CAPACITY> lstjscn = bll_jscn.GetListByCCM(mod_sms.C_STL_GRD, mod_sms.C_STD_CODE, mod_sms.C_CCM_ID); if (lstjscn.Count > 0) { mod_sms.N_JSCN = lstjscn[0].N_CAPACITY; } if (mod_sms.N_JSCN == 0) { mod_sms.N_JSCN = mod_sms.C_CCM_DESC == "5#CC" ? 114 : 88; } mod_cast.N_JSCN = mod_sms.N_JSCN; //?机时产量 mod_sms.N_PROD_TIME = n_mlzl_e / mod_sms.N_JSCN; //?生产时间 for (int j = 0; j < ypls; j++) { mod_sms.C_ID = System.Guid.NewGuid().ToString(); mod_sms.N_SORT = lsxh + 1; lsxh = lsxh + 1; bll_plan_sms.Add(mod_sms); } } } bll_cast_plan.Add(mod_cast); int yls = lcjh.Where(a => a.N_CREAT_PLAN > 1).ToList().Count;//已排产炉数 bll_plan_sms.DeleteByjcid(c_id); if (yls == 0) { bll_cast_plan.Delete(c_id);//删除当前浇次计划 } else { bll_cast_plan.Update(c_id, yls);//修改当前浇次计划 } return("调整连铸成功!"); }
private void gridView7_DoubleClick(object sender, EventArgs e) { int index = gridView7.FocusedRowHandle; if (index < 0) { return; } string C_STL_GRD = gridView7.GetRowCellValue(index, "C_STL_GRD").ToString(); string C_STD_CODE = gridView7.GetRowCellValue(index, "C_STD_CODE").ToString(); string C_ROUTE = gridView7.GetRowCellValue(index, "C_ROUTE").ToString(); int N_GROUP = Convert.ToInt32(gridView7.GetRowCellValue(index, "N_GROUP").ToString()); #region 加载可修改的物料信息 string wllj = ""; DataTable dtgpwl = null; if (C_ROUTE.Contains("KP")) { if (C_ROUTE.Contains("LF") && C_ROUTE.Contains("RH")) { wllj = "(BLR)"; } if (C_ROUTE.Contains("LF") && !C_ROUTE.Contains("RH")) { wllj = "(BL)"; } if (!C_ROUTE.Contains("LF") && C_ROUTE.Contains("RH")) { wllj = "(BR)"; } //bll_wl.GetGPWL( C_STL_GRD, C_STD_CODE, "", wllj); dtgpwl = bll_wl.GetGPWL(C_STL_GRD, "", null, "6", wllj, "大方坯连铸坯").Tables[0]; } else { dtgpwl = bll_wl.GetGPWL(C_STL_GRD, "", null, "6", wllj, "小方坯连铸坯").Tables[0]; } this.gridControl5.DataSource = dtgpwl; this.gridView5.OptionsView.ColumnAutoWidth = false; SetGridViewRowNum.SetRowNum(gridView5); this.gridView5.BestFitColumns(); #endregion #region 加载同组的可以变更的炉次计划 List <Mod_TSP_PLAN_SMS> lst = bll_plan_sms.GetListByJcGroup(N_GROUP); List <Mod_TSP_PLAN_SMS> lstkg = new List <Mod_TSP_PLAN_SMS>(); var changelst = lst.Where(a => a.N_GROUP == N_GROUP && (a.C_STL_GRD != C_STL_GRD || a.C_STD_CODE != C_STD_CODE)).GroupBy(a => new { a.C_STD_CODE, a.C_STL_GRD, a.C_MATRL_NO }).ToList(); if (changelst.Count > 0) { for (int i = 0; i < changelst.Count; i++) { Mod_TSP_PLAN_SMS mod = new Mod_TSP_PLAN_SMS(); mod.N_GROUP = changelst[i].First().N_GROUP; mod.C_STD_CODE = changelst[i].First().C_STD_CODE; mod.C_STL_GRD = changelst[i].First().C_STL_GRD; mod.C_STL_GRD_TYPE = changelst[i].First().C_STL_GRD_TYPE; mod.C_MATRL_NO = changelst[i].First().C_MATRL_NO; mod.C_MATRL_NAME = changelst[i].First().C_MATRL_NAME; mod.C_ROUTE = changelst[i].First().C_ROUTE; mod.C_SLAB_SIZE = changelst[i].First().C_SLAB_SIZE; mod.C_SLAB_LENGTH = changelst[i].First().C_SLAB_LENGTH; mod.C_MATRL_CODE_KP = changelst[i].First().C_MATRL_CODE_KP; mod.C_MATRL_NAME_KP = changelst[i].First().C_MATRL_NAME_KP; mod.C_KP_SIZE = changelst[i].First().C_KP_SIZE; mod.N_KP_LENGTH = changelst[i].First().N_KP_LENGTH; mod.N_KP_PW = changelst[i].First().N_KP_PW; mod.N_SLAB_PW = changelst[i].First().N_SLAB_PW; mod.C_TL = changelst[i].First().C_TL; mod.C_RH = changelst[i].First().C_RH; mod.C_RH_ID = changelst[i].First().C_RH_ID; mod.C_DFP_HL = changelst[i].First().C_DFP_HL; mod.C_HL = changelst[i].First().C_HL; mod.C_LF_ID = changelst[i].First().C_LF_ID; mod.C_XM = changelst[i].First().C_XM; mod.C_ZL_ID = changelst[i].First().C_ZL_ID; mod.C_SL = changelst[i].First().C_SL; mod.C_BY1 = changelst[i].First().C_BY1; mod.C_WL = changelst[i].First().C_WL; mod.C_BY2 = changelst[i].First().C_BY2; mod.C_ORDER_NO = changelst[i].First().C_ORDER_NO; mod.C_STATE = "1"; mod.C_STL_GRD_TYPE = changelst[i].First().C_STL_GRD_TYPE; mod.C_PROD_NAME = changelst[i].First().C_PROD_NAME; mod.C_PROD_KIND = changelst[i].First().C_PROD_KIND; mod.C_FREE1 = changelst[i].First().C_FREE1; mod.C_FREE2 = changelst[i].First().C_FREE2; lstkg.Add(mod); } } #endregion this.gridControl1.DataSource = lstkg; this.gridView1.OptionsView.ColumnAutoWidth = false; SetGridViewRowNum.SetRowNum(gridView1); this.gridView1.BestFitColumns(); }
/// <summary> /// 发送计划给NC /// </summary> /// <param name="xmlFileName">xml完整路径</param> /// <param name="tsp_plan_sms_id">炉号</param> /// <param name="stove">炉号</param> /// <returns></returns> public string SendXml_SLAB_A1(string xmlFileName, string tsp_plan_sms_id, string stove) { try { string urlname = "A1ED" + stove + ".XML";//XML名称 string url = xmlFileName + "\\NCXML"; if (!Directory.Exists(url)) { Directory.CreateDirectory(url); } Mod_TSP_PLAN_SMS mod_plan_sms = dal_plan_sms.GetModel_Trans(tsp_plan_sms_id); //连铸生产计划表 Mod_TB_MATRL_MAIN mod_mater_main = dal_mater_main.GetModel(mod_plan_sms.C_MATRL_NO); //物料主表 Mod_TMO_ORDER mod_Order = dal_tmo_order.GetModel(mod_plan_sms.C_ORDER_NO); Mod_TB_STA modSta = dalSta.GetModel(mod_plan_sms.C_CCM_ID); if (mod_plan_sms == null) { return("获取连铸计划失败!"); } if (mod_mater_main == null) { return("获取物料信息失败!"); } if (mod_Order == null) { return("获取订单信息失败!"); } if (modSta == null) { return("获取工位信息失败!"); } XmlDocument xmlDoc = new XmlDocument(); //创建类型声明节点 XmlNode node = xmlDoc.CreateXmlDeclaration("1.0", "UTF-8", "no"); xmlDoc.AppendChild(node); //创建根节点 XmlElement root = xmlDoc.CreateElement("ufinterface"); #region//给节点属性赋值 root.SetAttribute("account", "1"); root.SetAttribute("billtype", "A1"); root.SetAttribute("filename", urlname); root.SetAttribute("isexchange", "Y"); root.SetAttribute("proc", "add"); root.SetAttribute("receiver", "101"); root.SetAttribute("replace", "Y"); root.SetAttribute("roottag", "bill"); root.SetAttribute("sender", "1107"); #endregion xmlDoc.AppendChild(root); //创建子根节点 XmlElement so_order = xmlDoc.CreateElement("bill"); //#region//节点属性 //so_order.SetAttribute("id", dayplcode); //#endregiond root.AppendChild(so_order); XmlNode head = xmlDoc.CreateNode(XmlNodeType.Element, "billhead", null); #region //表头_order_head CreateNode(xmlDoc, head, "bgbz", "1"); //变更标志 CreateNode(xmlDoc, head, "bmid", "1001NC10000000000345"); //部门ID CreateNode(xmlDoc, head, "bmmc", ""); //部门名称 CreateNode(xmlDoc, head, "bomver", ""); //BOM版本 CreateNode(xmlDoc, head, "busiDate", ""); CreateNode(xmlDoc, head, "ckbm", ""); //仓库编码 CreateNode(xmlDoc, head, "ckbmid", ""); //仓库编码ID CreateNode(xmlDoc, head, "ckmc", ""); //仓库名称 CreateNode(xmlDoc, head, "curwwsl", ""); CreateNode(xmlDoc, head, "ddlx", "1"); //订单类型 CreateNode(xmlDoc, head, "ddlxshow", ""); CreateNode(xmlDoc, head, "durl", ""); //资料路径 CreateNode(xmlDoc, head, "fah", ""); CreateNode(xmlDoc, head, "fjbz", "0"); //分解标记 CreateNode(xmlDoc, head, "fjldwid", ""); //辅计量单位ID CreateNode(xmlDoc, head, "fjldwmc", ""); CreateNode(xmlDoc, head, "gcbm", "1001NC10000000000669"); //工厂 CreateNode(xmlDoc, head, "gcbmcode", ""); CreateNode(xmlDoc, head, "graphid", ""); CreateNode(xmlDoc, head, "gzzxbm", ""); //工作中心编码ID CreateNode(xmlDoc, head, "gzzxid", ""); //工作中心ID CreateNode(xmlDoc, head, "gzzxmc", ""); //工作中心名称 CreateNode(xmlDoc, head, "hbbz", "0"); //合并标志 CreateNode(xmlDoc, head, "hsl", ""); //换算率 CreateNode(xmlDoc, head, "invspec", ""); CreateNode(xmlDoc, head, "invtype", ""); CreateNode(xmlDoc, head, "jhbmbm", ""); CreateNode(xmlDoc, head, "jhddh", ""); //计划订单号 CreateNode(xmlDoc, head, "jhfaid", mod_mater_main.C_PK_PSID); //计划方案ID CreateNode(xmlDoc, head, "jhlx", "0"); //备料计划类型(固定) CreateNode(xmlDoc, head, "jhrq", Convert.ToDateTime(mod_plan_sms.D_P_START_TIME).ToString("yyyy-MM-dd")); //计划日期 CreateNode(xmlDoc, head, "jhxxsl", ""); //计划下限数量 CreateNode(xmlDoc, head, "jhyid", mod_mater_main.C_PLANEMP); //计划员ID CreateNode(xmlDoc, head, "jldw", ""); //计量单位 CreateNode(xmlDoc, head, "jldwid", mod_mater_main.C_PK_MEASDOC); //计量单位ID CreateNode(xmlDoc, head, "ksid", ""); //客商ID CreateNode(xmlDoc, head, "memo", ""); //备注 CreateNode(xmlDoc, head, "pch", ""); //批次号 CreateNode(xmlDoc, head, "pk_corp", "1001"); //公司 CreateNode(xmlDoc, head, "pk_poid", ""); //计划订单主键 CreateNode(xmlDoc, head, "pk_produce", mod_mater_main.C_PK_PRODUCE); //物料PK CreateNode(xmlDoc, head, "primaryKey", ""); CreateNode(xmlDoc, head, "pzh", ""); //配置号 CreateNode(xmlDoc, head, "qrrid", ""); CreateNode(xmlDoc, head, "qrrq", ""); CreateNode(xmlDoc, head, "rtver", ""); CreateNode(xmlDoc, head, "scbmbm", ""); CreateNode(xmlDoc, head, "scbmid", modSta.C_SSBMID);//生产部门ID CreateNode(xmlDoc, head, "scbmmc", ""); CreateNode(xmlDoc, head, "scbz", "1"); CreateNode(xmlDoc, head, "scxid", ""); CreateNode(xmlDoc, head, "shrid", mod_plan_sms.C_EMP_ID); //操作人员 CreateNode(xmlDoc, head, "shrq", Convert.ToDateTime(mod_plan_sms.D_P_START_TIME).ToString("yyyy-MM-dd")); //审核日期 CreateNode(xmlDoc, head, "slrq", Convert.ToDateTime(mod_Order.D_NEED_DT).ToString("yyyy-MM-dd")); //需求日期 CreateNode(xmlDoc, head, "unitcode", ""); CreateNode(xmlDoc, head, "userid", ""); CreateNode(xmlDoc, head, "wlbm", ""); CreateNode(xmlDoc, head, "wlbmid", mod_mater_main.C_PK_INVBASDOC); CreateNode(xmlDoc, head, "wlmc", ""); CreateNode(xmlDoc, head, "wpcsl", "0.00000000"); CreateNode(xmlDoc, head, "wwlx", "OA"); CreateNode(xmlDoc, head, "xdrq", Convert.ToDateTime(mod_plan_sms.D_P_START_TIME).ToString("yyyy-MM-dd")); //下单日期 CreateNode(xmlDoc, head, "xqfsl", ""); CreateNode(xmlDoc, head, "xqrq", Convert.ToDateTime(mod_Order.D_DELIVERY_DT).ToString("yyyy-MM-dd")); //交货日期 CreateNode(xmlDoc, head, "xqsl", mod_Order.N_WGT.ToString()); //计划量 CreateNode(xmlDoc, head, "xsddh", ""); CreateNode(xmlDoc, head, "xsddid", ""); CreateNode(xmlDoc, head, "xxbz", "0"); CreateNode(xmlDoc, head, "yfjsl", ""); CreateNode(xmlDoc, head, "ypcsl", ""); CreateNode(xmlDoc, head, "ywwsl", ""); CreateNode(xmlDoc, head, "zdrid", mod_plan_sms.C_EMP_ID); //制单人ID CreateNode(xmlDoc, head, "zdrmc", ""); CreateNode(xmlDoc, head, "zdrq", Convert.ToDateTime(mod_plan_sms.D_MOD_DT).ToString("yyyy-MM-dd")); //制单日期 CreateNode(xmlDoc, head, "zdy1", ""); CreateNode(xmlDoc, head, "zdy2", "其它要求"); CreateNode(xmlDoc, head, "zdy3", ""); CreateNode(xmlDoc, head, "zdy4", ""); CreateNode(xmlDoc, head, "zdy5", ""); CreateNode(xmlDoc, head, "zt", "B"); CreateNode(xmlDoc, head, "zyx1", mod_Order.C_FREE1); //自由项1 CreateNode(xmlDoc, head, "zyx2", mod_Order.C_FREE2); //自由项2 CreateNode(xmlDoc, head, "zyx3", ""); //自由项3 CreateNode(xmlDoc, head, "zyx4", ""); CreateNode(xmlDoc, head, "zyx5", mod_Order.C_ID); //pci主键 #endregion so_order.AppendChild(head); xmlDoc.Save(url + "\\" + urlname); List <string> parem = dalSendNC.SendXML(url + "\\" + urlname); if (parem[0] == "1") { return("1"); } else { return(parem[1].ToString()); } } catch (Exception ex) { return(ex.Message); } }
/// <summary> /// 发送炉次计划给NC /// </summary> /// <param name="xmlFileName">xml完整路径</param> /// <param name="urlname">xml名称</param> /// <param name="urlname">计划表主键</param> /// <param name="c_stove">炉号</param> /// <returns></returns> public bool SendXml_SLAB_A2(string xmlFileName, string tsp_plan_sms_id, string stove) { try { string urlname = "A2LC" + stove + ".XML";//XML名称 string url = xmlFileName + "\\NCXML"; if (!Directory.Exists(url)) { Directory.CreateDirectory(url); } //DataTable dt = dal_slab_mes.GetList("", "", stove, "", "").Tables[0]; Mod_TSP_PLAN_SMS mod_plan_sms = dal_plan_sms.GetModel(tsp_plan_sms_id); //连铸生产计划表 Mod_TPP_CAST_PLAN mod_cast_plan = dal_cast_plan.GetModel_PLAN_ID(tsp_plan_sms_id); Mod_TB_MATRL_MAIN mod_mater_main = dal_mater_main.GetModel(mod_plan_sms.C_MATRL_NO); //物料主表 Mod_TS_USER mod_ts_user = dal_user.GetModel(mod_plan_sms.C_EMP_ID); //用户主表 Mod_TMO_ORDER mod_Order = dal_tmo_order.GetModel(mod_plan_sms.C_ORDER_NO); Mod_TB_STA modSta = dalSta.GetModel(mod_plan_sms.C_CCM_ID); if (mod_plan_sms == null) { return(false); } if (mod_cast_plan == null) { return(false); } if (mod_mater_main == null) { return(false); } if (mod_ts_user == null) { return(false); } if (mod_Order == null) { return(false); } if (modSta == null) { return(false); } XmlDocument xmlDoc = new XmlDocument(); //创建类型声明节点 XmlNode node = xmlDoc.CreateXmlDeclaration("1.0", "UTF-8", "no"); xmlDoc.AppendChild(node); //创建根节点 XmlElement root = xmlDoc.CreateElement("ufinterface"); #region//给节点属性赋值 root.SetAttribute("billtype", "A2"); root.SetAttribute("filename", ""); root.SetAttribute("isexchange", "Y"); root.SetAttribute("operation", "req"); root.SetAttribute("proc", "add"); root.SetAttribute("receiver", "101"); root.SetAttribute("replace", "Y"); root.SetAttribute("roottag", "bill"); root.SetAttribute("sender", "1107"); #endregion xmlDoc.AppendChild(root); //创建子根节点 XmlElement bill = xmlDoc.CreateElement("bill"); #region//节点属性 bill.SetAttribute("id", mod_cast_plan.C_HEAT_ID); #endregion root.AppendChild(bill); XmlNode head = xmlDoc.CreateNode(XmlNodeType.Element, "bill_head", null); #region //表头_order_head CreateNode(xmlDoc, head, "scddh", ""); //生产订单号 (空) CreateNode(xmlDoc, head, "pk_poid", ""); //计划订单主键 (空) CreateNode(xmlDoc, head, "jhddh", ""); //计划订单号 (空) CreateNode(xmlDoc, head, "wlbmid", mod_mater_main.C_PK_INVBASDOC); //物料编码ID (C_PK_INVBASDOC) CreateNode(xmlDoc, head, "pk_produce", ""); //物料PK CreateNode(xmlDoc, head, "invcode", mod_mater_main.C_ID); //物料编码 CreateNode(xmlDoc, head, "invname", ""); CreateNode(xmlDoc, head, "pch", stove); //批次号 CreateNode(xmlDoc, head, "scbmid", "1001NC1000000000037T"); //生产部门ID CreateNode(xmlDoc, head, "gzzxid", modSta.C_ERP_PK); //工作中心ID-连铸机号 CreateNode(xmlDoc, head, "gzzxbm", ""); //工作中心编码ID CreateNode(xmlDoc, head, "ksid", ""); //客商ID CreateNode(xmlDoc, head, "memo", ""); //备注 CreateNode(xmlDoc, head, "sfjj", ""); //是否加急 CreateNode(xmlDoc, head, "yxj", ""); //有效机时 CreateNode(xmlDoc, head, "bcid", "1001NC1000000000103W"); //班次ID CreateNode(xmlDoc, head, "bzid", "1001NC100000002E7W1K"); //班组 CreateNode(xmlDoc, head, "jhkgrq", Convert.ToDateTime(mod_plan_sms.D_P_START_TIME.ToString()).ToString("yyyy-MM-dd")); //计划开工日期 CreateNode(xmlDoc, head, "jhwgrq", Convert.ToDateTime(mod_plan_sms.D_P_END_TIME.ToString()).ToString("yyyy-MM-dd")); //计划完工日期 CreateNode(xmlDoc, head, "jhkssj", Convert.ToDateTime(mod_plan_sms.D_P_START_TIME.ToString()).ToString("HH:mm:ss")); //计划开始时间 CreateNode(xmlDoc, head, "jhjssj", Convert.ToDateTime(mod_plan_sms.D_P_END_TIME.ToString()).ToString("HH:mm:ss")); //计划结束时间 CreateNode(xmlDoc, head, "sjkgrq", Convert.ToDateTime(mod_cast_plan.D_AIM_CASTINGSTART_TIME.ToString()).ToString("yyyy-MM-dd")); //实际开工日期 CreateNode(xmlDoc, head, "sjwgrq", Convert.ToDateTime(mod_cast_plan.D_AIM_CASTINGEND_TIME.ToString()).ToString("yyyy-MM-dd")); //实际完工日期 CreateNode(xmlDoc, head, "sjkssj", Convert.ToDateTime(mod_cast_plan.D_AIM_CASTINGSTART_TIME.ToString()).ToString("HH:mm:ss")); //实际开始时间 CreateNode(xmlDoc, head, "sjjssj", Convert.ToDateTime(mod_cast_plan.D_AIM_CASTINGEND_TIME.ToString()).ToString("HH:mm:ss")); //实际结束时间 CreateNode(xmlDoc, head, "jhwgsl", mod_plan_sms.N_SLAB_WGT.ToString()); //计划完工数量 CreateNode(xmlDoc, head, "fjhsl", mod_plan_sms.C_QUA); //辅计量数量 CreateNode(xmlDoc, head, "jldwid", mod_mater_main.C_PK_MEASDOC); //计量单位ID CreateNode(xmlDoc, head, "fjlid", mod_mater_main.C_FJLDW); //辅计量ID CreateNode(xmlDoc, head, "sjwgsl", mod_plan_sms.N_SLAB_WGT.ToString()); //实际完工数量 CreateNode(xmlDoc, head, "fwcsl", ""); CreateNode(xmlDoc, head, "zdy1", ""); //自定义项1 CreateNode(xmlDoc, head, "zdy2", ""); //自定义项2 CreateNode(xmlDoc, head, "zdy3", ""); //自定义项3 CreateNode(xmlDoc, head, "zdy4", ""); //自定义项4 CreateNode(xmlDoc, head, "zdy5", ""); //自定义项5 CreateNode(xmlDoc, head, "freeitemvalue1", mod_Order.C_FREE1); CreateNode(xmlDoc, head, "freeitemvalue2", mod_Order.C_FREE2); CreateNode(xmlDoc, head, "freeitemvalue3", ""); CreateNode(xmlDoc, head, "freeitemvalue4", ""); CreateNode(xmlDoc, head, "freeitemvalue5", mod_plan_sms.C_ID); //PCI计划订单主键(tsp_plan_sms主键) CreateNode(xmlDoc, head, "pk_corp", "1001"); //公司ID CreateNode(xmlDoc, head, "gcbm", "1001NC10000000000669"); //工厂 CreateNode(xmlDoc, head, "zdrid", mod_ts_user.C_ACCOUNT); //制单人 CreateNode(xmlDoc, head, "pk_moid", ""); //生产定单ID #endregion bill.AppendChild(head); XmlElement body = xmlDoc.CreateElement("bill_body"); bill.AppendChild(body); XmlNode item = xmlDoc.CreateNode(XmlNodeType.Element, "item", null); body.AppendChild(item); xmlDoc.Save(url + "\\" + urlname); List <string> parem = dalSendNC.SendXML(url + "\\" + urlname); if (parem[0] == "1") { return(true); } else { return(false); } } catch { return(false); } }
/// <summary> /// 修改物料信息 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_tzwl_Click_1(object sender, EventArgs e) { if (this.radioGroup2.SelectedIndex == 0) { if (DialogResult.No == MessageBox.Show("是否确认修改选中计划的物料信息?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)) { return; } WaitingFrom.ShowWait(""); int index = gridView7.FocusedRowHandle; int thisindex = gridView5.FocusedRowHandle; string C_ID = gridView7.GetRowCellValue(index, "C_ID").ToString(); Mod_TSP_PLAN_SMS mod = bll_plan_sms.GetModel(C_ID); if (mod != null && mod.N_CREAT_PLAN < 2) { mod.C_MATRL_NO = gridView5.GetRowCellValue(thisindex, "C_ID").ToString(); mod.C_MATRL_NAME = gridView5.GetRowCellValue(thisindex, "C_MAT_NAME").ToString(); mod.C_SLAB_SIZE = gridView5.GetRowCellValue(thisindex, "C_SLAB_SIZE").ToString(); mod.C_SLAB_LENGTH = gridView5.GetRowCellValue(thisindex, "N_LTH").ToString(); mod.N_SLAB_PW = Convert.ToDecimal(gridView5.GetRowCellValue(thisindex, "N_HSL").ToString()); DataTable dtdown = bll_plan_sms.GetDownPlan(mod.C_ID); if (dtdown.Rows.Count == 0) { bll_plan_sms.Update(mod); } else { MessageBox.Show("请先将浇次计划取消调度后,再修改物料信息!"); } } dockPanel2.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; btn_query_jc_Click(null, null); WaitingFrom.CloseWait(); } else if (this.radioGroup2.SelectedIndex == 1) { if (DialogResult.No == MessageBox.Show("是否确认修改选中浇次计划的所有当前钢种的物料信息?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)) { return; } WaitingFrom.ShowWait(""); int index = gridView7.FocusedRowHandle; int thisindex = gridView5.FocusedRowHandle; string C_ID = gridView7.GetRowCellValue(index, "C_ID").ToString(); Mod_TSP_PLAN_SMS mod = bll_plan_sms.GetModel(C_ID); List <Mod_TSP_PLAN_SMS> lstlc = bll_plan_sms.GetModelListByJcID(mod.C_FK).Where(a => a.C_MATRL_NO == mod.C_MATRL_NO).ToList(); if (lstlc.Count > 0) { for (int i = 0; i < lstlc.Count; i++) { if (lstlc[i] != null && lstlc[i].N_CREAT_PLAN < 2) { lstlc[i].C_MATRL_NO = gridView5.GetRowCellValue(thisindex, "C_ID").ToString(); lstlc[i].C_MATRL_NAME = gridView5.GetRowCellValue(thisindex, "C_MAT_NAME").ToString(); lstlc[i].C_SLAB_SIZE = gridView5.GetRowCellValue(thisindex, "C_SLAB_SIZE").ToString(); lstlc[i].C_SLAB_LENGTH = gridView5.GetRowCellValue(thisindex, "N_LTH").ToString(); lstlc[i].N_SLAB_PW = Convert.ToDecimal(gridView5.GetRowCellValue(thisindex, "N_HSL").ToString()); DataTable dtdown = bll_plan_sms.GetDownPlan(lstlc[i].C_ID); if (dtdown.Rows.Count == 0) { bll_plan_sms.Update(lstlc[i]); } } } } dockPanel2.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; btn_query_jc_Click(null, null); WaitingFrom.CloseWait(); } else { if (this.txt_update_ls.Text.Trim() == "") { MessageBox.Show("请输入需要修改物料的炉数!"); return; } if (Convert.ToInt32(this.txt_update_ls.Text) <= 0) { MessageBox.Show("请输入需要修改物料的正确炉数!"); return; } if (DialogResult.No == MessageBox.Show("是否确认修改选中浇次计划的所有当前钢种的物料信息?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)) { return; } WaitingFrom.ShowWait(""); int index = gridView7.FocusedRowHandle; int thisindex = gridView5.FocusedRowHandle; string C_ID = gridView7.GetRowCellValue(index, "C_ID").ToString(); Mod_TSP_PLAN_SMS mod = bll_plan_sms.GetModel(C_ID); List <Mod_TSP_PLAN_SMS> lstlc = bll_plan_sms.GetModelListByJcID(mod.C_FK).Where(a => a.C_MATRL_NO == mod.C_MATRL_NO && a.C_STD_CODE == mod.C_STD_CODE && a.N_CREAT_PLAN < 2).OrderByDescending(a => a.N_SORT).ToList(); if (Convert.ToInt32(this.txt_update_ls.Text) > lstlc.Count) { MessageBox.Show("输入的炉数超出可改的炉数!"); this.txt_update_ls.Text = lstlc.Count.ToString(); return; } if (lstlc.Count > 0) { for (int i = 0; i < Convert.ToInt32(this.txt_update_ls.Text); i++) { if (lstlc[i] != null && lstlc[i].N_CREAT_PLAN < 2) { lstlc[i].C_MATRL_NO = gridView5.GetRowCellValue(thisindex, "C_ID").ToString(); lstlc[i].C_MATRL_NAME = gridView5.GetRowCellValue(thisindex, "C_MAT_NAME").ToString(); lstlc[i].C_SLAB_SIZE = gridView5.GetRowCellValue(thisindex, "C_SLAB_SIZE").ToString(); lstlc[i].C_SLAB_LENGTH = gridView5.GetRowCellValue(thisindex, "N_LTH").ToString(); lstlc[i].N_SLAB_PW = Convert.ToDecimal(gridView5.GetRowCellValue(thisindex, "N_HSL").ToString()); DataTable dtdown = bll_plan_sms.GetDownPlan(lstlc[i].C_ID); if (dtdown.Rows.Count == 0) { bll_plan_sms.Update(lstlc[i]); } } } } dockPanel2.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; btn_query_jc_Click(null, null); WaitingFrom.CloseWait(); } }