using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; using CoreFS.CA06; using Core.Mes.Client.Comm.Server; using System.Diagnostics; using Core.Mes.Client.Comm.Tool; using Infragistics.Win.UltraWinGrid; using System.Collections; namespace Core.StlMes.Client.SaleOrder { public partial class ctrlOrderLine : UserControl { public delegate void HUpdateOrderDeliveryDesc(DataSet orderLine); public event HUpdateOrderDeliveryDesc UpdateOrderDeliveryDesc; /// /// 合同行三个附加要求 /// /// true,false,Clear public delegate void SetOrderLineYesNo(string type); public event SetOrderLineYesNo SetOrderLineYesNoType; public delegate bool HCommitOrderLineRow(DataSet orderLine, string CommandType); public event HCommitOrderLineRow CommitOrderLineRow; OpeBase ob = new OpeBase(); DataSet orderDerlivery = new DataSet(); DataRow orderHead = null; DataTable orderline = new DataTable("SLM_ORDER_LINE"); DataSet ctrlLineValue = new DataSet(); DataRow pscSelectRow = null;//订货产品 private string dlyTime = ""; public string DlyTime { get { return dlyTime; } set { dlyTime = value; } } private string dlyAddress = ""; public string DlyAddress { get { return dlyAddress; } set { dlyAddress = value; } } /// /// 产品规范 /// public DataRow PscSelectRow { get { return pscSelectRow; } set { pscSelectRow = value; } } DataRow lenOrderRow = null;//长度产品 DataTable technologyRow = new DataTable("SLM_TECHOLG_LINE");//技术特殊标准 DataTable technologyRowAsk = new DataTable("SLM_TECHOLG_LINE_ASK");//附加要求项 string saveUpdateVal = "";//保存是否修改信息 string yesNotype = "";//合同行YesNo UltraGridRow reRow = null; /// /// 最终用户 /// public UltraGridRow ReRow { get { return reRow; } set { reRow = value; } } public ctrlOrderLine() { InitializeComponent(); } /// /// 清空交货发运要求、技术特殊要求、附加要求描述。 /// public void setDelVry() { ultraTextGetDelVry.Text = ""; ultraTextEdiAsk.Text = ""; labDly.Text = ""; } public void editLabDly() { labDly.ReadOnly = false; } public void updateDlyAddVisible(bool b) { ultraTextGetDelVry.ButtonsLeft["UpdateDlyAdd"].Visible = b; } private string labDlyTxt = ""; public string LabDlyTxt { get { return labDly.Text; } set { labDly.Text = value; } } string customerno = ""; //销售组织 string saleorg = "100204"; //用途类型 string managno = ""; //管理卡号 string order = ""; //合同号 string orderSeq = ""; //合同行号 string psc = ""; string pesc_code = ""; private int iTrueFlases = 0; private int iTrueFlase = 0; private string shRow = ""; public string ShRow { get { return shRow; } set { shRow = value; } } double weight = 0; double jg_weight = 0; public DataSet CtrlLineValue { get { try { if (!IsDesignMode()) { if (pscSelectRow == null) { if (string.IsNullOrEmpty(orderHead["PSC"].ToString())) { MessageUtil.ShowTips("请选择一条订货产品信息!"); return null; } } if (ultraComboSpec.SelectedItem == null) { MessageUtil.ShowTips("请选择产品规格!"); return null; } //规格 if (comboSpecOrderIght.Value == null) { MessageUtil.ShowTips("请选择订货规格!"); return null; } if (string.IsNullOrEmpty(comBoModel.Text)) { MessageUtil.ShowTips("扣型不允许为空,请维护:" + comBoModel.Text + "。"); return null; } if (lenOrderRow == null) { //if (string.IsNullOrEmpty(orderHead["LEN_NO"].ToString())) //{ // MessageUtil.ShowTips("请选择一条长度信息!"); // return null; //} //这里为了导入的合同在界面不报错才注释掉 进而采用下面不是100%严谨的方法判断长度是否维护 } if (ultraTextEditorLen.Text.Trim() == "") { MessageUtil.ShowWarning("请选择一条长度信息!"); return null; } if (comboUNIT.Text.Trim() == "") { MessageUtil.ShowWarning("请选择订货计量单位!"); return null; } if (cmbOutPutStd.SelectedItem == null) { MessageUtil.ShowTips("请选择输出标准号!"); return null; } //新增保总长逻辑 //if (comboUNIT.Text.Trim() == "米" || comboUNIT.Text.Trim() == "英尺"||comboUNIT.Text.Trim()=="支") //{ // if (numTag.Text.Trim() == "" || Convert.ToDouble(numTag.Text.Trim() == "" ? "0" : numTag.Text.Trim()) <= 0) // { // MessageUtil.ShowWarning("请输入保总长!"); // return null; // } //} if (pscSelectRow != null && pscSelectRow.Table.Rows.Count > 0) { //判断SLM_ORDER_LINE表是否有记录,没有新增/有修改 orderHead["PSC"] = pscSelectRow["PSC"]; orderHead["PSC_DESC"] = pscSelectRow["PSC_DESC"]; orderHead["PRD_CLS"] = pscSelectRow["PRODUC_STYLE"]; orderHead["PRODUCCODE"] = pscSelectRow["PRODUCCODE"]; orderHead["PRODUCNAME"] = pscSelectRow["PRODUCNAME"]; orderHead["STD_CODE"] = pscSelectRow["STD_CODE"]; orderHead["STD_NAME"] = pscSelectRow["STD_NAME"]; orderHead["STEELCODE"] = pscSelectRow["STEELCODE"]; orderHead["STEELNAME"] = pscSelectRow["STEELNAME"]; orderHead["MSC"] = pscSelectRow["MSC"]; orderHead["MSC_DESC"] = pscSelectRow["MSC_DESC"]; orderHead["MSC_STYLE"] = pscSelectRow["MSC_STYLE"]; orderHead["USE_CODE"] = pscSelectRow["USE_CODE"]; orderHead["USE_DESC"] = pscSelectRow["USE_DESC"]; orderHead["STD_STYLE"] = pscSelectRow["STD_STYLE"]; orderHead["STD_STYLE_DESC"] = pscSelectRow["STD_STYLE_DESC"]; } if (lenOrderRow != null && lenOrderRow.Table.Rows.Count > 0) { orderHead["LEN_NO"] = lenOrderRow["LEN_NO"].ToString(); orderHead["LEN_DESC"] = lenOrderRow["LEN_DESC"].ToString(); orderHead["LEN_UNIT"] = lenOrderRow["LEN_UNIT"].ToString(); orderHead["LEN_MIN"] = lenOrderRow["LEN_MIN"].ToString(); orderHead["LEN_MAX"] = lenOrderRow["LEN_MAX"].ToString(); orderHead["SHRT_LEN_RATO"] = lenOrderRow["SHRT_LEN_RATO"].ToString(); orderHead["SHORTEST"] = lenOrderRow["SHORTEST"].ToString(); orderHead["LONG_LEN_RATO"] = lenOrderRow["LONG_LEN_RATO"].ToString(); orderHead["LONGEST"] = lenOrderRow["LONGEST"].ToString(); orderHead["SHRT_STOVE"] = lenOrderRow["SHRT_STOVE"].ToString(); orderHead["AVG_LEN_MIN"] = lenOrderRow["AVG_LEN_MIN"].ToString(); orderHead["AVG_LEN_MAX"] = lenOrderRow["AVG_LEN_MAX"].ToString(); orderHead["DIFRNC_LEN_MAX"] = lenOrderRow["DIFRNC_LEN_MAX"].ToString(); orderHead["SIGL_LEN"] = lenOrderRow["SIGL_LEN"].ToString(); orderHead["ENDLEN_SPECSTD"] = lenOrderRow["ENDLEN_SPECSTD"].ToString(); } if (reRow != null) { orderHead["FINAL_USER"] = reRow.Cells["CUSTOMER_NO"].Value.ToString(); orderHead["FINAL_USER_DESC"] = reRow.Cells["CUSTOMER_NM"].Value.ToString(); orderHead["CUSTOMER_NO"] = reRow.Cells["CUSTOMER_NO"].Value.ToString(); } else { if (textFinalUser.Text.Trim() == "N/A" || textFinalUser.Text.Trim() == "" || textFinalUser.Text.Trim() == "/") { orderHead["FINAL_USER"] = "/"; orderHead["FINAL_USER_DESC"] = "/"; orderHead["CUSTOMER_NO"] = "/"; } else { orderHead["FINAL_USER"] = textFinalUser.Tag.ToString2(); orderHead["FINAL_USER_DESC"] = textFinalUser.Text.Trim(); orderHead["CUSTOMER_NO"] = textFinalUser.Tag.ToString2(); } } string code = ultraComboSpec.Value.ToString(); DataTable db = (DataTable)ultraComboSpec.DataSource; DataRow[] dr = db.Select("SPEC_CODE = '" + code + "'", ""); if (dr.Length > 0) { orderHead["ORDER_SPEC_CODE"] = comboSpecOrderIght.Value.ToString(); orderHead["ORDER_SPEC_DESC"] = comboSpecOrderIght.Text.Trim(); orderHead["SPEC_CODE"] = dr[0]["SPEC_CODE"].ToString(); orderHead["SPEC_NAME"] = dr[0]["SPEC_NAME"].ToString(); orderHead["DIMATER"] = dr[0]["DIMATER"].ToString() == "" ? "0" : dr[0]["DIMATER"].ToString(); orderHead["HEIGHT"] = dr[0]["HEIGHT"].ToString() == "" ? "0" : dr[0]["HEIGHT"].ToString(); pesc_code = dr[0]["SPEC_CODE"].ToString(); code = "Yes"; } if (!code.Equals("Yes")) { MessageUtil.ShowTips("订货规格不存在,请维护:" + comboSpecOrderIght.Value.ToString() + "。"); return null; } //发货交运要求 orderHead["DELVRY_DESC"] = ultraTextGetDelVry.Text; if (ctrlLineValue.Tables["Main"] != null) { for (int i = 0; i < ctrlLineValue.Tables["Main"].Rows.Count; i++) { orderHead["DELVRY_EDATE"] = ctrlLineValue.Tables["Main"].Rows[i]["DELVRY_EDATE"].ToString(); orderHead["TRANS_DESC"] = ctrlLineValue.Tables["Main"].Rows[i]["TRANSIT_PLAN"].ToString(); } } if (ctrlLineValue.Tables["Test"] != null) { for (int i = 0; i < ctrlLineValue.Tables["Test"].Rows.Count; i++) { orderHead["TRANS_PRICE"] = ctrlLineValue.Tables["Test"].Rows[i]["TRANSIT_LN_MNY"].ToString(); } } //技术要求 if (technologyRow.Rows.Count > 0) { if (labDly.Tag != null) { string[] arr = (string[])labDly.Tag; string alphaNo = arr[0]; string msc = arr[1]; DataTable mscDt = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderLine.getMscInfo", new object[] { msc }, this.ob); if (mscDt != null && mscDt.Rows.Count > 0) { orderHead["MSC"] = msc; orderHead["MSC_DESC"] = mscDt.Rows[0]["MSC_DESC"].ToString(); orderHead["USE_CODE"] = mscDt.Rows[0]["USE_CODE"].ToString(); orderHead["USE_DESC"] = mscDt.Rows[0]["USE_DESC"].ToString(); orderHead["MSC_STYLE"] = mscDt.Rows[0]["MSC_STYLE"].ToString(); } orderHead["CUST_ALPHA_NO"] = alphaNo; orderHead["ORDER_SPECIAL_DESC"] = technologyRow.Rows[0]["ORDER_SPECIAL_DESC"]; } } //附加要求 if (technologyRowAsk.Rows.Count > 0) { orderHead["ADD_ASK_NO"] = ultraTextEdiAsk.Tag == null ? "" : ultraTextEdiAsk.Tag.ToString(); orderHead["ORDER_ADD_DESC"] = ultraTextEdiAsk.Text; } //扣型 /*DataTable comBoMd = (DataTable)comBoModel.DataSource; bool combool = false; for (int i = 0; i < comBoMd.Rows.Count; i++) { if (comBoMd.Rows[i]["MODEL_DESC"].Equals(comBoModel.Text)) { combool = true; } }*/ if (comBoModel.SelectedItem == null) { MessageUtil.ShowTips("扣型不存在,请维护:" + comBoModel.Text + "。"); return null; } if (comBoModel.Text.Equals("/")) { orderHead["MODEL_CODE"] = "C001"; orderHead["MODEL_DESC"] = comBoModel.Text; comBoModel.Value = "C001"; } else { orderHead["MODEL_CODE"] = comBoModel.Value.ToString(); orderHead["MODEL_DESC"] = comBoModel.Text; } //交货量差 orderHead["DELVRY_RANGE_TPE"] = comboPercentage.Text.ToString(); orderHead["DELVRY_RANGE_MIN"] = Convert.ToDecimal(numericWTMax.Value == System.DBNull.Value ? "0" : numericWTMax.Value).ToString(); orderHead["DELVRY_RANGE_MAX"] = Convert.ToDecimal(numericWTMin.Value == System.DBNull.Value ? "0" : numericWTMin.Value).ToString(); //订货量 orderHead["ORDER_QTY"] = Convert.ToDecimal(NumWt.Value == System.DBNull.Value ? "0" : NumWt.Value).ToString(); //保总长 orderHead["ORD_ENSU_TOTL_LEN"] = Convert.ToDecimal(numTag.Value.ToString() == "" ? 0 : numTag.Value).ToString(); //生产吨数(根据估算重量计算) OrderFunction.GetPrdctWgt(ref weight, Convert.ToDouble(Convert.ToDecimal(NumWt.Value == System.DBNull.Value ? "0" : NumWt.Value).ToString()), comboUNIT.Text.Trim(), pesc_code, this.ob); if (orderHead["PRODUCCODE"].Equals("S000012")) { OrderFunction.GetWgt_JG(ref jg_weight, "S000012", orderHead["STD_CODE"].ToString(), orderHead["STD_STYLE"].ToString(), orderHead["STEELCODE"].ToString(), pesc_code, comBoModel.Value.ToString(), this.ob); orderHead["PRDCT_WGT"] = jg_weight * Convert.ToDouble(Convert.ToDecimal(NumWt.Value == System.DBNull.Value ? "0" : NumWt.Value).ToString()); } else { orderHead["PRDCT_WGT"] = weight; } orderHead["ORDER_UNIT"] = comboUNIT.Text; //订货单价 orderHead["ORDER_PRICE"] = textPrice.Text; //外购坯(1:允许;0:不允许) orderHead["OUTS_BILLET_FL"] = ultraCheckWGP.Value == null ? " " : ultraCheckWGP.Value.ToString(); orderHead["OUTS_BILLET_DESC"] = ultraCheckWGP.Text == null ? " " : ultraCheckWGP.Text; //外购管(1:允许;0:不允许) orderHead["OUTS_STL_PIPE_FL"] = ultraCheckWGG.Value == null ? " " : ultraCheckWGG.Value.ToString(); orderHead["OUTS_STL_PIPE_DESC"] = ultraCheckWGG.Text == null ? " " : ultraCheckWGG.Text; //ASSEL(1:允许;0:不允许) orderHead["ASSEL_FL"] = ultraCheckASL.Checked == true ? "1" : "0"; //监制要求(1:允许;0:不允许) orderHead["PRODUCER_FL"] = ultraCheckProducer.Checked == true ? "1" : "0"; //MPS_FL(1:允许;0:不允许) orderHead["MPS_FL"] = ultraCheckMps_Fl.Checked == true ? "1" : "0"; string aw = ""; if (ultraCheckASL.Checked) aw = "A"; if (ultraCheckWGP.SelectedItem != null && ultraCheckWGP.Value.ToString() == "121801") aw = "OW"; if (ultraCheckASL.Checked) { if (ultraCheckWGP.SelectedItem != null && ultraCheckWGP.Value.ToString() == "121801") aw = "AW"; } if (ultraCheckWGG.SelectedItem != null && ultraCheckWGG.Value.ToString2() == "121902") { aw = "CW"; } if (ultraCheckWGG.SelectedItem != null && ultraCheckWGG.Value.ToString2() == "121903") { aw = "BW"; } orderHead["AW"] = aw; orderHead["QUALITY_USER"] = cmbQualityUser.Value.ToString2(); orderHead["QUALITY_USER_DESC"] = cmbQualityUser.Text.Trim(); orderHead["MAN_INSPECTION"] = cmbInspection.SelectedItem == null ? "1" : cmbInspection.Value.ToString(); orderHead["OUTPUT_STD_NO"] = cmbOutPutStd.SelectedItem == null ? "" : cmbOutPutStd.Value.ToString(); orderHead["PROJECT_NO"] = txtProjectNo.Text.Trim(); orderHead["OUTBOUND_CALCULATE"] = cmbOutboundCalculate.SelectedItem == null ? "0" : cmbOutboundCalculate.Value.ToString2(); orderHead["ORDER_TEAM"] = cmborderteam.SelectedItem == null ? "0" : cmborderteam.Value.ToString2(); orderHead["MODE_OF_TRANSPORT"] = cmbmodeoftransport.Value.ToString2(); for (int i = 0; i < ctrlLineValue.Tables.Count; i++) { if (ctrlLineValue.Tables[i].TableName.Equals(orderline.TableName)) { ctrlLineValue.Tables.Remove(orderline.TableName); } } orderline.Rows.Clear(); orderline.Rows.Add(orderHead.ItemArray); if (ctrlLineValue.Tables["SLM_ORDER_LINE"] != null) { ctrlLineValue.Tables.Remove(orderline.TableName); } ctrlLineValue.Tables.Add(orderline.Copy()); } return ctrlLineValue; } catch { throw; } } set { if (!IsDesignMode()) { //orderDerlivery 发运要求的集合。 orderDerlivery.Tables.Clear(); lenOrderRow = null; ctrlLineValue = value; //赋值交货信息和交货运输方式表 orderDerlivery.Tables.Add(ctrlLineValue.Tables["SLM_ORDER_LINE_DELIVERY"].Copy()); orderDerlivery.Tables.Add(ctrlLineValue.Tables["SLM_ORDER_DELIVERY_TRANSIT"].Copy()); //合同行 DataTable slmorderline = new DataTable(); slmorderline = ctrlLineValue.Tables["orderLineDt"]; //订货产品 ultraTextPSCSelect.Text = slmorderline.Rows[0]["PSC_DESC"].ToString(); orderHead["PSC"] = slmorderline.Rows[0]["PSC"]; psc = slmorderline.Rows[0]["PSC"].ToString(); orderHead["PSC_DESC"] = slmorderline.Rows[0]["PSC_DESC"]; orderHead["PRD_CLS"] = slmorderline.Rows[0]["PRD_CLS"]; orderHead["PRODUCCODE"] = slmorderline.Rows[0]["PRODUCCODE"]; orderHead["PRODUCNAME"] = slmorderline.Rows[0]["PRODUCNAME"]; orderHead["STD_CODE"] = slmorderline.Rows[0]["STD_CODE"]; orderHead["STD_NAME"] = slmorderline.Rows[0]["STD_NAME"]; orderHead["STEELCODE"] = slmorderline.Rows[0]["STEELCODE"]; orderHead["STEELNAME"] = slmorderline.Rows[0]["STEELNAME"]; orderHead["MSC"] = slmorderline.Rows[0]["MSC"]; orderHead["MSC_DESC"] = slmorderline.Rows[0]["MSC_DESC"]; orderHead["MSC_STYLE"] = slmorderline.Rows[0]["MSC_STYLE"]; orderHead["USE_CODE"] = slmorderline.Rows[0]["USE_CODE"]; orderHead["USE_DESC"] = slmorderline.Rows[0]["USE_DESC"]; orderHead["PRDCT_WGT"] = slmorderline.Rows[0]["PRDCT_WGT"]; orderHead["STD_STYLE"] = slmorderline.Rows[0]["STD_STYLE"]; orderHead["STD_STYLE_DESC"] = slmorderline.Rows[0]["STD_STYLE_DESC"]; pesc_code = slmorderline.Rows[0]["SPEC_CODE"].ToString(); //规格 ultraComboSpec.Value = slmorderline.Rows[0]["SPEC_CODE"]; ultraComboSpec.Text = slmorderline.Rows[0]["SPEC_NAME"].ToString(); comboSpecOrderIght.Text = slmorderline.Rows[0]["ORDER_SPEC_DESC"].ToString(); comboSpecOrderIght.Value = slmorderline.Rows[0]["ORDER_SPEC_CODE"]; orderHead["ORDER_SPEC_CODE"] = slmorderline.Rows[0]["ORDER_SPEC_CODE"]; orderHead["ORDER_SPEC_DESC"] = slmorderline.Rows[0]["ORDER_SPEC_DESC"]; orderHead["SPEC_CODE"] = slmorderline.Rows[0]["SPEC_CODE"]; orderHead["SPEC_NAME"] = slmorderline.Rows[0]["SPEC_NAME"]; orderHead["DIMATER"] = slmorderline.Rows[0]["DIMATER"]; orderHead["HEIGHT"] = slmorderline.Rows[0]["HEIGHT"]; //扣型 comBoModel.Text = slmorderline.Rows[0]["MODEL_DESC"].ToString(); comBoModel.Value = slmorderline.Rows[0]["MODEL_CODE"].ToString(); //长度 ultraTextEditorLen.Text = slmorderline.Rows[0]["LEN_DESC"].ToString(); orderHead["LEN_NO"] = slmorderline.Rows[0]["LEN_NO"]; orderHead["LEN_DESC"] = slmorderline.Rows[0]["LEN_DESC"]; orderHead["LEN_UNIT"] = slmorderline.Rows[0]["LEN_UNIT"]; ultraLabel18.Text = slmorderline.Rows[0]["LEN_UNIT"].ToString(); orderHead["LEN_MIN"] = slmorderline.Rows[0]["LEN_MIN"]; orderHead["LEN_MAX"] = slmorderline.Rows[0]["LEN_MAX"]; orderHead["SHRT_LEN_RATO"] = slmorderline.Rows[0]["SHRT_LEN_RATO"]; orderHead["SHORTEST"] = slmorderline.Rows[0]["SHORTEST"]; orderHead["LONG_LEN_RATO"] = slmorderline.Rows[0]["LONG_LEN_RATO"]; orderHead["LONGEST"] = slmorderline.Rows[0]["LONGEST"]; orderHead["SHRT_STOVE"] = slmorderline.Rows[0]["SHRT_STOVE"]; orderHead["AVG_LEN_MIN"] = slmorderline.Rows[0]["AVG_LEN_MIN"]; orderHead["AVG_LEN_MAX"] = slmorderline.Rows[0]["AVG_LEN_MAX"]; orderHead["DIFRNC_LEN_MAX"] = slmorderline.Rows[0]["DIFRNC_LEN_MAX"]; orderHead["SIGL_LEN"] = slmorderline.Rows[0]["SIGL_LEN"]; orderHead["ENDLEN_SPECSTD"] = slmorderline.Rows[0]["ENDLEN_SPECSTD"];//19-10-11 修改成品率消失问题 //订货量 NumWt.Value = slmorderline.Rows[0]["ORDER_QTY"].ToString(); numTag.Value = slmorderline.Rows[0]["ORD_ENSU_TOTL_LEN"].ToString() == "" ? "0" : slmorderline.Rows[0]["ORD_ENSU_TOTL_LEN"].ToString(); comboUNIT.Text = slmorderline.Rows[0]["ORDER_UNIT"].ToString(); orderHead["ORDER_QTY"] = slmorderline.Rows[0]["ORDER_QTY"]; orderHead["ORDER_UNIT"] = slmorderline.Rows[0]["ORDER_UNIT"]; //交货量差 comboPercentage.Text = slmorderline.Rows[0]["DELVRY_RANGE_TPE"].ToString(); numericWTMin.Text = slmorderline.Rows[0]["DELVRY_RANGE_MAX"].ToString(); numericWTMax.Text = slmorderline.Rows[0]["DELVRY_RANGE_MIN"].ToString(); orderHead["DELVRY_RANGE_TPE"] = slmorderline.Rows[0]["DELVRY_RANGE_TPE"]; orderHead["DELVRY_RANGE_MIN"] = slmorderline.Rows[0]["DELVRY_RANGE_MIN"]; orderHead["DELVRY_RANGE_MAX"] = slmorderline.Rows[0]["DELVRY_RANGE_MAX"]; //订货单价 textPrice.Text = slmorderline.Rows[0]["ORDER_PRICE"].ToString(); orderHead["ORDER_PRICE"] = slmorderline.Rows[0]["ORDER_PRICE"]; //外购坯(1:允许;0:不允许) orderHead["OUTS_BILLET_FL"] = slmorderline.Rows[0]["OUTS_BILLET_FL"]; ultraCheckWGP.Text = slmorderline.Rows[0]["OUTS_BILLET_FL"].ToString(); //外购管(1:允许;0:不允许) orderHead["OUTS_STL_PIPE_FL"] = slmorderline.Rows[0]["OUTS_STL_PIPE_FL"]; ultraCheckWGG.Text = slmorderline.Rows[0]["OUTS_STL_PIPE_FL"].ToString(); //ASSEL(1:允许;0:不允许) orderHead["ASSEL_FL"] = slmorderline.Rows[0]["ASSEL_FL"]; orderHead["PRODUCER_FL"] = slmorderline.Rows[0]["PRODUCER_FL"]; orderHead["OUTBOUND_CALCULATE"] = slmorderline.Rows[0]["OUTBOUND_CALCULATE"]; orderHead["ORDER_TEAM"] = slmorderline.Rows[0]["ORDER_TEAM"]; orderHead["MODE_OF_TRANSPORT"] = slmorderline.Rows[0]["MODE_OF_TRANSPORT"]; ultraCheckASL.Checked = Convert.ToBoolean(slmorderline.Rows[0]["ASSEL_FL"]); ultraCheckProducer.Checked = Convert.ToBoolean(slmorderline.Rows[0]["PRODUCER_FL"]); ultraCheckMps_Fl.Checked = Convert.ToBoolean(slmorderline.Rows[0]["MPS_FL"]); //最终用户 this.textFinalUser.Text = slmorderline.Rows[0]["FINAL_USER_DESC"].ToString(); this.textFinalUser.Tag = slmorderline.Rows[0]["FINAL_USER"]; //orderBuyerName = slmorderline.Rows[0]["FINAL_USER"].ToString(); string id = slmorderline.Rows[0]["FINAL_USER"].ToString(); string name = slmorderline.Rows[0]["FINAL_USER"].ToString(); orderHead["FINAL_USER"] = id; orderHead["FINAL_USER_DESC"] = name; //发货交运要求 orderHead["DELVRY_DESC"] = slmorderline.Rows[0]["DELVRY_DESC"].ToString(); orderHead["DELVRY_EDATE"] = slmorderline.Rows[0]["DELVRY_EDATE"].ToString(); orderHead["TRANS_DESC"] = slmorderline.Rows[0]["TRANS_DESC"].ToString(); orderHead["TRANS_PRICE"] = slmorderline.Rows[0]["TRANS_PRICE"].ToString(); ultraTextGetDelVry.Text = slmorderline.Rows[0]["DELVRY_DESC"].ToString() + "\r\n"; orderHead["CUST_ALPHA_NO"] = slmorderline.Rows[0]["CUST_ALPHA_NO"]; orderHead["ADD_ASK_NO"] = slmorderline.Rows[0]["ADD_ASK_NO"]; orderHead["ORDER_SPECIAL_DESC"] = slmorderline.Rows[0]["ORDER_SPECIAL_DESC"]; orderHead["ORDER_ADD_DESC"] = slmorderline.Rows[0]["ORDER_ADD_DESC"]; technologyRow.Rows.Clear(); technologyRowAsk.Rows.Clear(); technologyRow.Rows.Add(slmorderline.Rows[0]["CUST_ALPHA_NO"], slmorderline.Rows[0]["ORDER_SPECIAL_DESC"]); technologyRowAsk.Rows.Add(slmorderline.Rows[0]["ADD_ASK_NO"], slmorderline.Rows[0]["ORDER_ADD_DESC"]); labDly.Text = slmorderline.Rows[0]["ORDER_SPECIAL_DESC"].ToString(); ultraTextEdiAsk.Text = slmorderline.Rows[0]["ORDER_ADD_DESC"].ToString(); ultraTextEdiAsk.Tag = orderHead["ADD_ASK_NO"] = slmorderline.Rows[0]["ADD_ASK_NO"]; string[] arr = new string[] { "", "" }; arr[0] = slmorderline.Rows[0]["CUST_ALPHA_NO"].ToString(); arr[1] = slmorderline.Rows[0]["MSC"].ToString(); labDly.Tag = arr; cmbQualityUser.Value = slmorderline.Rows[0]["QUALITY_USER"].ToString(); cmbQualityUser.Text = slmorderline.Rows[0]["QUALITY_USER_DESC"].ToString(); cmbInspection.Text = slmorderline.Rows[0]["MAN_INSPECTION"].ToString(); cmbOutPutStd.Text = slmorderline.Rows[0]["OUTPUT_STD_NO"].ToString(); txtProjectNo.Text = slmorderline.Rows[0]["PROJECT_NO"].ToString(); cmbOutboundCalculate.Text = slmorderline.Rows[0]["OUTBOUND_CALCULATE"].ToString(); cmborderteam.Value = slmorderline.Rows[0]["ORDER_TEAM"].ToString(); cmbmodeoftransport.Value = slmorderline.Rows[0]["MODE_OF_TRANSPORT"].ToString(); } } } /// /// 请重新填写订货量,不允许小于发运要求中交货量! /// /// public bool deliveryWTQty() { if (NumWt.Value != null && NumWt.Value != System.DBNull.Value && order != "") { double numwts = Convert.ToDouble(NumWt.Value.ToString()); DataTable wtls = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderDelivery.GetDeliveryWTQty", new Object[] { order }, ob); if (wtls.Rows.Count != 0) { double wtlines = Convert.ToDouble(wtls.Rows[0][0].ToString()); if (numwts < wtlines) { NumWt.Value = wtlines; MessageUtil.ShowWarning("请重新填写订货量,不允许小于发运要求中交货量!"); return false; } } } return true; } private void ultraTextPSCSelect_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { ultraTextPSCSelect.Clear(); dlgPSCSelect pscSelect = new dlgPSCSelect(ob); pscSelect.GetPscSelect += new dlgPSCSelect.GetPscSelectHander(pscSelect_GetPscSelect); pscSelect.ShowDialog(); } //订货产品 void pscSelect_GetPscSelect(DataRow row) { ultraTextPSCSelect.Text = row["PSC_DESC"].ToString(); psc = row["PSC"].ToString(); pscSelectRow = row; //过滤订货单位 放在这里是因为 valueChange事件在这个之前。 string productCode = ""; if (pscSelectRow != null) { productCode = pscSelectRow["PRODUCCODE"].ToString(); } else { productCode = ctrlLineValue.Tables["orderLineDt"].Rows[0]["PRODUCCODE"].ToString(); } DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderManager.getProductType", new object[] { productCode }, this.ob); if (dt != null && dt.Rows.Count > 0) { string proType = dt.Rows[0][0].ToString(); if (proType == "C" || proType == "D" || proType == "E") //短节+附件 接箍 双工短节 订货单位只有“支” { ((DataTable)comboUNIT.DataSource).DefaultView.RowFilter = ""; comboUNIT.Enabled = false; comboUNIT.Text = "支"; } else //钢管(管坯) 钢管+接箍 { comboUNIT.Enabled = true; ((DataTable)comboUNIT.DataSource).DefaultView.RowFilter = "BASENAME <>'支'"; } } } private void ultraTextEditor3_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { string lenid = ""; if (lenOrderRow != null) lenid = lenOrderRow["LEN_NO"].ToString(); else if (ctrlLineValue.Tables["SLM_ORDER_LINE"] != null) lenid = ctrlLineValue.Tables["SLM_ORDER_LINE"].Rows[0]["LEN_NO"].ToString(); else lenid = ""; frmOrderLen len = new frmOrderLen(ob); len.LenNo = lenid; len.GetOrderLen += new frmOrderLen.GetOrderLenHander(len_GetOrderLen); len.ShowDialog(); } //长度 void len_GetOrderLen(DataRow ROrdLen) { lenOrderRow = ROrdLen; ultraTextEditorLen.Text = ROrdLen["LEN_DESC"].ToString(); ultraLabel18.Text = lenOrderRow["len_unit"].ToString(); } private void textFinalUser_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { if ("100105".Equals(customerno)) { saleorg = customerno; } FrmOrderBuyer buyer = new FrmOrderBuyer(ob, customerno, saleorg); buyer.GetOrderBuyer += new FrmOrderBuyer.GetOrderBuyerHander(buyer_GetOrderBuyer); buyer.ShowDialog(); } //客户编码和名称 void buyer_GetOrderBuyer(UltraGridRow ugr) { if (ugr != null) { reRow = ugr; textFinalUser.Tag = ugr.Cells["CUSTOMER_NO"].Value.ToString(); textFinalUser.Text = ugr.Cells["CUSTOMER_NM"].Value.ToString(); if (cmbQualityUser.Text != "") { cmbQualityUser.Value = "122603"; } } else { textFinalUser.Tag = ""; this.textFinalUser.Text = ""; } } private void ctrlOrderLine_Load(object sender, EventArgs e) { technologyRow.Columns.Add("CUST_ALPHA_NO", typeof(System.String)); technologyRow.Columns.Add("ORDER_SPECIAL_DESC", typeof(System.String)); technologyRowAsk.Columns.Add("ADD_ASK_NO", typeof(System.String)); technologyRowAsk.Columns.Add("ORDER_ADD_DESC", typeof(System.String)); orderline.Columns.Add("MANAG_NO", typeof(System.String)); orderline.Columns.Add("ORDER_NO", typeof(System.String)); orderline.Columns.Add("ORDER_SEQ", typeof(System.String)); orderline.Columns.Add("CUSTOMER_NO", typeof(System.String)); orderline.Columns.Add("CUST_ALPHA_NO", typeof(System.String)); orderline.Columns.Add("PSC", typeof(System.String)); orderline.Columns.Add("PSC_DESC", typeof(System.String)); orderline.Columns.Add("MSC", typeof(System.String)); orderline.Columns.Add("MSC_DESC", typeof(System.String)); orderline.Columns.Add("MSC_STYLE", typeof(System.String)); orderline.Columns.Add("PRD_CLS", typeof(System.String)); orderline.Columns.Add("PRODUCCODE", typeof(System.String)); orderline.Columns.Add("PRODUCNAME", typeof(System.String)); orderline.Columns.Add("STD_CODE", typeof(System.String)); orderline.Columns.Add("STD_NAME", typeof(System.String)); orderline.Columns.Add("STD_STYLE", typeof(System.String)); orderline.Columns.Add("STD_STYLE_DESC", typeof(System.String)); orderline.Columns.Add("STEELCODE", typeof(System.String)); orderline.Columns.Add("STEELNAME", typeof(System.String)); orderline.Columns.Add("ORDER_SPEC_CODE", typeof(System.String)); orderline.Columns.Add("ORDER_SPEC_DESC", typeof(System.String)); orderline.Columns.Add("SPEC_CODE", typeof(System.String)); orderline.Columns.Add("SPEC_NAME", typeof(System.String)); orderline.Columns.Add("DIMATER", typeof(System.String)); orderline.Columns.Add("HEIGHT", typeof(System.String)); orderline.Columns.Add("MODEL_CODE", typeof(System.String)); orderline.Columns.Add("MODEL_DESC", typeof(System.String)); orderline.Columns.Add("LEN_NO", typeof(System.String)); orderline.Columns.Add("LEN_DESC", typeof(System.String)); orderline.Columns.Add("LEN_UNIT", typeof(System.String)); orderline.Columns.Add("LEN_MIN", typeof(System.String)); orderline.Columns.Add("LEN_MAX", typeof(System.String)); orderline.Columns.Add("SHRT_LEN_RATO", typeof(System.String)); orderline.Columns.Add("SHORTEST", typeof(System.String)); orderline.Columns.Add("LONG_LEN_RATO", typeof(System.String)); orderline.Columns.Add("LONGEST", typeof(System.String)); orderline.Columns.Add("SHRT_STOVE", typeof(System.String)); orderline.Columns.Add("AVG_LEN_MIN", typeof(System.String)); orderline.Columns.Add("AVG_LEN_MAX", typeof(System.String)); orderline.Columns.Add("DIFRNC_LEN_MAX", typeof(System.String)); orderline.Columns.Add("SIGL_LEN", typeof(System.String)); orderline.Columns.Add("ENDLEN_SPECSTD", typeof(System.String)); orderline.Columns.Add("FINAL_USER", typeof(System.String)); orderline.Columns.Add("FINAL_USER_DESC", typeof(System.String)); orderline.Columns.Add("OUTS_BILLET_FL", typeof(System.String)); orderline.Columns.Add("OUTS_STL_PIPE_FL", typeof(System.String)); orderline.Columns.Add("OUTS_BILLET_DESC", typeof(System.String)); orderline.Columns.Add("OUTS_STL_PIPE_DESC", typeof(System.String)); orderline.Columns.Add("ASSEL_FL", typeof(System.String)); orderline.Columns.Add("MPS_FL", typeof(System.String)); orderline.Columns.Add("ORDER_UNIT", typeof(System.String)); orderline.Columns.Add("ORDER_QTY", typeof(System.String)); orderline.Columns.Add("ORD_ENSU_TOTL_LEN", typeof(System.String)); orderline.Columns.Add("PRDCT_WGT", typeof(System.String)); orderline.Columns.Add("DELVRY_RANGE_TPE", typeof(System.String)); orderline.Columns.Add("DELVRY_RANGE_MIN", typeof(System.String)); orderline.Columns.Add("DELVRY_RANGE_MAX", typeof(System.String)); orderline.Columns.Add("DELVRY_BDATE", typeof(System.String)); orderline.Columns.Add("DELVRY_EDATE", typeof(System.String)); orderline.Columns.Add("DELVRY_DESC", typeof(System.String)); orderline.Columns.Add("TRANS_DESC", typeof(System.String)); orderline.Columns.Add("ADD_ASK_NO", typeof(System.String)); orderline.Columns.Add("ORDER_SPECIAL_DESC", typeof(System.String)); orderline.Columns.Add("ORDER_ADD_DESC", typeof(System.String)); orderline.Columns.Add("ORDER_PRICE", typeof(System.String)); orderline.Columns.Add("TRANS_PRICE", typeof(System.String)); orderline.Columns.Add("TEST_ID", typeof(System.String)); orderline.Columns.Add("TEST_PRICE", typeof(System.String)); orderline.Columns.Add("OUT_PRICE", typeof(System.String)); orderline.Columns.Add("BALNCE_PRICE", typeof(System.String)); orderline.Columns.Add("ORDER_LN_STATUS", typeof(System.String)); orderline.Columns.Add("MEMO", typeof(System.String)); orderline.Columns.Add("PRODUCER_FL", typeof(System.String)); orderline.Columns.Add("USE_CODE", typeof(System.String)); orderline.Columns.Add("USE_DESC", typeof(System.String)); orderline.Columns.Add("AW", typeof(System.String)); orderline.Columns.Add("MAN_INSPECTION", typeof(System.String)); orderline.Columns.Add("QUALITY_USER", typeof(System.String)); orderline.Columns.Add("QUALITY_USER_DESC", typeof(System.String)); orderline.Columns.Add("OUTPUT_STD_NO", typeof(System.String)); orderline.Columns.Add("PROJECT_NO", typeof(System.String)); orderline.Columns.Add("OUTBOUND_CALCULATE", typeof(System.String)); orderline.Columns.Add("ORDER_TEAM", typeof(System.String)); orderline.Columns.Add("MODE_OF_TRANSPORT", typeof(System.String)); orderHead = orderline.NewRow(); ultraTextGetDelVry.ButtonsLeft["UpdateDlyAdd"].Visible = false; } /// /// 初始化 /// /// OpeBase /// 管理卡号 /// 合同号 /// 合同行号 /// 销售组织 public void loadFun(OpeBase db, string Managno, string Order, string OrderSeq, string Customerno, string sh) { customerno = Customerno; //销售组织 saleorg = "100204"; //用途类型 managno = Managno; //管理卡号 order = Order; //合同号 一直是ORDLNPK orderSeq = OrderSeq; //合同行号 shRow = sh;//合同头收货单位 iTrueFlase = 0;//初始化订货规格下拉列表 iTrueFlases = 0;//初始化扣型下拉列表 } /// /// 初始化 /// /// OpeBase /// 销售组织 public void loadFun(OpeBase db, string Customerno) { customerno = Customerno; //销售组织 saleorg = "100204"; //用途类型 managno = ""; //管理卡号 order = ""; //合同号 orderSeq = ""; //合同行号 shRow = "";//合同头收货单位 ob = db; DataTable isx = new DataTable(); //产品规格 DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderLine.getSpecInfo", null, ob); ultraComboSpec.DataSource = dt; ultraComboSpec.DisplayMember = "SPEC_NAME"; ultraComboSpec.ValueMember = "SPEC_CODE"; //订货规格 comboSpecOrderIght.DataSource = null; //订货扣型 comBoModel.DataSource = null; isx = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderLine.GetQueryBaseModel", new Object[] { }, ob); comBoModel.DataSource = isx; comBoModel.DisplayMember = "MODEL_DESC"; comBoModel.ValueMember = "MODEL_CODE"; comBoModel.Value = "C001"; //订货量 comboUNIT.DataSource = null; isx = ServerHelper.GetData("com.steering.pss.sale.base.CoreBuyerOrder.GetQueryBaseInfo", new Object[] { "1215" }, ob); comboUNIT.DataSource = isx; comboUNIT.DisplayMember = "BASENAME"; comboUNIT.ValueMember = "BASECODE"; comboUNIT.Text = "吨"; //交货量差 comboPercentage.DataSource = null; isx = ServerHelper.GetData("com.steering.pss.sale.base.CoreBuyerOrder.GetQueryBaseInfo", new Object[] { "1216" }, ob); comboPercentage.DataSource = isx; comboPercentage.DisplayMember = "BASENAME"; comboPercentage.ValueMember = "BASECODE"; comboPercentage.Text = "%"; comboPercentage.Enabled = false; //外购坯 ultraCheckWGP.DataSource = null; isx = ServerHelper.GetData("com.steering.pss.sale.base.CoreBuyerOrder.GetQueryBaseInfo", new Object[] { "1218" }, ob); ultraCheckWGP.DataSource = isx; ultraCheckWGP.DisplayMember = "BASENAME"; ultraCheckWGP.ValueMember = "BASECODE"; ultraCheckWGP.Text = "自炼"; //外购管 ultraCheckWGG.DataSource = null; isx = ServerHelper.GetData("com.steering.pss.sale.base.CoreBuyerOrder.GetQueryBaseInfo", new Object[] { "1219" }, ob); ultraCheckWGG.DataSource = isx; ultraCheckWGG.DisplayMember = "BASENAME"; ultraCheckWGG.ValueMember = "BASECODE"; ultraCheckWGG.Text = "/"; //在线机探盲区 cmbInspection.Value = "1"; //质保书单位 OrderFunction.InitComboEditorWithParm(cmbQualityUser, "com.steering.pss.sale.order.CoreOrderInfoUpdate.getComBaseInfo", "BASECODE", "BASENAME", this.ob, false, new object[] { "1226" }); cmbQualityUser.Value = "122603"; //输出标准号 cmbOutPutStd OrderFunction.InitComboEditorWithParm(cmbOutPutStd, "com.steering.pss.sale.order.CoreOrderInfoUpdate.getComBaseInfo", "BASECODE", "BASENAME", this.ob, false, new object[] { "1227" }); cmbOutPutStd.Value = "122701"; cmbOutboundCalculate.Value = "0"; ClsBaseInfo.SetComboItemHeight(cmbOutPutStd); ClsBaseInfo.SetComboItemHeight(cmbQualityUser); ClsBaseInfo.SetComboItemHeight(comboPercentage); ClsBaseInfo.SetComboItemHeight(ultraCheckWGP); ClsBaseInfo.SetComboItemHeight(ultraCheckWGG); } public void loadPsc() { this.ultraTextPSCSelect.Text = ""; this.ultraComboSpec.Text = ""; this.comboSpecOrderIght.Text = ""; //this.comBoModel.Text = ""; this.ultraTextEditorLen.Text = ""; this.textFinalUser.Text = ""; NumWt.Text = ""; textPrice.Text = ""; txtProjectNo.Text = ""; } private void ultraTextEditor2_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { if (e.Button.Key.Equals("JHQK")) { if (MessageUtil.ShowYesNoAndQuestion("是否清除数据?").ToString().Equals("Yes")) { SetOrderLineYesNoType("FYTrue"); } return; } //新增临时修改交货地点口子 if (e.Button.Key.Equals("UpdateDlyAdd")) { DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.CoreCtrlOrderLine.queryYdmZcBillM", new object[] { order }, this.ob); if (dt != null && dt.Rows.Count > 0) { MessageUtil.ShowWarning("所选合同行存在在途提单,不能进行修改,请先关闭在途提单!"); return; } DataTable dt1 = ServerHelper.GetData("com.steering.pss.sale.order.CoreCtrlOrderLine.queryYdmSendPlan", new object[] { order }, this.ob); if (dt1 != null && dt1.Rows.Count > 0) { MessageUtil.ShowWarning("所选合同行存在未执行完的出厂计划,不能进行修改,请先关闭出厂计划!"); return; } if (order == "") { MessageUtil.ShowWarning("请选择一行合同行或者新增一行合同行!"); return; } frmOrderDelivery delivery = new frmOrderDelivery(ob); delivery.ManageNo = managno; delivery.OrderNo = order; delivery.OrderSeq = orderSeq; delivery.SaleOrg = customerno; delivery.ShRow = shRow; delivery.NumWt = NumWt.Value.ToString(); delivery.DlyTime = this.DlyTime; delivery.DlyAddress = this.DlyAddress; delivery.LenUnit = ultraLabel18.Text.Trim(); //根据估算重量公式计算 OrderFunction.GetPrdctWgt(ref weight, Convert.ToDouble(NumWt.Value), comboUNIT.Text.Trim(), pesc_code, this.ob); DataTable slmorderline = new DataTable(); slmorderline = ctrlLineValue.Tables["orderLineDt"]; if (slmorderline.Rows[0]["PRODUCCODE"].Equals("S000012")) { OrderFunction.GetWgt_JG(ref jg_weight, "S000012", slmorderline.Rows[0]["STD_CODE"].ToString(), slmorderline.Rows[0]["STD_STYLE"].ToString(), slmorderline.Rows[0]["STEELCODE"].ToString(), pesc_code, comBoModel.Value.ToString(), this.ob); delivery.NumTag = Convert.ToString(jg_weight * Convert.ToDouble(NumWt.Value)); } else { delivery.NumTag = weight.ToString(); } delivery.Jg_weight = jg_weight; delivery.Produc_code = slmorderline.Rows[0]["PRODUCCODE"].ToString(); //单位 delivery.FromForm = "4"; delivery.OrderUnit = comboUNIT.Text.Trim(); //DataSet,也许有记录,也许为空。 delivery.OrderSet = orderDerlivery; //产品规格代码 numTag delivery.Spec_code = pesc_code; //保总长 delivery.Order_line_lne = Convert.ToDouble(numTag.Value == null ? 0 : numTag.Value); delivery.GetOrderDelivery += new frmOrderDelivery.GetOrderDeliveryHander(delivery_GetOrderDelivery); delivery.ShowDialog(); } else { if (CommitOrderLineRow == null) return; if (!CommitOrderLineRow(null, "insert")) { return; } if (CommitOrderLineRow(CtrlLineValue, "insert")) { //增加后续代码(按业务逻辑要求) frmOrderDelivery delivery = new frmOrderDelivery(ob); delivery.ManageNo = managno; delivery.OrderNo = order; delivery.OrderSeq = orderSeq; delivery.SaleOrg = customerno; delivery.ShRow = shRow; delivery.NumWt = NumWt.Value == null ? "0" : NumWt.Value.ToString(); delivery.DlyTime = this.DlyTime; delivery.DlyAddress = this.DlyAddress; delivery.LenUnit = ultraLabel18.Text.Trim(); //根据估算重量公式计算 OrderFunction.GetPrdctWgt(ref weight, Convert.ToDouble(NumWt.Value), comboUNIT.Text.Trim(), pesc_code, this.ob); if (orderHead["PRODUCCODE"].Equals("S000012")) { OrderFunction.GetWgt_JG(ref jg_weight, "S000012", orderHead["STD_CODE"].ToString(), orderHead["STD_STYLE"].ToString(), orderHead["STEELCODE"].ToString(), pesc_code, comBoModel.Value.ToString(), this.ob); delivery.NumTag = Convert.ToString(jg_weight * Convert.ToDouble(NumWt.Value)); } else { delivery.NumTag = weight.ToString(); } delivery.Jg_weight = jg_weight; delivery.Produc_code = orderHead["PRODUCCODE"].ToString(); //单位 delivery.OrderUnit = comboUNIT.Text.Trim(); //DataSet,也许有记录,也许为空。 delivery.OrderSet = orderDerlivery; //产品规格代码 numTag delivery.Spec_code = pesc_code; //保总长 delivery.Order_line_lne = Convert.ToDouble(numTag.Value == null ? 0 : numTag.Value); delivery.GetOrderDelivery += new frmOrderDelivery.GetOrderDeliveryHander(delivery_GetOrderDelivery); delivery.ShowDialog(); } } } void yesNo_UpdateOrderDeliveryDesc(string type) { yesNotype = type; } void delivery_GetOrderDelivery(DataSet ds) { orderDerlivery = ds; ultraTextGetDelVry.Text = null; for (int i = 0; i < orderDerlivery.Tables.Count; i++) { if (ctrlLineValue.Tables.Count > 0) { for (int j = 0; j < ctrlLineValue.Tables.Count; j++) { if (ctrlLineValue.Tables[j].TableName.Equals(orderDerlivery.Tables[i].TableName)) { ctrlLineValue.Tables.Remove(orderDerlivery.Tables[i].TableName); } } } if (orderDerlivery.Tables[i].TableName.Equals("Main")) { for (int k = 0; k < orderDerlivery.Tables[i].Rows.Count; k++) { string ordLnDlyPk = orderDerlivery.Tables[i].Rows[k]["ORD_LN_DLY_PK"].ToString(); DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderLine.getOrderDlyTransit", new object[] { ordLnDlyPk }, this.ob); string trasLine = ""; for (int n = 0; n < dt.Rows.Count; n++) { string agency = dt.Rows[n]["AGENCY_FL"].ToString(); if (agency == "0" || agency == "2") //买方线路 { if (agency == "0") trasLine += " 买方线路:"; else { trasLine += " 买方线路(买方代办):"; } if (dt.Rows[n]["TRANSIT_TYP"].ToString() != "") trasLine = trasLine + "运输方式:" + dt.Rows[n]["TRANSIT_TYP"].ToString(); if (dt.Rows[n]["DESTINATION"].ToString() != "") trasLine = trasLine + " 目的地:" + dt.Rows[n]["DESTINATION"].ToString(); if (dt.Rows[n]["STATION_NO"].ToString() != "") trasLine = trasLine + " 到站名称:" + dt.Rows[n]["STATION_NM"].ToString(); if (dt.Rows[n]["SPCL_LN_NO"].ToString() != "") trasLine = trasLine + " 专用线名称:" + dt.Rows[n]["SPCL_LN_NM"].ToString(); if (dt.Rows[n]["PORT_NO"].ToString() != "") trasLine = trasLine + " 港口/码头:" + dt.Rows[n]["PORT_DESC"].ToString(); if (dt.Rows[n]["CARRIER_UNIT"].ToString() != "") trasLine = trasLine + " 承运单位:" + dt.Rows[n]["CARRIER_UNIT"].ToString(); if (dt.Rows[n]["RECEIVOR"].ToString() != "") trasLine = trasLine + " 接货人:" + dt.Rows[n]["RECEIVOR"].ToString(); } else { trasLine += " TPCO代办线路:"; if (dt.Rows[n]["TRANSIT_TYP"].ToString() != "") trasLine = trasLine + " 运输方式:" + dt.Rows[n]["TRANSIT_TYP"].ToString(); if (dt.Rows[n]["DESTINATION"].ToString() != "") trasLine = trasLine + " 目的地:" + dt.Rows[n]["DESTINATION"].ToString(); if (dt.Rows[n]["STATION_NO"].ToString() != "") trasLine = trasLine + " 到站名称:" + dt.Rows[n]["STATION_NM"].ToString(); if (dt.Rows[n]["SPCL_LN_NO"].ToString() != "") trasLine = trasLine + " 专用线名称:" + dt.Rows[n]["SPCL_LN_NM"].ToString(); if (dt.Rows[n]["PORT_NO"].ToString() != "") trasLine = trasLine + " 港口/码头:" + dt.Rows[n]["PORT_DESC"].ToString(); if (dt.Rows[n]["CARRIER_UNIT"].ToString() != "") trasLine = trasLine + " 承运单位:" + dt.Rows[n]["CARRIER_UNIT"].ToString(); if (dt.Rows[n]["RECEIVOR"].ToString() != "") trasLine = trasLine + " 接货人:" + dt.Rows[n]["RECEIVOR"].ToString(); } trasLine = trasLine + ";"; } ultraTextGetDelVry.Text += "交货量:" + orderDerlivery.Tables[i].Rows[k]["DELVRY_QTY"].ToString() + ";交货日期:" + orderDerlivery.Tables[i].Rows[k]["DELVRY_EDATE"].ToString() + ";收货单位:" + orderDerlivery.Tables[i].Rows[k]["RECEIV_NM"].ToString() + ";交货地点:" + orderDerlivery.Tables[i].Rows[k]["DELVRY_ADDR"].ToString() + trasLine + "\r\n";//;运输方案:" + orderDerlivery.Tables[i].Rows[k]["TRANSIT_PLAN"].ToString() + "\r\n"; } } ctrlLineValue.Tables.Add(orderDerlivery.Tables[i].Copy()); } UpdateOrderDeliveryDesc(ctrlLineValue); } public static bool IsDesignMode() { bool returnFlag = false; if (LicenseManager.UsageMode == LicenseUsageMode.Designtime) { returnFlag = true; } else if (Process.GetCurrentProcess().ProcessName == "devenv") { returnFlag = true; } return returnFlag; } void spec_GetOrderSpecs(string specName, UltraGridRow retunSpecRow) { comboSpecOrderIght.Text = specName; } private void comBoModel_MouseDown(object sender, MouseEventArgs e) { saveUpdateVal = "true"; } private void ultraTextPSCSelect_MouseDown(object sender, MouseEventArgs e) { saveUpdateVal = "true"; } private void comboSpecOrderIght_MouseDown(object sender, MouseEventArgs e) { saveUpdateVal = "true"; } private void ultraTextEditorLen_MouseDown(object sender, MouseEventArgs e) { saveUpdateVal = "true"; } private void NumWt_MouseDown(object sender, MouseEventArgs e) { saveUpdateVal = "true"; } private void comboUNIT_MouseDown(object sender, MouseEventArgs e) { saveUpdateVal = "true"; } private void numTag_MouseDown(object sender, MouseEventArgs e) { saveUpdateVal = "true"; } private void numericWTMax_MouseDown(object sender, MouseEventArgs e) { saveUpdateVal = "true"; } private void numericWTMin_MouseDown(object sender, MouseEventArgs e) { saveUpdateVal = "true"; } private void comboPercentage_MouseDown(object sender, MouseEventArgs e) { saveUpdateVal = "true"; } private void textPrice_MouseDown(object sender, MouseEventArgs e) { saveUpdateVal = "true"; } private void textFinalUser_MouseDown(object sender, MouseEventArgs e) { saveUpdateVal = "true"; } private void ultraCheckASL_MouseDown(object sender, MouseEventArgs e) { saveUpdateVal = "true"; } private void ultraTextEditor6_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { if (e.Button.Key.Equals("JSQK")) { if (MessageUtil.ShowYesNoAndQuestion("是否清除数据?").ToString().Equals("Yes")) { loadAlphaSpecl(); } return; } FrmOrderSpecialInfo specInfo = new FrmOrderSpecialInfo(); specInfo.Ob = this.ob; System.Data.DataTable tmptab = new DataTable(); tmptab.Columns.Add("MSC", typeof(string)); tmptab.Columns.Add("FINAL_USER", typeof(string)); tmptab.Columns.Add("FINAL_USER_DESC", typeof(string)); tmptab.Columns.Add("PSC", typeof(string)); tmptab.Columns.Add("PSC_DESC", typeof(string)); tmptab.Columns.Add("SPEC_NAME", typeof(string)); tmptab.Columns.Add("MODEL_CODE", typeof(string)); tmptab.Columns.Add("MODEL_DESC", typeof(string)); tmptab.Columns.Add("ORD_LN_PK", typeof(string)); tmptab.Columns.Add("SPEC_CODE", typeof(string)); System.Data.DataRow nrow = tmptab.NewRow(); if (pscSelectRow != null && pscSelectRow.Table.Rows.Count > 0) { nrow["MSC"] = pscSelectRow["MSC"]; nrow["PSC"] = pscSelectRow["PSC"]; nrow["PSC_DESC"] = pscSelectRow["PSC_DESC"]; } else if (ctrlLineValue.Tables["orderLineDt"] != null) { nrow["MSC"] = ctrlLineValue.Tables["orderLineDt"].Rows[0]["MSC"].ToString(); nrow["PSC"] = ctrlLineValue.Tables["orderLineDt"].Rows[0]["PSC"].ToString(); nrow["PSC_DESC"] = ctrlLineValue.Tables["orderLineDt"].Rows[0]["PSC_DESC"].ToString(); nrow["SPEC_NAME"] = ctrlLineValue.Tables["orderLineDt"].Rows[0]["SPEC_NAME"].ToString(); nrow["ORD_LN_PK"] = ctrlLineValue.Tables["orderLineDt"].Rows[0]["ORD_LN_PK"].ToString(); nrow["SPEC_CODE"] = ctrlLineValue.Tables["orderLineDt"].Rows[0]["SPEC_CODE"].ToString(); } else { MessageUtil.ShowTips("请选择订货产品"); return; } if (labDly.Tag != null && labDly.Tag.ToString() != "") { string[] arr = (string[])labDly.Tag; if (arr[0] == "") specInfo.CustAlphaNo = arr[1]; else specInfo.CustAlphaNo = arr[0]; } else if (ctrlLineValue.Tables["orderLineDt"] != null) { if (ctrlLineValue.Tables["orderLineDt"].Rows[0]["CUST_ALPHA_NO"].ToString() == "") specInfo.CustAlphaNo = ctrlLineValue.Tables["orderLineDt"].Rows[0]["MSC"].ToString(); else specInfo.CustAlphaNo = ctrlLineValue.Tables["orderLineDt"].Rows[0]["CUST_ALPHA_NO"].ToString(); } DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderManager.getBaseMsc", new object[] { nrow["PSC"].ToString() }, this.ob); if (dt != null && dt.Rows.Count > 0) { } else { MessageUtil.ShowTips("该产品规格下不存在基础冶金规范码,请联系制造部-标准科维护!"); return; } if (ultraComboSpec.Text != null && ultraComboSpec.Text != "") { nrow["SPEC_NAME"] = ultraComboSpec.Text; nrow["SPEC_CODE"] = ultraComboSpec.Value.ToString(); } else { MessageUtil.ShowTips("请选择产品规格!"); return; } if (textFinalUser.Tag != null && this.textFinalUser.Tag.ToString() != "" && textFinalUser.Tag.ToString() != "/") { nrow["FINAL_USER"] = textFinalUser.Tag.ToString(); nrow["FINAL_USER_DESC"] = textFinalUser.Text; } else if (ctrlLineValue.Tables["orderLineDt"] != null && ctrlLineValue.Tables["orderLineDt"].Rows[0]["FINAL_USER"].ToString() != "/") { nrow["FINAL_USER"] = ctrlLineValue.Tables["orderLineDt"].Rows[0]["FINAL_USER"].ToString(); nrow["FINAL_USER_DESC"] = ctrlLineValue.Tables["orderLineDt"].Rows[0]["FINAL_USER_DESC"].ToString(); } else if (nrow["FINAL_USER"].ToString().Equals("/")) { MessageUtil.ShowTips("最终用户为空,请确认最终用户以后维护合同附加要求!"); return; } else { MessageUtil.ShowTips("请确认最终用户!"); return; } if (this.comBoModel.Value != null && this.comBoModel.Value.ToString() != "") { nrow["MODEL_CODE"] = comBoModel.Value; nrow["MODEL_DESC"] = comBoModel.Text; } else { MessageUtil.ShowTips("请确认扣型!"); return; } specInfo.Dr = nrow; specInfo.FrmOrderSpecialInfoComfirm += new FrmOrderSpecialInfoHand(specInfo_FrmOrderSpecialInfoComfirm); specInfo.ShowDialog(); } void specInfo_FrmOrderSpecialInfoComfirm(object sender, FrmOrderSpecialInfoEventArgs e) { technologyRow.Rows.Clear(); ArrayList strList = new ArrayList(); technologyRow.Rows.Add(e.CustAlphaNo, e.Description); this.labDly.Text = e.Description; string[] str = new string[] { "", "" }; str[0] = e.CustAlphaNo; str[1] = e.Msc; labDly.Tag = str; } private void ultraTextEdiAsk_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { if (e.Button.Key.Equals("FJQK")) { if (MessageUtil.ShowYesNoAndQuestion("是否清除数据?").ToString().Equals("Yes")) { loadAddAskNo(); } return; } dlgOrderAddAsk addask = new dlgOrderAddAsk(); addask.Ob = this.ob; System.Data.DataTable tmptab = new DataTable(); tmptab.Columns.Add("FINAL_USER", typeof(string)); tmptab.Columns.Add("FINAL_USER_DESC", typeof(string)); tmptab.Columns.Add("STD_CODE", typeof(string)); tmptab.Columns.Add("ORD_LN_PK", typeof(string)); System.Data.DataRow nrow = tmptab.NewRow(); if (pscSelectRow != null && pscSelectRow.Table.Rows.Count > 0) { nrow["STD_CODE"] = pscSelectRow["STD_CODE"]; } else if (ctrlLineValue.Tables["orderLineDt"] != null) { nrow["STD_CODE"] = ctrlLineValue.Tables["orderLineDt"].Rows[0]["STD_CODE"].ToString(); nrow["ORD_LN_PK"] = ctrlLineValue.Tables["orderLineDt"].Rows[0]["ORD_LN_PK"].ToString(); } else { MessageUtil.ShowTips("请选择订货产品"); return; } if (textFinalUser.Tag != null && this.textFinalUser.Tag.ToString() != "" && textFinalUser.Tag.ToString() != "/") { nrow["FINAL_USER"] = textFinalUser.Tag.ToString(); nrow["FINAL_USER_DESC"] = textFinalUser.Text; } else if (ctrlLineValue.Tables["orderLineDt"] != null && ctrlLineValue.Tables["orderLineDt"].Rows[0]["FINAL_USER"].ToString() != "/") { nrow["FINAL_USER"] = ctrlLineValue.Tables["orderLineDt"].Rows[0]["FINAL_USER"].ToString(); nrow["FINAL_USER_DESC"] = ctrlLineValue.Tables["orderLineDt"].Rows[0]["FINAL_USER_DESC"].ToString(); } else if (nrow["FINAL_USER"].ToString().Equals("/")) { MessageUtil.ShowTips("最终用户为空,请确认最终用户以后维护合同附加要求!"); return; } else { MessageUtil.ShowTips("请确认最终用户"); return; } if (ultraTextEdiAsk.Tag != null && ultraTextEdiAsk.Tag.ToString() != "") { addask.AddAskNos = ultraTextEdiAsk.Tag.ToString(); } else if (ctrlLineValue.Tables["orderLineDt"] != null) { addask.AddAskNos = ctrlLineValue.Tables["orderLineDt"].Rows[0]["ADD_ASK_NO"].ToString(); } addask.Dr = nrow; addask.dlgOrderAddAskHandEvent += new dlgOrderAddAskHand(addask_dlgOrderAddAskHandEvent); addask.ShowDialog(); } void addask_dlgOrderAddAskHandEvent(object sender, ReturnMessage e) { technologyRowAsk.Rows.Clear(); ArrayList strList = new ArrayList(); technologyRowAsk.Rows.Add(e.AddAskNo, e.Message.ToString()); ultraTextEdiAsk.Text = e.Message; ultraTextEdiAsk.Tag = e.AddAskNo; //UpdateOrderDeliveryDesc(ctrlLineValue); } private void comboSpecOrderIght_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { if (ultraComboSpec.SelectedItem == null) { MessageUtil.ShowWarning("请选择产品规格!"); return; } FrmOrderSpec spec = new FrmOrderSpec(ob); spec.TitleName = comboSpecOrderIght.Text; spec.SpecCode = ultraComboSpec.Value.ToString(); spec.GetOrderSpecs += new FrmOrderSpec.GetOrderSpec(spec_GetOrderSpecs); spec.ShowDialog(); } private void comboSpecOrderIght_ValueChanged(object sender, EventArgs e) { if (iTrueFlase == 1) { // comboSpecOrderIght.DroppedDown = true; } pesc_code = comboSpecOrderIght.Value == null ? " " : comboSpecOrderIght.Value.ToString(); iTrueFlase = 1; } private void comBoModel_ValueChanged(object sender, EventArgs e) { if (iTrueFlases == 1) { //comBoModel.DroppedDown = true; } iTrueFlases = 1; } private bool orderLineYes(string nameType, string nameUp) { orderLineYesNo yesNo = new orderLineYesNo(nameType, nameUp); yesNo.UpdateOrderDeliveryDesc += new orderLineYesNo.UporderLineYesNoDesc(yesNo_UpdateOrderDeliveryDesc); yesNo.StartPosition = FormStartPosition.Manual; //更改位置 yesNo.Left = Convert.ToInt32(1080); yesNo.Top = Convert.ToInt32(550); yesNo.ShowDialog(); if (!yesNotype.Equals("") && !yesNotype.Equals("False") && !yesNotype.Equals("True")) { if (MessageUtil.ShowYesNoAndQuestion("是否清除数据?").ToString().Equals("Yes")) { SetOrderLineYesNoType(yesNotype); } return false; } if (yesNotype.Equals("False")) { return false; } return true; } private void textFinalUser_ValueChanged(object sender, EventArgs e) { loadAddAskNo(); loadAlphaSpecl(); ClearDly(); } private void comBoModel_TextChanged(object sender, EventArgs e) { loadAlphaSpecl(); } private void ultraTextPSCSelect_TextChanged(object sender, EventArgs e) { loadAlphaSpecl(); loadAddAskNo(); //ClearDly(); } private void ultraTextEditorLen_TextChanged(object sender, EventArgs e) { loadAlphaSpecl(); } /// /// 附加要求清空 /// private void loadAddAskNo() { ultraTextEdiAsk.Tag = ""; ultraTextEdiAsk.Text = ""; ultraTextEdiAsk.Value = ""; orderHead["ADD_ASK_NO"] = ""; orderHead["ORDER_ADD_DESC"] = ""; technologyRowAsk.Clear(); } /// /// 技术特殊要求清空 /// private void loadAlphaSpecl() { labDly.Text = ""; labDly.Tag = null; labDly.Value = ""; orderHead["CUST_ALPHA_NO"] = ""; orderHead["ORDER_SPECIAL_DESC"] = ""; orderHead["USE_CODE"] = ""; orderHead["USE_DESC"] = ""; if (orderHead["MSC"].ToString().Length>10) orderHead["MSC"] = orderHead["MSC"].ToString().Substring(0,10)+"000"; technologyRow.Clear(); } private void ClearDly() { ultraTextGetDelVry.Text = ""; ultraTextGetDelVry.Tag = ""; ultraTextGetDelVry.Value = ""; } private void ultraComboSpec_ValueChanged(object sender, EventArgs e) { if (ultraComboSpec.Value != null) { string specCode = ultraComboSpec.Value.ToString(); DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderLine.getOrderSpecInfo", new object[] { specCode }, ob); comboSpecOrderIght.DataSource = dt; comboSpecOrderIght.DisplayMember = "ORDER_SPEC_DESC"; comboSpecOrderIght.ValueMember = "ORDER_SPEC_CODE"; } if (ultraComboSpec.Text == "") { comboSpecOrderIght.DataSource = null; } loadAlphaSpecl(); } private void ultraTextPSCSelect_ValueChanged(object sender, EventArgs e) { string productCode = ""; if (pscSelectRow != null) { productCode = pscSelectRow["PRODUCCODE"].ToString(); } else if (ctrlLineValue.Tables["orderLineDt"] != null) { productCode = ctrlLineValue.Tables["orderLineDt"].Rows[0]["PRODUCCODE"].ToString(); } DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderManager.getProductType", new object[] { productCode }, this.ob); if (dt != null && dt.Rows.Count > 0) { string proType = dt.Rows[0][0].ToString(); if (proType == "C" || proType == "D" || proType == "E") //短节+附件 接箍 双工短节 订货单位只有“支” { ((DataTable)comboUNIT.DataSource).DefaultView.RowFilter = ""; comboUNIT.Enabled = false; comboUNIT.Text = "支"; } else //钢管(管坯) 钢管+接箍 { comboUNIT.Enabled = true; ((DataTable)comboUNIT.DataSource).DefaultView.RowFilter = "BASENAME <>'支'"; } } } private void NumWt_ValueChanged(object sender, EventArgs e) { string orderUnit = comboUNIT.Text.Trim(); string num = NumWt.Text.Trim(); if (num == "") return; if (orderUnit == "米" || orderUnit == "英尺") numTag.Value = 0; } private void comboUNIT_ValueChanged(object sender, EventArgs e) { string orderUnit = comboUNIT.Text.Trim(); //string num = NumWt.Text.Trim(); //if (num == "") // return; //if (orderUnit == "米" || orderUnit == "英尺") // numTag.Value = num; if (orderUnit == "米" || orderUnit == "英尺" || orderUnit == "支") { numTag.Enabled = false; numTag.Value = 0; } else { numTag.Enabled = true; } } /// /// 锁定控件 /// public void LockControl() { foreach (System.Windows.Forms.Control item in this.Controls) { if (item.Name.ToString() != "ultraTextEdiAsk") { item.Enabled = false; } } } /// /// 解锁控件 /// public void UnLockControl() { foreach (System.Windows.Forms.Control item in this.Controls) { if (item.Name.ToString() != "textPrice" && item.Name.ToString() != "comboPercentage") { item.Enabled = true; } } } private void ultraCheckWGP_ValueChanged(object sender, EventArgs e) { if (ultraCheckWGP.Value.ToString2() == "121801") { ultraCheckWGG.Enabled = false; ultraCheckWGG.Value = "121901"; } else { ultraCheckWGG.Enabled = true; ultraCheckWGG.Value = "121901"; } } private void ultraCheckWGG_ValueChanged(object sender, EventArgs e) { if (ultraCheckWGG.Value.ToString2() == "121901") { ultraCheckWGP.Enabled = true; ultraCheckASL.Enabled = true; } else { ultraCheckWGP.Value = "121802"; ultraCheckWGP.Enabled = false; ultraCheckASL.Checked = false; ultraCheckASL.Enabled = false; } } private void labDly_ValueChanged(object sender, EventArgs e) { } } }