Ejemplo n.º 1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                if (!string.IsNullOrEmpty(Request.QueryString["ID"]))
                {
                    Mod_TMO_ORDER mod = tmo_order.GetModel(Request.QueryString["ID"]);
                    if (mod != null)
                    {
                        Mod_TMO_CON conmod = tmo_con.GetModel(mod.C_CON_NO);
                        if (conmod != null)
                        {
                            var list = trc_roll_prodcut.Check_OrderAndRoll(mod.C_CON_NO);
                            if (list.Result)
                            {
                                if (list.Flag == 0)
                                {
                                    lbl_msg.Text = "当前合同存在排产计划,请谨慎操作!";
                                }
                                else
                                {
                                    lbl_msg.Text = "当前合同存在线材库存,请谨慎操作!";
                                }
                            }

                            ltlConNO.Text    = conmod.C_CON_NO;
                            ltlcustno.Text   = conmod.C_CUST_NO;
                            ltlcustname.Text = conmod.C_CUSTNAME;
                            ltlarea.Text     = conmod.C_AREA;
                        }
                    }
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="order">合同信息</param>
        /// <param name="matrl">成品物料信息</param>
        /// <param name="item">组批信息</param>
        /// <param name="ssBmid">部门ID</param>
        /// <returns></returns>
        private NcRollA1 GetA1(Mod_TMO_ORDER order, Mod_TB_MATRL_MAIN matrl, Mod_TRC_ROLL_WW_MAIN item, Mod_TB_STA tBSta, Mod_TS_USER user)
        {
            var ncRollA1 = new NcRollA1
            {
                bmid       = tBSta.C_SSBMID,                      //部门ID
                jhrq       = item.D_MOD_DT,                       //计划日期
                jhxxsl     = (item.N_WGT_TOTAL ?? 0).ToString(),  //下限数量
                jhyid      = matrl.C_PLANEMP,                     // 计划员ID
                jldwid     = matrl.C_PK_MEASDOC,                  //计量单位
                memo       = item.C_REMARK,                       //备注
                pk_produce = matrl.C_PK_PRODUCE,                  //物料PK,
                scbmid     = tBSta.C_SSBMID,                      //生产部门ID
                shrid      = item.C_PRODUCE_EMP_ID,               //操作员
                shrq       = DateTime.Now,                        //审核日期
                slrq       = order.D_DT ?? DateTime.Now,          //需求日期
                wlbmid     = matrl.C_PK_INVBASDOC,                // 存货档案主键
                xdrq       = item.D_MOD_DT,                       //下单日期
                xqrq       = order.D_DELIVERY_DT ?? DateTime.Now, //交货日期
                xqsl       = (item.N_WGT_TOTAL ?? 0).ToString(),  //计划量
                zdrq       = DateTime.Now,                        //制单日期
                zyx1       = order.C_FREE1,                       //自由项1
                zyx2       = order.C_FREE2,                       //自由项2
                zyx3       = order.C_PACK,                        //包装要求
                zyx5       = item.C_ID,                           //PCI主键
            };

            return(ncRollA1);
        }
Ejemplo n.º 3
0
        private NcRollA3 GetA3(Mod_TMO_ORDER order, Mod_TB_MATRL_MAIN ordMatrl, Mod_TB_MATRL_MAIN matrl, Mod_TRC_ROLL_WW_MAIN item, Mod_TB_STA tBSta, Mod_TRC_ROLL_PRODCUT xcItem)
        {
            var lineWhItem = dalLineWh.GetModelByCode(item.C_XC_LINEWH_CODE);
            var ncRollA3   = new NcRollA3
            {
                ckckid          = lineWhItem.C_ID,                       //出库仓库ID(TPB_LINEWH线材库ID)
                fjldwid         = matrl.C_FJLDW,                         //辅助计量单位ID,
                fljcksl         = (item.N_QUA_TOTAL ?? 0).ToString(),    // 出库数量
                flrq            = DateTime.Now.ToString("yyyy-MM-dd"),
                freeitemvalue1  = xcItem.C_ZYX1,                         //order.C_FREE1,// 线材自由项1(暂认为委外与线材自由项一致)
                freeitemvalue2  = xcItem.C_ZYX2,                         //order.C_FREE2,//线材自由项2(暂认为委外与线材自由项一致)
                freeitemvalue3  = item.C_XC_BZYQ,                        // 线材包装要求
                gzzxid          = tBSta.C_ERP_PK,                        //工作中心ID
                hfreeitemvalue1 = order.C_FREE1,                         // 成品自由项1
                hfreeitemvalue2 = order.C_FREE2,                         //成品自由项2
                hfreeitemvalue3 = order.C_PACK,                          // 成品包装要求,
                hjldwid         = ordMatrl.C_PK_MEASDOC,                 //主计量单位ID
                hpch            = item.C_BATCH_NO,                       //批号
                hwlbmid         = ordMatrl.C_PK_INVBASDOC,               //存货档案主键
                hzdrid          = item.C_PRODUCE_EMP_ID,                 //操作人
                hzdrq           = item.D_PRODUCE_DATE_B ?? DateTime.Now, //制单日期
                jldwid          = matrl.C_PK_MEASDOC,                    //计量单位
                kgyid           = item.C_PRODUCE_EMP_ID,                 //库管员
                ljcksl          = (item.N_WGT_TOTAL ?? 0).ToString(),    //累计出库数量
                pch             = item.C_XC_BATCH_NO,                    //线材批号
                wlbmid          = matrl.C_PK_INVBASDOC,                  //存货档案主键
                zdrq            = DateTime.Now,
            };

            return(ncRollA3);
        }
Ejemplo n.º 4
0
        private NcRollA2 GetA2(Mod_TMO_ORDER order, Mod_TB_MATRL_MAIN matrl, Mod_TRC_ROLL_WW_MAIN item, Mod_TB_STA tBSta, Mod_TS_USER user)
        {
            var ncRollA2 = new NcRollA2
            {
                bcid           = item.C_SHIFT,                          // 班次ID
                bzid           = item.C_GROUP,                          // 班组ID
                fjhsl          = (item.N_QUA_REMOVE ?? 0).ToString(),   // 辅计量数量
                fjlid          = matrl.C_FJLDW,                         // 辅计量ID
                freeitemvalue1 = order.C_FREE1,                         // 自由项1
                freeitemvalue2 = order.C_FREE2,                         //自由项2
                freeitemvalue3 = order.C_PACK,                          // 包装要求,
                freeitemvalue5 = item.C_ID,                             //PCI计划主键
                gzzxid         = tBSta.C_ERP_PK,                        //工作中心ID
                invcode        = matrl.C_ID,                            //物料编码
                jhjssj         = item.D_PRODUCE_DATE_E ?? DateTime.Now, // 计划完工时间
                jhkgrq         = item.D_PRODUCE_DATE_B ?? DateTime.Now, //计划开工日期
                jhkssj         = item.D_PRODUCE_DATE_B ?? DateTime.Now, //计划开始时间
                jhwgrq         = item.D_PRODUCE_DATE_E ?? DateTime.Now, //计划完工日期
                jhwgsl         = (item.N_WGT_TOTAL ?? 0).ToString(),    //计划完工数量
                jldwid         = matrl.C_PK_MEASDOC,                    //计量单位ID
                pch            = item.C_BATCH_NO,                       //批次号
                pk_produce     = matrl.C_PK_PRODUCE,                    //物料PK
                scbmid         = tBSta.C_SSBMID,                        //生产部门ID
                sjjssj         = item.D_PRODUCE_DATE_E ?? DateTime.Now, //实际结束时间
                sjkgrq         = item.D_PRODUCE_DATE_E ?? DateTime.Now, //完工单日期
                sjkssj         = item.D_PRODUCE_DATE_B ?? DateTime.Now, //实际开始日期
                sjwgrq         = item.D_PRODUCE_DATE_E ?? DateTime.Now, //实际完工日期
                sjwgsl         = (item.N_WGT_REMOVE ?? 0).ToString(),   //实际完工数量
                wlbmid         = matrl.C_PK_INVBASDOC,                  //存货档案主键
                zdrid          = user.C_ACCOUNT                         // "17384",//item.C_PRODUCE_EMP_ID,//操作人,用户编码工号
            };

            return(ncRollA2);
        }
Ejemplo n.º 5
0
        private NcRollA4 GetA4(Mod_TMO_ORDER order, Mod_TB_MATRL_MAIN ordMatrl, Mod_TRC_ROLL_WW_MAIN item, Mod_TB_STA tBSta, Mod_TS_USER user)
        {
            var ncRollA4 = new NcRollA4
            {
                ccxh           = item.C_BATCH_NO,                       //批号
                fhgsl          = (item.N_QUA_REMOVE ?? 0).ToString(),   //完工数量
                freeitemvalue1 = order.C_FREE1,                         //自由项1
                freeitemvalue2 = order.C_FREE2,                         //自由项2
                freeitemvalue3 = order.C_PACK,                          //包装要求
                gzzxbmid       = tBSta.C_STA_ERPCODE,                   //工作中心代码
                gzzxid         = tBSta.C_ERP_PK,                        //工作中心ID
                hgsl           = (item.N_WGT_REMOVE ?? 0).ToString(),   //合格数量
                jldwid         = ordMatrl.C_PK_MEASDOC,                 //计量单位ID
                jsrq           = item.D_PRODUCE_DATE_E ?? DateTime.Now, //生产结束日期
                ksrq           = item.D_PRODUCE_DATE_B ?? DateTime.Now, //生产开始日期
                pch            = item.C_BATCH_NO,                       //批次号,
                pk_produce     = ordMatrl.C_PK_PRODUCE,                 //物料PK
                rq             = item.D_PRODUCE_DATE_E ?? DateTime.Now, //完工日期
                scbmid         = tBSta.C_SSBMID,                        //生产部门ID
                sffsgp         = "N",                                   //是否发生改判
                sflfcp         = "N",                                   //是否联产品
                sj             = DateTime.Now,                          //报告时间
                wlbmid         = ordMatrl.C_PK_INVBASDOC,               //物料编码ID
                zdrid          = user.C_ACCOUNT,                        //item.C_PRODUCE_EMP_ID,//操作人员
            };

            return(ncRollA4);
        }
Ejemplo n.º 6
0
        private void btn_order_pj1_Click(object sender, EventArgs e)
        {
            if (DialogResult.Yes == MessageBox.Show("是否评价选中的订单?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1))
            {
                WaitingFrom.ShowWait("系统正在对订单进行分析,请稍候...");
                int res = 0;
                if (lst.Count > 0)
                {
                    if (lst.Where(a => a.B_check).ToList().Count > 0)
                    {
                        string C_TYPE = "正常";
                        if (rbtn_lx_type.SelectedIndex == 1)
                        {
                            C_TYPE = "试验";
                        }

                        for (int i = 0; i < lst.Count; i++)
                        {
                            if (lst[i].B_check)
                            {
                                string        c_order_id = lst[i].C_ID;
                                Mod_TMO_ORDER mod        = bll_order.GetModel(c_order_id);
                                Cls_Order_PC.OrderPj(mod, C_TYPE);
                                res = res + 1;
                            }
                        }
                    }
                }

                MessageBox.Show("订单已成功评价" + res.ToString() + "条!");
                btn_query_order_Click(null, null);
                WaitingFrom.CloseWait();
            }
        }
Ejemplo n.º 7
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!Page.IsPostBack)
     {
         if (!string.IsNullOrEmpty(Request.QueryString["ID"]))
         {
             ltlOrderNo.Text = Request.QueryString["ID"];
             Mod_TMO_ORDER mod = tmo_order.GetModel(ltlOrderNo.Text);
             if (mod != null)
             {
                 ltlConNO.Text   = mod.C_CON_NO;
                 ltlMatCode.Text = mod.C_MAT_CODE;
                 ltlMatName.Text = mod.C_MAT_NAME;
                 ltlSpec.Text    = mod.C_SPEC;
                 ltlStlGrd.Text  = mod.C_STL_GRD;
                 ltlFree1.Text   = mod.C_FREE1;
                 ltlFree2.Text   = mod.C_FREE2;
                 ltlPack.Text    = mod.C_PACK;
                 txtNum.Value    = mod.N_WGT.ToString();
                 ltlTaxRate.Text = mod.N_TAXRATE.ToString();
                 ltlPrice.Text   = mod.N_ORIGINALCURTAXPRICE.ToString();
             }
         }
     }
 }
Ejemplo n.º 8
0
        private NcRoll46 Get46(Mod_TMO_ORDER order, Mod_TB_MATRL_MAIN ordMatrl, Mod_TRC_ROLL_WW_MAIN item, Mod_TB_STA tBSta, Mod_TS_USER user)
        {
            Mod_TQB_CHECKSTATE mod_TQB_CHECKSTATE = dal_TQB_CHECKSTATE.GetModelByName(item.C_CHECKSTATE_NAME, "1001");

            var lineWhItem = dalLineWh.GetModelByCode(item.C_LINEWH_CODE);
            var ncRoll46   = new NcRoll46
            {
                castunitid      = ordMatrl.C_FJLDW,                    //辅助计量单位ID
                ccheckstate_bid = mod_TQB_CHECKSTATE.C_ID,             //"1001NC100000000052Z3",//质量等级ID
                cinvbasid       = ordMatrl.C_PK_INVBASDOC,             //存货基本ID
                coperatorid     = user.C_ACCOUNT,                      //"17384",//item.C_PRODUCE_EMP_ID,//入库人
                cwarehouseid    = lineWhItem.C_ID,                     //仓库ID
                cworkcenterid   = tBSta.C_ERP_PK,
                dbizdate        = DateTime.Now,                        //入库日期
                ninassistnum    = (item.N_QUA_REMOVE ?? 0).ToString(), //入库件数
                ninnum          = (item.N_WGT_REMOVE ?? 0).ToString(), //入库数量
                pk_produce      = ordMatrl.C_PK_PRODUCE,               //物料PK
                taccounttime    = DateTime.Now,                        //入库签字时间
                vbatchcode      = item.C_BATCH_NO,
                vfree1          = order.C_FREE1,
                vfree2          = order.C_FREE2,
                vfree3          = order.C_PACK,
            };

            return(ncRoll46);
        }
Ejemplo n.º 9
0
 private void btn_pc_Click(object sender, EventArgs e)
 {
     try
     {
         DialogResult dialogResult = MessageBox.Show("是否下达该头尾炉计划?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
         if (dialogResult == DialogResult.OK)//如果点击“确定”按钮
         {
             DataRow dr = this.gv_Order.GetDataRow(this.gv_Order.FocusedRowHandle);
             if (dr == null)
             {
                 MessageBox.Show("请选择需要下达的计划!");
                 return;
             }
             Mod_TMO_ORDER mod = bll_Order.GetModel(dr["C_ID"].ToString());
             Cls_APS_PC.DownOrder(mod.C_ID, mod.N_WGT);
             MessageBox.Show("计划已下达");
             WaitingFrom.ShowWait("数据正在加载,请稍后。。。");
             NewMethod();
             WaitingFrom.CloseWait();
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
 }
Ejemplo n.º 10
0
 /// <summary>
 /// 删除
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void btn_Del_Click(object sender, EventArgs e)
 {
     try
     {
         DialogResult dialogResult = MessageBox.Show("是否删除?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
         if (dialogResult == DialogResult.OK)//如果点击“确定”按钮
         {
             DataRow dr = this.gv_Order.GetDataRow(this.gv_Order.FocusedRowHandle);
             if (dr == null)
             {
                 MessageBox.Show("请选择需要删除的信息!");
                 return;
             }
             Mod_TMO_ORDER mod = bll_Order.GetModel(dr["C_ID"].ToString());
             mod.N_TYPE   = 11;
             mod.C_EMP_ID = RV.UI.UserInfo.UserID;
             mod.D_MOD_DT = RV.UI.ServerTime.timeNow();
             if (bll_Order.Update(mod))
             {
                 Mod_TRP_PLAN_ROLL modroll = bll_roll.GetModelByOrderNo(mod.C_ORDER_NO);
                 modroll.N_STATUS = 3;
                 bll_roll.Update(modroll);
                 MessageBox.Show("删除成功!");
                 Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "删除首尾炉订单");//添加操作日志
                 NewMethod();
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
 }
Ejemplo n.º 11
0
        /// <summary>
        /// 检测仓库是否重复
        /// </summary>
        /// <param name="ckcode"></param>
        /// <returns></returns>
        private bool getck(string orderID)
        {
            bool          result = true;
            Mod_TMO_ORDER mod    = tmo_order.GetModel(orderID);

            #region //客户余额查询
            Mod_TS_CUSTFILE modCustInfo = ts_custfile.GetModelCode(mod.C_CUST_NO);
            DataTable       dt          = ts_custfile.GetCusetMoney(modCustInfo.C_ID).Tables[0];
            if (dt.Rows.Count > 0)
            {
                lblcustmoney.Text = modCustInfo.C_NAME + ",余额:" + decimal.Parse(dt.Rows[0]["KHYE"].ToString()).ToString("###,##0.00") + "&nbsp;更新时间:" + Convert.ToDateTime(dt.Rows[0]["TS"].ToString()).ToString();
            }
            else
            {
                lblcustmoney.Text = "";
            }


            #endregion

            for (int i = 0; i < rptList.Items.Count; i++)
            {
                HtmlInputCheckBox chkOrder     = (HtmlInputCheckBox)rptList.Items[i].FindControl("chkOrder");
                Literal           ltlC_STL_GRD = (Literal)rptList.Items[i].FindControl("ltlC_STL_GRD");
                Literal           ltlC_SPEC    = (Literal)rptList.Items[i].FindControl("ltlC_SPEC");
                if (ltlC_STL_GRD.Text == mod.C_STL_GRD && ltlC_SPEC.Text == mod.C_SPEC)
                {
                    result = false;
                    break;
                }
            }
            return(result);
        }
Ejemplo n.º 12
0
        //合同变更
        protected void btnConBg_Click(object sender, EventArgs e)
        {
            try
            {
                #region //新增变更合同
                List <Mod_TMO_ORDER> orderList = new List <Mod_TMO_ORDER>();

                #region //添加合同基本信息

                int NO = Convert.ToInt32(ltlcon_bgNo.Text) + 1;

                Mod_TMO_CON modCon = tmo_con.GetModel(txtConNO.Text);
                modCon.C_CON_NO        = modCon.C_CON_NO + "-" + NO.ToString();
                modCon.C_CON_NAME      = modCon.C_CON_NAME;
                modCon.N_STATUS        = -1;                                           //客户待提交
                modCon.D_CONSING_DT    = DateTime.Now;                                 //合同签署日期
                modCon.D_CONEFFE_DT    = Convert.ToDateTime(DateTime.Now);             //计划生效日期
                modCon.D_CONINVALID_DT = Convert.ToDateTime(DateTime.Now).AddDays(60); //计划失效日期
                modCon.C_CON_NO_OLD    = txtConNO.Text;                                //原始合同号
                modCon.N_CHANGENUM     = NO;                                           //变更次数
                #endregion

                #region                                                 //添加合同明细
                Bll_RandomNumber randomnumber = new Bll_RandomNumber(); //流水号
                DataTable        dtOrder      = tmo_order.GetConOrderList(txtConNO.Text, "", "", "", "", "").Tables[0];

                for (int i = 0; i < dtOrder.Rows.Count; i++)
                {
                    Mod_TMO_ORDER modOrder = tmo_order.GetModel(dtOrder.Rows[i]["C_ID"].ToString()); //订单表
                    string        order_no = randomnumber.CreateOrderNo(modCon.C_CON_NO);            //订单号
                    modOrder.C_ORDER_NO      = order_no;
                    modOrder.C_CON_NO        = modCon.C_CON_NO;                                      //合同号
                    modOrder.C_CON_NAME      = modCon.C_CON_NAME;                                    //合同名称
                    modOrder.C_CUST_NO       = modCon.C_CUST_NO;                                     //客户编码
                    modOrder.C_CUST_NAME     = modCon.C_CUSTNAME;                                    //客户名称
                    modOrder.C_RECEIPTCORPID = modCon.C_CRECEIPTCUSTOMERID;                          //收货单位
                    modOrder.N_STATUS        = -1;                                                   //客户待提交
                    modOrder.C_SFPJ          = "N";                                                  //是否评价
                    modOrder.N_EXEC_STATUS   = -2;                                                   //未提报
                    modOrder.N_WGT           = modOrder.N_WGT;                                       //原合同数量
                    modOrder.C_ORDER_NO_OLD  = dtOrder.Rows[i]["C_ORDER_NO"].ToString();             //原合同号
                    orderList.Add(modOrder);
                }
                #endregion

                #endregion

                if (tmo_con.InsertConOrder(modCon, orderList))
                {
                    string url = "ConEdit_BG.aspx?ID=" + modCon.C_CON_NO + "&YID=" + txtConNO.Text;
                    Response.Redirect(url);
                }
            }
            catch (Exception ex)
            {
                WebMsg.MessageBox(ex.Message);
            }
        }
Ejemplo n.º 13
0
        public string GetConArea(object orderID)
        {
            string        str = string.Empty;
            Mod_TMO_ORDER mod = tmo_order.GetModel(orderID.ToString());

            if (mod != null)
            {
                str = mod.C_AREA;
            }
            return(str);
        }
Ejemplo n.º 14
0
        //库存订单
        protected void btn_add_Click(object sender, EventArgs e)
        {
            try
            {
                List <Mod_TMO_ORDER> orderList = new List <Mod_TMO_ORDER>();

                #region Insert

                Mod_TMO_ORDER modOrder = tmo_order.GetModel(ltlOrderNo.Text);

                Mod_TB_MATRL_MAIN modMat = tb_matrl_main.GetModel(modOrder.C_MAT_CODE);

                string order_no = randomnumber.CreateOrderNo(ltlConNO.Text);//订单号
                modOrder.C_ORDER_NO = order_no;
                modOrder.N_USER_LEV = 0;
                modOrder.N_COST     = 0;

                decimal N_WGT = Convert.ToDecimal(txtNum.Value ?? "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;                        //辅数量

                #region                                                                                   //获取钢种单价-折扣-税率
                decimal Price                 = Convert.ToDecimal(modOrder.N_ORIGINALCURTAXPRICE);        //原币含税单价
                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.InsertKCFirstOrder(orderList))
                {
                    Response.Write("<script>alert('提交成功');window.parent.close();</script>");
                }
            }
            catch (Exception ex)
            {
                WebMsg.MessageBox(ex.Message);
            }
        }
Ejemplo n.º 15
0
        /// <summary>
        /// 计划重新划分连铸
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_fp_lz_Click(object sender, EventArgs e)
        {
            if (DialogResult.No == MessageBox.Show("是否确认重新分配计划连铸信息?\r\n重新分配后浇次计划将会重新生成!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1))
            {
                return;
            }
            WaitingFrom.ShowWait("系统正对炼钢计划进行连铸重新分配,请稍候...");
            if (this.icbo_lz1.SelectedIndex <= 0)
            {
                MessageBox.Show("请选择要分配的连铸!");
                icbo_lz1.Focus();
                return;
            }
            string     C_CCM_ID = icbo_lz1.Properties.Items[this.icbo_lz1.SelectedIndex].Value.ToString();
            Mod_TB_STA mod_sta  = bll_sta.GetModel(C_CCM_ID);

            int[] aa  = this.gv_Lg_plan_Query.GetSelectedRows();
            int   cou = 0;

            for (int i = 0; i < aa.Length; i++)
            {
                int    selectedHandle = aa[i];
                string C_ID           = this.gv_Lg_plan_Query.GetRowCellValue(selectedHandle, "C_ID").ToString();
                string C_STL_GRD      = this.gv_Lg_plan_Query.GetRowCellValue(selectedHandle, "C_STL_GRD").ToString();
                string C_STD_CODE     = this.gv_Lg_plan_Query.GetRowCellValue(selectedHandle, "C_STD_CODE").ToString();



                Mod_TRP_PLAN_ROLL mod_roll   = bll_trp_plan.GetModel(C_ID);
                string            C_ORDER_ID = mod_roll.C_INITIALIZE_ITEM_ID;
                Mod_TMO_ORDER     mod_order  = bll_order.GetModel(C_ORDER_ID);



                mod_order.C_CCM_NO   = C_CCM_ID;
                mod_order.C_CCM_CODE = mod_sta.C_STA_CODE;
                mod_order.C_CCM_DESC = mod_sta.C_STA_DESC;
                if (bll_order.Update(mod_order))
                {
                    mod_roll.C_CCM_ID   = C_CCM_ID;
                    mod_roll.C_CCM_CODE = mod_sta.C_STA_CODE;
                    mod_roll.C_CCM_DESC = mod_sta.C_STA_DESC;
                    if (bll_trp_plan.Update(mod_roll))
                    {
                        cou = cou + i;
                    }
                }
            }
            MessageBox.Show("连铸划分成功!");
            WaitingFrom.CloseWait();
            btn_query_lc_plan_Click(null, null);
        }
Ejemplo n.º 16
0
 private void simpleButton1_Click(object sender, EventArgs e)
 {
     WaitingFrom.ShowWait("");
     int[] rownumber = this.gv_tmo_order.GetSelectedRows();//获取选中行号数组;
     for (int i = 0; i < rownumber.Length; i++)
     {
         int           selectedHandle = rownumber[i];
         string        strID          = this.gv_tmo_order.GetRowCellValue(selectedHandle, "C_ID").ToString();
         Mod_TMO_ORDER modorder       = bllorder.GetModel(strID);
         modorder.N_EXEC_STATUS = -2;
         bllorder.Update(modorder);
     }
     WaitingFrom.CloseWait();
     btn_query_main_Click(null, null);
 }
Ejemplo n.º 17
0
        private void btn_calcle_pj_Click(object sender, EventArgs e)
        {
            int selectnum = lst.Where(a => a.B_check).ToList().Count; //选中的行数
            int updatenum = 0;                                        //修改成功的行数

            if (selectnum == 0)
            {
                MessageBox.Show("请选择需要取消评价的订单!");
                return;
            }


            if (DialogResult.Yes == MessageBox.Show("是否将取消已评价的订单?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1))
            {
                WaitingFrom.ShowWait("系统正在对订单进行修改,请稍候...");
                if (lst.Count > 0)
                {
                    if (selectnum > 0)
                    {
                        for (int i = 0; i < lst.Count; i++)
                        {
                            if (lst[i].B_check && lst[i].N_ROLL_PROD_WGT == 0)
                            {
                                string        C_ID = lst[i].C_ID;
                                Mod_TMO_ORDER mod  = bll_order.GetModel(C_ID);
                                mod.C_SFPJ      = "N";
                                mod.D_PJ_DATE   = null;
                                mod.D_SC_MOD_DT = RV.UI.ServerTime.timeNow();
                                bll_order.Update(mod);
                                updatenum = updatenum + 1;

                                Mod_TMO_ORDER_PJ_LOG modlog = new Mod_TMO_ORDER_PJ_LOG();
                                modlog.C_EMP_ID   = RV.UI.UserInfo.userID;
                                modlog.C_ORDER_NO = lst[i].C_ORDER_NO;
                                modlog.C_TYPE     = "取消评价";
                                modlog.C_RESULT   = "订单已取消评价!";
                                modlog.C_MSG      = "取消评价!";
                                bll_ddpj.Add(modlog);
                            }
                        }
                    }
                }
                MessageBox.Show("选中" + selectnum.ToString() + "条订单取消评价,执行成功" + updatenum + "条订单!");
                btn_query_order_Click(null, null);
                WaitingFrom.CloseWait();
            }
        }
Ejemplo n.º 18
0
        private void btn_Add_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(btn_mat_code.Text.Trim()))
            {
                MessageBox.Show("物料编码不能为空!");
                return;
            }
            if (string.IsNullOrEmpty(txt_group.Text.Trim()))
            {
                MessageBox.Show("组号不能为空!");
                return;
            }
            try
            {
                Mod_TMO_ORDER mod = new Mod_TMO_ORDER();
                mod.C_ID        = System.Guid.NewGuid().ToString();
                mod.C_ORDER_NO  = "TW" + RV.UI.ServerTime.timeNow().ToString("yyyyMMddHHmmssfff");
                mod.C_MAT_CODE  = btn_mat_code.Text.Trim();
                mod.C_MAT_NAME  = txt_mat_name.Text.Trim();
                mod.C_STL_GRD   = txt_Grd.Text.Trim();
                mod.C_STD_CODE  = txt_STD1.Text.Trim();
                mod.C_FREE1     = txt_ZYX1.Text.Trim();
                mod.C_FREE2     = txt_ZYX2.Text.Trim();
                mod.C_SPEC      = Spec;
                mod.N_TYPE      = 10;
                mod.C_CUST_NAME = "TW";
                mod.N_WGT       = 100;
                mod.N_GROUP     = Convert.ToInt32(txt_group.Text);
                mod.C_EMP_ID    = RV.UI.UserInfo.UserID;
                mod.C_EMP_NAME  = RV.UI.UserInfo.UserName;
                mod.D_MOD_DT    = RV.UI.ServerTime.timeNow();

                if (bll_Order.Add(mod))
                {
                    Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "添加头尾订单");//添加操作日志

                    MessageBox.Show("添加成功!");
                    NewMethod();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Ejemplo n.º 19
0
        /// <summary>
        /// 完工,入库
        /// </summary>
        /// <param name="item">委外计划</param>
        private void RuKu(Mod_TRC_ROLL_WW_MAIN item, Mod_TB_STA tBSta, Mod_TMO_ORDER contractInfo)
        {
            var xcItems = dalWWMain.GetItemList(item.C_ID);

            if (xcItems.Any() == false)
            {
                throw new Exception("未找到组批信息");
            }

            List <Mod_TRC_ROLL_PRODCUT> addItems = new List <Mod_TRC_ROLL_PRODCUT>();

            // 单支完工量
            var singleAmt = item.N_WGT_REMOVE / item.N_QUA_REMOVE;

            foreach (var xcItem in xcItems)
            {
                // 如果已经满足完工支数退出
                if (addItems.Count == item.N_QUA_REMOVE)
                {
                    continue;
                }
                xcItem.C_ID              = $"{item.C_BATCH_NO}{(addItems.Count + 1).ToString("0000")}";
                xcItem.C_BATCH_NO        = item.C_BATCH_NO;
                xcItem.N_WGT             = singleAmt ?? 0;
                xcItem.C_MOVE_TYPE       = "E";
                xcItem.C_SHIFT           = item.C_PRODUCE_SHIFT;
                xcItem.C_GROUP           = item.C_PRODUCE_GROUP;
                xcItem.C_STA_ID          = tBSta.C_ID;
                xcItem.C_IS_DEPOT        = "Y";
                xcItem.C_MAT_CODE        = contractInfo.C_MAT_CODE; //item.C_MAT_XC_CODE;
                xcItem.C_MAT_CODE_BEFORE = string.Empty;
                xcItem.C_MAT_DESC        = contractInfo.C_MAT_NAME; //item.C_MAT_XC_NAME;
                xcItem.C_CON_NO          = contractInfo.C_CON_NO;
                xcItem.C_ORDER_NO        = contractInfo.C_ORDER_NO;
                xcItem.C_LINEWH_CODE     = item.C_LINEWH_CODE;
                xcItem.C_LINEWH_LOC_CODE = string.Empty;
                xcItem.C_WWBATCH_NO      = item.C_XC_BATCH_NO;
                xcItem.C_JUDGE_LEV_ZH    = item.C_CHECKSTATE_NAME;
                xcItem.C_BZYQ            = contractInfo.C_PACK;
                xcItem.D_DP_DT           = DateTime.Now;
                bllProduct.Add(xcItem);

                addItems.Add(xcItem);
            }
        }
Ejemplo n.º 20
0
        public AjaxResult GetOldOrderAdd([FromBody] dynamic Json)
        {
            #region                                    //参数
            string ConNo     = Json.ConNo;             //合同号
            JArray OrderList = (JArray)Json.OrderList; //.OrderNo
            #endregion

            #region 数据操作
            AjaxResult result = new AjaxResult();
            result.Code = DoResult.Success;

            List <Mod_TMO_ORDER> ListOrder = new List <Mod_TMO_ORDER>();

            Mod_TMO_CON modCon = tmo_con.GetModel(ConNo);
            for (int i = 0; i < OrderList.Count; i++)
            {
                #region //添加订单

                Mod_TMO_ORDER modOrder = tmo_order.GetOrderModel(OrderList[i]["OrderNo"].ToString());
                string        order_no = randomnumber.CreateOrderNo(ConNo); //订单号
                modOrder.C_ORDER_NO = order_no;
                modOrder.C_CON_NO   = ConNo;                                //合同号
                modOrder.C_CON_NAME = modCon.C_CON_NAME;                    //合同名称
                modOrder.C_AREA     = modCon.C_AREA;                        //区域
                //modOrder.D_NEED_DT = modCon.D_CONINVALID_DT;//需求日期
                modOrder.D_DELIVERY_DT    = modCon.D_CONINVALID_DT;         //计划收货日期
                modOrder.D_DT             = DateTime.Now;                   //订单日期
                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_REMARK         = modCon.C_REAMRK;

                ListOrder.Add(modOrder);
                #endregion
            }
            result.Result = tmo_con.InsertConOrder(modCon, ListOrder) == true ? "提交成功" : "提交失败";
            #endregion

            return(result);
        }
Ejemplo n.º 21
0
        /// <summary>
        /// 检测每条订单是否低毛利
        /// </summary>
        /// <param name="orderID">订单ID</param>
        /// <param name="date">合同生效起始日期</param>
        /// <returns></returns>
        public bool CheckMAOLI(string orderID, string matCode, string date)
        {
            Dal_TMO_ORDER dal = new Dal_TMO_ORDER();
            Mod_TMO_ORDER mod = dal.GetModel(orderID);

            ArrayList arraySql = new ArrayList();

            bool result = true;

            string  strSql = $@"SELECT T.C_MAT_GROUP_CODE,T.C_SPEC, T.N_THK,NVL(A.C_FLAG,'N')C_FLAG
                                      FROM TB_MATRL_MAIN T LEFT JOIN TMB_MONI_STLGRD A ON A.C_STL_GRD = T.C_STL_GRD
                                     WHERE T.C_MAT_CODE = '{matCode}'";
            DataRow dr     = DbHelperOra.GetDataRow(strSql);

            if (dr != null)
            {
                string flag         = dr["C_FLAG"].ToString() == "N" ? "01" : "02"; //判定是否监控钢种标识
                string matgroupcode = dr["C_MAT_GROUP_CODE"].ToString();            //钢种物料组编码

                decimal num   = 0;                                                  //监控钢种260,其他50
                decimal maoli = Convert.ToDecimal(mod.N_PROFIT);                    //毛利
                string  spec  = dr["N_THK"].ToString();                             //规格

                //监控钢种260,其他50
                string  strSql2 = $"SELECT T.C_INDEX FROM TS_DIC T WHERE T.C_TYPECODE='MAOLI' AND  T.C_DETAILCODE='{flag}'";
                DataRow dr2     = DbHelperOra.GetDataRow(strSql2);
                if (dr2 != null)
                {
                    num = Convert.ToDecimal(dr2["C_INDEX"]);
                }

                if (maoli < num)//订单毛利低于配置毛利进行检测
                {
                    result = GetCheckMAOLI(date, matgroupcode, spec, matCode);
                }
            }

            return(result);
        }
Ejemplo n.º 22
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                if (!string.IsNullOrEmpty(Request.QueryString["ID"]))
                {
                    string id = Request.QueryString["ID"];


                    Mod_TMO_ORDER mod   = tmo_order.GetOrderModel(id);
                    string        order = id.StartsWith("YC") == true ? "'" + id + "'" : "'" + mod?.C_ORDER_NO + "'";
                    if (!string.IsNullOrEmpty(mod?.C_ORDER_NO_OLD))
                    {
                        order += ",'" + mod?.C_ORDER_NO_OLD + "'";
                    }

                    DataTable dt = plan_xqcx.ListPlanData(order).Tables[0];
                    if (dt.Rows.Count > 0)
                    {
                        ltlNEEDWGT.Text = dt.Compute("sum(计划需求量)", "true").ToString();
                        ltlWGWGT.Text   = dt.Compute("sum(完工数量)", "true").ToString();
                        ltlHGWGT.Text   = dt.Compute("sum(分配量)", "true").ToString();

                        rptList.DataSource = dt;
                        rptList.DataBind();
                    }
                    else
                    {
                        ltlNEEDWGT.Text = "";
                        ltlWGWGT.Text   = "";
                        ltlHGWGT.Text   = "";

                        rptList.DataSource = null;
                        rptList.DataBind();
                    }
                }
            }
        }
Ejemplo n.º 23
0
        private void GetList()
        {
            Mod_TMO_ORDER mod = tmo_order.GetModel(ltlorderid.Text);

            string areafalg = ts_dic.GetAreaFlag(ltlarea.Text);//获取区域是否按客户发运Y/N

            DataTable dt = areafalg == "N" ? tmo_order.ZTWGT(ltlmatcode.Text, ltlstdcode.Text, ltlarea.Text, ltlpack.Text, ltllev.Text).Tables[0] : tmo_order.ZTWGT(ltlmatcode.Text, ltlstdcode.Text, ltlarea.Text, ltlpack.Text, ltllev.Text, mod.C_CUST_NAME, mod.C_CON_NO).Tables[0];

            if (dt.Rows.Count > 0)
            {
                rptList.DataSource = dt;
                rptList.DataBind();
                ltlsumwgt.Text = dt.Compute("sum(N_FYWGT)", "true").ToString();
            }
            else
            {
                rptList.DataSource = null;
                rptList.DataBind();
                ltlsumwgt.Text = "0";
            }

            DataTable dtkcwgt = areafalg == "N" ? tmo_order.KCWGT(ltlmatcode.Text, ltlstdcode.Text, ltlarea.Text, ltlpack.Text, ltllev.Text).Tables[0] : tmo_order.KCWGT(ltlmatcode.Text, ltlstdcode.Text, ltlarea.Text, ltlpack.Text, ltllev.Text, mod.C_CUST_NAME, mod.C_CON_NO).Tables[0];

            if (dtkcwgt.Rows.Count > 0)
            {
                if (!string.IsNullOrEmpty(dtkcwgt.Rows[0]["N_WGT"].ToString()))
                {
                    ltlkcwgt.Text = dtkcwgt.Rows[0]["N_WGT"].ToString();
                }
                else
                {
                    ltlkcwgt.Text = "0";
                }
            }

            ltlkfwgt.Text = Convert.ToString(Convert.ToDecimal(ltlkcwgt.Text) - Convert.ToDecimal(ltlsumwgt.Text));
        }
Ejemplo n.º 24
0
        private void btn_zdfz_Click(object sender, EventArgs e)
        {
            if (DialogResult.No == MessageBox.Show("是否确认强行分组混浇?\r\n重新分组后浇次计划将会重新生成!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1))
            {
                return;
            }
            WaitingFrom.ShowWait("系统正对计划进行处理,请稍候...");

            int[] aa  = this.gv_Lg_plan_Query.GetSelectedRows();
            int   cou = 0;

            for (int i = 0; i < aa.Length; i++)
            {
                int               selectedHandle = aa[i];
                string            C_ID           = this.gv_Lg_plan_Query.GetRowCellValue(selectedHandle, "C_ID").ToString();
                string            C_STL_GRD      = this.gv_Lg_plan_Query.GetRowCellValue(selectedHandle, "C_STL_GRD").ToString();
                string            C_STD_CODE     = this.gv_Lg_plan_Query.GetRowCellValue(selectedHandle, "C_STD_CODE").ToString();
                Mod_TRP_PLAN_ROLL mod_roll       = bll_trp_plan.GetModel(C_ID);
                string            C_ORDER_ID     = mod_roll.C_INITIALIZE_ITEM_ID;
                Mod_TMO_ORDER     mod_order      = bll_order.GetModel(C_ORDER_ID);
                mod_order.N_GROUP = Convert.ToInt32(this.txt_zh.Text);

                bool res = bll_gztj.UpdateGZ(C_STL_GRD, C_STD_CODE, Convert.ToInt32(this.txt_zh.Text));

                if (bll_order.Update(mod_order))
                {
                    mod_roll.N_GROUP = Convert.ToInt32(this.txt_zh.Text);
                    if (bll_trp_plan.Update(mod_roll))
                    {
                        cou = cou + i;
                    }
                }
            }
            MessageBox.Show("计划分组成功!");
            WaitingFrom.CloseWait();
            btn_query_lc_plan_Click(null, null);
        }
Ejemplo n.º 25
0
        private void btn_qr_Click(object sender, EventArgs e)
        {
            WaitingFrom.ShowWait("");
            int[] rownumber = this.gv_tmo_order.GetSelectedRows();//获取选中行号数组;
            for (int i = 0; i < rownumber.Length; i++)
            {
                int           selectedHandle = rownumber[i];
                string        strID          = this.gv_tmo_order.GetRowCellValue(selectedHandle, "C_ID").ToString();
                double        wcl            = Convert.ToDouble(this.gv_tmo_order.GetRowCellValue(selectedHandle, "WCL").ToString());
                Mod_TMO_ORDER modorder       = bllorder.GetModel(strID);
                if (wcl > 0.9)
                {
                    modorder.N_EXEC_STATUS = -2;
                }
                else
                {
                    modorder.N_EXEC_STATUS = 0;
                }

                bllorder.Update(modorder);
            }
            WaitingFrom.CloseWait();
            btn_query_main_Click(null, null);
        }
Ejemplo n.º 26
0
        /// <summary>
        /// 发送改判信息给NC
        /// </summary>
        /// <param name="xmlFileName">xml完整路径</param>
        /// <returns></returns>
        public string SendXml_DM(string xmlFileName, string fydh)
        {
            try
            {
                string name = "FYSJ" + fydh + ".xml";
                xmlFileName += "\\NCXML\\" + name;
                Mod_TMD_DISPATCH modDispatch = dal_TMD_DISPATCH.GetModel(fydh);
                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", name);
                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", "");                       //发运单表头主键
                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", "");
                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 = GetZJBList(fydh).Tables[0];
                if (dt.Rows.Count > 0)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        int rowno = i + 1;

                        Mod_TMP_DAYPLAN modDayPlan = dal_TMP_DAYPLAN.GetModel(dt.Rows[i]["C_PLAN_ID"].ToString());
                        if (modDayPlan != null)
                        {
                            #region //实体参数

                            Mod_TMO_ORDER           modOrder           = dal_TMO_ORDER.GetModel(modDayPlan.C_PKBILLB);
                            Mod_TPB_LINEWH          mbck               = dal_TPB_LINEWH.GetModel_Interface_Trans(dt.Rows[i]["C_SEND_STOCK"].ToString()); //目标仓库
                            Mod_TPB_SLABWH          slabwh             = dal_TPB_SLABWH.GetModel_Interface_Trans(dt.Rows[i]["C_SEND_STOCK"].ToString());
                            Mod_TS_CUSTFILE         modCust            = dal_TS_CUSTFILE.GetCustModel(modDayPlan.C_PKCUST);                              //客户档案
                            Mod_TMB_AREA            modArea            = dal_TMB_AREA.GetModel(modDayPlan.C_PKARRIVEAREA);                               //区域
                            Mod_TB_MATRL_MAIN       modMat             = dal_TB_MATRL_MAIN.GetMatModel(modDayPlan.C_PKINV);                              //物料
                            Mod_TQB_CHECKSTATE      mod_TQB_CHECKSTATE = dal_TQB_CHECKSTATE.GetModelByName(dt.Rows[i]["C_ZLDJ"].ToString(), "1001");
                            Mod_TMD_DISPATCHDETAILS modfyditem         = dal_fyditem.GetModel(dt.Rows[i]["C_PK_NCID"].ToString());

                            string    addrpk   = "";
                            DataTable dtaddess = dal_TMB_AREA.GetAreaAddress(modfyditem.C_SEND_AREA).Tables[0];
                            if (dtaddess.Rows.Count > 0)
                            {
                                addrpk = dtaddess.Rows[0]["PK_ADDRESS"].ToString();
                            }
                            #endregion

                            decimal dunitprice = Convert.ToDecimal(modDayPlan.N_UNITPRICE); //含税单价
                            string  wgt        = dt.Rows[i]["N_JZ"].ToString();             //重量
                            string  num        = dt.Rows[i]["N_NUM"].ToString();            //数量
                            decimal dmoney     = dunitprice * Convert.ToDecimal(wgt);       //订单金额

                            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", mod_TQB_CHECKSTATE.C_ID); //质量等级**
                            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", "");
                            CreateNode(xmlDoc, item, "creceiptcorpid", modDayPlan.C_RECEIPTCORPID);//收货单位
                            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", wgt);        //净重
                            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", modfyditem.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");    //发货地区
                            if (mbck != null)
                            {
                                CreateNode(xmlDoc, item, "pksendstock", mbck.C_ID);//发货仓库
                            }
                            else
                            {
                                CreateNode(xmlDoc, item, "pksendstock", slabwh.C_ID);           //发货仓库
                            }
                            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", "");
                            string batch = "";
                            if (modMat.C_MAT_TYPE == "6")
                            {
                                if (dt.Rows[i]["C_BATCH_NO"].ToString() != "")
                                {
                                    batch = dt.Rows[i]["C_BATCH_NO"].ToString();
                                }
                                else
                                {
                                    batch = dt.Rows[i]["C_STOVE"].ToString();
                                }
                            }
                            if (modMat.C_MAT_TYPE == "8")
                            {
                                batch = dt.Rows[i]["C_BATCH_NO"].ToString();
                            }
                            CreateNode(xmlDoc, item, "vbatchcode", batch);
                            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", modfyditem.C_AREA);   //收货地址
                            CreateNode(xmlDoc, item, "vdestarea", modfyditem.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", dt.Rows[i]["C_PK_NCID"].ToString()); //CRM发运单表体主键//C_PK_NCID
                            CreateNode(xmlDoc, item, "vfree2", modDayPlan.C_VFREE2);                 //自由项2
                            CreateNode(xmlDoc, item, "vfree3", dt.Rows[i]["C_BZYQ"].ToString());     //包装钢坯传空
                            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", modMat.C_MAT_CODE);
                            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", "");                  //计量毛重日期*****
                            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", ""); //毛重*****
                            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 = dalSendNC.SendXML(xmlFileName);
                if (parem[0] == "1")
                {
                    return("1");
                }
                else
                {
                    return(parem[1]);
                }
            }
            catch (Exception ex)
            {
                return(ex.ToString());
            }
        }
Ejemplo n.º 27
0
        /// <summary>
        /// 保存合同
        /// </summary>
        /// <param name="state">状态</param>
        /// <returns></returns>
        private bool SaveCon(int state)
        {
            List <Mod_TMO_ORDER> orderList = new List <Mod_TMO_ORDER>();

            #region //修改合同基本信息

            Mod_TMO_CON modCon = tmo_con.GetModel(hidconno.Value);
            if (hidconno.Value != txtConNO.Value)
            {
                modCon.C_CON_NEW = txtConNO.Value;                                                //合同号
            }
            modCon.N_STATUS         = state;                                                      //合同状态
            modCon.C_CON_NAME       = txtConName.Value;                                           //合同名称
            modCon.C_CONTYPEID      = dropConType.SelectedValue;                                  //合同类型
            modCon.C_CURRENCYTYPEID = dropBiZhong.SelectedValue;                                  //货币类型
            modCon.D_CONSING_DT     = Convert.ToDateTime(txtQianDanDT.Value);                     //签署日期
            modCon.D_CONEFFE_DT     = Convert.ToDateTime(txtPlanStartDT.Value);                   //生效日期
            modCon.D_CONINVALID_DT  = Convert.ToDateTime(txtPlanEndDT.Value);                     //失效日期

            modCon.C_TRANSMODEID    = dropFaYun.SelectedItem.Value;                               //发运方式
            modCon.C_SALECORPID     = dropSale.SelectedItem.Value;                                //销售组织-
            modCon.C_AREA           = txtDept.Value;                                              //合同区域
            modCon.C_REAMRK         = txtDESC.Value;                                              //备注
            modCon.C_STATION        = txtC_STATION.Value;                                         //站点
            modCon.C_BIZTYPE        = dropYeWuType.SelectedItem.Value;                            //业务类型-
            modCon.C_DEPTID         = hidC_DEPT_ID.Value;                                         //业务部门-
            modCon.C_EMPLOYEEID     = hidC_SALESMAN.Value;                                        //业务员
            modCon.C_EDITEMPLOYEEID = ltlC_EMP_ID.Text;                                           //修改人
            modCon.D_EDITDATE       = DateTime.Now;                                               //修改时间
            modCon.C_ADDRESS        = dropAddr.SelectedItem?.Text ?? "";                          //收货地址

            string C_PCLX = dropYeWuType.SelectedItem.Text == "1001NC10000000005EI8" ? "1" : "0"; //1出口材,0普通材

            modCon.C_CRECEIPTCUSTOMERID = hidC_CGID.Value;                                        //收货单位
            modCon.C_CRECEIPTCORPID     = hidC_OTCID.Value;                                       //开票单位
            modCon.N_FLAG = dropClass.SelectedValue;

            #endregion

            #region //修改合同明细

            for (int i = 0; i < rptList.Items.Count; i++)
            {
                DropDownList dropZL   = (DropDownList)rptList.Items[i].FindControl("dropZL");
                DropDownList dropzxzt = (DropDownList)rptList.Items[i].FindControl("dropzxzt");

                DropDownList dropsfjk = (DropDownList)rptList.Items[i].FindControl("dropsfjk");

                TextBox txtWgt = (TextBox)rptList.Items[i].FindControl("txtWgt");                                     //数量
                TextBox txtN_ORIGINALCURTAXPRICE = (TextBox)rptList.Items[i].FindControl("txtN_ORIGINALCURTAXPRICE"); //原币含税单价

                TextBox txtPack_Code = (TextBox)rptList.Items[i].FindControl("txtPack_Code");
                TextBox txtRemark    = (TextBox)rptList.Items[i].FindControl("txtRemark");//行备注

                Literal ltlC_NO = (Literal)rptList.Items[i].FindControl("ltlC_NO");

                HtmlInputText txtD_DELIVERY_DT = (HtmlInputText)rptList.Items[i].FindControl("txtD_DELIVERY_DT"); //订单交货日期
                HtmlInputText txtN_TAXRATE     = (HtmlInputText)rptList.Items[i].FindControl("txtN_TAXRATE");     //税率
                HtmlInputText txtStd_Code      = (HtmlInputText)rptList.Items[i].FindControl("txtStd_Code");      //执行标准
                HtmlInputText txtC_FREE1       = (HtmlInputText)rptList.Items[i].FindControl("txtC_FREE1");       //自由项1
                HtmlInputText txtC_FREE2       = (HtmlInputText)rptList.Items[i].FindControl("txtC_FREE2");       //自由项2



                Mod_TMO_ORDER modOrder = tmo_order.GetModel(ltlC_NO.Text);

                if (hidconno.Value != txtConNO.Value)
                {
                    modOrder.C_CON_NO = modCon.C_CON_NEW;                                //新合同号
                }
                modOrder.C_CON_NAME    = txtConName.Value;                               //合同名称
                modOrder.C_AREA        = txtDept.Value;                                  //区域
                modOrder.C_CUST_SQ     = txtDESC.Value;
                modOrder.C_PCLX        = C_PCLX;                                         //1出口材,0普通材
                modOrder.N_EXEC_STATUS = Convert.ToDecimal(dropzxzt.SelectedItem.Value); //执行状态
                                                                                         //modOrder.D_NEED_DT = modCon.D_NEED_DT;//需求日期
                modOrder.D_DELIVERY_DT    = Convert.ToDateTime(txtD_DELIVERY_DT.Value);  //计划订单交货日期
                modOrder.C_YWY            = txtSaleUser.Value;                           //业务员姓名
                modOrder.C_CURRENCYTYPEID = dropBiZhong.SelectedValue;                   //货币

                modOrder.C_STD_CODE = txtStd_Code.Value;                                 //执行标准
                modOrder.C_FREE1    = txtC_FREE1.Value;                                  //自由项1
                modOrder.C_FREE2    = txtC_FREE2.Value;                                  //自由项2

                modOrder.C_PACK           = txtPack_Code.Text;                           //包装要求
                modOrder.C_LEV            = "";                                          //等级
                modOrder.C_ORDER_LEV      = "";                                          //级别
                modOrder.C_VDEF1          = dropZL.SelectedValue;                        //质量等级
                modOrder.C_STL_GRD_CLASS  = "";                                          //钢种大类
                modOrder.C_SFJK           = dropsfjk.SelectedItem.Text;                  //监控钢种
                modOrder.C_RECEIPTAREAID  = modCon.C_CRECEIPTAREAID;                     //收货地区
                modOrder.C_RECEIVEADDRESS = modCon.C_ADDRESS;                            // 收货地址
                modOrder.C_RECEIPTCORPID  = modCon.C_CRECEIPTCUSTOMERID;                 //收货单位
                modOrder.C_REMARK         = txtRemark.Text;                              //行备注


                decimal N_WGT = 0;
                if (!string.IsNullOrEmpty(txtWgt.Text))
                {
                    N_WGT = Convert.ToDecimal(txtWgt.Text);
                }
                modOrder.N_WGT  = N_WGT;                                            //数量
                modOrder.N_FNUM = modOrder.N_HSL == 0 ? 1 : N_WGT / modOrder.N_HSL; //辅数量


                #region //获取钢种单价-折扣-税率
                if (!string.IsNullOrEmpty(txtN_ORIGINALCURTAXPRICE.Text))
                {
                    decimal shuolv = Convert.ToDecimal(txtN_TAXRATE.Value == "" ? "0" : txtN_TAXRATE.Value);//税率
                    if (Convert.ToDecimal(shuolv) >= 1)
                    {
                        shuolv = shuolv / 100;
                    }

                    decimal N_TAXRATE             = shuolv + 1;                                                   //税率
                    decimal N_ORIGINALCURPRICE    = Convert.ToDecimal(txtN_ORIGINALCURTAXPRICE.Text) / N_TAXRATE; //原币无税单价
                    decimal N_ORIGINALCURTAXPRICE = Convert.ToDecimal(txtN_ORIGINALCURTAXPRICE.Text);             //原币含税单价

                    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_TAXRATE             = shuolv;                                                      //税率
                    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

            return(tmo_con.UpdateConOrder(modCon, orderList));
        }
Ejemplo n.º 28
0
        /// <summary>
        /// NC销售合同接口
        /// </summary>
        /// <param name="con">合同号</param>
        /// <param name="xmlFileName">文件名/路径</param>
        /// <param name="empID">操作人ID</param>
        /// <returns></returns>
        public List <string> SendXmlOrder(string con, string xmlFileName, string empID)
        {
            try
            {
                Mod_TMO_CON      modCon  = tmo_con.GetModel(con);
                Mod_TMB_FLOWINFO modFlow = tmb_flowinfo.GetModel(modCon.C_FLOWID);

                XmlDocument xmlDoc = new XmlDocument();
                //创建类型声明节点
                XmlNode node = xmlDoc.CreateXmlDeclaration("1.0", "UTF-8", "no");
                xmlDoc.AppendChild(node);

                //创建根节点
                XmlElement root = xmlDoc.CreateElement("ufinterface");
                #region//给节点属性赋值
                root.SetAttribute("account", "1");
                root.SetAttribute("billtype", "CTEXT");
                root.SetAttribute("filename", "");
                root.SetAttribute("isexchange", "Y");
                root.SetAttribute("proc", "add");
                root.SetAttribute("receiver", "101");
                root.SetAttribute("replace", "Y");
                root.SetAttribute("roottag", "bill");
                root.SetAttribute("sender", "1107");
                root.SetAttribute("subbilltype", "");
                #endregion
                xmlDoc.AppendChild(root);

                //创建子根节点
                XmlElement so_order = xmlDoc.CreateElement("bill");
                #region                           //节点属性
                so_order.SetAttribute("id", con); //主键
                #endregion
                root.AppendChild(so_order);

                XmlNode head = xmlDoc.CreateNode(XmlNodeType.Element, "bill_head", null);

                #region                                                                                                          //表头_bill_head
                CreateNode(xmlDoc, head, "actualinvalidate", Convert.ToDateTime(modCon.D_CONINVALID_DT).ToString("yyy-MM-dd"));  //实际终止日期
                CreateNode(xmlDoc, head, "actualvalidate", Convert.ToDateTime(modCon.D_CONEFFE_DT).ToString("yyy-MM-dd"));       //实际生效日期
                CreateNode(xmlDoc, head, "audiid", modCon.C_APPROVEID);                                                          //审核人
                CreateNode(xmlDoc, head, "auditdate", Convert.ToDateTime(modCon.D_APPROVEDATE).ToString("yyy-MM-dd"));           //审核日期
                CreateNode(xmlDoc, head, "bsc", "N");                                                                            //是否委外---****
                CreateNode(xmlDoc, head, "ct_code", modCon.C_CON_NO);                                                            //合同编码
                CreateNode(xmlDoc, head, "ct_name", modCon.C_CON_NAME);                                                          //合同名称
                CreateNode(xmlDoc, head, "ctflag", modCon.N_STATUS.ToString());                                                  //合同状态
                CreateNode(xmlDoc, head, "currid", modCon.C_CURRENCYTYPEID);                                                     //币种
                CreateNode(xmlDoc, head, "currrate", "1");                                                                       //折本汇率
                CreateNode(xmlDoc, head, "custid", modCon.C_CUSTOMERID);                                                         //客商
                CreateNode(xmlDoc, head, "custunit", "");                                                                        //对方单位说明
                CreateNode(xmlDoc, head, "depid", modCon.C_DEPTID);                                                              //部门1001NC100000008KOR85
                CreateNode(xmlDoc, head, "ifearly", "N");                                                                        //是否期初
                CreateNode(xmlDoc, head, "invallidate", Convert.ToDateTime(modCon.D_CONINVALID_DT).ToString("yyy-MM-dd"));       //计划失效日期
                CreateNode(xmlDoc, head, "iprintcount", "0");                                                                    //计划失效日期
                CreateNode(xmlDoc, head, "operdate", Convert.ToDateTime(modCon.D_DMAKEDATE).ToString("yyy-MM-dd"));              //制单日期
                CreateNode(xmlDoc, head, "operid", modCon.C_COPERATORID);                                                        //制单人1006AA1000000000NI7B
                CreateNode(xmlDoc, head, "payterm", "");                                                                         //收付款协议
                CreateNode(xmlDoc, head, "personnelid", modCon.C_EMPLOYEEID);                                                    //人员(业务员ID)1001NC10000000000TD8
                CreateNode(xmlDoc, head, "pk_corp", modCon.C_XGID);                                                              //公司
                CreateNode(xmlDoc, head, "pk_ct_manage", modCon.C_CON_NO);                                                       //合同主键
                CreateNode(xmlDoc, head, "pk_ct_type", modCon.C_CONTYPEID);                                                      //类型定义主键
                CreateNode(xmlDoc, head, "projectid", "");                                                                       //项目号
                CreateNode(xmlDoc, head, "subscribedate", Convert.ToDateTime(modCon.D_CONSING_DT).ToString("yyy-MM-dd"));        //合同签订日期
                CreateNode(xmlDoc, head, "valdate", Convert.ToDateTime(modCon.D_CONEFFE_DT).ToString("yyy-MM-dd"));              //计划生效日期
                CreateNode(xmlDoc, head, "activeflag", "0");                                                                     //激活状态
                CreateNode(xmlDoc, head, "clastoperatorid", modCon.C_EDITEMPLOYEEID);                                            //最后修改人
                CreateNode(xmlDoc, head, "astcurrate", "");                                                                      //折辅汇率
                CreateNode(xmlDoc, head, "nprepaylimitmny", "");                                                                 //预付款限额
                CreateNode(xmlDoc, head, "nprepaymny", "");                                                                      //预付款
                CreateNode(xmlDoc, head, "taudittime", Convert.ToDateTime(modCon.D_APPROVEDATE).ToString("yyy-MM-dd HH:mm:ss")); //审批时间
                CreateNode(xmlDoc, head, "tlastmaketime", Convert.ToDateTime(modCon.D_EDITDATE).ToString("yyy-MM-dd HH:mm:ss")); //最后修改时间
                CreateNode(xmlDoc, head, "tmaketime", Convert.ToDateTime(modCon.D_DMAKEDATE).ToString("yyy-MM-dd HH:mm:ss"));    //制单时间
                CreateNode(xmlDoc, head, "def1", "");                                                                            //自定义项1
                CreateNode(xmlDoc, head, "def2", modFlow.C_NAME);                                                                //审批流程名称(日常合同)
                CreateNode(xmlDoc, head, "def3", "");                                                                            //自定义项3
                CreateNode(xmlDoc, head, "def4", "");                                                                            //自定义项4
                CreateNode(xmlDoc, head, "def5", modCon.C_CON_NO);                                                               //自定义项5-合同表头主键
                CreateNode(xmlDoc, head, "pk_defdoc1", modCon.C_REAMRK);                                                         // 合同说明信息
                CreateNode(xmlDoc, head, "pk_defdoc2", "");                                                                      // 审批流主键
                CreateNode(xmlDoc, head, "pk_defdoc3", "");                                                                      // 自定义项主键3
                CreateNode(xmlDoc, head, "pk_defdoc4", "");                                                                      // 自定义项主键4
                CreateNode(xmlDoc, head, "pk_defdoc5", GetUserName(modCon.C_EMPLOYEEID));                                        // 自定义项主键5-业务员姓名
                CreateNode(xmlDoc, head, "transpmode", modCon.C_TRANSMODEID);                                                    // 发运方式

                #endregion

                so_order.AppendChild(head);
                XmlElement body = xmlDoc.CreateElement("bill_body");
                so_order.AppendChild(body);

                DataTable dt = tmo_order.GetList(" C_CON_NO='" + con + "'").Tables[0];
                for (int j = 0; j < dt.Rows.Count; j++)
                {
                    int rowno = j + 1;

                    Mod_TMO_ORDER modOrder = tmo_order.GetModel(dt.Rows[j]["C_ID"].ToString());
                    if (modOrder != null)
                    {
                        XmlNode entry = xmlDoc.CreateNode(XmlNodeType.Element, "item", null);

                        #region                                                                                                   //表体_item

                        CreateNode(xmlDoc, entry, "amount", modOrder.N_WGT.ToString());                                           //数量
                        CreateNode(xmlDoc, entry, "invclid", "");                                                                 //存货分类
                        CreateNode(xmlDoc, entry, "invid", modOrder.C_INVENTORYID);                                               //存货管理档案主键
                        CreateNode(xmlDoc, entry, "measid", modOrder.C_UNITID);                                                   //主计量单位
                        CreateNode(xmlDoc, entry, "natiprice", modOrder.N_ORIGINALCURPRICE.ToString());                           //本币无税单价
                        CreateNode(xmlDoc, entry, "natisum", modOrder.N_ORIGINALCURMNY.ToString());                               //本币无税金额
                        CreateNode(xmlDoc, entry, "natitaxmny", modOrder.N_ORIGINALCURTAXMNY.ToString());                         //本币税额
                        CreateNode(xmlDoc, entry, "natitaxprice", modOrder.N_ORIGINALCURTAXPRICE.ToString());                     //本币含税单价
                        CreateNode(xmlDoc, entry, "natitaxsummny", modOrder.N_ORIGINALCURSUMMNY.ToString());                      //本币价税合计
                        CreateNode(xmlDoc, entry, "ordnum", "");                                                                  //订单执行累计数量
                        CreateNode(xmlDoc, entry, "ordprice", "");                                                                //订单执行累计含税单价
                        CreateNode(xmlDoc, entry, "ordsum", "");                                                                  //订单执行累计本币价税合计
                        CreateNode(xmlDoc, entry, "oriprice", modOrder.N_ORIGINALCURPRICE.ToString());                            //原币无税单价
                        CreateNode(xmlDoc, entry, "orisum", modOrder.N_ORIGINALCURMNY.ToString());                                //原币无税金额
                        CreateNode(xmlDoc, entry, "oritaxmny", modOrder.N_ORIGINALCURTAXMNY.ToString());                          //原币税额
                        CreateNode(xmlDoc, entry, "oritaxprice", modOrder.N_ORIGINALCURTAXPRICE.ToString());                      //原币含税单价
                        CreateNode(xmlDoc, entry, "oritaxsummny", modOrder.N_ORIGINALCURSUMMNY.ToString());                       //原币价税合计
                        CreateNode(xmlDoc, entry, "pk_corp", modOrder.C_XGID);                                                    //公司
                        CreateNode(xmlDoc, entry, "pk_ct_manage", "");                                                            //合同主键
                        CreateNode(xmlDoc, entry, "pk_ct_manage_b", "");                                                          //表体主键
                        CreateNode(xmlDoc, entry, "taxration", modOrder.N_TAXRATE.ToString());                                    //税率
                        CreateNode(xmlDoc, entry, "astmeasid", modOrder.C_FUNITID);                                               //辅计量单位
                        CreateNode(xmlDoc, entry, "astnum", modOrder.N_FNUM.ToString());                                          //辅数量
                        CreateNode(xmlDoc, entry, "astprice", "");                                                                //辅币无税单价
                        CreateNode(xmlDoc, entry, "astsum", "");                                                                  //辅币无税金额
                        CreateNode(xmlDoc, entry, "asttaxmny", "");                                                               //辅币税额
                        CreateNode(xmlDoc, entry, "asttaxprice", "");                                                             //辅币含税单价
                        CreateNode(xmlDoc, entry, "asttaxsummny", "");                                                            //辅币价税合计
                        CreateNode(xmlDoc, entry, "cqpbaseschemeid", "");                                                         //优质优价方案
                        CreateNode(xmlDoc, entry, "crowno", rowno.ToString());                                                    //行号
                        CreateNode(xmlDoc, entry, "transrate", modOrder.N_HSL.ToString());                                        //主辅计量换算率
                        CreateNode(xmlDoc, entry, "vbatchcode", "");                                                              //批次号
                        CreateNode(xmlDoc, entry, "def1", "");                                                                    //自定义项1
                        CreateNode(xmlDoc, entry, "def2", "");                                                                    //自定义项2
                        CreateNode(xmlDoc, entry, "def3", "");                                                                    //自定义项3
                        CreateNode(xmlDoc, entry, "def4", modOrder.C_PRO_USE);                                                    //自定义项4产品用途
                        CreateNode(xmlDoc, entry, "def5", "");                                                                    //自定义项5
                        CreateNode(xmlDoc, entry, "def6", "");                                                                    //自定义项6
                        CreateNode(xmlDoc, entry, "def7", "");                                                                    //自定义项7
                        CreateNode(xmlDoc, entry, "def8", "");                                                                    //自定义项8
                        CreateNode(xmlDoc, entry, "def9", "");                                                                    //自定义项9
                        CreateNode(xmlDoc, entry, "def10", modOrder.C_ID);                                                        //合同表体主键
                        CreateNode(xmlDoc, entry, "pk_defdoc1", "");                                                              //自定义项主键1
                        CreateNode(xmlDoc, entry, "pk_defdoc2", "");                                                              //自定义项主键2
                        CreateNode(xmlDoc, entry, "pk_defdoc3", "");                                                              //自定义项主键3
                        CreateNode(xmlDoc, entry, "pk_defdoc4", "");                                                              //自定义项主键4
                        CreateNode(xmlDoc, entry, "pk_defdoc5", "");                                                              //自定义项主键5
                        CreateNode(xmlDoc, entry, "pk_defdoc6", "");                                                              //自定义项主键6
                        CreateNode(xmlDoc, entry, "pk_defdoc7", "");                                                              //自定义项主键7
                        CreateNode(xmlDoc, entry, "pk_defdoc8", "");                                                              //自定义项主键8
                        CreateNode(xmlDoc, entry, "pk_defdoc9", "");                                                              //自定义项主键9
                        CreateNode(xmlDoc, entry, "pk_defdoc10", "");                                                             //自定义项主键10
                        CreateNode(xmlDoc, entry, "pk_defdoc11", "");                                                             //自定义项主键11
                        CreateNode(xmlDoc, entry, "pk_defdoc12", "");                                                             //自定义项主键12
                        CreateNode(xmlDoc, entry, "pk_defdoc13", "");                                                             //自定义项主键13
                        CreateNode(xmlDoc, entry, "pk_defdoc14", "");                                                             //自定义项主键14
                        CreateNode(xmlDoc, entry, "pk_defdoc15", "");                                                             //自定义项主键15
                        CreateNode(xmlDoc, entry, "pk_defdoc16", modOrder.C_SPEC);                                                //规格
                        CreateNode(xmlDoc, entry, "pk_defdoc17", modOrder.C_STL_GRD);                                             //钢种
                        CreateNode(xmlDoc, entry, "pk_defdoc18", "");                                                             //自定义项主键18
                        CreateNode(xmlDoc, entry, "pk_defdoc19", "");                                                             //自定义项主键19
                        CreateNode(xmlDoc, entry, "pk_defdoc20", "");                                                             //自定义项主键20
                        CreateNode(xmlDoc, entry, "vfree1", modOrder.C_FREE1);                                                    //自由项1
                        CreateNode(xmlDoc, entry, "vfree2", modOrder.C_FREE2);                                                    //自由项2
                        CreateNode(xmlDoc, entry, "vfree3", modOrder.C_PACK);                                                     //自由项3
                        CreateNode(xmlDoc, entry, "vfree4", "");                                                                  //自由项4
                        CreateNode(xmlDoc, entry, "vfree5", "");                                                                  //自由项5
                        CreateNode(xmlDoc, entry, "creceiptcorpid", modOrder.C_RECEIPTCORPID);                                    //收货单位
                        CreateNode(xmlDoc, entry, "vreceiveaddress", modOrder.C_RECEIVEADDRESS);                                  //收货地址
                        CreateNode(xmlDoc, entry, "delivdate", Convert.ToDateTime(modOrder.D_DELIVERY_DT).ToString("yyy-MM-dd")); //计划收发货日期
                        CreateNode(xmlDoc, entry, "creceiptareaid", modOrder.C_RECEIPTAREAID);                                    //收货地区ID
                        #endregion

                        body.AppendChild(entry);
                    }
                }

                xmlDoc.Save(xmlFileName);

                List <string> parem = NCSendXml.SendXML(xmlDoc); //发送NC
                parem.Add(con);                                  //合同号
                parem.Add(empID);
                parem.Add("销售合同-NC");
                parem.Add(parem[0] == "1" ? "导入NC成功" : "导入NC失败");
                //日志录入
                AddLog(parem);

                return(parem);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 29
0
        /// <summary>
        /// 添加发运单
        /// </summary>
        /// <returns></returns>
        private bool InsertFyd()
        {
            decimal fyzs  = 0;
            decimal fywgt = 0;

            string sendcode = randomnumber.CreateDispID(); //发运单据号

            #region                                        //表体
            List <Mod_TMD_DISPATCHDETAILS> item = new List <Mod_TMD_DISPATCHDETAILS>();
            for (int i = 0; i < rptList.Items.Count; i++)
            {
                HtmlInputCheckBox chkOrder     = (HtmlInputCheckBox)rptList.Items[i].FindControl("chkOrder"); //订单主键
                HtmlInputText     txtfyzs      = (HtmlInputText)rptList.Items[i].FindControl("txtfyzs");      //发运支数
                HtmlInputText     txtjhfyl     = (HtmlInputText)rptList.Items[i].FindControl("txtjhfyl");     //发运数量
                HtmlInputHidden   hidC_CGID    = (HtmlInputHidden)rptList.Items[i].FindControl("hidC_CGID");  //收货单位
                HtmlInputHidden   hidshdq      = (HtmlInputHidden)rptList.Items[i].FindControl("hidshdq");    //收货地区
                TextBox           txtPack_Code = (TextBox)rptList.Items[i].FindControl("txtPack_Code");       //包装要求
                DropDownList      dropzldj     = (DropDownList)rptList.Items[i].FindControl("dropzldj");      //质量等级
                DropDownList      dropshdz     = (DropDownList)rptList.Items[i].FindControl("dropshdz");      //收货地址
                Literal           ltlpkplan    = (Literal)rptList.Items[i].FindControl("ltlpkplan");          //日计划主键
                Literal           ltlcustno    = (Literal)rptList.Items[i].FindControl("ltlcustno");          //客户编码

                HtmlInputHidden hidckid     = (HtmlInputHidden)rptList.Items[i].FindControl("hidckid");       //仓库ID
                HtmlInputText   txtckname   = (HtmlInputText)rptList.Items[i].FindControl("txtckname");       //仓库名称
                HtmlInputText   txtqtyq     = (HtmlInputText)rptList.Items[i].FindControl("txtqtyq");         //其他要求
                HtmlInputText   txtremark   = (HtmlInputText)rptList.Items[i].FindControl("txtremark");       //行备注
                TextBox         txtStd_Code = (TextBox)rptList.Items[i].FindControl("txtStd_Code");           //执行标准
                TextBox         txtC_FREE1  = (TextBox)rptList.Items[i].FindControl("txtC_FREE1");            //自由项1
                TextBox         txtC_FREE2  = (TextBox)rptList.Items[i].FindControl("txtC_FREE2");            //自由项2

                Mod_TMO_ORDER modOrder = tmo_order.GetModel(chkOrder.Value);
                if (modOrder != null)
                {
                    fyzs  += Convert.ToDecimal(txtfyzs.Value ?? "0");
                    fywgt += Convert.ToDecimal(txtjhfyl.Value ?? "0");

                    Mod_TMD_DISPATCHDETAILS modfyditem = new Mod_TMD_DISPATCHDETAILS();
                    modfyditem.C_DISPATCH_ID     = sendcode;                                                               //发运单单据号
                    modfyditem.C_MAT_CODE        = modOrder.C_MAT_CODE;                                                    //物料编码
                    modfyditem.C_MAT_NAME        = modOrder.C_MAT_NAME;                                                    //物料名称
                    modfyditem.C_SPEC            = modOrder.C_SPEC;                                                        //规格
                    modfyditem.C_STL_GRD         = modOrder.C_STL_GRD;                                                     //钢种
                    modfyditem.C_QUALIRY_LEV     = dropzldj.SelectedItem.Value;                                            //质量等级主键-发运单
                    modfyditem.C_JUDGE_LEV_ZH    = dropzldj.SelectedItem.Text;                                             //质量等级编码
                    modfyditem.C_FREE_TERM       = txtC_FREE1.Text;                                                        //自由项
                    modfyditem.C_FREE_TERM2      = txtC_FREE2.Text;                                                        //自由项
                    modfyditem.C_PACK            = txtPack_Code.Text;                                                      //包装要求
                    modfyditem.C_STD_CODE        = txtStd_Code.Text;                                                       //执行标准
                    modfyditem.C_ELSENEED        = txtqtyq.Value;                                                          //其他要求?
                    modfyditem.C_REMARK          = txtremark.Value;                                                        //行备注*****
                    modfyditem.N_COM_AMOUNT_WGT  = modOrder.N_FNUM;                                                        //原始订单辅数量
                    modfyditem.N_WGT             = modOrder.N_WGT;                                                         //原始订单数量
                    modfyditem.C_EQUATION_FACTOR = modOrder.N_HSL.ToString();                                              //换算率
                    modfyditem.C_UNITIS          = modOrder.C_UNITID;                                                      //主计量单位ID
                    modfyditem.C_ORGO_CUST       = modOrder.C_CUST_NAME;                                                   //订货客户
                    modfyditem.C_CGC             = hidC_CGID.Value;                                                        //收货单位-发运单
                    modfyditem.C_ORDER_TYPE      = modOrder.N_TYPE.ToString() == "8" ? "805" : modOrder.N_TYPE.ToString(); //订单类型 8线材 6钢坯 831废乱材  841焦化产品 851渣
                    modfyditem.C_SEND_AREA       = hidshdq.Value;                                                          //到货地区-发运单
                    modfyditem.C_AREA            = dropshdz.SelectedItem?.Value ?? "";                                     //到货地址-发运单
                    modfyditem.C_EMP_ID          = ltlempid.Text;
                    modfyditem.C_EMP_NAME        = ltlempname.Text;
                    modfyditem.C_CON_NO          = modOrder.C_CON_NO;                                            //合同号
                    modfyditem.C_PLAN_ID         = ltlpkplan.Text;                                               //日计划主键
                    modfyditem.C_NO            = modOrder.C_ORDER_NO;                                            //订单号
                    modfyditem.C_ORDERPK       = modOrder.C_ID;                                                  //订单主键
                    modfyditem.C_CUSTNO        = ltlcustno.Text;                                                 //客户编码
                    modfyditem.N_FYZS          = Convert.ToDecimal(txtfyzs.Value == "" ? "0" : txtfyzs.Value);   //发运支数
                    modfyditem.N_FYWGT         = Convert.ToDecimal(txtjhfyl.Value == "" ? "0" : txtjhfyl.Value); //发运数量
                    modfyditem.C_SEND_STOCK    = txtckname.Value;                                                //发运仓库名称
                    modfyditem.C_SEND_STOCK_PK = hidckid.Value;                                                  //发运仓库ID
                    modfyditem.C_PRODUCT_ID    = "";                                                             //库存产品ID
                    modfyditem.C_AU_UNITIS     = modOrder.C_FUNITID;                                             //辅单位
                    modfyditem.N_PRICE         = 0;                                                              //到货地点费用

                    item.Add(modfyditem);
                }
            }
            #endregion

            #region//表头
            Mod_TMD_DISPATCH modfyd = new Mod_TMD_DISPATCH();

            modfyd.C_ID             = sendcode;                         //发运单单据号
            modfyd.C_GPS_NO         = txtgps.Text;                      //GPS号
            modfyd.D_DISP_DT        = Convert.ToDateTime(txtfydt.Text); //发运日期
            modfyd.C_SHIPVIA        = dropfyfs.SelectedItem.Value;      //发运方式
            modfyd.C_COMCAR         = dropcys.SelectedItem.Value;       //承运商
            modfyd.C_IS_WIRESALE    = dropsfxc.SelectedItem.Text;       //汉字是否线材
            modfyd.C_IS_WIRESALE_ID = dropsfxc.SelectedItem.Value;      //是否线材主键
            modfyd.C_LIC_PLA_NO     = txtcph.Text;                      //车牌号
            modfyd.C_ATSTATION      = txtdz.Text;                       //到站
            modfyd.C_CREATE_ID      = ltlempid.Text;                    //制单人
            modfyd.C_EMP_ID         = ltlempid.Text;                    //修改人ID
            modfyd.C_EMP_NAME       = ltlempname.Text;                  //修改人
            modfyd.C_EXTEND5        = ltltype.Text;                     //订单类型 8线材 6钢坯 831废乱材  841焦化产品 851渣
            modfyd.C_CUSTNAME       = ltlcustname.Text;                 //客户
            modfyd.C_CON_NO         = ltlcon_no.Text;                   //合同号
            modfyd.N_QUA            = fyzs;                             //发运支数
            modfyd.N_WGT            = fywgt;                            //发运量
            modfyd.N_IS_EXPORT      = 0;                                //是否包到价
            modfyd.C_EXTEND2        = txtcph.Text;                      //虚拟车号
            Mod_TMO_CON modCon = tmo_con.GetModel(ltlcon_no.Text);
            if (modCon != null)
            {
                modfyd.C_BUSINESS_DEPT = modCon.C_DEPTID;     //业务部门
                modfyd.C_BUSINESS_ID   = modCon.C_EMPLOYEEID; //业务员
            }
            #endregion

            if (tmd_dispatch.InsertFYD(modfyd, item))
            {
                txtsendcode.Text = sendcode;
                return(true);
            }
            else
            {
                return(false);
            }
        }
Ejemplo n.º 30
0
        private void BindOrderList()
        {
            if (Session[ltlempid.Text] != null)
            {
                DataTable dt = (DataTable)Session[ltlempid.Text];
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    //检测订单是否重复
                    if (getck(dt.Rows[i]["C_ID"].ToString()))
                    {
                        Mod_TMO_ORDER mod = tmo_order.GetModel(dt.Rows[i]["C_ID"].ToString());
                        if (mod != null)
                        {
                            ltltype.Text     = mod.N_TYPE.ToString(); //发运类型
                            ltlcon_no.Text   = mod.C_CON_NO;          //合同号
                            ltlcustname.Text = mod.C_CUST_NAME;       //客户
                            hidcustno.Value  = mod.C_CUST_NO;         //客户编码
                            hidmatcode.Value = mod.C_MAT_CODE;        //物料编码
                            hidarea.Value    = mod.C_AREA;            //销售区域

                            dtOrder.Rows.Add(new object[] {
                                dt.Rows[i]["C_ID"],
                                mod.C_CON_NO,
                                mod.C_STL_GRD,
                                mod.C_SPEC,
                                mod.C_STD_CODE,
                                mod.C_FREE1,
                                mod.C_FREE2,
                                mod.C_PACK,
                                mod.N_WGT,
                                mod.C_VDEF1, //质量等级
                                mod.C_AREA,  //区域
                                mod.C_MAT_CODE,
                                mod.C_MAT_NAME,
                                mod.C_CUST_NAME,      //订货单位
                                mod.C_RECEIPTCORPID,  //收货单位
                                mod.C_RECEIPTAREAID,  //收货地区
                                mod.C_RECEIVEADDRESS, //收货地址
                                mod.N_TYPE,
                                mod.C_CUST_NO,
                                dt.Rows[i]["PKPLAN"], //日计划主键
                                dt.Rows[i]["YLXWGT"], //已履行量
                                dt.Rows[i]["DLXWGT"], //待履行量
                            });
                        }
                    }
                }
            }
            if (dtOrder.Rows.Count > 0)
            {
                rptList.DataSource = dtOrder;
                rptList.DataBind();
                Session[ltlempid.Text] = null;
            }
            else
            {
                rptList.DataSource = null;
                rptList.DataBind();
                Session[ltlempid.Text] = null;


                txtcount.Value  = "";
                txtsumwgt.Value = "";
            }
        }