/// <summary> /// 获取收货单位/开票单位 /// </summary> /// <param name="C_NC_M_ID">NC客商管理档案主键</param> /// <returns></returns> private string GetCust(string C_NC_M_ID) { string str = string.Empty; Mod_TS_CUSTFILE mod = ts_custfile.GetCustModel(C_NC_M_ID); str = mod.C_NAME; return(str); }
/// <summary> /// 获取收货单位/开票单位 /// </summary> /// <param name="C_NC_M_ID">NC客商管理档案主键</param> /// <returns></returns> public string GetCust(object C_NC_M_ID) { string str = string.Empty; Mod_TS_CUSTFILE mod = ts_custfile.GetCustModel(C_NC_M_ID.ToString()); if (mod != null) { str = mod.C_NAME; } return(str); }
///// <summary> ///// 区域计划量/实际接收订单量 ///// </summary> //private void GetPlanWGT() //{ // DataTable dt = tmb_areaplan.GetPlanWGT().Tables[0]; // if (dt.Rows.Count > 0) // { // for (int i = 0; i < dt.Rows.Count; i++) // { // string[] arr = dt.Rows[i]["wgt"].ToString().Split(':'); // //ltlWGT.Text += "<a href=\"javascript:void(0);\" onclick=\"openWeb3('" + arr[0] + "');\" style=\"margin-left:15px; \">" + dt.Rows[i]["wgt"].ToString() + "</a>"; // ltlWGT.Text += "<li><a href=\"javascript:void(0);\" class=\"a_wgt\" style=\"margin-left:15px; \">" + dt.Rows[i]["wgt"].ToString() + "</a></li>"; // } // } //} /// <summary> /// 获取收货单位/开票单位 /// </summary> /// <param name="C_NC_M_ID">NC客商管理档案主键</param> /// <returns></returns> private string GetCust(string C_NC_M_ID) { string str = string.Empty; if (!string.IsNullOrEmpty(C_NC_M_ID)) { Mod_TS_CUSTFILE mod = ts_custfile.GetCustModel(C_NC_M_ID); str = mod.C_NAME; } return(str); }
/// <summary> /// 加载客户默认地址与开票单位 /// </summary> private void BindUserInfo() { Mod_TMO_CON modCON = tmo_con.GetModel(hidconNo.Value); if (modCON != null) { hidConName.Value = modCON.C_CON_NAME; hidCurrType.Value = modCON.C_CURRENCY_TYPE; hidConArea.Value = modCON.C_CON_AREA; hidShipVia.Value = modCON.C_SHIPVIA; //客户档案 Mod_TS_CUSTFILE mod = custfile.GetCustModel(modCON.C_CUST_NO); if (mod != null) { hidCustNO.Value = mod.C_NO; hidCustName.Value = mod.C_NAME; hidCustLEV.Value = mod.N_LEVEL.ToString(); hidCustType.Value = mod.N_TYPE.ToString() == "1" ? "经销" : "直销"; } //默认收货单位 DataTable dt = custaddr.GetAddrList(mod.C_ID, "1").Tables[0]; if (dt.Rows.Count > 0) { txtAddress.Value = dt.Rows[0]["C_CGC"].ToString(); hidAddrID.Value = dt.Rows[0]["C_ID"].ToString(); } //默认开票单位 DataTable dtc = custcompany.GetList(mod.C_ID).Tables[0]; if (dtc.Rows.Count > 0) { txtOTCompany.Value = dtc.Rows[0]["C_OTCOMPANY"].ToString(); } } }
private void GetZZS() { var logger = Logger.CreateLogger(this.GetType()); try { DataTable dt = tmd_dispatchdetails.GetGPZZS(); for (int j = 0; j < dt.Rows.Count; j++) { string sendcode = dt.Rows[j]["C_DISPATCH_ID"].ToString(); #region//钢坯质证书 Bll_RandomNumber randomnumber = new Bll_RandomNumber(); DataTable gpdt = tmd_dispatchdetails.GetZJBList(sendcode).Tables[0]; for (int i = 0; i < gpdt.Rows.Count; i++) { if (gpdt.Rows[i]["N_STATUS"].ToString() == "6")//钢坯 { bool res = trc_roll_prodcut.ExistsZZS(sendcode, gpdt.Rows[i]["C_BATCH_NO"].ToString(), gpdt.Rows[i]["C_STOVE"].ToString()); //检查是否重复批次 if (!res) { DataTable dtroll = trc_roll_prodcut.GetZZS("", "", sendcode, "", "", gpdt.Rows[i]["C_BATCH_NO"].ToString(), "", "", "N", gpdt.Rows[i]["N_STATUS"].ToString(), gpdt.Rows[i]["C_STOVE"].ToString(), "").Tables[0]; if (dtroll.Rows.Count > 0) { DataTable dtCustStd = trc_roll_prodcut.GetCustStd_JH(dtroll.Rows[0]["C_STD_CODE"].ToString(), dtroll.Rows[0]["C_STL_GRD"].ToString(), dtroll.Rows[0]["C_ZYX1"].ToString(), dtroll.Rows[0]["C_ZYX2"].ToString()).Tables[0]; DataTable dtJSXYH = trc_roll_prodcut.GetCustStd_JH(dtroll.Rows[0]["C_STD_CODE"].ToString(), dtroll.Rows[0]["C_STL_GRD"].ToString(), dtroll.Rows[0]["C_TECH_PROT"].ToString(), dtroll.Rows[0]["C_ZYX1"].ToString(), dtroll.Rows[0]["C_ZYX2"].ToString()).Tables[0]; #region //添加参数 Mod_TQC_ZZS_INFO mod = new Mod_TQC_ZZS_INFO(); mod.C_FYDH = sendcode; mod.C_BATCH_NO = dtroll.Rows[0]["C_BATCH_NO"].ToString(); mod.C_STOVE = dtroll.Rows[0]["C_STOVE"].ToString(); mod.C_SPEC = dtroll.Rows[0]["C_SPEC"].ToString(); mod.C_STL_GRD = dtroll.Rows[0]["C_STL_GRD"].ToString(); mod.C_STD_CODE = dtroll.Rows[0]["C_STD_CODE"].ToString(); mod.D_CKSJ = Convert.ToDateTime(dtroll.Rows[0]["D_CKSJ"].ToString()); mod.N_JZ = Convert.ToDecimal(dtroll.Rows[0]["N_WGT"].ToString()); mod.N_NUM = Convert.ToDecimal(dtroll.Rows[0]["QUA"].ToString()); mod.C_CH = dtroll.Rows[0]["C_CH"].ToString(); mod.C_ZSH = randomnumber.GetZSH(); //证书号 mod.C_QZR = "01"; //签证人 #region //生成二维码 string msg = $@"http://60.6.254.51:808/Common/qualCert.aspx?fyd={mod.C_FYDH}&zsh={mod.C_ZSH}"; Bitmap bt = GenByZXingNet(msg); //调用生成二维码方法 mod.C_IMG = $@"D:/QRCode/{mod.C_ZSH}.jpg"; //生成二维码图片命名 string upPath = $@"~/QRCode/{mod.C_ZSH}.jpg"; bt.Save(Server.MapPath(upPath));//保存二维码图片 #endregion Mod_TS_CUSTFILE mod_TS_CUSTFILE = ts_custfile.GetCustModel(dtroll.Rows[0]["C_CGC"].ToString()); mod.C_CUST_NO = mod_TS_CUSTFILE.C_NO; mod.C_CON_NO = dtroll.Rows[0]["C_CON_NO"].ToString(); mod.C_CUST_NAME = dtroll.Rows[0]["C_CUST_NAME"].ToString(); mod.C_SH_NAME = mod_TS_CUSTFILE.C_NAME; mod.C_MAT_NAME = dtroll.Rows[0]["C_MAT_DESC"].ToString(); mod.C_STD_JH = dtCustStd.Rows[0]["C_STD_JH"].ToString(); mod.C_ZLDJ = dtroll.Rows[0]["C_JUDGE_LEV_ZH"].ToString(); mod.C_JH_STATE = dtroll.Rows[0]["C_JH_STATE"].ToString(); mod.C_JSXYH = dtJSXYH.Rows[0]["C_JSXYH"].ToString(); mod.C_XKZH = dtroll.Rows[0]["C_XKZH"].ToString(); mod.C_BY1 = gpdt.Rows[i]["N_STATUS"].ToString(); #endregion trc_roll_prodcut.InsertZZS(mod); } } } } #endregion } } catch (Exception ex) { logger.Info("生成钢坯质证失败" + ex.Message); } }
//添加 protected void btnAdd_Click(object sender, EventArgs e) { try { Mod_TMO_CON modCon = tmo_con.GetModel(ltlCon_No.Text); Mod_TS_CUSTFILE modCust = ts_custfile.GetCustModel(modCon.C_CUSTOMERID); List <Mod_TMO_ORDER> orderList = new List <Mod_TMO_ORDER>(); for (int i = 0; i < rptList.Items.Count; i++) { HtmlInputCheckBox cbxSelect = (HtmlInputCheckBox)rptList.Items[i].FindControl("chkMat_Code"); //物料ID Literal ltlmatcode = (Literal)rptList.Items[i].FindControl("ltlmatcode"); //物料编码 Literal ltlmatname = (Literal)rptList.Items[i].FindControl("ltlmatname"); //物料名称 Literal ltlstlgrd = (Literal)rptList.Items[i].FindControl("ltlstlgrd"); //钢种 Literal ltlspec = (Literal)rptList.Items[i].FindControl("ltlspec"); //规格 Literal ltlC_CUST_TECH_PROT = (Literal)rptList.Items[i].FindControl("ltlC_CUST_TECH_PROT"); //客户协议 Literal ltlC_STD_CODE = (Literal)rptList.Items[i].FindControl("ltlC_STD_CODE"); //执行标准 Literal ltlzyx1 = (Literal)rptList.Items[i].FindControl("ltlzyx1"); //自由项1 Literal ltlzyx2 = (Literal)rptList.Items[i].FindControl("ltlzyx2"); //自由项2 Literal ltlC_IS_BXG = (Literal)rptList.Items[i].FindControl("ltlC_IS_BXG"); //是否不锈钢 if (cbxSelect.Checked) { #region Insert Mod_TB_MATRL_MAIN modMat = tb_matrl_main.GetModel(cbxSelect.Value); Mod_TMO_ORDER modOrder = new Mod_TMO_ORDER(); string order_no = randomnumber.CreateOrderNo(ltlCon_No.Text); //订单号 modOrder.C_ORDER_NO = order_no; modOrder.C_CON_NO = modCon.C_CON_NO; //合同号 modOrder.C_CON_NAME = modCon.C_CON_NAME; //合同名称 modOrder.C_AREA = modCon.C_AREA; //区域 modOrder.C_INVBASDOCID = modMat.C_PK_INVBASDOC; //存货档案主键 modOrder.C_INVENTORYID = modMat.C_PK_INVMANDOC; //存货管理档案主键 modOrder.C_PROD_NAME = modMat.C_PROD_NAME; //品名 modOrder.C_PROD_KIND = modMat.C_PROD_KIND; //品种 modOrder.C_MAT_CODE = modMat.C_MAT_CODE; //物料编码 modOrder.C_MAT_NAME = modMat.C_MAT_NAME; //物料名称 modOrder.C_SPEC = modMat.C_SPEC; //规格 modOrder.C_STL_GRD = modMat.C_STL_GRD; //钢种 modOrder.C_FUNITID = modMat.C_FJLDW; // "jlda0000000000000041";//辅单位 modOrder.C_UNITID = modMat.C_PK_MEASDOC; //主计量单位 //modOrder.D_NEED_DT = modCon.D_CONINVALID_DT;//需求日期 modOrder.D_DELIVERY_DT = modCon.D_CONINVALID_DT; //计划收货日期 modOrder.D_DT = DateTime.Now; //订单日期 modOrder.C_TECH_PROT = ltlC_CUST_TECH_PROT.Text; //客户协议号 modOrder.C_FREE1 = ltlzyx1.Text; //自由项1 modOrder.C_FREE2 = ltlzyx2.Text; //自由项2 modOrder.C_STD_CODE = ltlC_STD_CODE.Text; //执行标准 modOrder.C_BY4 = ltlC_IS_BXG.Text; //是否不锈钢 //modOrder.C_PACK = pack;//包装要求 decimal N_WGT = 0; modOrder.N_WGT = N_WGT; //数量 modOrder.N_HSL = modMat.N_HSL == null ? 0 : modMat.N_HSL; //换算率 modOrder.N_FNUM = modMat.N_HSL == null ? 1 : N_WGT / modMat.N_HSL; //辅数量 modOrder.C_RECEIPTCORPID = modCon.C_CRECEIPTAREAID; //收货地区 modOrder.C_RECEIVEADDRESS = modCon.C_ADDRESS; //收货地址 modOrder.C_RECEIPTCORPID = modCon.C_CRECEIPTCUSTOMERID; //收货单位 modOrder.C_CURRENCYTYPEID = modCon.C_CURRENCYTYPEID; //货币 modOrder.N_TYPE = Convert.ToDecimal(modMat.C_MAT_TYPE); modOrder.N_USER_LEV = modCon.N_CUST_LEV; //客户等级 modOrder.C_CUST_SQ = modCon.C_REAMRK; //客户要求 modOrder.C_EMP_ID = ltlC_EMP_ID.Text; //操作人ID modOrder.C_EMP_NAME = ltlC_EMP_NAME.Text; //操作人姓名 modOrder.C_CUST_NO = modCon.C_CUST_NO; //客户编码 modOrder.C_CUST_NAME = modCon.C_CUSTNAME; //客户名称 modOrder.C_SALE_CHANNEL = modCust.N_TYPE == 1 ? "经销" : "直销"; modOrder.C_LEV = GetLev("STL_GRD_Lev"); //钢种等级 modOrder.C_ORDER_LEV = GetLev("Order_Lev"); //订单等级 modOrder.N_COST = 0; //成本 modOrder.N_STATUS = 0; //待审 Mod_TMB_TAXITEMS modTaxi = tmb_taxitems.GetModel(modMat.C_PK_TAXITEMS); modOrder.N_TAXRATE = modTaxi.N_TAXRATIO; //税率 modOrder.C_VDEF1 = modMat.C_MAT_TYPE == "6" ? "1001NC100000000052Z3" : "1016NC10000000000V1A"; //质量等级 #region //获取钢种单价-折扣-税率 decimal Price = 0; decimal N_TAXRATE = Convert.ToDecimal(modOrder.N_TAXRATE) + 1; //税率 decimal N_ORIGINALCURPRICE = Convert.ToDecimal(Price) / N_TAXRATE; //原币无税单价 decimal N_ORIGINALCURTAXPRICE = Convert.ToDecimal(Price); //原币含税单价 decimal N_ORIGINALCURMNY = decimal.Round(N_WGT * N_ORIGINALCURPRICE, 2); //原币无税金额 decimal N_ORIGINALCURSUMMNY = N_WGT * N_ORIGINALCURTAXPRICE; //原币价税合计 decimal N_ORIGINALCURTAXMNY = decimal.Round(N_ORIGINALCURSUMMNY - N_ORIGINALCURMNY, 2); //原币税额 modOrder.N_ORIGINALCURPRICE = N_ORIGINALCURPRICE; //原币无税单价 modOrder.N_ORIGINALCURTAXPRICE = N_ORIGINALCURTAXPRICE; //原币含税单价 modOrder.N_ORIGINALCURTAXMNY = N_ORIGINALCURTAXMNY; //原币税额 modOrder.N_ORIGINALCURMNY = N_ORIGINALCURMNY; //原币无税金额 modOrder.N_ORIGINALCURSUMMNY = N_ORIGINALCURSUMMNY; //原币价税合计 #endregion orderList.Add(modOrder); #endregion } } if (tmo_con.InsertFirstOrder(orderList)) { ScriptManager.RegisterStartupScript(UpdatePanel1, this.Page.GetType(), "", "window.parent.document.getElementById('imgbtnJz').click();window.parent.close();", true); } } catch (Exception ex) { ScriptManager.RegisterStartupScript(UpdatePanel1, this.Page.GetType(), "", "alert('" + ex.Message + "')", true); } }
public AjaxResult ConEdit([FromBody] dynamic Json) { #region //参数 string ConNo = Json.ConNo; //合同号 string ConName = Json.ConName; //合同名称 string ConType = Json.ConType; //合同类型ID string Currency = Json.Currency; //货币类型ID string ConsingDT = Json.ConsingDT; //签署日期 string ConeffeDT = Json.ConeffeDT; //计划有效日期 string ConinvalidDT = Json.ConinvalidDT; //计划失效日期 string ShipVia = Json.ShipVia; //发运方式ID string Remark = Json.Remark; //备注 string CGCID = Json.CGCID; //收货单位ID string STATION = Json.STATION; //站点 string SalesEmpID = Json.SalesEmpID; //业务员ID string Addr = Json.Addr; //收货地址 string OTCID = Json.OTCID; //开票单位 #endregion #region //数据操作 AjaxResult result = new AjaxResult(); if (!string.IsNullOrEmpty(ConNo)) { List <Mod_TMO_ORDER> orderList = new List <Mod_TMO_ORDER>(); DataTable dt = ts_user.GetSaleDept(SalesEmpID).Tables[0]; Mod_TMO_CON mod = tmo_con.GetModel(ConNo); mod.C_CON_NAME = ConName; //合同名称 mod.C_CONTYPEID = ConType; //合同类型 mod.C_CURRENCYTYPEID = Currency; //货币类型ID mod.D_CONSING_DT = Convert.ToDateTime(ConsingDT); //签署日期 mod.D_CONEFFE_DT = Convert.ToDateTime(ConeffeDT); //计划有效日期 mod.D_CONINVALID_DT = Convert.ToDateTime(ConinvalidDT); //计划失效日期 mod.C_TRANSMODEID = ShipVia; //发运方式ID mod.C_AREA = dt.Rows[0]["AREA"].ToString(); //合同区域 mod.C_CRECEIPTCUSTOMERID = CGCID; //收货单位 mod.C_CRECEIPTCORPID = OTCID; //开票单位 mod.C_STATION = STATION; //站点 mod.C_EMPLOYEEID = SalesEmpID; //业务员 mod.C_DEPTID = dt.Rows[0]["C_DEPTID"].ToString(); //业务部门 mod.C_REAMRK = Remark; //备注 mod.N_CHANGENUM = 0; //合同变更次数 if (!string.IsNullOrEmpty(CGCID)) { Mod_TS_CUSTFILE modCust = ts_custfile.GetCustModel(CGCID); mod.C_CRECEIPTCUSTOMERID = CGCID; //收货单位 mod.C_ADDRESS = Addr; //收货地址 mod.C_CRECEIPTAREAID = modCust.C_AREATYPE; //收货地区 } if (tmo_con.UpdateConOrder(mod, orderList)) { result.Code = DoResult.Success; result.Result = "编辑成功"; } else { result.Code = DoResult.Failed; result.Result = "编辑失败"; } } else { result.Code = DoResult.Failed; result.Result = "编辑失败"; } #endregion return(result); }
/// <summary> /// 发送实绩给NC /// </summary> /// <param name="xmlFileName">xml完整路径</param> /// <returns></returns> public bool SendXml_DM(string xmlFileName, string code) { try { Mod_TMD_DISPATCH modDispatch = tmd_dispatch.GetModel(code); 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", "7F"); root.SetAttribute("filename", "" + code + ".xml"); root.SetAttribute("isexchange", "Y"); root.SetAttribute("operation", "req"); root.SetAttribute("proc", "update"); 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"); bill.SetAttribute("id", modDispatch.C_GUID);//发运单表头主键 root.AppendChild(bill); XmlNode head = xmlDoc.CreateNode(XmlNodeType.Element, "bill_head", null); #region //表头_order_head CreateNode(xmlDoc, head, "apprdate", Convert.ToDateTime(modDispatch.D_APPROVE_DT).ToString("yyy-MM-dd")); //发运审批日期 CreateNode(xmlDoc, head, "bconfirm", "N"); CreateNode(xmlDoc, head, "billdate", Convert.ToDateTime(modDispatch.D_CREATE_DT).ToString("yyy-MM-dd")); //制单日期 CreateNode(xmlDoc, head, "billnewaddtime", Convert.ToDateTime(modDispatch.D_CREATE_DT).ToString("yyy-MM-dd HH:mm:ss")); CreateNode(xmlDoc, head, "bisopen", ""); CreateNode(xmlDoc, head, "bmissionbill", "N"); CreateNode(xmlDoc, head, "bmustreturnbillcode", ""); CreateNode(xmlDoc, head, "btestbyinvoice", ""); CreateNode(xmlDoc, head, "clastmodifierid", modDispatch.C_EMP_ID);//最后修改人 CreateNode(xmlDoc, head, "clastmodiname", ""); CreateNode(xmlDoc, head, "curbilltype", ""); CreateNode(xmlDoc, head, "dallpacknum", "0"); CreateNode(xmlDoc, head, "dallvolumn", "0"); CreateNode(xmlDoc, head, "dallweight", "0"); CreateNode(xmlDoc, head, "dfactweight", ""); CreateNode(xmlDoc, head, "dr", "0"); CreateNode(xmlDoc, head, "dtotal", ""); CreateNode(xmlDoc, head, "employee", ""); CreateNode(xmlDoc, head, "h_confirmarrivedate", ""); CreateNode(xmlDoc, head, "iprintcount", ""); CreateNode(xmlDoc, head, "isendtype", "3");//运费类别 CreateNode(xmlDoc, head, "linkman1", ""); CreateNode(xmlDoc, head, "oprdepartname", ""); CreateNode(xmlDoc, head, "phone1", ""); CreateNode(xmlDoc, head, "pk_defdoc0", modDispatch.C_IS_WIRESALE_ID); //是否线材销售主键 CreateNode(xmlDoc, head, "pk_defdoc1", ""); CreateNode(xmlDoc, head, "pk_defdoc10", ""); CreateNode(xmlDoc, head, "pk_defdoc11", ""); CreateNode(xmlDoc, head, "pk_defdoc12", ""); CreateNode(xmlDoc, head, "pk_defdoc13", ""); CreateNode(xmlDoc, head, "pk_defdoc14", ""); CreateNode(xmlDoc, head, "pk_defdoc15", ""); CreateNode(xmlDoc, head, "pk_defdoc16", ""); CreateNode(xmlDoc, head, "pk_defdoc17", ""); CreateNode(xmlDoc, head, "pk_defdoc18", ""); CreateNode(xmlDoc, head, "pk_defdoc19", ""); CreateNode(xmlDoc, head, "pk_defdoc2", ""); CreateNode(xmlDoc, head, "pk_defdoc3", ""); CreateNode(xmlDoc, head, "pk_defdoc4", ""); CreateNode(xmlDoc, head, "pk_defdoc5", ""); CreateNode(xmlDoc, head, "pk_defdoc6", ""); CreateNode(xmlDoc, head, "pk_defdoc7", ""); CreateNode(xmlDoc, head, "pk_defdoc8", ""); CreateNode(xmlDoc, head, "pk_defdoc9", ""); CreateNode(xmlDoc, head, "pk_delivbill_h", ""); //发运单表头主键modDispatch.C_GUID CreateNode(xmlDoc, head, "pkapprperson", ""); CreateNode(xmlDoc, head, "pkbillperson", modDispatch.C_CREATE_ID); //制单人 CreateNode(xmlDoc, head, "pkcorpforgenoid", "1001"); //公司编码 CreateNode(xmlDoc, head, "pkdelivmode", modDispatch.C_SHIPVIA); //发运方式主键 CreateNode(xmlDoc, head, "pkdelivorg", "1001NC10000000006EHS"); //发运组织主键固定 CreateNode(xmlDoc, head, "pkdelivroute", "1001NC10000000006EHV"); //发运路线主键 固定 CreateNode(xmlDoc, head, "pkdriver", ""); CreateNode(xmlDoc, head, "pkoperator", modDispatch.C_BUSINESS_ID); //业务员主键 CreateNode(xmlDoc, head, "pkoprdepart", modDispatch.C_BUSINESS_DEPT); //业务部门主键 CreateNode(xmlDoc, head, "pksendperson", ""); CreateNode(xmlDoc, head, "pktrancust", modDispatch.C_COMCAR); //承运商 CreateNode(xmlDoc, head, "pktranorg", ""); CreateNode(xmlDoc, head, "pkvehicle", ""); CreateNode(xmlDoc, head, "pkvehicletype", ""); CreateNode(xmlDoc, head, "returndate", ""); CreateNode(xmlDoc, head, "returntime", ""); CreateNode(xmlDoc, head, "senddate", Convert.ToDateTime(modDispatch.D_DISP_DT).ToString("yyy-MM-dd"));//发运日期 CreateNode(xmlDoc, head, "startdate", ""); CreateNode(xmlDoc, head, "starttime", ""); CreateNode(xmlDoc, head, "taudittime", ""); CreateNode(xmlDoc, head, "tlastmodifytime", Convert.ToDateTime(modDispatch.D_MOD_DT).ToString("yyy-MM-dd HH:mm:ss")); //最后修改时间 CreateNode(xmlDoc, head, "tmaketime", Convert.ToDateTime(modDispatch.D_CREATE_DT).ToString("yyy-MM-dd HH:mm:ss")); // 制单时间 CreateNode(xmlDoc, head, "ts", Convert.ToDateTime(modDispatch.D_CREATE_DT).ToString("yyy-MM-dd HH:mm:ss")); CreateNode(xmlDoc, head, "userid", modDispatch.C_CREATE_ID); //制单人 CreateNode(xmlDoc, head, "vapprpersonname", ""); CreateNode(xmlDoc, head, "vbillpersonname", ""); CreateNode(xmlDoc, head, "vdelivbillcode", modDispatch.C_ID);//发运单单据号 CreateNode(xmlDoc, head, "vdoname", ""); CreateNode(xmlDoc, head, "vdrivername", ""); CreateNode(xmlDoc, head, "vehiclelicense", ""); CreateNode(xmlDoc, head, "vnote", ""); CreateNode(xmlDoc, head, "voldDelivbillcode", ""); CreateNode(xmlDoc, head, "vroutedescr", ""); CreateNode(xmlDoc, head, "vroutename", ""); CreateNode(xmlDoc, head, "vsendtypename", ""); CreateNode(xmlDoc, head, "vtranname", ""); CreateNode(xmlDoc, head, "vtranorgname", ""); CreateNode(xmlDoc, head, "vuserdef0", modDispatch.C_IS_WIRESALE);// 是否线材销售 是/ 否 CreateNode(xmlDoc, head, "vuserdef1", ""); CreateNode(xmlDoc, head, "vuserdef10", ""); CreateNode(xmlDoc, head, "vuserdef11", ""); CreateNode(xmlDoc, head, "vuserdef12", ""); CreateNode(xmlDoc, head, "vuserdef13", ""); CreateNode(xmlDoc, head, "vuserdef14", ""); CreateNode(xmlDoc, head, "vuserdef15", ""); CreateNode(xmlDoc, head, "vuserdef16", ""); CreateNode(xmlDoc, head, "vuserdef17", ""); CreateNode(xmlDoc, head, "vuserdef18", ""); CreateNode(xmlDoc, head, "vuserdef19", ""); CreateNode(xmlDoc, head, "vuserdef2", ""); CreateNode(xmlDoc, head, "vuserdef3", "Y"); //是否已导出 CreateNode(xmlDoc, head, "vuserdef4", modDispatch.C_LIC_PLA_NO); //车牌号 CreateNode(xmlDoc, head, "vuserdef5", ""); CreateNode(xmlDoc, head, "vuserdef6", modDispatch.C_ATSTATION); //到站 CreateNode(xmlDoc, head, "vuserdef7", ""); CreateNode(xmlDoc, head, "vuserdef8", ""); CreateNode(xmlDoc, head, "vuserdef9", ""); CreateNode(xmlDoc, head, "vvehiclename", ""); CreateNode(xmlDoc, head, "vvhcltypename", ""); #endregion bill.AppendChild(head); XmlElement body = xmlDoc.CreateElement("bill_body"); bill.AppendChild(body); DataTable dt = tmd_dispatchdetails.GetList(code).Tables[0]; if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { int rowno = i + 1; Mod_TMP_DAYPLAN modDayPlan = tmp_dayplan.GetModelID(dt.Rows[i]["C_PLAN_ID"].ToString()); if (modDayPlan != null) { #region //实体参数 Mod_TMO_ORDER modOrder = tmo_order.GetModel(modDayPlan.C_PKBILLB); Mod_TS_CUSTFILE modCust = ts_custfile.GetCustModel(modDayPlan.C_PKCUST); //客户档案 //Mod_TMB_AREA modArea = tmb_area.GetModel(modDayPlan.C_PKARRIVEAREA);//区域 Mod_TB_MATRL_MAIN modMat = tb_matrl_main.GetMatModel(modDayPlan.C_PKINV); //物料 Mod_TMD_DISPATCHDETAILS modFYD = tmd_dispatchdetails.GetModel(dt.Rows[i]["C_ID"].ToString()); string pkstock = modFYD.C_SEND_STOCK_PK;//仓库编码 string addrpk = ""; DataTable dtaddress = tmb_area.GetAreaAddress(modFYD.C_SEND_AREA).Tables[0]; if (dtaddress.Rows.Count > 0) { addrpk = dtaddress.Rows[0]["PK_ADDRESS"].ToString(); } #endregion string NCCHECKID = modFYD.C_QUALIRY_LEV; //质量等级 string C_BATCH_NO = string.Empty; //批号 //if (!string.IsNullOrEmpty(dt.Rows[i]["C_BATCH_NO"].ToString())) //{ // C_BATCH_NO = dt.Rows[i]["C_BATCH_NO"].ToString();//批号 //} //else //{ // C_BATCH_NO = dt.Rows[i]["C_STOVE"].ToString();//炉号 //} decimal dunitprice = Convert.ToDecimal(modDayPlan.N_UNITPRICE); //含税单价 decimal N_JZ = Convert.ToDecimal(modFYD.N_JWGT); //净重 string wgt = Convert.ToString(modFYD.N_WGT); //计划重量 string num = Convert.ToString(modFYD.N_FYZS); //件数 decimal dmoney = dunitprice * N_JZ; //订单金额 XmlNode item = xmlDoc.CreateNode(XmlNodeType.Element, "item", null); #region //表体_item CreateNode(xmlDoc, item, "bappendent", ""); CreateNode(xmlDoc, item, "bcloseout", ""); CreateNode(xmlDoc, item, "bcloseout_old", ""); CreateNode(xmlDoc, item, "blargess", "N"); CreateNode(xmlDoc, item, "borderreturn", "N"); CreateNode(xmlDoc, item, "breceiveinform", ""); CreateNode(xmlDoc, item, "bsigned", ""); CreateNode(xmlDoc, item, "btestbyinvoice", ""); CreateNode(xmlDoc, item, "carrivecorpname", ""); CreateNode(xmlDoc, item, "cbiztype", modDayPlan.C_BIZTYPE); //业务类型 CreateNode(xmlDoc, item, "ccheckstate_bid", NCCHECKID); //实绩质量等级 CreateNode(xmlDoc, item, "ccheckstatename", ""); CreateNode(xmlDoc, item, "cfreezeid", ""); CreateNode(xmlDoc, item, "cinvmanid", ""); CreateNode(xmlDoc, item, "confirmarrivedate", ""); CreateNode(xmlDoc, item, "cquoteunitid", modDayPlan.C_UNITID); //报价计量单位ID CreateNode(xmlDoc, item, "cquoteunitname", ""); CreateNode(xmlDoc, item, "creceiptcorp", GetCust(modFYD.C_CGC)); //收货单位名称 CreateNode(xmlDoc, item, "creceiptcorpid", modFYD.C_CGC); //收货单位 CreateNode(xmlDoc, item, "csendcorp", ""); CreateNode(xmlDoc, item, "csendcorpid", ""); CreateNode(xmlDoc, item, "dcancelassistnum", ""); CreateNode(xmlDoc, item, "dcancelnum", ""); CreateNode(xmlDoc, item, "dfee", ""); CreateNode(xmlDoc, item, "dfeeitem", ""); CreateNode(xmlDoc, item, "dinvassist", num); //辅数量-件数 CreateNode(xmlDoc, item, "dinvnum", wgt); //计划重量 CreateNode(xmlDoc, item, "dinvweight", ""); CreateNode(xmlDoc, item, "dmileage", ""); CreateNode(xmlDoc, item, "dmoney", dmoney.ToString());//订单金额 CreateNode(xmlDoc, item, "doutassistnum", ""); CreateNode(xmlDoc, item, "doutnum", ""); CreateNode(xmlDoc, item, "doutnummargin", ""); CreateNode(xmlDoc, item, "dpackboxnum", ""); CreateNode(xmlDoc, item, "dpacknum", ""); CreateNode(xmlDoc, item, "dpackvolumn", ""); CreateNode(xmlDoc, item, "dpackweight", ""); CreateNode(xmlDoc, item, "dr", "0"); CreateNode(xmlDoc, item, "dreturnassistnum", ""); CreateNode(xmlDoc, item, "dreturnnum", ""); CreateNode(xmlDoc, item, "dsignasnum", ""); CreateNode(xmlDoc, item, "dsignassistnum", ""); CreateNode(xmlDoc, item, "dsignnum", ""); CreateNode(xmlDoc, item, "dsourcerow", ""); CreateNode(xmlDoc, item, "dtotalout", ""); CreateNode(xmlDoc, item, "dunitprice", dunitprice.ToString());//含税单价 CreateNode(xmlDoc, item, "dvolumn", ""); CreateNode(xmlDoc, item, "dwaylossasnum", ""); CreateNode(xmlDoc, item, "dwaylossnum", ""); CreateNode(xmlDoc, item, "hsl", ""); CreateNode(xmlDoc, item, "iattitude", ""); CreateNode(xmlDoc, item, "ibatchstatus", "0"); CreateNode(xmlDoc, item, "ibetimes", ""); CreateNode(xmlDoc, item, "iloadnum", ""); CreateNode(xmlDoc, item, "ilockstatus", ""); CreateNode(xmlDoc, item, "ionroadtime", ""); CreateNode(xmlDoc, item, "ipacking", ""); CreateNode(xmlDoc, item, "irownumber", rowno.ToString());//行号 CreateNode(xmlDoc, item, "irowstatus", "0"); CreateNode(xmlDoc, item, "ischeckatp", "N"); CreateNode(xmlDoc, item, "linkman1", ""); CreateNode(xmlDoc, item, "nassistnetwgt", num); //实发辅数量 CreateNode(xmlDoc, item, "nfeedbacknum", wgt); //回写上游数量 CreateNode(xmlDoc, item, "nnetwgt", N_JZ.ToString()); //净重 CreateNode(xmlDoc, item, "nquoteunitnum", wgt); //报价计量单位数量?-存货数量 CreateNode(xmlDoc, item, "nquoteunitrate", "1"); //报价计量单位换算率固定 CreateNode(xmlDoc, item, "ntotalshouldoutnum", ""); CreateNode(xmlDoc, item, "orderplantime", ""); CreateNode(xmlDoc, item, "packsortcode", ""); CreateNode(xmlDoc, item, "packsortname", ""); CreateNode(xmlDoc, item, "phone1", "");//****? CreateNode(xmlDoc, item, "pk_corp", ""); CreateNode(xmlDoc, item, "pk_defdoc0", ""); CreateNode(xmlDoc, item, "pk_defdoc1", ""); CreateNode(xmlDoc, item, "pk_defdoc10", ""); CreateNode(xmlDoc, item, "pk_defdoc11", ""); CreateNode(xmlDoc, item, "pk_defdoc12", ""); CreateNode(xmlDoc, item, "pk_defdoc13", ""); CreateNode(xmlDoc, item, "pk_defdoc14", ""); CreateNode(xmlDoc, item, "pk_defdoc15", ""); CreateNode(xmlDoc, item, "pk_defdoc16", ""); CreateNode(xmlDoc, item, "pk_defdoc17", ""); CreateNode(xmlDoc, item, "pk_defdoc18", ""); CreateNode(xmlDoc, item, "pk_defdoc19", ""); CreateNode(xmlDoc, item, "pk_defdoc2", ""); CreateNode(xmlDoc, item, "pk_defdoc3", ""); CreateNode(xmlDoc, item, "pk_defdoc4", ""); CreateNode(xmlDoc, item, "pk_defdoc5", ""); CreateNode(xmlDoc, item, "pk_defdoc6", ""); CreateNode(xmlDoc, item, "pk_defdoc7", ""); CreateNode(xmlDoc, item, "pk_defdoc8", ""); CreateNode(xmlDoc, item, "pk_defdoc9", ""); CreateNode(xmlDoc, item, "pk_delivbill_b", ""); //置空 CreateNode(xmlDoc, item, "pk_delivbill_h", ""); CreateNode(xmlDoc, item, "pk_invbasdoc", modOrder.C_INVBASDOCID); //存货档案主键 CreateNode(xmlDoc, item, "pk_packsort", ""); CreateNode(xmlDoc, item, "pk_transcontainer", ""); CreateNode(xmlDoc, item, "pkarriveaddress", addrpk); //到货地点 CreateNode(xmlDoc, item, "pkarrivearea", modFYD.C_SEND_AREA); //到货地区主键 CreateNode(xmlDoc, item, "pkarrivecorp", ""); CreateNode(xmlDoc, item, "pkassistmeasure", modOrder.C_FUNITID); //辅计量单位 CreateNode(xmlDoc, item, "pkbasinv", modOrder.C_INVBASDOCID); //存货档案主键 CreateNode(xmlDoc, item, "pkbasreceiptcorp", modCust.C_NC_ID); //客户主键 CreateNode(xmlDoc, item, "pkbassendcorp", ""); CreateNode(xmlDoc, item, "pkconsign", ""); CreateNode(xmlDoc, item, "pkcorpforgenoid", modDayPlan.C_PKSALECORP); //销售公司(1001) CreateNode(xmlDoc, item, "pkcusbasdoc", modCust.C_NC_ID); //客户主键 CreateNode(xmlDoc, item, "pkcusmandoc", modDayPlan.C_PKCUST); //客户管理主键 CreateNode(xmlDoc, item, "pkcustinvoice", ""); CreateNode(xmlDoc, item, "pkdayplan", ""); CreateNode(xmlDoc, item, "pkdestrep", ""); CreateNode(xmlDoc, item, "pkdeststockorg", ""); CreateNode(xmlDoc, item, "pkinv", modOrder.C_INVENTORYID);//存货管理档案主键 CreateNode(xmlDoc, item, "pkinvoice", ""); CreateNode(xmlDoc, item, "pkitem", ""); CreateNode(xmlDoc, item, "pkitemperiod", ""); CreateNode(xmlDoc, item, "pkoperator", modDayPlan.C_PKOPERATOR); //业务员ID CreateNode(xmlDoc, item, "pkoprdepart", modDayPlan.C_PKOPRDEPART); //业务员部门 CreateNode(xmlDoc, item, "pkorder", ""); CreateNode(xmlDoc, item, "pkorderplanid", ""); CreateNode(xmlDoc, item, "pkorderrow", ""); CreateNode(xmlDoc, item, "pkpackboxtype", ""); CreateNode(xmlDoc, item, "pksalecorp", "1001"); CreateNode(xmlDoc, item, "pksalegrp", modDayPlan.C_PKSALEORG); //销售组织主键 CreateNode(xmlDoc, item, "pksendaddress", "0001AA1000000002LFNT"); //发货地点 CreateNode(xmlDoc, item, "pksendarea", "dqda0000000000000057"); //发货地区 CreateNode(xmlDoc, item, "pksendstock", pkstock); //仓库 CreateNode(xmlDoc, item, "pksendstockorg", "1001NC10000000000669"); //发货库存组织主键-固定 CreateNode(xmlDoc, item, "pksrccalbodyar", ""); CreateNode(xmlDoc, item, "pkunit", ""); CreateNode(xmlDoc, item, "plantime", ""); CreateNode(xmlDoc, item, "receivedate", ""); CreateNode(xmlDoc, item, "requireday", Convert.ToDateTime(modDayPlan.D_REQUIREDATE).ToString("yyy-MM-dd")); //要求到货日期 CreateNode(xmlDoc, item, "sourcebillts", ""); CreateNode(xmlDoc, item, "ts", ""); //HH:mm:ss CreateNode(xmlDoc, item, "ufdtmp", ""); CreateNode(xmlDoc, item, "userid", ""); CreateNode(xmlDoc, item, "varriveaddress", "其他地区"); CreateNode(xmlDoc, item, "vassistmeaname", ""); CreateNode(xmlDoc, item, "vbatchcode", C_BATCH_NO);//批号 CreateNode(xmlDoc, item, "vbilltype", "30"); CreateNode(xmlDoc, item, "vbilltypename", ""); CreateNode(xmlDoc, item, "vcargcode", ""); CreateNode(xmlDoc, item, "vconsign", ""); CreateNode(xmlDoc, item, "vcontainername", ""); CreateNode(xmlDoc, item, "vcustcode", modCust.C_NO); //客户编码 CreateNode(xmlDoc, item, "vcustname", modCust.C_NAME); //客户名称 CreateNode(xmlDoc, item, "vdayplancode", modDayPlan.C_PLCODE); //对应日计划单据号 CreateNode(xmlDoc, item, "vdestaddress", modFYD.C_AREA); //收货地址 CreateNode(xmlDoc, item, "vdestarea", modFYD.C_SEND_AREA); //收货地区 CreateNode(xmlDoc, item, "vdeststoreaddre", ""); CreateNode(xmlDoc, item, "vdeststorename", ""); CreateNode(xmlDoc, item, "vdeststoreorgname", ""); CreateNode(xmlDoc, item, "vfree0", ""); CreateNode(xmlDoc, item, "vfree1", modDayPlan.C_VFREE1); //自由项1 CreateNode(xmlDoc, item, "vfree10", modFYD.C_ID); //CRM发运单表体主键//C_PK_NCID CreateNode(xmlDoc, item, "vfree2", modDayPlan.C_VFREE2); //自由项2 CreateNode(xmlDoc, item, "vfree3", ""); //包装 CreateNode(xmlDoc, item, "vfree4", ""); CreateNode(xmlDoc, item, "vfree5", ""); CreateNode(xmlDoc, item, "vfree6", ""); CreateNode(xmlDoc, item, "vfree7", ""); CreateNode(xmlDoc, item, "vfree8", modDayPlan.C_ID); //CRM发运日计划主键 CreateNode(xmlDoc, item, "vfree9", modDispatch.C_GUID); // CRM发运单表头主键 CreateNode(xmlDoc, item, "vfreeid1", ""); CreateNode(xmlDoc, item, "vfreeid10", ""); CreateNode(xmlDoc, item, "vfreeid2", ""); CreateNode(xmlDoc, item, "vfreeid3", ""); CreateNode(xmlDoc, item, "vfreeid4", ""); CreateNode(xmlDoc, item, "vfreeid5", ""); CreateNode(xmlDoc, item, "vfreeid6", ""); CreateNode(xmlDoc, item, "vfreeid7", ""); CreateNode(xmlDoc, item, "vfreeid8", ""); CreateNode(xmlDoc, item, "vfreeid9", ""); CreateNode(xmlDoc, item, "vfreename1", ""); CreateNode(xmlDoc, item, "vfreename10", ""); CreateNode(xmlDoc, item, "vfreename2", ""); CreateNode(xmlDoc, item, "vfreename3", ""); CreateNode(xmlDoc, item, "vfreename4", ""); CreateNode(xmlDoc, item, "vfreename5", ""); CreateNode(xmlDoc, item, "vfreename6", ""); CreateNode(xmlDoc, item, "vfreename7", ""); CreateNode(xmlDoc, item, "vfreename8", ""); CreateNode(xmlDoc, item, "vfreename9", ""); CreateNode(xmlDoc, item, "vinvcode", ""); CreateNode(xmlDoc, item, "vinvname", ""); CreateNode(xmlDoc, item, "vinvoicecode", ""); CreateNode(xmlDoc, item, "vitemname", ""); CreateNode(xmlDoc, item, "vitemperiodname", ""); CreateNode(xmlDoc, item, "vnote", ""); CreateNode(xmlDoc, item, "voperatorname", ""); CreateNode(xmlDoc, item, "voprdepartname", ""); CreateNode(xmlDoc, item, "vordercode", modDayPlan.C_SALECODE);//销售单据号 CreateNode(xmlDoc, item, "vreceiptcorpname", ""); CreateNode(xmlDoc, item, "vsalecorpname", ""); CreateNode(xmlDoc, item, "vsaleorgname", ""); CreateNode(xmlDoc, item, "vsendaddr", ""); CreateNode(xmlDoc, item, "vsendaddress", ""); CreateNode(xmlDoc, item, "vsendarea", ""); CreateNode(xmlDoc, item, "vsendcorpname", ""); CreateNode(xmlDoc, item, "vsendstoreaddre", ""); CreateNode(xmlDoc, item, "vsendstorename", ""); CreateNode(xmlDoc, item, "vsendstoreorgaddre", ""); CreateNode(xmlDoc, item, "vsendstoreorgname", ""); CreateNode(xmlDoc, item, "vsignname", ""); CreateNode(xmlDoc, item, "vsignnote", ""); CreateNode(xmlDoc, item, "vspec", modMat.C_SPEC); //规格 CreateNode(xmlDoc, item, "vsrccalbodyarname", ""); CreateNode(xmlDoc, item, "vtype", modMat.C_STL_GRD); //钢种 CreateNode(xmlDoc, item, "vunit", modMat.C_ZJLDWMC); //主计量单位名称 CreateNode(xmlDoc, item, "vuserdef0", ""); CreateNode(xmlDoc, item, "vuserdef1", modFYD.C_MZDATE); //计量毛重日期***** CreateNode(xmlDoc, item, "vuserdef10", modDayPlan.C_CONNO); //合同号 CreateNode(xmlDoc, item, "vuserdef11", ""); CreateNode(xmlDoc, item, "vuserdef12", ""); CreateNode(xmlDoc, item, "vuserdef13", ""); CreateNode(xmlDoc, item, "vuserdef14", ""); CreateNode(xmlDoc, item, "vuserdef15", ""); CreateNode(xmlDoc, item, "vuserdef16", ""); CreateNode(xmlDoc, item, "vuserdef17", ""); CreateNode(xmlDoc, item, "vuserdef18", ""); CreateNode(xmlDoc, item, "vuserdef19", ""); CreateNode(xmlDoc, item, "vuserdef2", Convert.ToString(modFYD.N_MWGT)); //毛重***** CreateNode(xmlDoc, item, "vuserdef3", Convert.ToString(modFYD.C_PZDATE)); //计量皮重日期**** CreateNode(xmlDoc, item, "vuserdef4", Convert.ToString(modFYD.N_PWGT)); //皮重 CreateNode(xmlDoc, item, "vuserdef5", Convert.ToString(modFYD.N_JWGT)); // 净重 CreateNode(xmlDoc, item, "vuserdef6", Convert.ToString(modFYD.N_MZTIME)); //计量毛重时间 CreateNode(xmlDoc, item, "vuserdef7", Convert.ToString(modFYD.N_PZTIME)); //计量皮重时间 CreateNode(xmlDoc, item, "vuserdef8", ""); CreateNode(xmlDoc, item, "vuserdef9", ""); #endregion body.AppendChild(item); } } } xmlDoc.Save(xmlFileName); List <string> parem = NCSendXml.SendXML(xmlDoc); if (parem[0] == "1") { //更新发运单状态 tmd_dispatchdetails.UpdateFydStatus(code, 9); #region //添加日志 try { Bll_TMB_INTERFACE_LOG tmb_interface_log = new Bll_TMB_INTERFACE_LOG(); Mod_TMB_INTERFACE_LOG mod = new Mod_TMB_INTERFACE_LOG(); mod.D_SENDTIME = DateTime.Now; mod.C_RESULTCODE = parem[0]; //返回结果 mod.C_RESULTDESC = parem[1]; //返回结果描述 mod.C_CONTENT = parem[2]; //返回成功或空 mod.C_PKID = code; //主键 mod.C_FLAG = "WL-NC"; //标识 mod.C_REMARK = "物流实绩导入NC成功"; //备注 tmb_interface_log.Add(mod); } catch (Exception e) { throw e; } #endregion return(true); } else { #region //添加日志 try { Bll_TMB_INTERFACE_LOG tmb_interface_log = new Bll_TMB_INTERFACE_LOG(); Mod_TMB_INTERFACE_LOG mod = new Mod_TMB_INTERFACE_LOG(); mod.D_SENDTIME = DateTime.Now; mod.C_RESULTCODE = parem[0]; //返回结果 mod.C_RESULTDESC = parem[1]; //返回结果描述 mod.C_CONTENT = parem[2]; //返回成功或空 mod.C_PKID = code; //主键 mod.C_FLAG = "WL-NC"; //标识 mod.C_REMARK = "物流实绩导入NC失败"; //备注 tmb_interface_log.Add(mod); } catch (Exception e) { throw e; } #endregion return(false); } } catch (Exception ex) { throw ex; } }
/// <summary> /// 新增合同 /// </summary> /// <param name="N_STATUS">合同状态</param> /// <returns></returns> private bool Add(int N_STATUS) { bool result = true; List <Mod_TMO_ORDER> orderList = new List <Mod_TMO_ORDER>(); #region //添加合同基本信息 Mod_TMO_CON modCon = new Mod_TMO_CON(); Mod_TS_DEPT modDept = ts_dept.GetModel(hiddeptid.Value); string areaCode = dropConPolicyArea.SelectedItem.Value == "" ? "01" : dropConPolicyArea.SelectedItem.Value; conNo = randomnumber.CreateConNo(areaCode); //合同号 modCon.C_CON_XH = conNo; modCon.C_CON_NO = conNo; //合同号 modCon.C_CON_NAME = txtConName.Text; //合同名称 modCon.C_CONTYPEID = dropConType.SelectedItem.Value; //合同类型 modCon.C_CUSTOMERID = hidCustID.Value; //客户ID modCon.C_CUSTNAME = txtCustName.Text; //客户名称 modCon.C_CUST_NO = hidCustNO.Value; //客户客户编码 modCon.C_EMPLOYEEID = hidsaleempid.Value; //业务员ID modCon.C_DEPTID = hiddeptid.Value; //业务部门 if (!string.IsNullOrEmpty(hiddeptid.Value)) { Mod_TS_DEPT moddept = ts_dept.GetModel(hiddeptid.Value); modCon.C_AREA = moddept.C_NAME; //部门 } modCon.C_CURRENCYTYPEID = dropCurrType.SelectedValue; //货币 modCon.D_CONSING_DT = Convert.ToDateTime(txtDate.Value); //签署日期 modCon.D_CONEFFE_DT = Convert.ToDateTime(txtStart.Value); //计划生效日期 modCon.D_CONINVALID_DT = Convert.ToDateTime(txtEnd.Value); //计划失效日期 modCon.C_TRANSMODEID = dropShipVia.SelectedValue; //发运方式 modCon.N_STATUS = N_STATUS; modCon.C_EMP_ID = ltlC_EMP_ID.Text; modCon.C_EMP_NAME = ltlC_EMP_NAME.Text; modCon.N_CUST_LEV = Convert.ToDecimal(ltlCustLEV.Text);//客户等级 if (!string.IsNullOrEmpty(hidC_CGID.Value)) { Mod_TS_CUSTFILE modCust = ts_custfile.GetCustModel(hidC_CGID.Value); modCon.C_CRECEIPTCUSTOMERID = hidC_CGID.Value; //收货单位 modCon.C_ADDRESS = txtAddr.Value; //收货地址 modCon.C_CRECEIPTAREAID = modCust.C_AREATYPE; //收货地区 } modCon.C_CRECEIPTCORPID = hidC_OTCID.Value; //开票单位 modCon.C_STATION = txtC_STATION.Value; //站点 modCon.C_REAMRK = txtReamrk.Value; modCon.N_CHANGENUM = 0; //合同变更次数 #endregion #region//添加合同明细 for (int i = 0; i < rptList.Items.Count; i++) { Literal ltlC_ID = (Literal)rptList.Items[i].FindControl("ltlC_ID"); //物料ID Literal ltlC_TECH_PROT = (Literal)rptList.Items[i].FindControl("ltlC_TECH_PROT"); //客户协议号 Literal ltlC_STD_CODE = (Literal)rptList.Items[i].FindControl("ltlC_STD_CODE"); //执行标准 Literal ltlzyx1 = (Literal)rptList.Items[i].FindControl("ltlzyx1"); //自由项1 Literal ltlzyx2 = (Literal)rptList.Items[i].FindControl("ltlzyx2"); //自由项2 Literal ltlC_IS_BXG = (Literal)rptList.Items[i].FindControl("ltlC_IS_BXG"); //执行标准 TextBox txtPack_Code = (TextBox)rptList.Items[i].FindControl("txtPack_Code"); //包装要求 TextBox txtC_PRO_USE = (TextBox)rptList.Items[i].FindControl("txtC_PRO_USE"); //产品用途 TextBox txtC_CUST_SQ = (TextBox)rptList.Items[i].FindControl("txtC_CUST_SQ"); //特殊要求 DropDownList dropZL = (DropDownList)rptList.Items[i].FindControl("dropZL"); //质量 HtmlInputText txtWgt = (HtmlInputText)rptList.Items[i].FindControl("txtWgt"); //数量 HtmlInputText txtPrice = (HtmlInputText)rptList.Items[i].FindControl("txtPrice"); //含税单价 if (dropConPolicyArea.SelectedItem.Text != "钢坯") { if (string.IsNullOrEmpty(txtPack_Code.Text) && tqb_pack.Exists(txtPack_Code.Text)) { result = false; break; } } #region //合同明细 Mod_TB_MATRL_MAIN modMat = tb_matrl_main.GetModel(ltlC_ID.Text); Mod_TMO_ORDER modOrder = new Mod_TMO_ORDER(); //订单表 string order_no = randomnumber.CreateOrderNo(conNo); //订单号 modOrder.C_ORDER_NO = order_no; modOrder.C_CON_NO = modCon.C_CON_NO; //合同号 modOrder.C_CON_NAME = modCon.C_CON_NAME; //合同名称 modOrder.C_AREA = modCon.C_AREA; //区域 modOrder.C_INVBASDOCID = modMat.C_PK_INVBASDOC; //存货档案主键 modOrder.C_INVENTORYID = modMat.C_PK_INVMANDOC; //存货管理档案主键 modOrder.C_PROD_NAME = modMat.C_PROD_NAME; //品名 modOrder.C_PROD_KIND = modMat.C_PROD_KIND; //品种 modOrder.C_MAT_CODE = modMat.C_MAT_CODE; //物料编码 modOrder.C_MAT_NAME = modMat.C_MAT_NAME; //物料名称 modOrder.C_SPEC = modMat.C_SPEC; //规格 modOrder.C_STL_GRD = modMat.C_MAT_TYPE == "841" ? modMat.C_MAT_NAME : modMat.C_MAT_TYPE == "851" ? modMat.C_MAT_NAME : modMat.C_STL_GRD; //钢种 modOrder.C_FUNITID = modMat.C_FJLDW; //辅单位 modOrder.C_UNITID = modMat.C_PK_MEASDOC; //主计量单位 modOrder.D_DELIVERY_DT = modCon.D_CONINVALID_DT; //计划交货日期 modOrder.D_DT = modCon.D_CONSING_DT; //订单日期//签单日期 modOrder.C_VDEF1 = dropZL.SelectedItem.Value; //质量主键ID modOrder.C_SFPJ = "N"; modOrder.C_TECH_PROT = ltlC_TECH_PROT.Text; //客户协议号 modOrder.C_FREE1 = ltlzyx1.Text; //自由项1 modOrder.C_FREE2 = ltlzyx2.Text; //自由项2 modOrder.C_STD_CODE = ltlC_STD_CODE.Text; //执行标准 modOrder.C_BY4 = ltlC_IS_BXG.Text; //是否不锈钢 modOrder.N_TYPE = Convert.ToDecimal(modMat.C_MAT_TYPE); //订单类型 modOrder.C_PACK = txtPack_Code.Text.Trim(); //包装要求 Mod_TMB_TAXITEMS modTaxi = tmb_taxitems.GetModel(modMat.C_PK_TAXITEMS); decimal shuolv = Convert.ToDecimal(modTaxi.N_TAXRATIO) >= 1 ? Convert.ToDecimal(modTaxi.N_TAXRATIO) / 100 : Convert.ToDecimal(modTaxi.N_TAXRATIO); //税率 modOrder.N_TAXRATE = shuolv; //税率 decimal N_WGT = 0; if (!string.IsNullOrEmpty(txtWgt.Value)) { N_WGT = Convert.ToDecimal(txtWgt.Value); } modOrder.N_WGT = N_WGT; //数量 modOrder.N_HSL = modMat.N_HSL == null ? 0 : modMat.N_HSL; //换算率 modOrder.N_FNUM = modMat.N_HSL == null ? 1 : N_WGT / modMat.N_HSL; //辅数量 #region //获取钢种单价-税率 if (!string.IsNullOrEmpty(txtPrice.Value)) { decimal N_TAXRATE = Convert.ToDecimal(modOrder.N_TAXRATE) + 1; //税率 decimal N_ORIGINALCURPRICE = Convert.ToDecimal(txtPrice.Value) / N_TAXRATE; //原币无税单价 decimal N_ORIGINALCURTAXPRICE = Convert.ToDecimal(txtPrice.Value); //原币含税单价 decimal N_ORIGINALCURMNY = decimal.Round(N_WGT * N_ORIGINALCURPRICE, 2); //原币无税金额 decimal N_ORIGINALCURSUMMNY = N_WGT * N_ORIGINALCURTAXPRICE; //原币价税合计 decimal N_ORIGINALCURTAXMNY = decimal.Round(N_ORIGINALCURSUMMNY - N_ORIGINALCURMNY, 2); //原币税额 modOrder.N_ORIGINALCURPRICE = N_ORIGINALCURPRICE; //原币无税单价 modOrder.N_ORIGINALCURTAXPRICE = N_ORIGINALCURTAXPRICE; //原币含税单价 modOrder.N_ORIGINALCURTAXMNY = N_ORIGINALCURTAXMNY; //原币税额 modOrder.N_ORIGINALCURMNY = N_ORIGINALCURMNY; //原币无税金额 modOrder.N_ORIGINALCURSUMMNY = N_ORIGINALCURSUMMNY; //原币价税合计 } #endregion modOrder.C_RECEIPTAREAID = modCon.C_CRECEIPTAREAID; //收货地区 modOrder.C_RECEIVEADDRESS = modCon.C_ADDRESS; //收货地址 modOrder.C_RECEIPTCORPID = modCon.C_CRECEIPTCUSTOMERID; //收货单位 modOrder.C_CURRENCYTYPEID = modCon.C_CURRENCYTYPEID; //货币 modOrder.N_USER_LEV = modCon.N_CUST_LEV; //客户等级 modOrder.C_CUST_SQ = txtC_CUST_SQ.Text; //客户要求 modOrder.C_PRO_USE = txtC_PRO_USE.Text; //产品用途 modOrder.C_EMP_ID = modCon.C_EMP_ID; modOrder.C_EMP_NAME = modCon.C_EMP_NAME; modOrder.C_CUST_NO = hidCustNO.Value; modOrder.C_CUST_NAME = txtCustName.Text; modOrder.C_SALE_CHANNEL = ltlCustType.Text; modOrder.C_LEV = GetLev("STL_GRD_Lev"); //钢种等级 modOrder.C_ORDER_LEV = GetLev("Order_Lev"); //订单等级 modOrder.N_COST = 0; //成本 modOrder.C_TRANSMODE = dropShipVia.SelectedItem.Text; //发运方式 modOrder.C_TRANSMODEID = dropShipVia.SelectedItem.Value; //发运方式主键 modOrder.C_YWY = txtSaleUser.Value; //业务员姓名 modOrder.N_STATUS = N_STATUS; orderList.Add(modOrder); #endregion } #endregion return(result == true?tmo_con.InsertConOrder(modCon, orderList) : result); }
/// <summary> /// NC发运单 /// </summary> /// <param name="code">发运单单据号</param> /// <param name="xmlFileName">路径/文件.xml</param> /// <param name="empID">操作ID</param> /// <param name="flag">8线材,6钢坯</param> /// <returns></returns> public List <string> SendXmlApiDispatchOrder(string code, string xmlFileName, string empID, int flag) { try { List <apiPkDto> listPk = new List <apiPkDto>(); Mod_TMD_DISPATCH modDispatch = tmd_dispatch.GetModel(code); 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", "7F"); root.SetAttribute("filename", "" + code + ".xml"); 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"); bill.SetAttribute("id", modDispatch.C_GUID);//发运单表头主键 root.AppendChild(bill); XmlNode head = xmlDoc.CreateNode(XmlNodeType.Element, "bill_head", null); #region //表头_order_head CreateNode(xmlDoc, head, "apprdate", Convert.ToDateTime(modDispatch.D_APPROVE_DT).ToString("yyy-MM-dd")); //发运审批日期 CreateNode(xmlDoc, head, "bconfirm", "N"); CreateNode(xmlDoc, head, "billdate", Convert.ToDateTime(modDispatch.D_CREATE_DT).ToString("yyy-MM-dd")); //制单日期 CreateNode(xmlDoc, head, "billnewaddtime", Convert.ToDateTime(modDispatch.D_CREATE_DT).ToString("yyy-MM-dd HH:mm:ss")); CreateNode(xmlDoc, head, "bisopen", ""); CreateNode(xmlDoc, head, "bmissionbill", "N"); CreateNode(xmlDoc, head, "bmustreturnbillcode", ""); CreateNode(xmlDoc, head, "btestbyinvoice", ""); CreateNode(xmlDoc, head, "clastmodifierid", modDispatch.C_EMP_ID);//最后修改人 CreateNode(xmlDoc, head, "clastmodiname", ""); CreateNode(xmlDoc, head, "curbilltype", ""); CreateNode(xmlDoc, head, "dallpacknum", "0"); CreateNode(xmlDoc, head, "dallvolumn", "0"); CreateNode(xmlDoc, head, "dallweight", "0"); CreateNode(xmlDoc, head, "dfactweight", ""); CreateNode(xmlDoc, head, "dr", "0"); CreateNode(xmlDoc, head, "dtotal", ""); CreateNode(xmlDoc, head, "employee", ""); CreateNode(xmlDoc, head, "h_confirmarrivedate", ""); CreateNode(xmlDoc, head, "iprintcount", ""); CreateNode(xmlDoc, head, "isendtype", "3");//运费类别 CreateNode(xmlDoc, head, "linkman1", ""); CreateNode(xmlDoc, head, "oprdepartname", ""); CreateNode(xmlDoc, head, "phone1", ""); CreateNode(xmlDoc, head, "pk_defdoc0", modDispatch.C_IS_WIRESALE_ID); //是否线材销售主键 CreateNode(xmlDoc, head, "pk_defdoc1", ""); CreateNode(xmlDoc, head, "pk_defdoc10", ""); CreateNode(xmlDoc, head, "pk_defdoc11", ""); CreateNode(xmlDoc, head, "pk_defdoc12", ""); CreateNode(xmlDoc, head, "pk_defdoc13", ""); CreateNode(xmlDoc, head, "pk_defdoc14", ""); CreateNode(xmlDoc, head, "pk_defdoc15", ""); CreateNode(xmlDoc, head, "pk_defdoc16", ""); CreateNode(xmlDoc, head, "pk_defdoc17", ""); CreateNode(xmlDoc, head, "pk_defdoc18", ""); CreateNode(xmlDoc, head, "pk_defdoc19", ""); CreateNode(xmlDoc, head, "pk_defdoc2", ""); CreateNode(xmlDoc, head, "pk_defdoc3", ""); CreateNode(xmlDoc, head, "pk_defdoc4", ""); CreateNode(xmlDoc, head, "pk_defdoc5", ""); CreateNode(xmlDoc, head, "pk_defdoc6", ""); CreateNode(xmlDoc, head, "pk_defdoc7", ""); CreateNode(xmlDoc, head, "pk_defdoc8", ""); CreateNode(xmlDoc, head, "pk_defdoc9", ""); CreateNode(xmlDoc, head, "pk_delivbill_h", ""); //发运单表头主键 CreateNode(xmlDoc, head, "pkapprperson", ""); CreateNode(xmlDoc, head, "pkbillperson", modDispatch.C_CREATE_ID); //制单人 CreateNode(xmlDoc, head, "pkcorpforgenoid", "1001"); CreateNode(xmlDoc, head, "pkdelivmode", modDispatch.C_SHIPVIA); //发运方式主键 CreateNode(xmlDoc, head, "pkdelivorg", "1001NC10000000006EHS"); //发运组织主键固定 CreateNode(xmlDoc, head, "pkdelivroute", "1001NC10000000006EHV"); //发运路线主键 固定 CreateNode(xmlDoc, head, "pkdriver", ""); CreateNode(xmlDoc, head, "pkoperator", modDispatch.C_BUSINESS_ID); //业务员主键 CreateNode(xmlDoc, head, "pkoprdepart", modDispatch.C_BUSINESS_DEPT); //业务部门主键 CreateNode(xmlDoc, head, "pksendperson", ""); CreateNode(xmlDoc, head, "pktrancust", modDispatch.C_COMCAR); //承运商 CreateNode(xmlDoc, head, "pktranorg", ""); CreateNode(xmlDoc, head, "pkvehicle", ""); CreateNode(xmlDoc, head, "pkvehicletype", ""); CreateNode(xmlDoc, head, "returndate", ""); CreateNode(xmlDoc, head, "returntime", ""); CreateNode(xmlDoc, head, "senddate", Convert.ToDateTime(modDispatch.D_DISP_DT).ToString("yyy-MM-dd"));//发运日期 CreateNode(xmlDoc, head, "startdate", ""); CreateNode(xmlDoc, head, "starttime", ""); CreateNode(xmlDoc, head, "taudittime", ""); CreateNode(xmlDoc, head, "tlastmodifytime", Convert.ToDateTime(modDispatch.D_MOD_DT).ToString("yyy-MM-dd HH:mm:ss")); //最后修改时间 CreateNode(xmlDoc, head, "tmaketime", Convert.ToDateTime(modDispatch.D_CREATE_DT).ToString("yyy-MM-dd HH:mm:ss")); // 制单时间 CreateNode(xmlDoc, head, "ts", Convert.ToDateTime(modDispatch.D_CREATE_DT).ToString("yyy-MM-dd HH:mm:ss")); CreateNode(xmlDoc, head, "userid", modDispatch.C_CREATE_ID); //制单人 CreateNode(xmlDoc, head, "vapprpersonname", ""); CreateNode(xmlDoc, head, "vbillpersonname", ""); CreateNode(xmlDoc, head, "vdelivbillcode", modDispatch.C_ID);//发运单单据号 CreateNode(xmlDoc, head, "vdoname", ""); CreateNode(xmlDoc, head, "vdrivername", ""); CreateNode(xmlDoc, head, "vehiclelicense", ""); CreateNode(xmlDoc, head, "vnote", "");//行备注 CreateNode(xmlDoc, head, "voldDelivbillcode", ""); CreateNode(xmlDoc, head, "vroutedescr", ""); CreateNode(xmlDoc, head, "vroutename", ""); CreateNode(xmlDoc, head, "vsendtypename", ""); CreateNode(xmlDoc, head, "vtranname", ""); CreateNode(xmlDoc, head, "vtranorgname", ""); CreateNode(xmlDoc, head, "vuserdef0", modDispatch.C_IS_WIRESALE);// 是否线材销售 是/ 否 ***** CreateNode(xmlDoc, head, "vuserdef1", ""); CreateNode(xmlDoc, head, "vuserdef10", ""); CreateNode(xmlDoc, head, "vuserdef11", ""); CreateNode(xmlDoc, head, "vuserdef12", ""); CreateNode(xmlDoc, head, "vuserdef13", ""); CreateNode(xmlDoc, head, "vuserdef14", ""); CreateNode(xmlDoc, head, "vuserdef15", ""); CreateNode(xmlDoc, head, "vuserdef16", ""); CreateNode(xmlDoc, head, "vuserdef17", ""); CreateNode(xmlDoc, head, "vuserdef18", ""); CreateNode(xmlDoc, head, "vuserdef19", ""); CreateNode(xmlDoc, head, "vuserdef2", ""); CreateNode(xmlDoc, head, "vuserdef3", "Y"); //是否已导出 CreateNode(xmlDoc, head, "vuserdef4", modDispatch.C_LIC_PLA_NO); //车牌号 CreateNode(xmlDoc, head, "vuserdef5", ""); CreateNode(xmlDoc, head, "vuserdef6", modDispatch.C_ATSTATION); //到站 CreateNode(xmlDoc, head, "vuserdef7", ""); CreateNode(xmlDoc, head, "vuserdef8", ""); CreateNode(xmlDoc, head, "vuserdef9", ""); CreateNode(xmlDoc, head, "vvehiclename", ""); CreateNode(xmlDoc, head, "vvhcltypename", ""); #endregion bill.AppendChild(head); XmlElement body = xmlDoc.CreateElement("bill_body"); bill.AppendChild(body); DataTable dt = tmd_dispatchdetails.GetList(code).Tables[0]; if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { int rowno = i + 1; Mod_TMD_DISPATCHDETAILS moditem = tmd_dispatchdetails.GetModel(dt.Rows[i]["C_ID"].ToString()); Mod_TMP_DAYPLAN modDayPlan = tmp_dayplan.GetModelID(dt.Rows[i]["C_PLAN_ID"].ToString()); if (modDayPlan != null) { #region //实体参数 Mod_TMO_ORDER modOrder = tmo_order.GetModel(modDayPlan.C_PKBILLB); Mod_TS_CUSTFILE modCust = ts_custfile.GetCustModel(modDayPlan.C_PKCUST); //客户档案 Mod_TB_MATRL_MAIN modMat = tb_matrl_main.GetMatModel(modDayPlan.C_PKINV); //物料 //Mod_TMB_AREA modArea = tmb_area.GetModel(dt.Rows[i]["C_SEND_AREA"].ToString());//区域 string addrpk = ""; if (!string.IsNullOrEmpty(moditem.C_AOG_SITE)) { DataTable dtname = tmb_area.GetAddrNCPK(moditem.C_AOG_SITE).Tables[0]; if (dtname.Rows.Count > 0) { addrpk = dtname.Rows[0]["C_ADDR_NCPK"].ToString(); } } else { DataTable dtaddress = tmb_area.GetAreaAddress(dt.Rows[i]["C_SEND_AREA"].ToString()).Tables[0]; if (dtaddress.Rows.Count > 0) { addrpk = dtaddress.Rows[0]["PK_ADDRESS"].ToString(); } } #endregion decimal dunitprice = Convert.ToDecimal(modDayPlan.N_UNITPRICE); //含税单价 decimal num = Convert.ToDecimal(moditem.N_FYWGT); //数量 decimal dmoney = dunitprice * num; //订单金额 XmlNode item = xmlDoc.CreateNode(XmlNodeType.Element, "item", null); #region //表体_item CreateNode(xmlDoc, item, "bappendent", ""); CreateNode(xmlDoc, item, "bcloseout", ""); CreateNode(xmlDoc, item, "bcloseout_old", ""); CreateNode(xmlDoc, item, "blargess", "N"); CreateNode(xmlDoc, item, "borderreturn", "N"); CreateNode(xmlDoc, item, "breceiveinform", ""); CreateNode(xmlDoc, item, "bsigned", ""); CreateNode(xmlDoc, item, "btestbyinvoice", ""); CreateNode(xmlDoc, item, "carrivecorpname", ""); CreateNode(xmlDoc, item, "cbiztype", modDayPlan.C_BIZTYPE); //业务类型主键 CreateNode(xmlDoc, item, "ccheckstate_bid", moditem.C_QUALIRY_LEV); //质量等级主键 CreateNode(xmlDoc, item, "ccheckstatename", ""); CreateNode(xmlDoc, item, "cfreezeid", ""); CreateNode(xmlDoc, item, "cinvmanid", ""); CreateNode(xmlDoc, item, "confirmarrivedate", ""); CreateNode(xmlDoc, item, "cquoteunitid", modOrder.C_UNITID); //报价计量单位主键 CreateNode(xmlDoc, item, "cquoteunitname", ""); CreateNode(xmlDoc, item, "creceiptcorp", GetCust(moditem.C_CGC)); //收货单位名称 CreateNode(xmlDoc, item, "creceiptcorpid", moditem.C_CGC); //收货单位主键 CreateNode(xmlDoc, item, "csendcorp", ""); CreateNode(xmlDoc, item, "csendcorpid", ""); CreateNode(xmlDoc, item, "dcancelassistnum", ""); CreateNode(xmlDoc, item, "dcancelnum", ""); CreateNode(xmlDoc, item, "dfee", ""); CreateNode(xmlDoc, item, "dfeeitem", ""); CreateNode(xmlDoc, item, "dinvassist", moditem.N_FYZS.ToString()); //辅数量-件数 CreateNode(xmlDoc, item, "dinvnum", moditem.N_FYWGT.ToString()); //存货数量 CreateNode(xmlDoc, item, "dinvweight", ""); CreateNode(xmlDoc, item, "dmileage", ""); CreateNode(xmlDoc, item, "dmoney", dmoney.ToString());//订单金额可为空 CreateNode(xmlDoc, item, "doutassistnum", ""); CreateNode(xmlDoc, item, "doutnum", ""); CreateNode(xmlDoc, item, "doutnummargin", ""); CreateNode(xmlDoc, item, "dpackboxnum", ""); CreateNode(xmlDoc, item, "dpacknum", ""); CreateNode(xmlDoc, item, "dpackvolumn", ""); CreateNode(xmlDoc, item, "dpackweight", ""); CreateNode(xmlDoc, item, "dr", "0"); CreateNode(xmlDoc, item, "dreturnassistnum", ""); CreateNode(xmlDoc, item, "dreturnnum", ""); CreateNode(xmlDoc, item, "dsignasnum", ""); CreateNode(xmlDoc, item, "dsignassistnum", ""); CreateNode(xmlDoc, item, "dsignnum", ""); CreateNode(xmlDoc, item, "dsourcerow", ""); CreateNode(xmlDoc, item, "dtotalout", ""); CreateNode(xmlDoc, item, "dunitprice", dunitprice.ToString());//含税单价 CreateNode(xmlDoc, item, "dvolumn", ""); CreateNode(xmlDoc, item, "dwaylossasnum", ""); CreateNode(xmlDoc, item, "dwaylossnum", ""); CreateNode(xmlDoc, item, "hsl", ""); CreateNode(xmlDoc, item, "iattitude", ""); CreateNode(xmlDoc, item, "ibatchstatus", "0"); CreateNode(xmlDoc, item, "ibetimes", ""); CreateNode(xmlDoc, item, "iloadnum", ""); CreateNode(xmlDoc, item, "ilockstatus", ""); CreateNode(xmlDoc, item, "ionroadtime", ""); CreateNode(xmlDoc, item, "ipacking", ""); CreateNode(xmlDoc, item, "irownumber", rowno.ToString());//行号 CreateNode(xmlDoc, item, "irowstatus", "0"); CreateNode(xmlDoc, item, "ischeckatp", "N"); CreateNode(xmlDoc, item, "linkman1", ""); CreateNode(xmlDoc, item, "nassistnetwgt", ""); //辅数量 CreateNode(xmlDoc, item, "nfeedbacknum", ""); //回写上游数量 CreateNode(xmlDoc, item, "nnetwgt", ""); // 净重 CreateNode(xmlDoc, item, "nquoteunitnum", ""); //报价计量单位数量?-存货数量 CreateNode(xmlDoc, item, "nquoteunitrate", "1"); //报价计量单位换算率固定 CreateNode(xmlDoc, item, "ntotalshouldoutnum", ""); CreateNode(xmlDoc, item, "orderplantime", ""); CreateNode(xmlDoc, item, "packsortcode", ""); CreateNode(xmlDoc, item, "packsortname", ""); CreateNode(xmlDoc, item, "phone1", "");//****? CreateNode(xmlDoc, item, "pk_corp", ""); CreateNode(xmlDoc, item, "pk_defdoc0", ""); CreateNode(xmlDoc, item, "pk_defdoc1", ""); CreateNode(xmlDoc, item, "pk_defdoc10", ""); CreateNode(xmlDoc, item, "pk_defdoc11", ""); CreateNode(xmlDoc, item, "pk_defdoc12", ""); CreateNode(xmlDoc, item, "pk_defdoc13", ""); CreateNode(xmlDoc, item, "pk_defdoc14", ""); CreateNode(xmlDoc, item, "pk_defdoc15", ""); CreateNode(xmlDoc, item, "pk_defdoc16", ""); CreateNode(xmlDoc, item, "pk_defdoc17", ""); CreateNode(xmlDoc, item, "pk_defdoc18", ""); CreateNode(xmlDoc, item, "pk_defdoc19", ""); CreateNode(xmlDoc, item, "pk_defdoc2", ""); CreateNode(xmlDoc, item, "pk_defdoc3", ""); CreateNode(xmlDoc, item, "pk_defdoc4", ""); CreateNode(xmlDoc, item, "pk_defdoc5", ""); CreateNode(xmlDoc, item, "pk_defdoc6", ""); CreateNode(xmlDoc, item, "pk_defdoc7", ""); CreateNode(xmlDoc, item, "pk_defdoc8", ""); CreateNode(xmlDoc, item, "pk_defdoc9", ""); CreateNode(xmlDoc, item, "pk_delivbill_b", ""); //置空 CreateNode(xmlDoc, item, "pk_delivbill_h", ""); CreateNode(xmlDoc, item, "pk_invbasdoc", modOrder.C_INVBASDOCID); //存货档案主键 CreateNode(xmlDoc, item, "pk_packsort", ""); CreateNode(xmlDoc, item, "pk_transcontainer", ""); CreateNode(xmlDoc, item, "pkarriveaddress", addrpk); //到货地点主键 CreateNode(xmlDoc, item, "pkarrivearea", moditem.C_SEND_AREA); //到货地区主键 CreateNode(xmlDoc, item, "pkarrivecorp", ""); CreateNode(xmlDoc, item, "pkassistmeasure", modOrder.C_FUNITID); //辅计量单位 CreateNode(xmlDoc, item, "pkbasinv", modOrder.C_INVBASDOCID); //存货档案主键 CreateNode(xmlDoc, item, "pkbasreceiptcorp", modCust.C_NC_ID); //客户主键 CreateNode(xmlDoc, item, "pkbassendcorp", ""); CreateNode(xmlDoc, item, "pkconsign", ""); CreateNode(xmlDoc, item, "pkcorpforgenoid", modDayPlan.C_PKSALECORP); //销售公司(1001) CreateNode(xmlDoc, item, "pkcusbasdoc", modCust.C_NC_ID); //客户主键 CreateNode(xmlDoc, item, "pkcusmandoc", modDayPlan.C_PKCUST); //客户管理主键 CreateNode(xmlDoc, item, "pkcustinvoice", ""); CreateNode(xmlDoc, item, "pkdayplan", ""); CreateNode(xmlDoc, item, "pkdestrep", ""); CreateNode(xmlDoc, item, "pkdeststockorg", ""); CreateNode(xmlDoc, item, "pkinv", modOrder.C_INVENTORYID);//存货管理档案主键 CreateNode(xmlDoc, item, "pkinvoice", ""); CreateNode(xmlDoc, item, "pkitem", ""); CreateNode(xmlDoc, item, "pkitemperiod", ""); CreateNode(xmlDoc, item, "pkoperator", modDayPlan.C_PKOPERATOR); //业务员ID CreateNode(xmlDoc, item, "pkoprdepart", modDayPlan.C_PKOPRDEPART); //业务员部门 CreateNode(xmlDoc, item, "pkorder", ""); CreateNode(xmlDoc, item, "pkorderplanid", ""); CreateNode(xmlDoc, item, "pkorderrow", ""); CreateNode(xmlDoc, item, "pkpackboxtype", ""); CreateNode(xmlDoc, item, "pksalecorp", "1001"); CreateNode(xmlDoc, item, "pksalegrp", modDayPlan.C_PKSALEORG); //销售组织主键 CreateNode(xmlDoc, item, "pksendaddress", "0001AA1000000002LFNT"); //发货地点-邢台市 CreateNode(xmlDoc, item, "pksendarea", "dqda0000000000000057"); //发货地区-邢台市区 CreateNode(xmlDoc, item, "pksendstock", moditem.C_SEND_STOCK_PK); //仓库主键 CreateNode(xmlDoc, item, "pksendstockorg", "1001NC10000000000669"); //发货库存组织主键-固定 CreateNode(xmlDoc, item, "pksrccalbodyar", ""); CreateNode(xmlDoc, item, "pkunit", ""); CreateNode(xmlDoc, item, "plantime", ""); CreateNode(xmlDoc, item, "receivedate", ""); CreateNode(xmlDoc, item, "requireday", Convert.ToDateTime(modDayPlan.D_REQUIREDATE).ToString("yyy-MM-dd")); //要求到货日期 CreateNode(xmlDoc, item, "sourcebillts", ""); CreateNode(xmlDoc, item, "ts", ""); //HH:mm:ss CreateNode(xmlDoc, item, "ufdtmp", ""); CreateNode(xmlDoc, item, "userid", ""); CreateNode(xmlDoc, item, "varriveaddress", "其他地区"); CreateNode(xmlDoc, item, "vassistmeaname", ""); CreateNode(xmlDoc, item, "vbatchcode", ""); CreateNode(xmlDoc, item, "vbilltype", "30"); CreateNode(xmlDoc, item, "vbilltypename", ""); CreateNode(xmlDoc, item, "vcargcode", ""); CreateNode(xmlDoc, item, "vconsign", ""); CreateNode(xmlDoc, item, "vcontainername", ""); CreateNode(xmlDoc, item, "vcustcode", modCust.C_NO); //客户编码 CreateNode(xmlDoc, item, "vcustname", modCust.C_NAME); //客户名称 CreateNode(xmlDoc, item, "vdayplancode", modDayPlan.C_PLCODE); //对应日计划单据号 CreateNode(xmlDoc, item, "vdestaddress", moditem.C_AREA); //到货地址 CreateNode(xmlDoc, item, "vdestarea", moditem.C_SEND_AREA); //到货地区 CreateNode(xmlDoc, item, "vdeststoreaddre", ""); CreateNode(xmlDoc, item, "vdeststorename", ""); CreateNode(xmlDoc, item, "vdeststoreorgname", ""); CreateNode(xmlDoc, item, "vfree0", ""); CreateNode(xmlDoc, item, "vfree1", moditem.C_FREE_TERM); //自由项1 CreateNode(xmlDoc, item, "vfree10", moditem.C_ID); //CRM发运单表体主键 CreateNode(xmlDoc, item, "vfree2", moditem.C_FREE_TERM2); //自由项2 CreateNode(xmlDoc, item, "vfree3", modOrder.N_TYPE == 8 ? moditem.C_PACK : ""); //包装8线材 CreateNode(xmlDoc, item, "vfree4", ""); CreateNode(xmlDoc, item, "vfree5", ""); CreateNode(xmlDoc, item, "vfree6", modDispatch.N_IS_EXPORT == 0 ? "否" : "是"); //是否包到 CreateNode(xmlDoc, item, "vfree7", moditem.N_PRICE.ToString()); //运费 CreateNode(xmlDoc, item, "vfree8", modDayPlan.C_ID); //CRM发运日计划主键 CreateNode(xmlDoc, item, "vfree9", modDispatch.C_GUID); // CRM发运单表头主键 CreateNode(xmlDoc, item, "vfreeid1", ""); CreateNode(xmlDoc, item, "vfreeid10", ""); CreateNode(xmlDoc, item, "vfreeid2", ""); CreateNode(xmlDoc, item, "vfreeid3", ""); CreateNode(xmlDoc, item, "vfreeid4", ""); CreateNode(xmlDoc, item, "vfreeid5", ""); CreateNode(xmlDoc, item, "vfreeid6", ""); CreateNode(xmlDoc, item, "vfreeid7", ""); CreateNode(xmlDoc, item, "vfreeid8", ""); CreateNode(xmlDoc, item, "vfreeid9", ""); CreateNode(xmlDoc, item, "vfreename1", ""); CreateNode(xmlDoc, item, "vfreename10", ""); CreateNode(xmlDoc, item, "vfreename2", ""); CreateNode(xmlDoc, item, "vfreename3", ""); CreateNode(xmlDoc, item, "vfreename4", ""); CreateNode(xmlDoc, item, "vfreename5", ""); CreateNode(xmlDoc, item, "vfreename6", ""); CreateNode(xmlDoc, item, "vfreename7", ""); CreateNode(xmlDoc, item, "vfreename8", ""); CreateNode(xmlDoc, item, "vfreename9", ""); CreateNode(xmlDoc, item, "vinvcode", modOrder.C_MAT_CODE);//存货编码 CreateNode(xmlDoc, item, "vinvname", ""); CreateNode(xmlDoc, item, "vinvoicecode", ""); CreateNode(xmlDoc, item, "vitemname", ""); CreateNode(xmlDoc, item, "vitemperiodname", ""); CreateNode(xmlDoc, item, "vnote", moditem.C_REMARK);//行备注 CreateNode(xmlDoc, item, "voperatorname", ""); CreateNode(xmlDoc, item, "voprdepartname", ""); CreateNode(xmlDoc, item, "vordercode", modDayPlan.C_SALECODE);//销售单据号 CreateNode(xmlDoc, item, "vreceiptcorpname", ""); CreateNode(xmlDoc, item, "vsalecorpname", ""); CreateNode(xmlDoc, item, "vsaleorgname", ""); CreateNode(xmlDoc, item, "vsendaddr", ""); CreateNode(xmlDoc, item, "vsendaddress", ""); CreateNode(xmlDoc, item, "vsendarea", ""); CreateNode(xmlDoc, item, "vsendcorpname", ""); CreateNode(xmlDoc, item, "vsendstoreaddre", ""); CreateNode(xmlDoc, item, "vsendstorename", ""); CreateNode(xmlDoc, item, "vsendstoreorgaddre", ""); CreateNode(xmlDoc, item, "vsendstoreorgname", ""); CreateNode(xmlDoc, item, "vsignname", ""); CreateNode(xmlDoc, item, "vsignnote", ""); CreateNode(xmlDoc, item, "vspec", modMat.C_SPEC); //规格 CreateNode(xmlDoc, item, "vsrccalbodyarname", ""); CreateNode(xmlDoc, item, "vtype", modMat.C_STL_GRD); //钢种 CreateNode(xmlDoc, item, "vunit", modMat.C_ZJLDWMC); //主计量单位名称 CreateNode(xmlDoc, item, "vuserdef0", ""); CreateNode(xmlDoc, item, "vuserdef1", ""); CreateNode(xmlDoc, item, "vuserdef10", modDayPlan.C_CONNO); //合同号 CreateNode(xmlDoc, item, "vuserdef11", moditem.C_ELSENEED); //其它要求 CreateNode(xmlDoc, item, "vuserdef12", ""); CreateNode(xmlDoc, item, "vuserdef13", ""); CreateNode(xmlDoc, item, "vuserdef14", ""); CreateNode(xmlDoc, item, "vuserdef15", ""); CreateNode(xmlDoc, item, "vuserdef16", ""); CreateNode(xmlDoc, item, "vuserdef17", ""); CreateNode(xmlDoc, item, "vuserdef18", ""); CreateNode(xmlDoc, item, "vuserdef19", ""); CreateNode(xmlDoc, item, "vuserdef2", ""); CreateNode(xmlDoc, item, "vuserdef3", ""); CreateNode(xmlDoc, item, "vuserdef4", ""); CreateNode(xmlDoc, item, "vuserdef5", ""); CreateNode(xmlDoc, item, "vuserdef6", ""); CreateNode(xmlDoc, item, "vuserdef7", ""); CreateNode(xmlDoc, item, "vuserdef8", ""); CreateNode(xmlDoc, item, "vuserdef9", ""); #endregion body.AppendChild(item); } } } xmlDoc.Save(xmlFileName); List <string> parem = NCSendXml.SendXML(xmlDoc); parem.Add(code); parem.Add(empID); parem.Add("发运单-NC"); parem.Add(parem[0] == "1" ? "导入NC成功" : "导入NC失败"); //日志 AddLog(parem); return(parem); } catch (Exception ex) { throw ex; } }
//生成远程质证书 protected void btnExport_Click(object sender, EventArgs e) { try { bool result = true; string ww = cbxww.Checked == true ? "Y" : "N"; List <Mod_TQC_ZZS_INFO> list = new List <Mod_TQC_ZZS_INFO>(); for (int i = 0; i < rptList.Items.Count; i++) { HtmlInputCheckBox cbxID = (HtmlInputCheckBox)rptList.Items[i].FindControl("cbxID"); if (cbxID.Checked) { Bll_RandomNumber randomnumber = new Bll_RandomNumber(); #region //控件 Literal ltlC_FYDH = (Literal)rptList.Items[i].FindControl("ltlC_FYDH"); Literal ltlC_BATCH_NO = (Literal)rptList.Items[i].FindControl("ltlC_BATCH_NO"); Literal ltlC_JUDGE_LEV_ZH = (Literal)rptList.Items[i].FindControl("ltlC_JUDGE_LEV_ZH"); Literal ltlC_TYPE = (Literal)rptList.Items[i].FindControl("ltlC_TYPE");//8线材/6钢坯 Literal ltlC_STOVE = (Literal)rptList.Items[i].FindControl("ltlC_STOVE"); #endregion string[] dj = { "A", "AA", "AAA", "CK", "A1", "合格品", "B1", "B2", "C1", "C2" }; if (dj.Contains(ltlC_JUDGE_LEV_ZH.Text)) { bool res = ltlC_TYPE.Text == "8" ? trc_roll_prodcut.ExistsZZS(ltlC_FYDH.Text, ltlC_BATCH_NO.Text) : trc_roll_prodcut.ExistsZZS(ltlC_FYDH.Text, ltlC_BATCH_NO.Text, ltlC_STOVE.Text); //检查是否重复批次 if (!res) { DataTable dt = trc_roll_prodcut.GetZZS("", "", ltlC_FYDH.Text, "", "", ltlC_BATCH_NO.Text, "", "", ww, ltlC_TYPE.Text, ltlC_STOVE.Text, "").Tables[0]; if (dt.Rows.Count > 0) { DataTable dtCustStd = trc_roll_prodcut.GetCustStd_JH(dt.Rows[0]["C_STD_CODE"].ToString(), dt.Rows[0]["C_STL_GRD"].ToString(), dt.Rows[0]["C_ZYX1"].ToString(), dt.Rows[0]["C_ZYX2"].ToString()).Tables[0]; DataTable dtJSXYH = trc_roll_prodcut.GetCustStd_JH(dt.Rows[0]["C_STD_CODE"].ToString(), dt.Rows[0]["C_STL_GRD"].ToString(), dt.Rows[0]["C_TECH_PROT"].ToString(), dt.Rows[0]["C_ZYX1"].ToString(), dt.Rows[0]["C_ZYX2"].ToString()).Tables[0]; #region //添加参数 Mod_TQC_ZZS_INFO mod = new Mod_TQC_ZZS_INFO(); mod.C_FYDH = ltlC_FYDH.Text; mod.C_BATCH_NO = ltlC_BATCH_NO.Text; mod.C_STOVE = dt.Rows[0]["C_STOVE"].ToString(); mod.C_SPEC = dt.Rows[0]["C_SPEC"].ToString(); mod.C_STL_GRD = dt.Rows[0]["C_STL_GRD"].ToString(); mod.C_STD_CODE = dt.Rows[0]["C_STD_CODE"].ToString(); mod.D_CKSJ = Convert.ToDateTime(dt.Rows[0]["D_CKSJ"].ToString()); mod.N_JZ = Convert.ToDecimal(dt.Rows[0]["N_WGT"].ToString()); mod.N_NUM = Convert.ToDecimal(dt.Rows[0]["QUA"].ToString()); mod.C_CH = dt.Rows[0]["C_CH"].ToString(); mod.C_ZSH = randomnumber.GetZSH(); //证书号 mod.C_QZR = ltlC_QZR.Text; //签证人 #region //生成二维码 string msg = $@"http://60.6.254.51:808/Common/qualCert.aspx?fyd={mod.C_FYDH}&zsh={mod.C_ZSH}"; Bitmap bt = GenByZXingNet(msg); //调用生成二维码方法 mod.C_IMG = $@"D:/QRCode/{mod.C_ZSH}.jpg"; //生成二维码图片命名 string upPath = $@"~/QRCode/{mod.C_ZSH}.jpg"; bt.Save(Server.MapPath(upPath));//保存二维码图片 #endregion Mod_TS_CUSTFILE mod_TS_CUSTFILE = ts_custfile.GetCustModel(dt.Rows[0]["C_CGC"].ToString()); mod.C_CUST_NO = mod_TS_CUSTFILE.C_NO; mod.C_CON_NO = dt.Rows[0]["C_CON_NO"].ToString(); mod.C_CUST_NAME = dt.Rows[0]["C_CUST_NAME"].ToString(); mod.C_SH_NAME = mod_TS_CUSTFILE.C_NAME; mod.C_MAT_NAME = dt.Rows[0]["C_MAT_DESC"].ToString(); mod.C_STD_JH = dtCustStd.Rows[0]["C_STD_JH"].ToString(); mod.C_ZLDJ = dt.Rows[0]["C_JUDGE_LEV_ZH"].ToString(); mod.C_JH_STATE = dt.Rows[0]["C_JH_STATE"].ToString(); mod.C_JSXYH = dtJSXYH.Rows[0]["C_JSXYH"].ToString(); mod.C_XKZH = dt.Rows[0]["C_XKZH"].ToString(); mod.C_BY1 = ltlC_TYPE.Text; #endregion result = trc_roll_prodcut.InsertZZS(mod); } } } } } if (result) { GetList(); } } catch (Exception ex) { WebMsg.MessageBox(ex.Message); } }