/// <summary> /// 得到一个对象实体 /// </summary> public Mod_TB_STA GetModelBySoft(string N_SORT, string C_PRO_ID) { StringBuilder strSql = new StringBuilder(); strSql.Append("SELECT C_ID,C_PRO_ID,C_STA_CODE,C_STA_DESC,C_EMP_ID,D_MOD_DT,C_REMARK,D_START_DATE,D_END_DATE,N_STATUS,C_STA_ERPCODE,C_STA_MESCODE,N_SORT,C_ERP_PK,C_SSBMID from TB_STA "); strSql.Append(" WHERE N_STATUS=1 AND N_SORT=:N_SORT AND C_PRO_ID=:C_PRO_ID "); OracleParameter[] parameters = { new OracleParameter(":N_SORT", OracleDbType.Varchar2, 100), new OracleParameter(":C_PRO_ID", OracleDbType.Varchar2, 100) }; parameters[0].Value = N_SORT; parameters[1].Value = C_PRO_ID; Mod_TB_STA model = new Mod_TB_STA(); DataSet ds = DbHelperOra.Query(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { return(DataRowToModel(ds.Tables[0].Rows[0])); } else { return(null); } }
private void btn_XY2_Click(object sender, EventArgs e) { Mod_TB_STA model = bll_TB_STA.GetModel(this.lbl_GWID.Text); if (model != null) { model.N_SORT = model.N_SORT + 1; } else { return; } model.C_EMP_ID = RV.UI.UserInfo.userID; model.D_MOD_DT = RV.UI.ServerTime.timeNow(); if (model.N_SORT > bll_TB_STA.GetRecordCount(model.C_PRO_ID)) { return; } Mod_TB_STA model1 = bll_TB_STA.GetModelBySoft(model.N_SORT.ToString(), model.C_PRO_ID); model1.N_SORT = model1.N_SORT - 1; model1.C_EMP_ID = RV.UI.UserInfo.userID; model1.D_MOD_DT = RV.UI.ServerTime.timeNow(); bool res = bll_TB_STA.Update(model); bll_TB_STA.Update(model1); if (res) { Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "修改工位顺序"); //添加操作日志 BindGW(); //重新加载工位信息 //btn_Reset_Click(null, null);//清空控件 } this.lbl_GWID.Text = model.C_ID; }
private void btn_change_line_Click(object sender, EventArgs e) { if (this.icbo_line2.SelectedIndex < 0) { MessageBox.Show("请选择要调整的产线!"); this.dtp_d_plan_date.Focus(); return; } int slsctcou = lst.Where(a => a.B_check).ToList().Count; if (DialogResult.Yes == MessageBox.Show("您当前选中" + slsctcou.ToString() + "条订单,\r\n是否确认将选中的订单调整到 " + this.icbo_line2.Properties.Items[this.icbo_line2.SelectedIndex].Description.ToString() + " ?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)) { Mod_TB_STA modsta = bll_sta.GetModel(this.icbo_line2.Properties.Items[this.icbo_line2.SelectedIndex].Value.ToString()); #region 方法 WaitingFrom.ShowWait("计划正在修改,请稍候..."); if (lst.Count > 0) { if (lst.Where(a => a.B_check).ToList().Count > 0) { for (int i = 0; i < lst.Count; i++) { if (lst[i].B_check) { string oldline = lst[i].C_ROLL_DESC; lst[i].C_LINE_NO = modsta.C_ID; lst[i].C_ROLL_CODE = modsta.C_STA_CODE; lst[i].C_ROLL_DESC = modsta.C_STA_DESC; lst[i].D_SC_MOD_DT = RV.UI.ServerTime.timeNow(); bll_order.Update(lst[i]); DataTable dtroll_plan = bll_trp_paln.GetListByOrderID(lst[i].C_ID).Tables[0]; if (dtroll_plan.Rows.Count > 0) { for (int j = 0; j < dtroll_plan.Rows.Count; j++) { Mod_TRP_PLAN_ROLL modtrp_roll = bll_trp_paln.GetModel(dtroll_plan.Rows[j]["C_ID"].ToString()); modtrp_roll.C_STA_ID = modsta.C_ID; modtrp_roll.C_LINE_CODE = modsta.C_STA_CODE; modtrp_roll.C_LINE_DESC = modsta.C_STA_DESC; bll_trp_paln.Update(modtrp_roll); } } Mod_TMO_ORDER_PJ_LOG modlog = new Mod_TMO_ORDER_PJ_LOG(); modlog.C_EMP_ID = RV.UI.UserInfo.userID; modlog.C_ORDER_NO = lst[i].C_ORDER_NO; modlog.C_TYPE = "调整计划产线"; modlog.C_RESULT = "调整计划产线[" + oldline + "=>" + lst[i].C_ROLL_DESC.ToString() + "]"; modlog.C_MSG = "计划产线调整!"; bll_ddpj.Add(modlog); } } } } WaitingFrom.CloseWait(); #endregion btn_query_order_Click(null, null); } }
private void FrmPB_GW_EDIT_Load(object sender, EventArgs e) { strMenuName = RV.UI.UserInfo.menuName; Mod_TB_STA mod = bll_TB_STA.GetModel(c_id); txt_GWDM.Text = mod.C_STA_CODE; txt_GW.Text = mod.C_STA_DESC; txt_ERPGWDM.Text = mod.C_STA_ERPCODE; txt_MESGWDM.Text = mod.C_STA_MESCODE; txt_Remark_GW.Text = mod.C_REMARK; }
/// <summary> /// 删除工位信息 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_StopGW_Click(object sender, EventArgs e) { try { if (DialogResult.No == MessageBox.Show("是否确认删除选中的数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)) { return; } int selectedNum = this.gv_GW.SelectedRowsCount; int commitNum = 0; //删除记录数量 int failtNum = 0; //删除失败数量 int[] rownumber = this.gv_GW.GetSelectedRows(); //获取选中行号数组; string pro = ""; for (int i = 0; i < rownumber.Length; i++) { int selectedHandle = rownumber[i]; string strID = this.gv_GW.GetRowCellValue(selectedHandle, "C_ID").ToString(); Mod_TB_STA model = bll_TB_STA.GetModel(strID); pro = model.C_PRO_ID; model.N_STATUS = 0; model.C_EMP_ID = RV.UI.UserInfo.userID; model.D_MOD_DT = RV.UI.ServerTime.timeNow(); model.D_END_DATE = RV.UI.ServerTime.timeNow(); bool update = bll_TB_STA.Update(model); if (update) { commitNum = commitNum + 1; } else { failtNum = failtNum + 1; } } if (selectedNum == 0) { MessageBox.Show("未选中工位!"); } else { bll_TB_STA.CZSORT(pro); MessageBox.Show("选择" + selectedNum.ToString() + "条记录,删除" + commitNum.ToString() + "条记录!"); } Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "删除工位信息"); //添加操作日志 btn_QueryGW_Click(null, null); //重新加载工位信息 gv_GW_Click(null, null); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
/// <summary> /// 计划重新划分连铸 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_fp_lz_Click(object sender, EventArgs e) { if (DialogResult.No == MessageBox.Show("是否确认重新分配计划连铸信息?\r\n重新分配后浇次计划将会重新生成!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)) { return; } WaitingFrom.ShowWait("系统正对炼钢计划进行连铸重新分配,请稍候..."); if (this.icbo_lz1.SelectedIndex <= 0) { MessageBox.Show("请选择要分配的连铸!"); icbo_lz1.Focus(); return; } string C_CCM_ID = icbo_lz1.Properties.Items[this.icbo_lz1.SelectedIndex].Value.ToString(); Mod_TB_STA mod_sta = bll_sta.GetModel(C_CCM_ID); int[] aa = this.gv_Lg_plan_Query.GetSelectedRows(); int cou = 0; for (int i = 0; i < aa.Length; i++) { int selectedHandle = aa[i]; string C_ID = this.gv_Lg_plan_Query.GetRowCellValue(selectedHandle, "C_ID").ToString(); string C_STL_GRD = this.gv_Lg_plan_Query.GetRowCellValue(selectedHandle, "C_STL_GRD").ToString(); string C_STD_CODE = this.gv_Lg_plan_Query.GetRowCellValue(selectedHandle, "C_STD_CODE").ToString(); Mod_TRP_PLAN_ROLL mod_roll = bll_trp_plan.GetModel(C_ID); string C_ORDER_ID = mod_roll.C_INITIALIZE_ITEM_ID; Mod_TMO_ORDER mod_order = bll_order.GetModel(C_ORDER_ID); mod_order.C_CCM_NO = C_CCM_ID; mod_order.C_CCM_CODE = mod_sta.C_STA_CODE; mod_order.C_CCM_DESC = mod_sta.C_STA_DESC; if (bll_order.Update(mod_order)) { mod_roll.C_CCM_ID = C_CCM_ID; mod_roll.C_CCM_CODE = mod_sta.C_STA_CODE; mod_roll.C_CCM_DESC = mod_sta.C_STA_DESC; if (bll_trp_plan.Update(mod_roll)) { cou = cou + i; } } } MessageBox.Show("连铸划分成功!"); WaitingFrom.CloseWait(); btn_query_lc_plan_Click(null, null); }
/// <summary> /// 增加一条数据 /// </summary> public bool Add(Mod_TB_STA model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into TB_STA("); strSql.Append("C_PRO_ID,C_STA_CODE,C_STA_DESC,C_EMP_ID,D_MOD_DT,C_REMARK,D_START_DATE,D_END_DATE,N_STATUS,C_STA_ERPCODE,C_STA_MESCODE,C_ERP_PK,N_SORT)"); strSql.Append(" values ("); strSql.Append(":C_PRO_ID,:C_STA_CODE,:C_STA_DESC,:C_EMP_ID,:D_MOD_DT,:C_REMARK,:D_START_DATE,:D_END_DATE,:N_STATUS,:C_STA_ERPCODE,:C_STA_MESCODE,:C_ERP_PK,:N_SORT)"); OracleParameter[] parameters = { new OracleParameter(":C_PRO_ID", OracleDbType.Varchar2, 100), new OracleParameter(":C_STA_CODE", OracleDbType.Varchar2, 100), new OracleParameter(":C_STA_DESC", OracleDbType.Varchar2, 100), new OracleParameter(":C_EMP_ID", OracleDbType.Varchar2, 100), new OracleParameter(":D_MOD_DT", OracleDbType.Date), new OracleParameter(":C_REMARK", OracleDbType.Varchar2, 200), new OracleParameter(":D_START_DATE", OracleDbType.Date), new OracleParameter(":D_END_DATE", OracleDbType.Date), new OracleParameter(":N_STATUS", OracleDbType.Decimal, 1), new OracleParameter(":C_STA_ERPCODE", OracleDbType.Varchar2, 100), new OracleParameter(":C_STA_MESCODE", OracleDbType.Varchar2, 100), new OracleParameter(":C_ERP_PK", OracleDbType.Varchar2, 100), new OracleParameter(":N_SORT", OracleDbType.Decimal, 3) }; parameters[0].Value = model.C_PRO_ID; parameters[1].Value = model.C_STA_CODE; parameters[2].Value = model.C_STA_DESC; parameters[3].Value = model.C_EMP_ID; parameters[4].Value = model.D_MOD_DT; parameters[5].Value = model.C_REMARK; parameters[6].Value = model.D_START_DATE; parameters[7].Value = model.D_END_DATE; parameters[8].Value = model.N_STATUS; parameters[9].Value = model.C_STA_ERPCODE; parameters[10].Value = model.C_STA_MESCODE; parameters[11].Value = model.C_ERP_PK; parameters[12].Value = model.N_SORT; int rows = DbHelperOra.ExecuteSql(strSql.ToString(), parameters); if (rows > 0) { return(true); } else { return(false); } }
/// <summary> /// 完工,入库 /// </summary> /// <param name="item">委外计划</param> private void RuKu(Mod_TRC_ROLL_WW_MAIN item, Mod_TB_STA tBSta, Mod_TMO_ORDER contractInfo) { var xcItems = dalWWMain.GetItemList(item.C_ID); if (xcItems.Any() == false) { throw new Exception("未找到组批信息"); } List <Mod_TRC_ROLL_PRODCUT> addItems = new List <Mod_TRC_ROLL_PRODCUT>(); // 单支完工量 var singleAmt = item.N_WGT_REMOVE / item.N_QUA_REMOVE; foreach (var xcItem in xcItems) { // 如果已经满足完工支数退出 if (addItems.Count == item.N_QUA_REMOVE) { continue; } xcItem.C_ID = $"{item.C_BATCH_NO}{(addItems.Count + 1).ToString("0000")}"; xcItem.C_BATCH_NO = item.C_BATCH_NO; xcItem.N_WGT = singleAmt ?? 0; xcItem.C_MOVE_TYPE = "E"; xcItem.C_SHIFT = item.C_PRODUCE_SHIFT; xcItem.C_GROUP = item.C_PRODUCE_GROUP; xcItem.C_STA_ID = tBSta.C_ID; xcItem.C_IS_DEPOT = "Y"; xcItem.C_MAT_CODE = contractInfo.C_MAT_CODE; //item.C_MAT_XC_CODE; xcItem.C_MAT_CODE_BEFORE = string.Empty; xcItem.C_MAT_DESC = contractInfo.C_MAT_NAME; //item.C_MAT_XC_NAME; xcItem.C_CON_NO = contractInfo.C_CON_NO; xcItem.C_ORDER_NO = contractInfo.C_ORDER_NO; xcItem.C_LINEWH_CODE = item.C_LINEWH_CODE; xcItem.C_LINEWH_LOC_CODE = string.Empty; xcItem.C_WWBATCH_NO = item.C_XC_BATCH_NO; xcItem.C_JUDGE_LEV_ZH = item.C_CHECKSTATE_NAME; xcItem.C_BZYQ = contractInfo.C_PACK; xcItem.D_DP_DT = DateTime.Now; bllProduct.Add(xcItem); addItems.Add(xcItem); } }
/// <summary> /// ImageComboBoxEdit加载班组 /// </summary> /// <param name="cbo">控件</param> /// <param name="stacode">工位代码</param> public void ImageComboBoxEditBindNCBZ(DevExpress.XtraEditors.ImageComboBoxEdit cbo, string stacode) { Mod_TB_STA mod_TB_STA = bll_TB_STA.GetModelByCODE(stacode);//获取工作中心id cbo.Properties.Items.Clear(); DataTable dt = bll_TB_BCBZ.GetNCBZList(mod_TB_STA.C_ERP_PK, "").Tables[0]; if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { cbo.Properties.Items.Add(dt.Rows[i]["BZMC"].ToString(), dt.Rows[i]["PK_PGAID"].ToString(), -1); } } else { cbo.Properties.Items.Clear(); } }
/// <summary> /// 默认班次班组 /// </summary> /// <param name="bccbo">班次</param> /// <param name="bzcbo">班组</param> /// <param name="stacode">工位代码</param> /// <param name="type">工序</param> public void BCBZBindEdit(DevExpress.XtraEditors.ImageComboBoxEdit bccbo, DevExpress.XtraEditors.ImageComboBoxEdit bzcbo, string stacode) { Mod_TB_STA mod_TB_STA = bll_TB_STA.GetModelByCODE(stacode);//获取NC工位代码 DataTable dt = bll_TB_BCBZ.GetList(mod_TB_STA.C_PRO_ID, DateTime.Now).Tables[0]; if (dt.Rows.Count > 0) { DataTable dt1 = bll_TB_BCBZ.GetNCBCList(mod_TB_STA.C_STA_ERPCODE, dt.Rows[0]["C_BC_NAME"].ToString()).Tables[0]; DataTable dt2 = bll_TB_BCBZ.GetNCBZList(mod_TB_STA.C_ERP_PK, dt.Rows[0]["C_BZ_NAME"].ToString()).Tables[0]; if (dt1.Rows.Count > 0) { bccbo.EditValue = dt1.Rows[0]["PK_WTID"].ToString(); } if (dt2.Rows.Count > 0) { bzcbo.EditValue = dt2.Rows[0]["PK_PGAID"].ToString(); } } }
/// <summary> /// 保存信息 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_SaveDetails_Click(object sender, EventArgs e) { try { #region 验证信息 if (txt_remark.Text.Trim() != "") { MessageBox.Show("备注不能为空!"); return; } #endregion bool res = false; if (DialogResult.No == MessageBox.Show("是否确认保存?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)) { return; } Mod_TPP_TURNAROUND_PLAN model = new Mod_TPP_TURNAROUND_PLAN(); model.C_STA_CODE = stacode; Mod_TB_STA mod = bllSta.GetModelByCODE(stacode); if (mod != null) { model.C_STA_ID = mod.C_ID; } model.D_START_TIME = Convert.ToDateTime(this.dt_jx_from_time.Text); model.D_END_TIME = Convert.ToDateTime(this.dt_jx_end_time.Text); model.C_PLAN_TYPE = this.cbo_jxlb.Text; model.C_REMARK = txt_remark.Text; model.C_EMP_ID = RV.UI.UserInfo.userID; res = blljxjh.Add(model); Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "添加轧线检修计划");//添加操作日志 if (res) { MessageBox.Show("操作成功!"); BindInfo(); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
/// <summary> /// 获取工序列表焦点行信息 /// </summary> public void BindFocusedRowGW() { int selectedHandle = this.gv_GW.FocusedRowHandle;//获取焦点行索引 if (selectedHandle < 0) { ClearContent.ClearPanelControl(panelControl3.Controls); lbl_GWID.Text = ""; return; } this.lbl_GWID.Text = this.gv_GW.GetRowCellValue(selectedHandle, "C_ID").ToString();//获取焦点行主键 //根据主键得到工序对象,并在界面赋值 Mod_TB_STA model = bll_TB_STA.GetModel(this.lbl_GWID.Text); this.txt_GW.Text = model.C_STA_DESC; this.txt_GWDM.Text = model.C_STA_CODE; this.txt_ERPGWDM.Text = model.C_STA_ERPCODE; this.txt_MESGWDM.Text = model.C_STA_MESCODE; this.txt_Remark.Text = model.C_REMARK; }
private void btn_Save_Click(object sender, EventArgs e) { try { Mod_TB_STA mod = bll_TB_STA.GetModel(c_id); mod.C_STA_CODE = txt_GWDM.Text; mod.C_STA_DESC = txt_GW.Text; mod.C_STA_ERPCODE = txt_ERPGWDM.Text; mod.C_STA_MESCODE = txt_MESGWDM.Text; mod.C_REMARK = txt_Remark_GW.Text; mod.C_EMP_ID = RV.UI.UserInfo.UserID; mod.D_MOD_DT = RV.UI.ServerTime.timeNow(); bll_TB_STA.Update(mod); MessageBox.Show("保存成功!"); Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "修改工位");//添加操作日志 this.DialogResult = DialogResult.Cancel; } catch (Exception ex) { MessageBox.Show(ex.Message); } }
/// <summary> /// 查询能源消耗实绩记录 /// </summary> public void BindRecode() { string stacode = ""; string procode = ""; if (imgcbo_GX.EditValue.ToString() != "") { Mod_TB_PRO mod_TB_PRO = bllPro.GetModel(imgcbo_GX.EditValue.ToString()); procode = mod_TB_PRO.C_PRO_CODE; } if (imgcbo_GW.EditValue.ToString() != "") { Mod_TB_STA mod_TB_STA = bllSta.GetModel(imgcbo_GW.EditValue.ToString()); stacode = mod_TB_STA.C_STA_CODE; } DataTable dt = bllenergy.BindRecode(dt_query_form.DateTime, dt_query_to.DateTime, procode, stacode, cbo_energy.EditValue.ToString()).Tables[0]; this.gc_scyx.DataSource = dt; this.gv_scyx.OptionsView.ColumnAutoWidth = false; //不允许自动列宽 this.gv_scyx.OptionsSelection.MultiSelect = true; //允许多选 gv_scyx.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CheckBoxRowSelect; //加载checkBox this.gv_scyx.BestFitColumns(); SetGridViewRowNum.SetRowNum(gv_scyx); }
/// <summary> /// 得到一个对象实体 /// </summary> public Mod_TB_STA GetModel(string C_ID) { StringBuilder strSql = new StringBuilder(); strSql.Append("SELECT * from TB_STA "); strSql.Append(" WHERE C_ID=:C_ID "); OracleParameter[] parameters = { new OracleParameter(":C_ID", OracleDbType.Varchar2, 100) }; parameters[0].Value = C_ID; Mod_TB_STA model = new Mod_TB_STA(); DataSet ds = DbHelperOra.Query(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { return(DataRowToModel(ds.Tables[0].Rows[0])); } else { return(null); } }
/// <summary> /// /// </summary> /// <param name="order">合同信息</param> /// <param name="matrl">成品物料信息</param> /// <param name="item">组批信息</param> /// <param name="ssBmid">部门ID</param> /// <returns></returns> private NcRollA1 GetA1(Mod_TMO_ORDER order, Mod_TB_MATRL_MAIN matrl, Mod_TRC_ROLL_WW_MAIN item, Mod_TB_STA tBSta, Mod_TS_USER user) { var ncRollA1 = new NcRollA1 { bmid = tBSta.C_SSBMID, //部门ID jhrq = item.D_MOD_DT, //计划日期 jhxxsl = (item.N_WGT_TOTAL ?? 0).ToString(), //下限数量 jhyid = matrl.C_PLANEMP, // 计划员ID jldwid = matrl.C_PK_MEASDOC, //计量单位 memo = item.C_REMARK, //备注 pk_produce = matrl.C_PK_PRODUCE, //物料PK, scbmid = tBSta.C_SSBMID, //生产部门ID shrid = item.C_PRODUCE_EMP_ID, //操作员 shrq = DateTime.Now, //审核日期 slrq = order.D_DT ?? DateTime.Now, //需求日期 wlbmid = matrl.C_PK_INVBASDOC, // 存货档案主键 xdrq = item.D_MOD_DT, //下单日期 xqrq = order.D_DELIVERY_DT ?? DateTime.Now, //交货日期 xqsl = (item.N_WGT_TOTAL ?? 0).ToString(), //计划量 zdrq = DateTime.Now, //制单日期 zyx1 = order.C_FREE1, //自由项1 zyx2 = order.C_FREE2, //自由项2 zyx3 = order.C_PACK, //包装要求 zyx5 = item.C_ID, //PCI主键 }; return(ncRollA1); }
/// <summary> /// 得到一个对象实体 /// </summary> public Mod_TB_STA DataRowToModel(DataRow row) { Mod_TB_STA model = new Mod_TB_STA(); if (row != null) { if (row["C_ID"] != null) { model.C_ID = row["C_ID"].ToString(); } if (row["C_PRO_ID"] != null) { model.C_PRO_ID = row["C_PRO_ID"].ToString(); } if (row["C_STA_CODE"] != null) { model.C_STA_CODE = row["C_STA_CODE"].ToString(); } if (row["C_STA_DESC"] != null) { model.C_STA_DESC = row["C_STA_DESC"].ToString(); } if (row["C_EMP_ID"] != null) { model.C_EMP_ID = row["C_EMP_ID"].ToString(); } if (row["D_MOD_DT"] != null && row["D_MOD_DT"].ToString() != "") { model.D_MOD_DT = DateTime.Parse(row["D_MOD_DT"].ToString()); } if (row["C_REMARK"] != null) { model.C_REMARK = row["C_REMARK"].ToString(); } if (row["D_START_DATE"] != null && row["D_START_DATE"].ToString() != "") { model.D_START_DATE = DateTime.Parse(row["D_START_DATE"].ToString()); } if (row["D_END_DATE"] != null && row["D_END_DATE"].ToString() != "") { model.D_END_DATE = DateTime.Parse(row["D_END_DATE"].ToString()); } if (row["N_STATUS"] != null && row["N_STATUS"].ToString() != "") { model.N_STATUS = decimal.Parse(row["N_STATUS"].ToString()); } if (row["C_STA_ERPCODE"] != null) { model.C_STA_ERPCODE = row["C_STA_ERPCODE"].ToString(); } if (row["C_STA_MESCODE"] != null) { model.C_STA_MESCODE = row["C_STA_MESCODE"].ToString(); } if (row["N_SORT"] != null && row["N_SORT"].ToString() != "") { model.N_SORT = decimal.Parse(row["N_SORT"].ToString()); } if (row["C_ERP_PK"] != null) { model.C_ERP_PK = row["C_ERP_PK"].ToString(); } if (row["C_SSBMID"] != null) { model.C_SSBMID = row["C_SSBMID"].ToString(); } } return(model); }
/// <summary> /// 更新一条数据 /// </summary> public bool Update(Mod_TB_STA model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update TB_STA set "); strSql.Append("C_PRO_ID=:C_PRO_ID,"); strSql.Append("C_STA_CODE=:C_STA_CODE,"); strSql.Append("C_STA_DESC=:C_STA_DESC,"); strSql.Append("C_EMP_ID=:C_EMP_ID,"); strSql.Append("D_MOD_DT=:D_MOD_DT,"); strSql.Append("C_REMARK=:C_REMARK,"); strSql.Append("D_START_DATE=:D_START_DATE,"); strSql.Append("D_END_DATE=:D_END_DATE,"); strSql.Append("N_STATUS=:N_STATUS,"); strSql.Append("C_STA_ERPCODE=:C_STA_ERPCODE,"); strSql.Append("C_STA_MESCODE=:C_STA_MESCODE,"); strSql.Append("N_SORT=:N_SORT,"); strSql.Append("C_ERP_PK=:C_ERP_PK"); strSql.Append(" WHERE C_ID=:C_ID "); OracleParameter[] parameters = { new OracleParameter(":C_PRO_ID", OracleDbType.Varchar2, 100), new OracleParameter(":C_STA_CODE", OracleDbType.Varchar2, 100), new OracleParameter(":C_STA_DESC", OracleDbType.Varchar2, 100), new OracleParameter(":C_EMP_ID", OracleDbType.Varchar2, 100), new OracleParameter(":D_MOD_DT", OracleDbType.Date), new OracleParameter(":C_REMARK", OracleDbType.Varchar2, 200), new OracleParameter(":D_START_DATE", OracleDbType.Date), new OracleParameter(":D_END_DATE", OracleDbType.Date), new OracleParameter(":N_STATUS", OracleDbType.Decimal, 1), new OracleParameter(":C_STA_ERPCODE", OracleDbType.Varchar2, 100), new OracleParameter(":C_STA_MESCODE", OracleDbType.Varchar2, 100), new OracleParameter(":N_SORT", OracleDbType.Decimal, 3), new OracleParameter(":C_ERP_PK", OracleDbType.Varchar2, 100), new OracleParameter(":C_ID", OracleDbType.Varchar2, 100) }; parameters[0].Value = model.C_PRO_ID; parameters[1].Value = model.C_STA_CODE; parameters[2].Value = model.C_STA_DESC; parameters[3].Value = model.C_EMP_ID; parameters[4].Value = model.D_MOD_DT; parameters[5].Value = model.C_REMARK; parameters[6].Value = model.D_START_DATE; parameters[7].Value = model.D_END_DATE; parameters[8].Value = model.N_STATUS; parameters[9].Value = model.C_STA_ERPCODE; parameters[10].Value = model.C_STA_MESCODE; parameters[11].Value = model.N_SORT; parameters[12].Value = model.C_ERP_PK; parameters[13].Value = model.C_ID; int rows = DbHelperOra.ExecuteSql(strSql.ToString(), parameters); if (rows > 0) { return(true); } else { return(false); } }
private NcRoll46 Get46(Mod_TMO_ORDER order, Mod_TB_MATRL_MAIN ordMatrl, Mod_TRC_ROLL_WW_MAIN item, Mod_TB_STA tBSta, Mod_TS_USER user) { Mod_TQB_CHECKSTATE mod_TQB_CHECKSTATE = dal_TQB_CHECKSTATE.GetModelByName(item.C_CHECKSTATE_NAME, "1001"); var lineWhItem = dalLineWh.GetModelByCode(item.C_LINEWH_CODE); var ncRoll46 = new NcRoll46 { castunitid = ordMatrl.C_FJLDW, //辅助计量单位ID ccheckstate_bid = mod_TQB_CHECKSTATE.C_ID, //"1001NC100000000052Z3",//质量等级ID cinvbasid = ordMatrl.C_PK_INVBASDOC, //存货基本ID coperatorid = user.C_ACCOUNT, //"17384",//item.C_PRODUCE_EMP_ID,//入库人 cwarehouseid = lineWhItem.C_ID, //仓库ID cworkcenterid = tBSta.C_ERP_PK, dbizdate = DateTime.Now, //入库日期 ninassistnum = (item.N_QUA_REMOVE ?? 0).ToString(), //入库件数 ninnum = (item.N_WGT_REMOVE ?? 0).ToString(), //入库数量 pk_produce = ordMatrl.C_PK_PRODUCE, //物料PK taccounttime = DateTime.Now, //入库签字时间 vbatchcode = item.C_BATCH_NO, vfree1 = order.C_FREE1, vfree2 = order.C_FREE2, vfree3 = order.C_PACK, }; return(ncRoll46); }
private NcRollA4 GetA4(Mod_TMO_ORDER order, Mod_TB_MATRL_MAIN ordMatrl, Mod_TRC_ROLL_WW_MAIN item, Mod_TB_STA tBSta, Mod_TS_USER user) { var ncRollA4 = new NcRollA4 { ccxh = item.C_BATCH_NO, //批号 fhgsl = (item.N_QUA_REMOVE ?? 0).ToString(), //完工数量 freeitemvalue1 = order.C_FREE1, //自由项1 freeitemvalue2 = order.C_FREE2, //自由项2 freeitemvalue3 = order.C_PACK, //包装要求 gzzxbmid = tBSta.C_STA_ERPCODE, //工作中心代码 gzzxid = tBSta.C_ERP_PK, //工作中心ID hgsl = (item.N_WGT_REMOVE ?? 0).ToString(), //合格数量 jldwid = ordMatrl.C_PK_MEASDOC, //计量单位ID jsrq = item.D_PRODUCE_DATE_E ?? DateTime.Now, //生产结束日期 ksrq = item.D_PRODUCE_DATE_B ?? DateTime.Now, //生产开始日期 pch = item.C_BATCH_NO, //批次号, pk_produce = ordMatrl.C_PK_PRODUCE, //物料PK rq = item.D_PRODUCE_DATE_E ?? DateTime.Now, //完工日期 scbmid = tBSta.C_SSBMID, //生产部门ID sffsgp = "N", //是否发生改判 sflfcp = "N", //是否联产品 sj = DateTime.Now, //报告时间 wlbmid = ordMatrl.C_PK_INVBASDOC, //物料编码ID zdrid = user.C_ACCOUNT, //item.C_PRODUCE_EMP_ID,//操作人员 }; return(ncRollA4); }
private NcRollA3 GetA3(Mod_TMO_ORDER order, Mod_TB_MATRL_MAIN ordMatrl, Mod_TB_MATRL_MAIN matrl, Mod_TRC_ROLL_WW_MAIN item, Mod_TB_STA tBSta, Mod_TRC_ROLL_PRODCUT xcItem) { var lineWhItem = dalLineWh.GetModelByCode(item.C_XC_LINEWH_CODE); var ncRollA3 = new NcRollA3 { ckckid = lineWhItem.C_ID, //出库仓库ID(TPB_LINEWH线材库ID) fjldwid = matrl.C_FJLDW, //辅助计量单位ID, fljcksl = (item.N_QUA_TOTAL ?? 0).ToString(), // 出库数量 flrq = DateTime.Now.ToString("yyyy-MM-dd"), freeitemvalue1 = xcItem.C_ZYX1, //order.C_FREE1,// 线材自由项1(暂认为委外与线材自由项一致) freeitemvalue2 = xcItem.C_ZYX2, //order.C_FREE2,//线材自由项2(暂认为委外与线材自由项一致) freeitemvalue3 = item.C_XC_BZYQ, // 线材包装要求 gzzxid = tBSta.C_ERP_PK, //工作中心ID hfreeitemvalue1 = order.C_FREE1, // 成品自由项1 hfreeitemvalue2 = order.C_FREE2, //成品自由项2 hfreeitemvalue3 = order.C_PACK, // 成品包装要求, hjldwid = ordMatrl.C_PK_MEASDOC, //主计量单位ID hpch = item.C_BATCH_NO, //批号 hwlbmid = ordMatrl.C_PK_INVBASDOC, //存货档案主键 hzdrid = item.C_PRODUCE_EMP_ID, //操作人 hzdrq = item.D_PRODUCE_DATE_B ?? DateTime.Now, //制单日期 jldwid = matrl.C_PK_MEASDOC, //计量单位 kgyid = item.C_PRODUCE_EMP_ID, //库管员 ljcksl = (item.N_WGT_TOTAL ?? 0).ToString(), //累计出库数量 pch = item.C_XC_BATCH_NO, //线材批号 wlbmid = matrl.C_PK_INVBASDOC, //存货档案主键 zdrq = DateTime.Now, }; return(ncRollA3); }
/// <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> /// 更新一条数据 /// </summary> public bool Update(Mod_TB_STA model) { return(dal.Update(model)); }
private void btn_save_Click(object sender, EventArgs e) { try { bool res = false; if (this.lbl_id.Text == "") { if (DialogResult.No == MessageBox.Show("是否确认添加记录?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)) { return; } if (this.cbo_GW.EditValue == null) { MessageBox.Show("未选择工位!"); return; } if (this.txt_cn.Text.Trim() == "" || this.txt_cn.Text.Trim() == "0") { MessageBox.Show("产能不能0或为空!"); return; } Mod_TPB_GL_CAPACITY model = new Mod_TPB_GL_CAPACITY(); model.C_STA_ID = this.cbo_GW.EditValue.ToString(); DataTable dt = bll.GetList(model.C_STA_ID, 1).Tables[0]; if (dt.Rows.Count > 0) { MessageBox.Show("已存在工位!"); return; } //工位信息 Mod_TB_STA modSta = bllsta.GetModel(model.C_STA_ID); model.C_PRO_ID = modSta.C_PRO_ID; model.C_STA_CODE = modSta.C_STA_CODE; model.C_STA_DESC = modSta.C_STA_DESC; model.N_CAPACITY = Convert.ToDecimal(this.txt_cn.Text); modSta.N_STATUS = this.rbtn_isty_gx.SelectedIndex == 0 ? 1 : 0; model.C_EMP_ID = RV.UI.UserInfo.userID; res = bll.Add(model); Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "添加工位日产能");//添加操作日志 } else { if (DialogResult.No == MessageBox.Show("是否确认编辑选中的记录?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)) { return; } Mod_TPB_GL_CAPACITY model = bll.GetModel(lbl_id.Text); model.N_CAPACITY = Convert.ToDecimal(this.txt_cn.Text); model.N_STATUS = this.rbtn_isty_gx.SelectedIndex == 0 ? 1 : 0; model.C_EMP_ID = RV.UI.UserInfo.userID; model.D_MOD_DT = RV.UI.ServerTime.timeNow(); res = bll.Update(model); } if (res) { MessageBox.Show("操作成功!"); Query(); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
/// <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="strPlanID">计划主键</param> /// <param name="i_Wgt">重量</param> /// <param name="strTime">开始时间</param> /// <param name="strRemark">备注</param> /// <param name="strLineID">轧线ID</param> /// <param name="strHGG">换规格原因</param> /// <returns></returns> public string DownPlan(string strPlanID, decimal i_Wgt, string strTime, string strRemark, string strLineID, string strHGG) { try { string result = "1"; TransactionHelper.BeginTransaction(); Dal_TB_STA dalTbSta = new Dal_TB_STA(); DateTime dtStart; DateTime dtEnd; Mod_TB_STA modSta = dalTbSta.GetModel(strLineID); Mod_TRP_PLAN_ROLL modelPlan = dalTrpPlanRoll.GetModel(strPlanID); if (modelPlan == null) { TransactionHelper.RollBack(); return("下发失败,没有找到计划信息!"); } else { modelPlan.N_ISSUE_WGT = modelPlan.N_ISSUE_WGT + i_Wgt; if (modelPlan.N_ISSUE_WGT == modelPlan.N_WGT) { modelPlan.N_STATUS = 1; } Mod_TRP_PLAN_ROLL_ITEM_INFO modUp = dal.GetModel_Up(strLineID); if (modUp == null) { if (string.IsNullOrEmpty(strTime)) { TransactionHelper.RollBack(); return("系统没有已排的计划,请设置计划初始开始时间!"); } else { dtStart = Convert.ToDateTime(strTime); } } else { //换规格 if (modelPlan.C_SPEC != modUp.C_SPEC) { if (string.IsNullOrEmpty(strHGG)) { TransactionHelper.RollBack(); return("下发的计划和上一个计划规格不同,请填写换规格原因!"); } } int hggTime = dalChangeTime.Get_Time2(strLineID, modUp.C_SPEC, modelPlan.C_SPEC);//换规格时间 dtStart = Convert.ToDateTime(modUp.D_P_END_TIME).AddMinutes(hggTime); if (!string.IsNullOrEmpty(strTime)) { if (dtStart < Convert.ToDateTime(strTime)) { dtStart = Convert.ToDateTime(strTime); } } } double cn = Convert.ToDouble(i_Wgt / Convert.ToDecimal(modelPlan.N_MACH_WGT.ToString())); dtEnd = dtStart.AddHours(cn);//结束时间 #region TRP_PLAN_ROLL_ITEM赋值 Mod_TRP_PLAN_ROLL_ITEM_INFO modItemInfo = new Mod_TRP_PLAN_ROLL_ITEM_INFO(); modItemInfo.C_PLAN_ROLL_ID = modelPlan.C_ID; //计划主表主键 modItemInfo.N_STATUS = 1; //已下发 modItemInfo.C_INITIALIZE_ITEM_ID = modelPlan.C_INITIALIZE_ITEM_ID; modItemInfo.C_ORDER_NO = modelPlan.C_ORDER_NO; modItemInfo.N_WGT = i_Wgt;//下发量 modItemInfo.C_MAT_CODE = modelPlan.C_MAT_CODE; modItemInfo.C_MAT_NAME = modelPlan.C_MAT_NAME; modItemInfo.C_TECH_PROT = modelPlan.C_TECH_PROT; modItemInfo.C_SPEC = modelPlan.C_SPEC; modItemInfo.C_STL_GRD = modelPlan.C_STL_GRD; modItemInfo.C_STD_CODE = modelPlan.C_STD_CODE; modItemInfo.N_USER_LEV = modelPlan.N_USER_LEV; modItemInfo.N_STL_GRD_LEV = modelPlan.N_STL_GRD_LEV; modItemInfo.N_ORDER_LEV = modelPlan.N_ORDER_LEV; modItemInfo.C_QUALIRY_LEV = modelPlan.C_QUALIRY_LEV; modItemInfo.D_NEED_DT = modelPlan.D_NEED_DT; modItemInfo.D_DELIVERY_DT = modelPlan.D_DELIVERY_DT; modItemInfo.D_DT = modelPlan.D_DT; modItemInfo.C_LINE_DESC = modSta.C_STA_DESC; modItemInfo.C_LINE_CODE = modSta.C_STA_CODE; modItemInfo.D_P_START_TIME = dtStart; //计划开始时间 modItemInfo.D_P_END_TIME = dtEnd; //计划结束时间 modItemInfo.N_PROD_TIME = modelPlan.N_PROD_TIME; modItemInfo.N_SORT = modelPlan.N_SORT; modItemInfo.N_ROLL_PROD_WGT = i_Wgt;//下发量 modItemInfo.C_ROLL_PROD_EMP_ID = modelPlan.C_ROLL_PROD_EMP_ID; modItemInfo.C_STL_ROL_DT = modelPlan.C_STL_ROL_DT; modItemInfo.N_PROD_WGT = modelPlan.N_PROD_WGT; modItemInfo.N_WARE_WGT = modelPlan.N_WARE_WGT; modItemInfo.N_WARE_OUT_WGT = modelPlan.N_WARE_OUT_WGT; modItemInfo.N_FLAG = modelPlan.N_FLAG; modItemInfo.N_ISSUE_WGT = i_Wgt;//下发量 modItemInfo.C_CUST_NO = modelPlan.C_CUST_NO; modItemInfo.C_CUST_NAME = modelPlan.C_CUST_NAME; modItemInfo.C_SALE_CHANNEL = modelPlan.C_SALE_CHANNEL; modItemInfo.C_PACK = modelPlan.C_PACK; modItemInfo.C_DESIGN_NO = modelPlan.C_DESIGN_NO; modItemInfo.N_GROUP_WGT = modelPlan.N_GROUP_WGT; modItemInfo.C_STA_ID = modSta.C_ID; modItemInfo.D_START_TIME = modelPlan.D_START_TIME; modItemInfo.D_END_TIME = modelPlan.D_END_TIME; modItemInfo.C_EMP_ID = modelPlan.C_EMP_ID; modItemInfo.D_MOD_DT = RV.UI.ServerTime.timeNow(); modItemInfo.N_ROLL_WGT = modelPlan.N_ROLL_WGT; modItemInfo.N_MACH_WGT = modelPlan.N_MACH_WGT; modItemInfo.C_CAST_NO = modelPlan.C_CAST_NO; modItemInfo.C_INITIALIZE_ID = modelPlan.C_INITIALIZE_ID; modItemInfo.C_FREE_TERM = modelPlan.C_FREE_TERM; modItemInfo.C_FREE_TERM2 = modelPlan.C_FREE_TERM2; modItemInfo.C_AREA = modelPlan.C_AREA; modItemInfo.C_PCLX = modelPlan.C_PCLX; modItemInfo.C_SFHL = modelPlan.C_SFHL; modItemInfo.D_HL_START_TIME = modelPlan.D_HL_START_TIME; modItemInfo.D_HL_END_TIME = modelPlan.D_HL_END_TIME; modItemInfo.C_SFHL_D = modelPlan.C_SFHL_D; modItemInfo.D_DHL_START_TIME = modelPlan.D_DHL_START_TIME; modItemInfo.D_DHL_END_TIME = modelPlan.D_DHL_END_TIME; modItemInfo.C_SFKP = modelPlan.C_SFKP; modItemInfo.D_KP_START_TIME = modelPlan.D_KP_START_TIME; modItemInfo.D_KP_END_TIME = modelPlan.D_KP_END_TIME; modItemInfo.C_SFXM = modelPlan.C_SFXM; modItemInfo.D_XM_START_TIME = modelPlan.D_XM_START_TIME; modItemInfo.D_XM_END_TIME = modelPlan.D_XM_END_TIME; modItemInfo.N_UPLOADSTATUS = modelPlan.N_UPLOADSTATUS; modItemInfo.C_MATRL_CODE_SLAB = modelPlan.C_MATRL_CODE_KP.Trim() == "" ? modelPlan.C_MATRL_CODE_SLAB : modelPlan.C_MATRL_CODE_KP; // modItemInfo.C_MATRL_NAME_SLAB = modelPlan.C_MATRL_CODE_KP.Trim() == "" ? modelPlan.C_MATRL_NAME_SLAB : modelPlan.C_MATRL_NAME_KP; // modItemInfo.C_SLAB_SIZE = modelPlan.C_MATRL_CODE_KP.Trim() == "" ? modelPlan.C_SLAB_SIZE : modelPlan.C_KP_SIZE; // modItemInfo.N_SLAB_LENGTH = modelPlan.C_MATRL_CODE_KP.Trim() == "" ? modelPlan.N_SLAB_LENGTH : modelPlan.N_KP_LENGTH; // modItemInfo.N_SLAB_PW = modelPlan.C_MATRL_CODE_KP.Trim() == "" ? modelPlan.N_SLAB_PW : modelPlan.N_KP_PW; // modItemInfo.D_CAN_ROLL_TIME = modelPlan.D_CAN_ROLL_TIME; modItemInfo.C_ROUTE = modelPlan.C_ROUTE; modItemInfo.N_DIAMETER = modelPlan.N_DIAMETER; modItemInfo.C_XM_YQ = modelPlan.C_XM_YQ; modItemInfo.N_JRL_WD = modelPlan.N_JRL_WD; modItemInfo.N_JRL_SJ = modelPlan.N_JRL_SJ; modItemInfo.C_STL_GRD_SLAB = modelPlan.C_STL_GRD_SLAB; modItemInfo.C_STD_CODE_SLAB = modelPlan.C_STD_CODE_SLAB; modItemInfo.C_REMARK = strRemark;//换产线原因 modItemInfo.C_REMARK1 = "0"; modItemInfo.C_REMARK2 = modelPlan.C_REMARK2; modItemInfo.C_REMARK3 = strHGG;//换规格原因 modItemInfo.C_REMARK4 = modelPlan.C_REMARK4; modItemInfo.C_REMARK5 = modelPlan.C_REMARK5; #endregion if (!dal.Add_Trans(modItemInfo)) { TransactionHelper.RollBack(); return("下发失败!"); } //modelPlan.D_P_START_TIME = dtStart; //modelPlan.D_P_END_TIME = dtEnd; if (!dalTrpPlanRoll.Update_Trans(modelPlan)) { TransactionHelper.RollBack(); return("下发失败!"); } } TransactionHelper.Commit(); return(result); } catch { TransactionHelper.RollBack(); return("下发失败!"); } }
/// <summary> /// 下发轧钢计划(单条) /// </summary> /// <param name="strPlanID">计划实例</param> /// <param name="i_Wgt">重量</param> /// <returns></returns> public string DownPlans(Mod_TRP_PLAN_ROLL_ITEM_INFO itemInfo) { try { string result = "1"; TransactionHelper.BeginTransaction(); Dal_TB_STA dalTbSta = new Dal_TB_STA(); DateTime dtStart; DateTime dtEnd; Mod_TB_STA modSta = dalTbSta.GetModel(itemInfo.C_STA_ID); Mod_TRP_PLAN_ROLL_ITEM modUp = dalTrpPlanRollItem.GetModel_Up(itemInfo.C_STA_ID); if (modUp == null) { if (string.IsNullOrEmpty(modUp.D_P_START_TIME.ToString())) { TransactionHelper.RollBack(); return("系统没有已排的计划,请设置计划初始开始时间!"); } else { dtStart = Convert.ToDateTime(modUp.D_P_START_TIME.ToString()); } } else { int hggTime = dalChangeTime.Get_Time2(itemInfo.C_STA_ID, modUp.C_SPEC, itemInfo.C_SPEC);//换规格时间 dtStart = Convert.ToDateTime(modUp.D_P_END_TIME).AddMinutes(hggTime); } double cn = Convert.ToDouble(itemInfo.N_ISSUE_WGT / Convert.ToDecimal(itemInfo.N_MACH_WGT.ToString())); dtEnd = dtStart.AddHours(cn);//结束时间 #region TRP_PLAN_ROLL_ITEM赋值 Mod_TRP_PLAN_ROLL_ITEM modItem = new Mod_TRP_PLAN_ROLL_ITEM(); modItem.C_ID = itemInfo.C_ID; modItem.C_PLAN_ROLL_ID = itemInfo.C_PLAN_ROLL_ID; //计划主表主键 modItem.N_STATUS = 1; //已下发 modItem.C_INITIALIZE_ITEM_ID = itemInfo.C_INITIALIZE_ITEM_ID; modItem.C_ORDER_NO = itemInfo.C_ORDER_NO; modItem.N_WGT = itemInfo.N_WGT;//下发量 modItem.C_MAT_CODE = itemInfo.C_MAT_CODE; modItem.C_MAT_NAME = itemInfo.C_MAT_NAME; modItem.C_TECH_PROT = itemInfo.C_TECH_PROT; modItem.C_SPEC = itemInfo.C_SPEC; modItem.C_STL_GRD = itemInfo.C_STL_GRD; modItem.C_STD_CODE = itemInfo.C_STD_CODE; modItem.N_USER_LEV = itemInfo.N_USER_LEV; modItem.N_STL_GRD_LEV = itemInfo.N_STL_GRD_LEV; modItem.N_ORDER_LEV = itemInfo.N_ORDER_LEV; modItem.C_QUALIRY_LEV = itemInfo.C_QUALIRY_LEV; modItem.D_NEED_DT = itemInfo.D_NEED_DT; modItem.D_DELIVERY_DT = itemInfo.D_DELIVERY_DT; modItem.D_DT = itemInfo.D_DT; modItem.C_LINE_DESC = modSta.C_STA_DESC; modItem.C_LINE_CODE = modSta.C_STA_CODE; modItem.D_P_START_TIME = dtStart; //计划开始时间 modItem.D_P_END_TIME = dtEnd; //计划结束时间 modItem.N_PROD_TIME = itemInfo.N_PROD_TIME; modItem.N_SORT = itemInfo.N_SORT; modItem.N_ROLL_PROD_WGT = itemInfo.N_ROLL_PROD_WGT;//下发量 modItem.C_ROLL_PROD_EMP_ID = itemInfo.C_ROLL_PROD_EMP_ID; modItem.C_STL_ROL_DT = itemInfo.C_STL_ROL_DT; modItem.N_PROD_WGT = itemInfo.N_PROD_WGT; modItem.N_WARE_WGT = itemInfo.N_WARE_WGT; modItem.N_WARE_OUT_WGT = itemInfo.N_WARE_OUT_WGT; modItem.N_FLAG = itemInfo.N_FLAG; modItem.N_ISSUE_WGT = itemInfo.N_ISSUE_WGT;//下发量 modItem.C_CUST_NO = itemInfo.C_CUST_NO; modItem.C_CUST_NAME = itemInfo.C_CUST_NAME; modItem.C_SALE_CHANNEL = itemInfo.C_SALE_CHANNEL; modItem.C_PACK = itemInfo.C_PACK; modItem.C_DESIGN_NO = itemInfo.C_DESIGN_NO; modItem.N_GROUP_WGT = itemInfo.N_GROUP_WGT; modItem.C_STA_ID = modSta.C_ID; modItem.D_START_TIME = itemInfo.D_START_TIME; modItem.D_END_TIME = itemInfo.D_END_TIME; modItem.C_EMP_ID = itemInfo.C_EMP_ID; modItem.D_MOD_DT = RV.UI.ServerTime.timeNow(); modItem.N_ROLL_WGT = itemInfo.N_ROLL_WGT; modItem.N_MACH_WGT = itemInfo.N_MACH_WGT; modItem.C_CAST_NO = itemInfo.C_CAST_NO; modItem.C_INITIALIZE_ID = itemInfo.C_INITIALIZE_ID; modItem.C_FREE_TERM = itemInfo.C_FREE_TERM; modItem.C_FREE_TERM2 = itemInfo.C_FREE_TERM2; modItem.C_AREA = itemInfo.C_AREA; modItem.C_PCLX = itemInfo.C_PCLX; modItem.C_SFHL = itemInfo.C_SFHL; modItem.D_HL_START_TIME = itemInfo.D_HL_START_TIME; modItem.D_HL_END_TIME = itemInfo.D_HL_END_TIME; modItem.C_SFHL_D = itemInfo.C_SFHL_D; modItem.D_DHL_START_TIME = itemInfo.D_DHL_START_TIME; modItem.D_DHL_END_TIME = itemInfo.D_DHL_END_TIME; modItem.C_SFKP = itemInfo.C_SFKP; modItem.D_KP_START_TIME = itemInfo.D_KP_START_TIME; modItem.D_KP_END_TIME = itemInfo.D_KP_END_TIME; modItem.C_SFXM = itemInfo.C_SFXM; modItem.D_XM_START_TIME = itemInfo.D_XM_START_TIME; modItem.D_XM_END_TIME = itemInfo.D_XM_END_TIME; modItem.N_UPLOADSTATUS = itemInfo.N_UPLOADSTATUS; modItem.C_MATRL_CODE_SLAB = itemInfo.C_MATRL_CODE_SLAB; modItem.C_MATRL_NAME_SLAB = itemInfo.C_MATRL_NAME_SLAB; modItem.C_SLAB_SIZE = itemInfo.C_SLAB_SIZE; modItem.N_SLAB_LENGTH = itemInfo.N_SLAB_LENGTH; modItem.N_SLAB_PW = itemInfo.N_SLAB_PW; modItem.D_CAN_ROLL_TIME = itemInfo.D_CAN_ROLL_TIME; modItem.C_ROUTE = itemInfo.C_ROUTE; modItem.N_DIAMETER = itemInfo.N_DIAMETER; modItem.C_XM_YQ = itemInfo.C_XM_YQ; modItem.N_JRL_WD = itemInfo.N_JRL_WD; modItem.N_JRL_SJ = itemInfo.N_JRL_SJ; modItem.C_STL_GRD_SLAB = itemInfo.C_STL_GRD_SLAB; modItem.C_STD_CODE_SLAB = itemInfo.C_STD_CODE_SLAB; modItem.C_REMARK = itemInfo.C_REMARK;//换产线原因 modItem.C_REMARK1 = itemInfo.C_REMARK1; modItem.C_REMARK2 = itemInfo.C_REMARK2; modItem.C_REMARK3 = itemInfo.C_REMARK3;//换规格原因 modItem.C_REMARK4 = itemInfo.C_REMARK4; modItem.C_REMARK5 = itemInfo.C_REMARK5; #endregion if (!dalTrpPlanRollItem.Add_Tran(modItem)) { TransactionHelper.RollBack(); return("下发失败!"); } itemInfo.N_STATUS = 2; if (!dal.Update(itemInfo)) { TransactionHelper.RollBack(); return("下发失败!"); } TransactionHelper.Commit(); return(result); } catch { TransactionHelper.RollBack(); return("下发失败!"); } }
/// <summary> /// 下发轧钢计划(合并) /// </summary> /// <param name="strPlanID">计划实例</param> /// <param name="i_Wgt">重量</param> /// <returns></returns> public string DownPlans(Mod_TRP_PLAN_ROLL_ITEM_INFO itemInfo, decimal i_Wgt, List <string> ids, string area) { try { string result = "1"; TransactionHelper.BeginTransaction(); Dal_TB_STA dalTbSta = new Dal_TB_STA(); DateTime dtStart; DateTime dtEnd; Mod_TB_STA modSta = dalTbSta.GetModel(itemInfo.C_STA_ID); Mod_TRP_PLAN_ROLL_ITEM modUp = dalTrpPlanRollItem.GetModel_Up(itemInfo.C_STA_ID); if (modUp == null) { if (string.IsNullOrEmpty(modUp.D_P_START_TIME.ToString())) { TransactionHelper.RollBack(); return("系统没有已排的计划,请设置计划初始开始时间!"); } else { dtStart = Convert.ToDateTime(modUp.D_P_START_TIME.ToString()); } } else { int hggTime = dalChangeTime.Get_Time2(itemInfo.C_STA_ID, modUp.C_SPEC, itemInfo.C_SPEC);//换规格时间 dtStart = Convert.ToDateTime(modUp.D_P_END_TIME).AddMinutes(hggTime); } double cn = Convert.ToDouble(i_Wgt / Convert.ToDecimal(itemInfo.N_MACH_WGT.ToString())); dtEnd = dtStart.AddHours(cn);//结束时间 #region TRP_PLAN_ROLL_ITEM赋值 Mod_TRP_PLAN_ROLL_ITEM modItem = new Mod_TRP_PLAN_ROLL_ITEM(); modItem.C_ID = DateTime.Now.ToString("yyyyMMddHHmmss") + new Random().Next(0, 1000); //modItem.C_PLAN_ROLL_ID = itemInfo.C_ID;//计划主表主键 modItem.N_STATUS = 1;//已下发 modItem.C_INITIALIZE_ITEM_ID = itemInfo.C_INITIALIZE_ITEM_ID; modItem.C_ORDER_NO = modItem.C_ID; modItem.N_WGT = i_Wgt;//下发量 modItem.C_MAT_CODE = itemInfo.C_MAT_CODE; modItem.C_MAT_NAME = itemInfo.C_MAT_NAME; modItem.C_TECH_PROT = itemInfo.C_TECH_PROT; modItem.C_SPEC = itemInfo.C_SPEC; modItem.C_STL_GRD = itemInfo.C_STL_GRD; modItem.C_STD_CODE = itemInfo.C_STD_CODE; modItem.N_USER_LEV = itemInfo.N_USER_LEV; modItem.N_STL_GRD_LEV = itemInfo.N_STL_GRD_LEV; modItem.N_ORDER_LEV = itemInfo.N_ORDER_LEV; modItem.C_QUALIRY_LEV = itemInfo.C_QUALIRY_LEV; modItem.D_NEED_DT = itemInfo.D_NEED_DT; modItem.D_DELIVERY_DT = itemInfo.D_DELIVERY_DT; modItem.D_DT = itemInfo.D_DT; modItem.C_LINE_DESC = modSta.C_STA_DESC; modItem.C_LINE_CODE = modSta.C_STA_CODE; modItem.D_P_START_TIME = dtStart; //计划开始时间 modItem.D_P_END_TIME = dtEnd; //计划结束时间 modItem.N_PROD_TIME = itemInfo.N_PROD_TIME; modItem.N_SORT = itemInfo.N_SORT; modItem.N_ROLL_PROD_WGT = i_Wgt;//下发量 modItem.C_ROLL_PROD_EMP_ID = itemInfo.C_ROLL_PROD_EMP_ID; modItem.C_STL_ROL_DT = itemInfo.C_STL_ROL_DT; modItem.N_PROD_WGT = itemInfo.N_PROD_WGT; modItem.N_WARE_WGT = itemInfo.N_WARE_WGT; modItem.N_WARE_OUT_WGT = itemInfo.N_WARE_OUT_WGT; modItem.N_FLAG = itemInfo.N_FLAG; modItem.N_ISSUE_WGT = i_Wgt;//下发量 //modItem.C_CUST_NO = itemInfo.C_CUST_NO; //modItem.C_CUST_NAME = itemInfo.C_CUST_NAME; modItem.C_SALE_CHANNEL = itemInfo.C_SALE_CHANNEL; modItem.C_PACK = itemInfo.C_PACK; modItem.C_DESIGN_NO = itemInfo.C_DESIGN_NO; modItem.N_GROUP_WGT = itemInfo.N_GROUP_WGT; modItem.C_STA_ID = modSta.C_ID; modItem.D_START_TIME = itemInfo.D_START_TIME; modItem.D_END_TIME = itemInfo.D_END_TIME; modItem.C_EMP_ID = itemInfo.C_EMP_ID; modItem.D_MOD_DT = RV.UI.ServerTime.timeNow(); modItem.N_ROLL_WGT = itemInfo.N_ROLL_WGT; modItem.N_MACH_WGT = itemInfo.N_MACH_WGT; modItem.C_CAST_NO = itemInfo.C_CAST_NO; modItem.C_INITIALIZE_ID = itemInfo.C_INITIALIZE_ID; modItem.C_FREE_TERM = itemInfo.C_FREE_TERM; modItem.C_FREE_TERM2 = itemInfo.C_FREE_TERM2; if (!string.IsNullOrWhiteSpace(area)) { modItem.C_AREA = area; } modItem.C_PCLX = itemInfo.C_PCLX; modItem.C_SFHL = itemInfo.C_SFHL; modItem.D_HL_START_TIME = itemInfo.D_HL_START_TIME; modItem.D_HL_END_TIME = itemInfo.D_HL_END_TIME; modItem.C_SFHL_D = itemInfo.C_SFHL_D; modItem.D_DHL_START_TIME = itemInfo.D_DHL_START_TIME; modItem.D_DHL_END_TIME = itemInfo.D_DHL_END_TIME; modItem.C_SFKP = itemInfo.C_SFKP; modItem.D_KP_START_TIME = itemInfo.D_KP_START_TIME; modItem.D_KP_END_TIME = itemInfo.D_KP_END_TIME; modItem.C_SFXM = itemInfo.C_SFXM; modItem.D_XM_START_TIME = itemInfo.D_XM_START_TIME; modItem.D_XM_END_TIME = itemInfo.D_XM_END_TIME; modItem.N_UPLOADSTATUS = itemInfo.N_UPLOADSTATUS; modItem.C_MATRL_CODE_SLAB = itemInfo.C_MATRL_CODE_SLAB; modItem.C_MATRL_NAME_SLAB = itemInfo.C_MATRL_NAME_SLAB; modItem.C_SLAB_SIZE = itemInfo.C_SLAB_SIZE; modItem.N_SLAB_LENGTH = itemInfo.N_SLAB_LENGTH; modItem.N_SLAB_PW = itemInfo.N_SLAB_PW; modItem.D_CAN_ROLL_TIME = itemInfo.D_CAN_ROLL_TIME; modItem.C_ROUTE = itemInfo.C_ROUTE; modItem.N_DIAMETER = itemInfo.N_DIAMETER; modItem.C_XM_YQ = itemInfo.C_XM_YQ; modItem.N_JRL_WD = itemInfo.N_JRL_WD; modItem.N_JRL_SJ = itemInfo.N_JRL_SJ; modItem.C_STL_GRD_SLAB = itemInfo.C_STL_GRD_SLAB; modItem.C_STD_CODE_SLAB = itemInfo.C_STD_CODE_SLAB; modItem.C_REMARK = itemInfo.C_REMARK;//换产线原因 //modItem.C_REMARK1 = itemInfo.C_REMARK1; modItem.C_REMARK2 = itemInfo.C_REMARK2; modItem.C_REMARK3 = itemInfo.C_REMARK3;//换规格原因 modItem.C_REMARK4 = itemInfo.C_REMARK4; modItem.C_REMARK5 = itemInfo.C_REMARK5; modItem.N_IS_MERGE = 1; #endregion if (!dalTrpPlanRollItem.Add_Tran(modItem)) { TransactionHelper.RollBack(); return("下发失败!"); } if (ids.Count > 1) { foreach (var id in ids) { var m = dal.GetModel(id); m.C_ITEM_ID = modItem.C_ID; m.N_STATUS = 3; dal.Update(m); } } //if (!dalTrpPlanRoll.Update_Trans(modelPlan)) //{ // TransactionHelper.RollBack(); // return "下发失败!"; //} TransactionHelper.Commit(); if (ids.Count > 1) { Dal_TRP_PLAN_ROLL_ITEM_INFO_LOG dalLog = new Dal_TRP_PLAN_ROLL_ITEM_INFO_LOG(); foreach (var id in ids) { { var m = dal.GetModel(id); Mod_TRP_PLAN_ROLL_ITEM_INFO_LOG log = new Mod_TRP_PLAN_ROLL_ITEM_INFO_LOG(); log.C_ID = m.C_ID; log.C_PLAN_ROLL_ID = m.C_PLAN_ROLL_ID; log.C_MAT_CODE = m.C_MAT_CODE; log.C_MAT_NAME = m.C_MAT_NAME; log.C_SPEC = m.C_SPEC; log.C_STL_GRD = m.C_STL_GRD; log.C_STD_CODE = m.C_STD_CODE; log.C_MAT_NAME = m.C_MATRL_CODE_SLAB; log.C_MATRL_NAME_SLAB = m.C_MATRL_NAME_SLAB; log.C_SLAB_SIZE = m.C_SLAB_SIZE; log.N_SLAB_LENGTH = m.N_SLAB_LENGTH; log.N_SLAB_PW = m.N_SLAB_PW; log.C_LINE_DESC = m.C_LINE_DESC; log.C_LINE_CODE = m.C_LINE_CODE; log.N_ISSUE_WGT = m.N_ISSUE_WGT; log.C_ITEM_ID = m.C_ITEM_ID; dalLog.Add(log); } } } return(result); } catch { TransactionHelper.RollBack(); return("下发失败!"); } }
private NcRollA2 GetA2(Mod_TMO_ORDER order, Mod_TB_MATRL_MAIN matrl, Mod_TRC_ROLL_WW_MAIN item, Mod_TB_STA tBSta, Mod_TS_USER user) { var ncRollA2 = new NcRollA2 { bcid = item.C_SHIFT, // 班次ID bzid = item.C_GROUP, // 班组ID fjhsl = (item.N_QUA_REMOVE ?? 0).ToString(), // 辅计量数量 fjlid = matrl.C_FJLDW, // 辅计量ID freeitemvalue1 = order.C_FREE1, // 自由项1 freeitemvalue2 = order.C_FREE2, //自由项2 freeitemvalue3 = order.C_PACK, // 包装要求, freeitemvalue5 = item.C_ID, //PCI计划主键 gzzxid = tBSta.C_ERP_PK, //工作中心ID invcode = matrl.C_ID, //物料编码 jhjssj = item.D_PRODUCE_DATE_E ?? DateTime.Now, // 计划完工时间 jhkgrq = item.D_PRODUCE_DATE_B ?? DateTime.Now, //计划开工日期 jhkssj = item.D_PRODUCE_DATE_B ?? DateTime.Now, //计划开始时间 jhwgrq = item.D_PRODUCE_DATE_E ?? DateTime.Now, //计划完工日期 jhwgsl = (item.N_WGT_TOTAL ?? 0).ToString(), //计划完工数量 jldwid = matrl.C_PK_MEASDOC, //计量单位ID pch = item.C_BATCH_NO, //批次号 pk_produce = matrl.C_PK_PRODUCE, //物料PK scbmid = tBSta.C_SSBMID, //生产部门ID sjjssj = item.D_PRODUCE_DATE_E ?? DateTime.Now, //实际结束时间 sjkgrq = item.D_PRODUCE_DATE_E ?? DateTime.Now, //完工单日期 sjkssj = item.D_PRODUCE_DATE_B ?? DateTime.Now, //实际开始日期 sjwgrq = item.D_PRODUCE_DATE_E ?? DateTime.Now, //实际完工日期 sjwgsl = (item.N_WGT_REMOVE ?? 0).ToString(), //实际完工数量 wlbmid = matrl.C_PK_INVBASDOC, //存货档案主键 zdrid = user.C_ACCOUNT // "17384",//item.C_PRODUCE_EMP_ID,//操作人,用户编码工号 }; return(ncRollA2); }
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()); } }