Exemplo n.º 1
0
        /// <summary>
        /// 确认
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_OK_Click(object sender, EventArgs e)
        {
            try
            {
                DataRow dr = this.gv_GPKJ.GetDataRow(this.gv_GPKJ.FocusedRowHandle);
                if (dr == null)
                {
                    MessageBox.Show("请选择要确认的库检信息!", "提示");
                    return;
                }
                if (dr["C_CHECK_EMP_ID"].ToString() != "")
                {
                    MessageBox.Show("请勿重复确认!", "提示");
                    return;
                }
                if (imgcbo_HGZT.Text.Trim() == "")
                {
                    MessageBox.Show("请选择合格状态!");
                    return;
                }
                Mod_TQC_WAREHOUSE_CHECK_SLAB mod_slab = bll_slab.GetModel(dr["C_ID"].ToString());
                mod_slab.C_CHECK_EMP_ID = RV.UI.UserInfo.UserID;
                mod_slab.D_CHECK_DT     = RV.UI.ServerTime.timeNow();
                DialogResult dialogResult = MessageBox.Show("是否确认\n炉号:'" + dr["C_STOVE"].ToString() + "'", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
                if (dialogResult == DialogResult.OK)//如果点击“确定”按钮
                {
                    if (bll_slab.Update(mod_slab))
                    {
                        txt_Query1_Click(null, null);
                    }

                    Mod_TQC_WE_CHECK_AFFIRM mod = new Mod_TQC_WE_CHECK_AFFIRM();
                    mod.C_WE_CHECK_SLAB_ID = dr["C_ID"].ToString();
                    mod.C_SUGGESTION       = txt_SHYJ.Text.Trim();
                    mod.C_CHECK_EMP_ID     = RV.UI.UserInfo.UserID;
                    mod.D_CHECK_DT         = RV.UI.ServerTime.timeNow();
                    if (bll_affirm.Add(mod))
                    {
                        Mod_TSC_SLAB_MAIN mod_SlabMain = bllSlabMain.GetModel(mod_slab.C_SLAB_ID);
                        mod_SlabMain.C_DEPOT_TYPE = imgcbo_HGZT.Text.Trim();
                        bllSlabMain.Update(mod_SlabMain);
                        Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "钢坯库检信息确认");//添加操作日志

                        ClearContent.ClearFlowLayoutPanel(panelControl1.Controls);
                        MessageBox.Show("已确认!", "提示");
                    }
                }
                else//如果点击“取消”按钮
                {
                    return;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// 撤销
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_repeal_Click(object sender, EventArgs e)
        {
            try
            {
                DialogResult dialogResult = MessageBox.Show("是否撤销?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
                if (dialogResult == DialogResult.OK)//如果点击“确定”按钮
                {
                    DataRow dr = this.gv_PDJG.GetDataRow(this.gv_PDJG.FocusedRowHandle);
                    if (dr == null)
                    {
                        return;
                    }
                    Mod_TSC_SLAB_MAIN mod_tsc = bll_SLAB.GetModel(dr["C_SLAB_ID"].ToString());
                    mod_tsc.C_STOCK_STATE = "W";

                    Mod_TQC_FACE_SLAB mod_face_slab = bll_face_slab.GetModel(dr["C_ID"].ToString());

                    Mod_TQC_FACE_SLAB_LOG mod_log = new Mod_TQC_FACE_SLAB_LOG();
                    mod_log.C_SLAB_ID           = mod_tsc.C_ID;
                    mod_log.C_STOVE             = mod_face_slab.C_STOVE;
                    mod_log.C_STA_ID            = mod_face_slab.C_STA_ID;
                    mod_log.C_STL_GRD           = mod_face_slab.C_STL_GRD;
                    mod_log.C_SLAB_SIZE         = mod_face_slab.C_SLAB_SIZE;
                    mod_log.N_WGT               = mod_face_slab.N_WGT;
                    mod_log.N_LEN               = mod_face_slab.N_LEN;
                    mod_log.C_STD_CODE          = mod_face_slab.C_STD_CODE;
                    mod_log.C_MAT_CODE          = mod_face_slab.C_MAT_CODE;
                    mod_log.C_MAT_NAME          = mod_face_slab.C_MAT_NAME;
                    mod_log.C_JUDGE_LEV         = mod_face_slab.C_JUDGE_LEV;
                    mod_log.C_REASON_NAME       = mod_face_slab.C_REASON_NAME;
                    mod_log.C_REASON_CODE       = mod_face_slab.C_REASON_CODE;
                    mod_log.C_REASON_DEPMT_ID   = mod_face_slab.C_REASON_DEPMT_ID;
                    mod_log.C_REASON_DEPMT_DESC = mod_face_slab.C_REASON_DEPMT_DESC;
                    mod_log.C_SUGGESTION        = mod_face_slab.C_SUGGESTION;
                    mod_log.C_REMARK            = "撤销";
                    mod_log.C_EMP_ID            = RV.UI.UserInfo.UserID;
                    bll_face_slab_log.Add(mod_log);
                    bll_SLAB.Update(mod_tsc);                                               //轧钢实绩还原
                    bll_face_slab.Delete(dr["C_ID"].ToString());                            //删除判定结果中的记录
                    Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "撤销钢坯表面判定信息"); //添加操作日志
                    btn_Query1_Click(null, null);
                    btn_Query_Click(null, null);
                    btn_Rest_Click(null, null);
                }
                else//如果点击“取消”按钮
                {
                    return;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Exemplo n.º 3
0
        private void btn_Save_Click(object sender, EventArgs e)
        {
            try
            {
                if (DialogResult.No == MessageBox.Show("是否确认?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1))
                {
                    return;
                }
                int[] row    = gv_GP1.GetSelectedRows();
                int   ycount = 0;
                foreach (var item in row)
                {
                    DataRow           dr = gv_GP1.GetDataRow(item);
                    string            id = dr["C_ID"].ToString();
                    Mod_TSC_SLAB_MAIN mod_TSC_SLAB_MAIN = bll_TSC_SLAB_MAIN.GetModel(id);
                    mod_TSC_SLAB_MAIN.C_MOVE_TYPE = "KP";
                    if (bll_TSC_SLAB_MAIN.Update(mod_TSC_SLAB_MAIN))
                    {
                        ycount += 1;
                        Mod_TSC_SLAB_MAIN_KP model = new Mod_TSC_SLAB_MAIN_KP();

                        model.C_SLAN_PLAN_KP_ID = planid;
                        model.C_STA_ID          = cbo_KPX.EditValue.ToString();
                        model.C_SPEC            = dr["C_SPEC"].ToString();
                        model.N_LEN             = Convert.ToDecimal(dr["N_LEN"]);
                        model.N_QUA             = Convert.ToDecimal(dr["N_QUA"]);
                        model.N_WGT             = Convert.ToDecimal(dr["N_WGT"]);
                        model.D_ACT_START_TIME  = de_st.DateTime;
                        model.D_ACT_END_TIME    = de_et.DateTime;
                        model.N_BFZS            = Convert.ToDecimal(txt_BFZS.Text == "" ? "0" : txt_BFZS.Text);
                        model.C_BC = cbo_BC.Text;
                        model.C_BZ = cbo_BZ.Text;
                        bll_TSC_SLAB_MAIN_KP.Add(model);
                        mod_TSC_SLAB_MAIN.C_MOVE_TYPE = "PN";
                        bll_TSC_SLAB_MAIN.Add(mod_TSC_SLAB_MAIN);
                        bll_TSC_SLAB_MAIN.Add(mod_TSC_SLAB_MAIN);
                    }
                }
                MessageBox.Show("开坯" + row.Count() + "条,成功开坯" + ycount + "条!");
                Query1();
                Query2();
                Query3();
                txt_XZZS.Text = "0";
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
Exemplo n.º 4
0
 /// <summary>
 /// 审核驳回
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void btn_SHBH_Click(object sender, EventArgs e)
 {
     try
     {
         int[] rownumber = gv_GPGP.GetSelectedRows();//获取选中行号数组;
         if (rownumber.Length == 0)
         {
             MessageBox.Show("请选择需要审核的信息!");
             return;
         }
         if (txt_CZYJ.Text.Trim() == "")
         {
             MessageBox.Show("请输入处置意见!");
         }
         for (int i = 0; i < rownumber.Length; i++)
         {
             int       selectedHandle = rownumber[i];
             string    strStove       = gv_GPGP.GetRowCellValue(selectedHandle, "炉号").ToString();
             string    strSTLGRD      = gv_GPGP.GetRowCellValue(selectedHandle, "改判前钢种").ToString();
             string    strSTD         = gv_GPGP.GetRowCellValue(selectedHandle, "改判前标准").ToString();
             DataTable dt             = bllTPSlab.GetList_Stove(strStove, strSTLGRD, strSTD).Tables[0];
             for (int s = 0; s < dt.Rows.Count; s++)
             {
                 Mod_TQC_TP_SLAB_COMMUTE mod = bllTPSlab.GetModel(dt.Rows[s]["C_ID"].ToString());
                 mod.C_CHECK_JSZX      = "N";
                 mod.C_CZYJ_JSZX       = txt_CZYJ.Text.Trim();
                 mod.C_JSZX_EMP_ID     = RV.UI.UserInfo.UserName;
                 mod.D_CHECK_JSZX_DATE = RV.UI.ServerTime.timeNow();
                 bllTPSlab.Update(mod);
                 Mod_TSC_SLAB_MAIN mod_slab = bll_slab.GetModel(dt.Rows[s]["C_SLAB_MAIN_ID"].ToString());
                 mod_slab.C_MOVE_TYPE = dt.Rows[s]["C_REMARK2"].ToString();
                 bll_slab.Update(mod_slab);
             }
         }
         MessageBox.Show("已驳回!");
         btn_Query1_Click(null, null);
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
Exemplo n.º 5
0
        /// <summary>
        /// 取消申请
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_QXSQ_Click(object sender, EventArgs e)
        {
            if (DialogResult.OK != MessageBox.Show("是否确认取消申请已选中的数据?", "提示", MessageBoxButtons.OKCancel))
            {
                return;
            }
            DataRow dr = this.gv_GPGP.GetDataRow(this.gv_GPGP.FocusedRowHandle);

            if (dr == null)
            {
                return;
            }
            string    stove       = dr["炉号"].ToString();
            string    strBatchNo  = dr["开坯号"].ToString();
            string    stlgrd      = dr["改判前钢种"].ToString();
            string    stdcode     = dr["改判前标准"].ToString();
            string    matID       = dr["改判前物料编码"].ToString();
            string    strZYX1     = dr["改判前自由项1"].ToString();
            string    strZYX2     = dr["改判前自由项2"].ToString();
            string    strSlabCode = dr["仓库"].ToString();
            string    strSTD_GPH  = dr["改判后标准"].ToString();
            string    strMat_GPH  = dr["改判后物料编码"].ToString();
            string    strZYX1_GPH = dr["改判后自由项1"].ToString();
            string    strZYX2_GPH = dr["改判后自由项2"].ToString();
            DataTable dt          = bllTPSlab.GetList_TPGP_COU(stove, strBatchNo, stlgrd, stdcode, matID, strZYX1, strZYX2, strSlabCode, strMat_GPH, strSTD_GPH, strZYX1_GPH, strZYX2_GPH).Tables[0];

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                Mod_TQC_TP_SLAB_COMMUTE mod = bllTPSlab.GetModel(dt.Rows[i]["C_ID"].ToString());
                mod.N_STATUS         = 0;
                mod.C_COMMUTE_REASON = "取消挑坯改判申请";
                mod.C_REMARK1        = RV.UI.UserInfo.UserName;
                mod.D_COMMUTE_DATE   = RV.UI.ServerTime.timeNow();
                bllTPSlab.Update(mod);
                Mod_TSC_SLAB_MAIN mod_slab = bll_slab.GetModel(dt.Rows[i]["C_SLAB_MAIN_ID"].ToString());
                mod_slab.C_MOVE_TYPE = dt.Rows[i]["C_REMARK2"].ToString();
                bll_slab.Update(mod_slab);
            }
            btn_Query1_Click(null, null);
        }
Exemplo n.º 6
0
        /// <summary>
        /// 取消库检
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_QXKJ_Click(object sender, EventArgs e)
        {
            try
            {
                DataRow dr = this.gv_GPKJ.GetDataRow(this.gv_GPKJ.FocusedRowHandle);
                if (dr == null)
                {
                    MessageBox.Show("请选择要取消申请的库检信息!", "提示");
                    return;
                }
                if (dr["C_CHECK_EMP_ID"].ToString() != "")
                {
                    MessageBox.Show("库检已确认,不能取消!", "提示");
                    return;
                }
                DialogResult dialogResult = MessageBox.Show("确定要取消申请\n炉号:'" + dr["C_STOVE"].ToString() + "'", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
                if (dialogResult == DialogResult.OK)//如果点击“确定”按钮
                {
                    Mod_TSC_SLAB_MAIN mod_slab = bll_slab.GetModel(dr["C_SLAB_ID"].ToString());
                    mod_slab.C_IS_DEPOT = "1";
                    bll_slab.Update(mod_slab);
                    bll_check_slab.Delete(dr["C_ID"].ToString());
                    btn_Query_Click(null, null);
                    txt_Query1_Click(null, null);
                    MessageBox.Show("已取消!", "提示");

                    Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "取消钢坯库检申请信息");//添加操作日志
                }
                else//如果点击“取消”按钮
                {
                    return;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Exemplo n.º 7
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public Mod_TSC_SLAB_MAIN GetModel(string C_ID)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select C_ID,C_PLAN_ID,C_ORD_NO,C_STOVE,C_STA_ID,C_STA_CODE,C_STA_DESC,C_STL_GRD,C_STL_GRD_PRE,C_MAT_CODE,C_MAT_NAME,C_SPEC,N_LEN,N_QUA,N_WGT,C_STD_CODE,C_SLAB_TYPE,D_CCM_DATE,C_CCM_SHIFT,C_CCM_GROUP,C_CCM_EMP_ID,C_MOVE_TYPE,C_SC_STATE,D_ESC_DATE,D_LSC_DATE,C_QKP_STATE,C_KP_ID,C_CON_NO,C_CUS_NO,C_CUS_NAME,D_WL_DATE,C_WL_SHIFT,C_WL_GROUP,C_WL_EMP_ID,D_WE_DATE,C_WE_SHIFT,C_WE_GROUP,C_WE_EMP_ID,C_STOCK_STATE,C_MAT_TYPE,C_QGP_STATE,C_SLABWH_CODE,C_SLABWH_AREA_CODE,C_SLABWH_LOC_CODE,C_SLABWH_TIER_CODE,C_Q_RESULT,D_Q_DATE,C_Q_NOTE,N_WGT_METER,C_QF_NAME,C_DESIGN_NO,C_ZRBM,C_IS_DEPOT,C_ISXM,C_XMGX,C_ISFREE from TSC_SLAB_MAIN ");
            strSql.Append(" where C_ID=:C_ID ");
            OracleParameter[] parameters =
            {
                new OracleParameter(":C_ID", OracleDbType.Varchar2, 100)
            };
            parameters[0].Value = C_ID;

            Mod_TSC_SLAB_MAIN model = new Mod_TSC_SLAB_MAIN();
            DataSet           ds    = DbHelperOra.Query(strSql.ToString(), parameters);

            if (ds.Tables[0].Rows.Count > 0)
            {
                return(DataRowToModel(ds.Tables[0].Rows[0]));
            }
            else
            {
                return(null);
            }
        }
        /// <summary>
        /// 发送完工报告给NC
        /// </summary>
        /// <param name="xmlFileName">xml完整路径</param>
        /// <param name="c_stove">炉号</param>
        /// <returns></returns>
        public bool SendXml_SLAB_A4(string xmlFileName, string c_stove, string strUserID)
        {
            try
            {
                string urlname = "GPWG" + c_stove + ".XML";//XML名称

                string url = xmlFileName + "\\NCXML";
                if (!Directory.Exists(url))
                {
                    Directory.CreateDirectory(url);
                }
                DataTable         dt             = dal_slab_mes.GetList("", "", c_stove, "", "全部").Tables[0];
                Mod_TSC_SLAB_MAIN mod_slab_main  = dal_slab_main.GetModel_Stove_Trans(c_stove);                                          //钢坯实绩
                Mod_TB_MATRL_MAIN mod_mater_main = dal_mater_main.GetModel(mod_slab_main.C_MAT_CODE);                                    //物料主表
                Mod_TS_USER       mod_ts_user    = dal_user.GetModel(strUserID);                                                         //用户主表
                Mod_TPB_SLABWH    mod_SLABWH     = dal_slabwh.GetModel_Interface(mod_slab_main.C_SLABWH_CODE);                           //库存表
                Mod_TB_STD_CONFIG mod_std_config = dal_std_config.GetModel_Interface(mod_slab_main.C_STD_CODE, mod_slab_main.C_STL_GRD); // 自由项
                if (dt == null)
                {
                    return(false);
                }
                if (mod_slab_main == null)
                {
                    return(false);
                }
                if (mod_mater_main == null)
                {
                    return(false);
                }
                if (mod_ts_user == null)
                {
                    return(false);
                }
                if (mod_SLABWH == null)
                {
                    return(false);
                }
                if (mod_std_config == null)
                {
                    return(false);
                }

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

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

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

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

                #region                                                                                                   //表头_order_head
                CreateNode(xmlDoc, head, "zdrid", "08908");                                                               //制单人  (mod_ts_user.C_ACCOUNT)
                CreateNode(xmlDoc, head, "rq", Convert.ToDateTime(dt.Rows[0]["生产时间"].ToString()).ToString("yyyy-MM-dd")); //日期
                CreateNode(xmlDoc, head, "sj", Convert.ToDateTime(dt.Rows[0]["生产时间"].ToString()).ToString("HH:mm:ss"));   //时间
                CreateNode(xmlDoc, head, "gzzxbmid", dt.Rows[0]["连铸代码"].ToString());                                      //工作中心编码ID
                CreateNode(xmlDoc, head, "scbmid", "");                                                                   //生产部门ID

                #endregion

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

                XmlNode item = xmlDoc.CreateNode(XmlNodeType.Element, "item", null);
                #region                                                                                                       //表体_item

                CreateNode(xmlDoc, item, "pch", mod_slab_main.C_STOVE);                                                       //批次号
                CreateNode(xmlDoc, item, "scddh", "");                                                                        //生产订单号
                CreateNode(xmlDoc, item, "wlbmid", mod_mater_main.C_PK_INVMANDOC);                                            //物料编码ID(C_PK_INVMANDOC)
                CreateNode(xmlDoc, item, "jldwid", mod_mater_main.C_PK_MEASDOC);                                              //计量单位ID
                CreateNode(xmlDoc, item, "gzzxid", dt.Rows[0]["连铸主键"].ToString());                                            //工作中心ID
                CreateNode(xmlDoc, item, "ccxh", mod_slab_main.C_STOVE);                                                      //产出序号-炉号
                CreateNode(xmlDoc, item, "gxh", "");                                                                          //工序号
                CreateNode(xmlDoc, item, "pk_produce", "");                                                                   //物料PK
                CreateNode(xmlDoc, item, "ksrq", Convert.ToDateTime(dt.Rows[0]["计划开始时间"].ToString()).ToString("yyyy-MM-dd")); //开始日期
                CreateNode(xmlDoc, item, "kssj", Convert.ToDateTime(dt.Rows[0]["计划开始时间"].ToString()).ToString("HH:mm:ss"));   //开始时间
                CreateNode(xmlDoc, item, "jsrq", Convert.ToDateTime(dt.Rows[0]["计划结束时间"].ToString()).ToString("yyyy-MM-dd")); //结束日期
                CreateNode(xmlDoc, item, "jssj", Convert.ToDateTime(dt.Rows[0]["计划结束时间"].ToString()).ToString("HH:mm:ss"));   //结束时间
                CreateNode(xmlDoc, item, "hgsl", dt.Rows[0]["重量"].ToString());                                                //合格数量
                CreateNode(xmlDoc, item, "fhgsl", dt.Rows[0]["支数"].ToString());                                               //辅合格数量
                CreateNode(xmlDoc, item, "sflfcp", "N");                                                                      //是否联副产品
                CreateNode(xmlDoc, item, "sffsgp", "N");                                                                      //是否发生改判
                CreateNode(xmlDoc, item, "zdy1", "");                                                                         //自定义项1
                CreateNode(xmlDoc, item, "zdy2", "");                                                                         //自定义项2
                CreateNode(xmlDoc, item, "zdy3", "");                                                                         //自定义项3
                CreateNode(xmlDoc, item, "zdy4", "");                                                                         //自定义项4
                CreateNode(xmlDoc, item, "zdy5", "");                                                                         //自定义项5
                CreateNode(xmlDoc, item, "freeitemvalue1", mod_std_config.C_ZYX1);
                CreateNode(xmlDoc, item, "freeitemvalue2", mod_std_config.C_ZYX2);
                CreateNode(xmlDoc, item, "freeitemvalue3", "");
                CreateNode(xmlDoc, item, "freeitemvalue4", "");
                CreateNode(xmlDoc, item, "freeitemvalue5", dt.Rows[0]["C_PLAN_ID"].ToString()); //PCI计划订单主键
                CreateNode(xmlDoc, item, "pk_corp", "");                                        //公司编码
                CreateNode(xmlDoc, item, "gcbm", "");                                           //工厂

                #endregion

                body.AppendChild(item);


                xmlDoc.Save(url + "\\" + urlname);
                List <string> parem = dalSendNC.SendXML(url + "\\" + urlname);

                if (parem[0] == "1")
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
Exemplo n.º 9
0
        /// <summary>
        /// 撤回
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_Retreat_Click(object sender, EventArgs e)
        {
            try
            {
                if (DialogResult.No == MessageBox.Show("是否确认撤销?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1))
                {
                    return;
                }
                int[] row    = gv_GP2.GetSelectedRows();
                int   ycount = 0;
                foreach (var item in row)
                {
                    DataRow   dr     = gv_GP2.GetDataRow(item);
                    string    slabid = dr["C_SLAB_MAIN_ID"].ToString();
                    int       order  = Convert.ToInt32(dr["N_ORDER"]);
                    DataTable dt     = bll_TSC_SLAB_MAIN.GetList(slabid, "", "", "", "", "", "", "", "").Tables[0];
                    #region model
                    Mod_TSC_SLAB_MAIN mod_TSC_SLAB_MAIN = new Mod_TSC_SLAB_MAIN();
                    mod_TSC_SLAB_MAIN.C_CCM_EMP_ID       = dt.Rows[0]["C_CCM_EMP_ID"].ToString();
                    mod_TSC_SLAB_MAIN.C_CCM_GROUP        = dt.Rows[0]["C_CCM_GROUP"].ToString();
                    mod_TSC_SLAB_MAIN.C_CCM_SHIFT        = dt.Rows[0]["C_CCM_SHIFT"].ToString();
                    mod_TSC_SLAB_MAIN.C_CON_NO           = dt.Rows[0]["C_CON_NO"].ToString();
                    mod_TSC_SLAB_MAIN.C_CUS_NAME         = dt.Rows[0]["C_CUS_NAME"].ToString();
                    mod_TSC_SLAB_MAIN.C_CUS_NO           = dt.Rows[0]["C_CUS_NO"].ToString();
                    mod_TSC_SLAB_MAIN.C_DESIGN_NO        = dt.Rows[0]["C_DESIGN_NO"].ToString();
                    mod_TSC_SLAB_MAIN.C_ID               = dt.Rows[0]["C_ID"].ToString();
                    mod_TSC_SLAB_MAIN.C_ISXM             = dt.Rows[0]["C_ISXM"].ToString();
                    mod_TSC_SLAB_MAIN.C_IS_DEPOT         = dt.Rows[0]["C_IS_DEPOT"].ToString();
                    mod_TSC_SLAB_MAIN.C_KP_ID            = dt.Rows[0]["C_KP_ID"].ToString();
                    mod_TSC_SLAB_MAIN.C_MAT_CODE         = dt.Rows[0]["C_MAT_CODE"].ToString();
                    mod_TSC_SLAB_MAIN.C_MAT_NAME         = dt.Rows[0]["C_MAT_NAME"].ToString();
                    mod_TSC_SLAB_MAIN.C_MAT_TYPE         = dt.Rows[0]["C_MAT_TYPE"].ToString();
                    mod_TSC_SLAB_MAIN.C_MOVE_TYPE        = dt.Rows[0]["C_MOVE_TYPE"].ToString();
                    mod_TSC_SLAB_MAIN.C_ORD_NO           = dt.Rows[0]["C_ORD_NO"].ToString();
                    mod_TSC_SLAB_MAIN.C_PLAN_ID          = dt.Rows[0]["C_PLAN_ID"].ToString();
                    mod_TSC_SLAB_MAIN.C_QF_NAME          = dt.Rows[0]["C_QF_NAME"].ToString();
                    mod_TSC_SLAB_MAIN.C_QGP_STATE        = dt.Rows[0]["C_QGP_STATE"].ToString();
                    mod_TSC_SLAB_MAIN.C_QKP_STATE        = dt.Rows[0]["C_QKP_STATE"].ToString();
                    mod_TSC_SLAB_MAIN.C_SC_STATE         = dt.Rows[0]["C_SC_STATE"].ToString();
                    mod_TSC_SLAB_MAIN.C_SLABWH_AREA_CODE = dt.Rows[0]["C_SLABWH_AREA_CODE"].ToString();
                    mod_TSC_SLAB_MAIN.C_SLABWH_CODE      = dt.Rows[0]["C_SLABWH_CODE"].ToString();
                    mod_TSC_SLAB_MAIN.C_SLABWH_LOC_CODE  = dt.Rows[0]["C_SLABWH_LOC_CODE"].ToString();
                    mod_TSC_SLAB_MAIN.C_SLABWH_TIER_CODE = dt.Rows[0]["C_SLABWH_TIER_CODE"].ToString();
                    mod_TSC_SLAB_MAIN.C_SLAB_TYPE        = dt.Rows[0]["C_SLAB_TYPE"].ToString();
                    mod_TSC_SLAB_MAIN.C_SPEC             = dt.Rows[0]["C_SPEC"].ToString();
                    mod_TSC_SLAB_MAIN.C_STA_CODE         = dt.Rows[0]["C_STA_CODE"].ToString();
                    mod_TSC_SLAB_MAIN.C_STA_DESC         = dt.Rows[0]["C_STA_DESC"].ToString();
                    mod_TSC_SLAB_MAIN.C_STA_ID           = dt.Rows[0]["C_STA_ID"].ToString();
                    mod_TSC_SLAB_MAIN.C_STD_CODE         = dt.Rows[0]["C_STD_CODE"].ToString();
                    mod_TSC_SLAB_MAIN.C_STL_GRD          = dt.Rows[0]["C_STL_GRD"].ToString();
                    mod_TSC_SLAB_MAIN.C_STL_GRD_PRE      = dt.Rows[0]["C_STL_GRD_PRE"].ToString();
                    mod_TSC_SLAB_MAIN.C_STOCK_STATE      = dt.Rows[0]["C_STOCK_STATE"].ToString();
                    mod_TSC_SLAB_MAIN.C_STOVE            = dt.Rows[0]["C_STOVE"].ToString();
                    mod_TSC_SLAB_MAIN.C_WE_EMP_ID        = dt.Rows[0]["C_WE_EMP_ID"].ToString();
                    mod_TSC_SLAB_MAIN.C_WE_GROUP         = dt.Rows[0]["C_WE_GROUP"].ToString();
                    mod_TSC_SLAB_MAIN.C_WE_SHIFT         = dt.Rows[0]["C_WE_SHIFT"].ToString();
                    mod_TSC_SLAB_MAIN.C_WL_EMP_ID        = dt.Rows[0]["C_WL_EMP_ID"].ToString();
                    mod_TSC_SLAB_MAIN.C_WL_GROUP         = dt.Rows[0]["C_WL_GROUP"].ToString();
                    mod_TSC_SLAB_MAIN.C_WL_SHIFT         = dt.Rows[0]["C_WL_SHIFT"].ToString();
                    mod_TSC_SLAB_MAIN.C_XMGX             = dt.Rows[0]["C_XMGX"].ToString();
                    mod_TSC_SLAB_MAIN.C_ZRBM             = dt.Rows[0]["C_ZRBM"].ToString();
                    if (dt.Rows[0]["D_CCM_DATE"] != DBNull.Value)
                    {
                        mod_TSC_SLAB_MAIN.D_CCM_DATE = Convert.ToDateTime(dt.Rows[0]["D_CCM_DATE"]);
                    }
                    if (dt.Rows[0]["D_ESC_DATE"] != DBNull.Value)
                    {
                        mod_TSC_SLAB_MAIN.D_ESC_DATE = Convert.ToDateTime(dt.Rows[0]["D_ESC_DATE"]);
                    }
                    if (dt.Rows[0]["D_LSC_DATE"] != DBNull.Value)
                    {
                        mod_TSC_SLAB_MAIN.D_LSC_DATE = Convert.ToDateTime(dt.Rows[0]["D_LSC_DATE"]);
                    }

                    if (dt.Rows[0]["D_WE_DATE"] != DBNull.Value)
                    {
                        mod_TSC_SLAB_MAIN.D_WE_DATE = Convert.ToDateTime(dt.Rows[0]["D_WE_DATE"]);
                    }
                    if (dt.Rows[0]["D_WL_DATE"] != DBNull.Value)
                    {
                        mod_TSC_SLAB_MAIN.D_WL_DATE = Convert.ToDateTime(dt.Rows[0]["D_WL_DATE"]);
                    }
                    if (dt.Rows[0]["N_LEN"] != DBNull.Value)
                    {
                        mod_TSC_SLAB_MAIN.N_LEN = Convert.ToDecimal(dt.Rows[0]["N_LEN"]);
                    }
                    if (dt.Rows[0]["N_QUA"] != DBNull.Value)
                    {
                        mod_TSC_SLAB_MAIN.N_QUA = Convert.ToDecimal(dt.Rows[0]["N_QUA"]);
                    }
                    if (dt.Rows[0]["N_WGT"] != DBNull.Value)
                    {
                        mod_TSC_SLAB_MAIN.N_WGT = Convert.ToDecimal(dt.Rows[0]["N_WGT"]);
                    }
                    if (dt.Rows[0]["N_WGT_METER"] != DBNull.Value)
                    {
                        mod_TSC_SLAB_MAIN.N_WGT_METER = Convert.ToDecimal(dt.Rows[0]["N_WGT_METER"]);
                    }
                    #endregion
                    DataTable dt1 = bll_TRC_SLABWH_LOG.GetListByID(slabid, "").Tables[0];
                    mod_TSC_SLAB_MAIN.C_MOVE_TYPE        = type1;
                    mod_TSC_SLAB_MAIN.C_SLABWH_CODE      = dt1.Rows[0]["C_SLABWH_CODE_BEFORE"].ToString();
                    mod_TSC_SLAB_MAIN.C_SLABWH_AREA_CODE = dt1.Rows[0]["C_SLABWH_AREA_CODE_BEFORE"].ToString();
                    mod_TSC_SLAB_MAIN.C_SLABWH_LOC_CODE  = dt1.Rows[0]["C_SLABWH_LOC_CODE_BEFORE"].ToString();
                    mod_TSC_SLAB_MAIN.C_SLABWH_TIER_CODE = dt1.Rows[0]["C_FLOOR_BEFORE"].ToString();
                    if (bll_TSC_SLAB_MAIN.Update(mod_TSC_SLAB_MAIN))
                    {
                        bll_TRC_SLABWH_LOG.Upstatus(slabid, 1, order - 1);
                        bll_TRC_SLABWH_LOG.Upstatus(slabid, 0, order - 1);
                        ycount += 1;
                    }
                }
                MessageBox.Show("共撤回" + row.Count() + "条,成功撤回" + ycount + "条!");
                Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "撤销钢坯入库信息");//添加操作日志
                Query1();
                Query2();
                cbo_C1_SelectedValueChanged(null, null);
                txt_XZZS.Text = "0";
                txt_CHZS.Text = "0";
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
Exemplo n.º 10
0
        /// <summary>
        /// 钢坯改判
        /// </summary>
        /// <param name="row">选中的数据</param>
        /// <param name="strGrd">钢种</param>
        /// <param name="strStdCode">执行标准</param>
        /// <param name="strMatCode">物料编码</param>
        /// <param name="strMatName">物料描述</param>
        /// <param name="strZrdwID">责任单位代码</param>
        /// <param name="strZrdwName">责任代为描述</param>
        /// <param name="strPDDJ">判定等级</param>
        /// <param name="strZYX1">自由项1</param>
        /// <param name="strZYX2">自由项2</param>
        /// <param name="strGPYY">改判原因</param>
        /// <param name="strLen">定尺</param>
        /// <param name="strISSH">是否审核</param>
        /// <returns></returns>
        public string TPGP_Slab(string strs, string strGrd, string strStdCode, string strMatCode, string strMatName, string strZrdwID, string strZrdwName, string strPDDJ, string strZYX1, string strZYX2, string strGPYY, string strLen, decimal strISSH)
        {
            string result = "1";

            try
            {
                Dal_TQC_TP_SLAB_COMMUTE dalTP     = new Dal_TQC_TP_SLAB_COMMUTE();
                Dal_TSC_SLAB_MAIN       dal_slab  = new Dal_TSC_SLAB_MAIN();
                Dal_TQD_DESIGN          dalDesign = new Dal_TQD_DESIGN();

                TransactionHelper.BeginTransaction();

                string   strUserID = RV.UI.UserInfo.userID;
                DateTime time      = RV.UI.ServerTime.timeNow();
                string   stove     = "";

                string strDesignNo = dalDesign.Get_Design_No(strStdCode, strGrd);
                if (string.IsNullOrEmpty(strDesignNo))
                {
                    return("改判失败,没有找到对应的执行标准信息!");
                }
                string[] strs_Slab_ID = strs.Substring(0, strs.Length - 1).Split(',');

                Bll_TB_MATRL_MAIN bll_matrl = new Bll_TB_MATRL_MAIN();

                for (int i = 0; i < strs_Slab_ID.Length; i++)
                {
                    Mod_TSC_SLAB_MAIN mod_slab = dal_slab.GetModel(strs_Slab_ID[i]);
                    stove = mod_slab.C_STOVE;
                    if (mod_slab != null)
                    {
                        Mod_TB_MATRL_MAIN mod_matrl = bll_matrl.GetModel(strMatCode);
                        stove = mod_slab.C_STOVE;
                        Mod_TQC_TP_SLAB_COMMUTE mod = new Mod_TQC_TP_SLAB_COMMUTE();
                        mod.C_STA_ID              = mod_slab.C_STA_DESC;
                        mod.C_SLAB_MAIN_ID        = strs_Slab_ID[i];
                        mod.C_STOVE               = mod_slab.C_STOVE;
                        mod.C_BATCH_NO            = mod_slab.C_BATCH_NO;
                        mod.N_WGT                 = mod_slab.N_WGT;
                        mod.N_LEN_BEFORE          = mod_slab.N_LEN;
                        mod.C_STL_GRD_BEFORE      = mod_slab.C_STL_GRD;
                        mod.C_STD_CODE_BEFORE     = mod_slab.C_STD_CODE;
                        mod.C_SPEC_BEFORE         = mod_slab.C_SPEC;
                        mod.C_MAT_CODE_BEFORE     = mod_slab.C_MAT_CODE;
                        mod.C_MAT_DESC_BEFORE     = mod_slab.C_MAT_NAME;
                        mod.C_ZYX1_BEFORE         = mod_slab.C_ZYX1;
                        mod.C_ZYX2_BEFORE         = mod_slab.C_ZYX2;
                        mod.C_JUDGE_LEV_BP_BEFORE = mod_slab.C_MAT_TYPE;
                        mod.C_STL_GRD_AFTER       = strGrd;
                        mod.C_STD_CODE_AFTER      = strStdCode;
                        mod.C_SPEC_AFTER          = mod_matrl.C_SLAB_SIZE;
                        mod.N_LEN_AFTER           = Convert.ToDecimal(strLen);
                        mod.C_MAT_CODE_AFTER      = strMatCode;
                        mod.C_MAT_DESC_AFTER      = strMatName;
                        mod.C_REASON_DEPMT_ID     = strZrdwID;
                        mod.C_REASON_DEPMT_DESC   = strZrdwName;
                        mod.C_EMP_ID              = RV.UI.UserInfo.UserName;
                        mod.C_ZYX1_AFTER          = strZYX1;
                        mod.C_ZYX2_AFTER          = strZYX2;
                        mod.C_JUDGE_LEV_BP_AFTER  = strPDDJ;
                        mod.C_COMMUTE_SQ          = strGPYY;
                        mod.N_IS_SH               = strISSH;
                        mod.C_REMARK2             = mod_slab.C_MOVE_TYPE;
                        mod.C_REMARK3             = mod_slab.C_SLABWH_CODE;
                        if (dalTP.Add_Trans(mod))
                        {
                            if (!dal_slab.UpdateTP_Trans(mod_slab.C_ID, mod_slab.C_BATCH_NO))
                            {
                                TransactionHelper.RollBack();
                                return("改判失败,修改钢坯实绩状态时错误!");
                            }
                        }
                        else
                        {
                            TransactionHelper.RollBack();
                            return("改判失败,添加改判记录时错误!");
                        }
                    }
                }

                TransactionHelper.Commit();
            }
            catch (Exception ex)
            {
                TransactionHelper.RollBack();
                return(ex.Message);
            }

            return(result);
        }
Exemplo n.º 11
0
        /// <summary>
        /// 钢坯改判
        /// </summary>
        /// <param name="row">选中的数据</param>
        /// <param name="strGrd">钢种</param>
        /// <param name="strStdCode">执行标准</param>
        /// <param name="strMatCode">物料编码</param>
        /// <param name="strMatName">物料描述</param>
        /// <param name="strZrdwID">责任单位代码</param>
        /// <param name="strZrdwName">责任代为描述</param>
        /// <param name="strPDDJ">判定等级</param>
        /// <param name="strRemark">备注</param>
        /// <param name="strUrl">地址</param>
        /// <param name="strZYX1">自由项1</param>
        /// <param name="strZYX2">自由项2</param>
        /// <param name="strGPYY">改判原因</param>
        /// <param name="strLen">定尺</param>
        /// <returns></returns>
        public string GP_Slab(string strs, string strGrd, string strStdCode, string strMatCode, string strMatName, string strZrdwID, string strZrdwName, string strPDDJ, string strRemark, string strUrl, string strZYX1, string strZYX2, string strGPYY, string strLen)
        {
            string result = "1";

            try
            {
                Dal_TSC_SLAB_MAIN          dal_slab      = new Dal_TSC_SLAB_MAIN();
                Dal_TQC_SLAB_COMMUTE       dal_commute   = new Dal_TQC_SLAB_COMMUTE();
                Dal_Interface_NC_SLAB_KC4N dal_interface = new Dal_Interface_NC_SLAB_KC4N();
                Dal_TPB_LGGYK     dalTpbLggyk            = new Dal_TPB_LGGYK();
                Dal_TMO_ORDER     dalTmoOrder            = new Dal_TMO_ORDER();
                Dal_TQD_DESIGN    dalDesign      = new Dal_TQD_DESIGN();
                Dal_TB_STD_CONFIG dalTbStdConfig = new Dal_TB_STD_CONFIG();

                TransactionHelper.BeginTransaction();

                string   strUserID          = RV.UI.UserInfo.userID;
                DateTime time               = RV.UI.ServerTime.timeNow();
                string   stove              = "";
                string   max_C_MASTER_ID    = "";
                string   max_C_GP_BEFORE_ID = "";
                string   max_C_GP_AFTER_ID  = "";
                string   slabCode           = "";
                string   strLGJH            = "";
                string   strDesignNo        = dalDesign.Get_Design_No(strStdCode, strGrd);
                if (string.IsNullOrEmpty(strDesignNo))
                {
                    return("改判失败,没有找到对应的执行标准信息!");
                }
                string[] strs_Slab_ID = strs.Substring(0, strs.Length - 1).Split(',');

                //Mod_TSC_SLAB_MAIN modSlabMain = dal_slab.GetModel(strs_Slab_ID[0]);
                //Mod_TPB_LGGYK modLggyk = dalTpbLggyk.GetModel_Trans(modSlabMain.C_LGJH);

                //if (modLggyk == null)
                //{
                //    TransactionHelper.RollBack();
                //    return "改判失败,获取炼钢记号时错误!";
                //}

                //DataTable dtLGJH = dalTpbLggyk.Get_LGJH(modLggyk.C_BOF_TYPE, modLggyk.C_LF_TYPE, modLggyk.C_RH_TYPE, modLggyk.C_CASTER_TYPE, strStdCode, strGrd).Tables[0];

                //if (dtLGJH.Rows.Count > 1)
                //{
                //    TransactionHelper.RollBack();
                //    return "标准:" + strStdCode + ";钢种:" + strGrd + "找到多个炼钢记号,请核查!";
                //}
                //else if (dtLGJH.Rows.Count == 0)
                //{
                //    TransactionHelper.RollBack();
                //    return "标准:" + strStdCode + ";钢种:" + strGrd + "没有找到炼钢记号!";
                //}

                //strLGJH = dtLGJH.Rows[0]["C_STEEL_SIGN"].ToString();



                DataTable dt = dal_commute.GetList_max().Tables[0];
                max_C_MASTER_ID    = dt.Rows[0]["C_MASTER_ID"].ToString();
                max_C_GP_BEFORE_ID = dt.Rows[0]["C_GP_BEFORE_ID"].ToString();
                max_C_GP_AFTER_ID  = dt.Rows[0]["C_GP_AFTER_ID"].ToString();

                if (string.IsNullOrEmpty(max_C_MASTER_ID))
                {
                    max_C_MASTER_ID = "GPsj" + RV.UI.ServerTime.timeNow().ToString("yyMMdd00001");
                }
                else
                {
                    max_C_MASTER_ID = "GPsj" + (Convert.ToInt64(max_C_MASTER_ID) + 1).ToString();
                }
                if (string.IsNullOrEmpty(max_C_GP_BEFORE_ID))
                {
                    max_C_GP_BEFORE_ID = "GPpq" + RV.UI.ServerTime.timeNow().ToString("yyMMdd00001");
                }
                else
                {
                    max_C_GP_BEFORE_ID = "GPpq" + (Convert.ToInt64(max_C_GP_BEFORE_ID) + 1).ToString();
                }
                if (string.IsNullOrEmpty(max_C_GP_AFTER_ID))
                {
                    max_C_GP_AFTER_ID = "GPph" + RV.UI.ServerTime.timeNow().ToString("yyMMdd00001");
                }
                else
                {
                    max_C_GP_AFTER_ID = "GPph" + (Convert.ToInt64(max_C_GP_AFTER_ID) + 1).ToString();
                }
                Bll_TB_MATRL_MAIN bll_matrl = new Bll_TB_MATRL_MAIN();

                for (int i = 0; i < strs_Slab_ID.Length; i++)
                {
                    Mod_TSC_SLAB_MAIN mod_slab = dal_slab.GetModel(strs_Slab_ID[i]);
                    stove = mod_slab.C_STOVE;
                    if (mod_slab != null)
                    {
                        Mod_TB_MATRL_MAIN mod_matrl = bll_matrl.GetModel(strMatCode);
                        stove    = mod_slab.C_STOVE;
                        slabCode = mod_slab.C_SLABWH_CODE;
                        Mod_TQC_SLAB_COMMUTE mod = new Mod_TQC_SLAB_COMMUTE();
                        mod.C_STA_ID              = mod_slab.C_STA_DESC;
                        mod.C_STOVE               = mod_slab.C_STOVE;
                        mod.C_BATCH_NO            = mod_slab.C_BATCH_NO;
                        mod.N_WGT                 = mod_slab.N_WGT;
                        mod.N_LEN                 = mod_slab.N_LEN;
                        mod.C_STL_GRD_BEFORE      = mod_slab.C_STL_GRD;
                        mod.C_STD_CODE_BEFORE     = mod_slab.C_STD_CODE;
                        mod.C_SPEC_BEFORE         = mod_slab.C_SPEC;
                        mod.C_MAT_CODE_BEFORE     = mod_slab.C_MAT_CODE;
                        mod.C_MAT_DESC_BEFORE     = mod_slab.C_MAT_NAME;
                        mod.C_ZYX1_BEFORE         = mod_slab.C_ZYX1;
                        mod.C_ZYX2_BEFORE         = mod_slab.C_ZYX2;
                        mod.C_JUDGE_LEV_BP_BEFORE = mod_slab.C_MAT_TYPE;
                        mod.D_COMMUTE_DATE        = RV.UI.ServerTime.timeNow();
                        mod.C_STL_GRD_AFTER       = strGrd;
                        mod.C_STD_CODE_AFTER      = strStdCode;
                        mod.C_SPEC_AFTER          = mod_matrl.C_SLAB_SIZE;
                        mod.C_MAT_CODE_AFTER      = strMatCode;
                        mod.C_MAT_DESC_AFTER      = strMatName;
                        mod.C_REASON_DEPMT_ID     = strZrdwID;
                        mod.C_REASON_DEPMT_DESC   = strZrdwName;
                        mod.C_EMP_ID              = RV.UI.UserInfo.UserID;
                        mod.C_REMARK              = strRemark;
                        mod.C_MASTER_ID           = max_C_MASTER_ID;
                        mod.C_GP_BEFORE_ID        = max_C_GP_BEFORE_ID;
                        mod.C_GP_AFTER_ID         = max_C_GP_AFTER_ID;
                        mod.C_ZYX1_AFTER          = strZYX1;
                        mod.C_ZYX2_AFTER          = strZYX2;
                        mod.C_JUDGE_LEV_BP_AFTER  = strPDDJ;
                        mod.C_COMMUTE_REASON      = strGPYY;
                        if (dal_commute.Add_Trans(mod))
                        {
                            if (!dal_slab.Update_Trans(mod_slab.C_ID, mod_slab.C_BATCH_NO, strGrd, strStdCode, strMatCode, strMatName, mod_matrl.C_SLAB_SIZE, max_C_MASTER_ID, max_C_GP_BEFORE_ID, max_C_GP_AFTER_ID, strLGJH, strPDDJ, strZYX1, strZYX2, strGPYY, strLen, strDesignNo))
                            {
                                TransactionHelper.RollBack();
                                return("改判失败,请检查修改后的内容!");
                            }
                        }
                        else
                        {
                            TransactionHelper.RollBack();
                            return("改判失败,添加改判记录时错误!");
                        }
                    }
                }
                string interface_nc = dal_interface.SendXml_GP(strUrl, max_C_MASTER_ID, max_C_GP_BEFORE_ID, max_C_GP_AFTER_ID, slabCode);
                if (interface_nc != "1")
                {
                    TransactionHelper.RollBack();
                    return(interface_nc);
                }
                TransactionHelper.Commit();
            }
            catch (Exception ex)
            {
                TransactionHelper.RollBack();
                return(ex.Message);
            }

            return(result);
        }
Exemplo n.º 12
0
 /// <summary>
 /// 更新一条数据
 /// </summary>
 public bool Update(Mod_TSC_SLAB_MAIN model)
 {
     return(dal.Update(model));
 }
Exemplo n.º 13
0
 /// <summary>
 /// 增加一条数据
 /// </summary>
 public bool Add(Mod_TSC_SLAB_MAIN model)
 {
     return(dal.Add(model));
 }
Exemplo n.º 14
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public bool Add(Mod_TSC_SLAB_MAIN model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into TSC_SLAB_MAIN(");
            strSql.Append("C_ID,C_PLAN_ID,C_ORD_NO,C_STOVE,C_STA_ID,C_STA_CODE,C_STA_DESC,C_STL_GRD,C_STL_GRD_PRE,C_MAT_CODE,C_MAT_NAME,C_SPEC,N_LEN,N_QUA,N_WGT,C_STD_CODE,C_SLAB_TYPE,D_CCM_DATE,C_CCM_SHIFT,C_CCM_GROUP,C_CCM_EMP_ID,C_MOVE_TYPE,C_SC_STATE,D_ESC_DATE,D_LSC_DATE,C_QKP_STATE,C_KP_ID,C_CON_NO,C_CUS_NO,C_CUS_NAME,D_WL_DATE,C_WL_SHIFT,C_WL_GROUP,C_WL_EMP_ID,D_WE_DATE,C_WE_SHIFT,C_WE_GROUP,C_WE_EMP_ID,C_STOCK_STATE,C_MAT_TYPE,C_QGP_STATE,C_SLABWH_CODE,C_SLABWH_AREA_CODE,C_SLABWH_LOC_CODE,C_SLABWH_TIER_CODE,C_Q_RESULT,D_Q_DATE,C_Q_NOTE,N_WGT_METER,C_QF_NAME,C_DESIGN_NO,C_ZRBM,C_IS_DEPOT,C_ISXM,C_XMGX,C_ISFREE)");
            strSql.Append(" values (");
            strSql.Append(":C_ID,:C_PLAN_ID,:C_ORD_NO,:C_STOVE,:C_STA_ID,:C_STA_CODE,:C_STA_DESC,:C_STL_GRD,:C_STL_GRD_PRE,:C_MAT_CODE,:C_MAT_NAME,:C_SPEC,:N_LEN,:N_QUA,:N_WGT,:C_STD_CODE,:C_SLAB_TYPE,:D_CCM_DATE,:C_CCM_SHIFT,:C_CCM_GROUP,:C_CCM_EMP_ID,:C_MOVE_TYPE,:C_SC_STATE,:D_ESC_DATE,:D_LSC_DATE,:C_QKP_STATE,:C_KP_ID,:C_CON_NO,:C_CUS_NO,:C_CUS_NAME,:D_WL_DATE,:C_WL_SHIFT,:C_WL_GROUP,:C_WL_EMP_ID,:D_WE_DATE,:C_WE_SHIFT,:C_WE_GROUP,:C_WE_EMP_ID,:C_STOCK_STATE,:C_MAT_TYPE,:C_QGP_STATE,:C_SLABWH_CODE,:C_SLABWH_AREA_CODE,:C_SLABWH_LOC_CODE,:C_SLABWH_TIER_CODE,:C_Q_RESULT,:D_Q_DATE,:C_Q_NOTE,:N_WGT_METER,:C_QF_NAME,:C_DESIGN_NO,:C_ZRBM,:C_IS_DEPOT,:C_ISXM,:C_XMGX,:C_ISFREE)");
            OracleParameter[] parameters =
            {
                new OracleParameter(":C_ID",               OracleDbType.Varchar2, 100),
                new OracleParameter(":C_PLAN_ID",          OracleDbType.Varchar2,  20),
                new OracleParameter(":C_ORD_NO",           OracleDbType.Varchar2, 100),
                new OracleParameter(":C_STOVE",            OracleDbType.Varchar2,  20),
                new OracleParameter(":C_STA_ID",           OracleDbType.Varchar2, 100),
                new OracleParameter(":C_STA_CODE",         OracleDbType.Varchar2, 100),
                new OracleParameter(":C_STA_DESC",         OracleDbType.Varchar2, 100),
                new OracleParameter(":C_STL_GRD",          OracleDbType.Varchar2,  30),
                new OracleParameter(":C_STL_GRD_PRE",      OracleDbType.Varchar2,  30),
                new OracleParameter(":C_MAT_CODE",         OracleDbType.Varchar2,  30),
                new OracleParameter(":C_MAT_NAME",         OracleDbType.Varchar2, 100),
                new OracleParameter(":C_SPEC",             OracleDbType.Varchar2,  30),
                new OracleParameter(":N_LEN",              OracleDbType.Decimal,   15),
                new OracleParameter(":N_QUA",              OracleDbType.Decimal,    4),
                new OracleParameter(":N_WGT",              OracleDbType.Decimal,   10),
                new OracleParameter(":C_STD_CODE",         OracleDbType.Varchar2, 100),
                new OracleParameter(":C_SLAB_TYPE",        OracleDbType.Varchar2,   5),
                new OracleParameter(":D_CCM_DATE",         OracleDbType.Date),
                new OracleParameter(":C_CCM_SHIFT",        OracleDbType.Varchar2,   5),
                new OracleParameter(":C_CCM_GROUP",        OracleDbType.Varchar2,   5),
                new OracleParameter(":C_CCM_EMP_ID",       OracleDbType.Varchar2,  15),
                new OracleParameter(":C_MOVE_TYPE",        OracleDbType.Varchar2,   5),
                new OracleParameter(":C_SC_STATE",         OracleDbType.Varchar2,   2),
                new OracleParameter(":D_ESC_DATE",         OracleDbType.Date),
                new OracleParameter(":D_LSC_DATE",         OracleDbType.Date),
                new OracleParameter(":C_QKP_STATE",        OracleDbType.Varchar2,   5),
                new OracleParameter(":C_KP_ID",            OracleDbType.Varchar2, 100),
                new OracleParameter(":C_CON_NO",           OracleDbType.Varchar2, 100),
                new OracleParameter(":C_CUS_NO",           OracleDbType.Varchar2, 200),
                new OracleParameter(":C_CUS_NAME",         OracleDbType.Varchar2, 200),
                new OracleParameter(":D_WL_DATE",          OracleDbType.Date),
                new OracleParameter(":C_WL_SHIFT",         OracleDbType.Varchar2,   5),
                new OracleParameter(":C_WL_GROUP",         OracleDbType.Varchar2,   5),
                new OracleParameter(":C_WL_EMP_ID",        OracleDbType.Varchar2,  15),
                new OracleParameter(":D_WE_DATE",          OracleDbType.Date),
                new OracleParameter(":C_WE_SHIFT",         OracleDbType.Varchar2,   5),
                new OracleParameter(":C_WE_GROUP",         OracleDbType.Varchar2,   5),
                new OracleParameter(":C_WE_EMP_ID",        OracleDbType.Varchar2,  15),
                new OracleParameter(":C_STOCK_STATE",      OracleDbType.Varchar2,   5),
                new OracleParameter(":C_MAT_TYPE",         OracleDbType.Varchar2,  10),
                new OracleParameter(":C_QGP_STATE",        OracleDbType.Varchar2,   5),
                new OracleParameter(":C_SLABWH_CODE",      OracleDbType.Varchar2,  20),
                new OracleParameter(":C_SLABWH_AREA_CODE", OracleDbType.Varchar2,  20),
                new OracleParameter(":C_SLABWH_LOC_CODE",  OracleDbType.Varchar2,  20),
                new OracleParameter(":C_SLABWH_TIER_CODE", OracleDbType.Varchar2, 100),
                new OracleParameter(":C_Q_RESULT",         OracleDbType.Varchar2,   5),
                new OracleParameter(":D_Q_DATE",           OracleDbType.Date),
                new OracleParameter(":C_Q_NOTE",           OracleDbType.Varchar2,  20),
                new OracleParameter(":N_WGT_METER",        OracleDbType.Decimal,   15),
                new OracleParameter(":C_QF_NAME",          OracleDbType.Varchar2, 100),
                new OracleParameter(":C_DESIGN_NO",        OracleDbType.Varchar2,  20),
                new OracleParameter(":C_ZRBM",             OracleDbType.Varchar2, 100),
                new OracleParameter(":C_IS_DEPOT",         OracleDbType.Varchar2,  20),
                new OracleParameter(":C_ISXM",             OracleDbType.Varchar2,  20),
                new OracleParameter(":C_XMGX",             OracleDbType.Varchar2, 200),
                new OracleParameter(":C_ISFREE",           OracleDbType.Varchar2, 5)
            };
            parameters[0].Value  = model.C_ID;
            parameters[1].Value  = model.C_PLAN_ID;
            parameters[2].Value  = model.C_ORD_NO;
            parameters[3].Value  = model.C_STOVE;
            parameters[4].Value  = model.C_STA_ID;
            parameters[5].Value  = model.C_STA_CODE;
            parameters[6].Value  = model.C_STA_DESC;
            parameters[7].Value  = model.C_STL_GRD;
            parameters[8].Value  = model.C_STL_GRD_PRE;
            parameters[9].Value  = model.C_MAT_CODE;
            parameters[10].Value = model.C_MAT_NAME;
            parameters[11].Value = model.C_SPEC;
            parameters[12].Value = model.N_LEN;
            parameters[13].Value = model.N_QUA;
            parameters[14].Value = model.N_WGT;
            parameters[15].Value = model.C_STD_CODE;
            parameters[16].Value = model.C_SLAB_TYPE;
            parameters[17].Value = model.D_CCM_DATE;
            parameters[18].Value = model.C_CCM_SHIFT;
            parameters[19].Value = model.C_CCM_GROUP;
            parameters[20].Value = model.C_CCM_EMP_ID;
            parameters[21].Value = model.C_MOVE_TYPE;
            parameters[22].Value = model.C_SC_STATE;
            parameters[23].Value = model.D_ESC_DATE;
            parameters[24].Value = model.D_LSC_DATE;
            parameters[25].Value = model.C_QKP_STATE;
            parameters[26].Value = model.C_KP_ID;
            parameters[27].Value = model.C_CON_NO;
            parameters[28].Value = model.C_CUS_NO;
            parameters[29].Value = model.C_CUS_NAME;
            parameters[30].Value = model.D_WL_DATE;
            parameters[31].Value = model.C_WL_SHIFT;
            parameters[32].Value = model.C_WL_GROUP;
            parameters[33].Value = model.C_WL_EMP_ID;
            parameters[34].Value = model.D_WE_DATE;
            parameters[35].Value = model.C_WE_SHIFT;
            parameters[36].Value = model.C_WE_GROUP;
            parameters[37].Value = model.C_WE_EMP_ID;
            parameters[38].Value = model.C_STOCK_STATE;
            parameters[39].Value = model.C_MAT_TYPE;
            parameters[40].Value = model.C_QGP_STATE;
            parameters[41].Value = model.C_SLABWH_CODE;
            parameters[42].Value = model.C_SLABWH_AREA_CODE;
            parameters[43].Value = model.C_SLABWH_LOC_CODE;
            parameters[44].Value = model.C_SLABWH_TIER_CODE;
            parameters[45].Value = model.C_Q_RESULT;
            parameters[46].Value = model.D_Q_DATE;
            parameters[47].Value = model.C_Q_NOTE;
            parameters[48].Value = model.N_WGT_METER;
            parameters[49].Value = model.C_QF_NAME;
            parameters[50].Value = model.C_DESIGN_NO;
            parameters[51].Value = model.C_ZRBM;
            parameters[52].Value = model.C_IS_DEPOT;
            parameters[53].Value = model.C_ISXM;
            parameters[54].Value = model.C_XMGX;
            parameters[55].Value = model.C_ISFREE;

            int rows = DbHelperOra.ExecuteSql(strSql.ToString(), parameters);

            if (rows > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemplo n.º 15
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public Mod_TSC_SLAB_MAIN DataRowToModel(DataRow row)
        {
            Mod_TSC_SLAB_MAIN model = new Mod_TSC_SLAB_MAIN();

            if (row != null)
            {
                if (row["C_ID"] != null)
                {
                    model.C_ID = row["C_ID"].ToString();
                }
                if (row["C_PLAN_ID"] != null)
                {
                    model.C_PLAN_ID = row["C_PLAN_ID"].ToString();
                }
                if (row["C_ORD_NO"] != null)
                {
                    model.C_ORD_NO = row["C_ORD_NO"].ToString();
                }
                if (row["C_STOVE"] != null)
                {
                    model.C_STOVE = row["C_STOVE"].ToString();
                }
                if (row["C_STA_ID"] != null)
                {
                    model.C_STA_ID = row["C_STA_ID"].ToString();
                }
                if (row["C_STA_CODE"] != null)
                {
                    model.C_STA_CODE = row["C_STA_CODE"].ToString();
                }
                if (row["C_STA_DESC"] != null)
                {
                    model.C_STA_DESC = row["C_STA_DESC"].ToString();
                }
                if (row["C_STL_GRD"] != null)
                {
                    model.C_STL_GRD = row["C_STL_GRD"].ToString();
                }
                if (row["C_STL_GRD_PRE"] != null)
                {
                    model.C_STL_GRD_PRE = row["C_STL_GRD_PRE"].ToString();
                }
                if (row["C_MAT_CODE"] != null)
                {
                    model.C_MAT_CODE = row["C_MAT_CODE"].ToString();
                }
                if (row["C_MAT_NAME"] != null)
                {
                    model.C_MAT_NAME = row["C_MAT_NAME"].ToString();
                }
                if (row["C_SPEC"] != null)
                {
                    model.C_SPEC = row["C_SPEC"].ToString();
                }
                if (row["N_LEN"] != null && row["N_LEN"].ToString() != "")
                {
                    model.N_LEN = decimal.Parse(row["N_LEN"].ToString());
                }
                if (row["N_QUA"] != null && row["N_QUA"].ToString() != "")
                {
                    model.N_QUA = decimal.Parse(row["N_QUA"].ToString());
                }
                if (row["N_WGT"] != null && row["N_WGT"].ToString() != "")
                {
                    model.N_WGT = decimal.Parse(row["N_WGT"].ToString());
                }
                if (row["C_STD_CODE"] != null)
                {
                    model.C_STD_CODE = row["C_STD_CODE"].ToString();
                }
                if (row["C_SLAB_TYPE"] != null)
                {
                    model.C_SLAB_TYPE = row["C_SLAB_TYPE"].ToString();
                }
                if (row["D_CCM_DATE"] != null && row["D_CCM_DATE"].ToString() != "")
                {
                    model.D_CCM_DATE = DateTime.Parse(row["D_CCM_DATE"].ToString());
                }
                if (row["C_CCM_SHIFT"] != null)
                {
                    model.C_CCM_SHIFT = row["C_CCM_SHIFT"].ToString();
                }
                if (row["C_CCM_GROUP"] != null)
                {
                    model.C_CCM_GROUP = row["C_CCM_GROUP"].ToString();
                }
                if (row["C_CCM_EMP_ID"] != null)
                {
                    model.C_CCM_EMP_ID = row["C_CCM_EMP_ID"].ToString();
                }
                if (row["C_MOVE_TYPE"] != null)
                {
                    model.C_MOVE_TYPE = row["C_MOVE_TYPE"].ToString();
                }
                if (row["C_SC_STATE"] != null)
                {
                    model.C_SC_STATE = row["C_SC_STATE"].ToString();
                }
                if (row["D_ESC_DATE"] != null && row["D_ESC_DATE"].ToString() != "")
                {
                    model.D_ESC_DATE = DateTime.Parse(row["D_ESC_DATE"].ToString());
                }
                if (row["D_LSC_DATE"] != null && row["D_LSC_DATE"].ToString() != "")
                {
                    model.D_LSC_DATE = DateTime.Parse(row["D_LSC_DATE"].ToString());
                }
                if (row["C_QKP_STATE"] != null)
                {
                    model.C_QKP_STATE = row["C_QKP_STATE"].ToString();
                }
                if (row["C_KP_ID"] != null)
                {
                    model.C_KP_ID = row["C_KP_ID"].ToString();
                }
                if (row["C_CON_NO"] != null)
                {
                    model.C_CON_NO = row["C_CON_NO"].ToString();
                }
                if (row["C_CUS_NO"] != null)
                {
                    model.C_CUS_NO = row["C_CUS_NO"].ToString();
                }
                if (row["C_CUS_NAME"] != null)
                {
                    model.C_CUS_NAME = row["C_CUS_NAME"].ToString();
                }
                if (row["D_WL_DATE"] != null && row["D_WL_DATE"].ToString() != "")
                {
                    model.D_WL_DATE = DateTime.Parse(row["D_WL_DATE"].ToString());
                }
                if (row["C_WL_SHIFT"] != null)
                {
                    model.C_WL_SHIFT = row["C_WL_SHIFT"].ToString();
                }
                if (row["C_WL_GROUP"] != null)
                {
                    model.C_WL_GROUP = row["C_WL_GROUP"].ToString();
                }
                if (row["C_WL_EMP_ID"] != null)
                {
                    model.C_WL_EMP_ID = row["C_WL_EMP_ID"].ToString();
                }
                if (row["D_WE_DATE"] != null && row["D_WE_DATE"].ToString() != "")
                {
                    model.D_WE_DATE = DateTime.Parse(row["D_WE_DATE"].ToString());
                }
                if (row["C_WE_SHIFT"] != null)
                {
                    model.C_WE_SHIFT = row["C_WE_SHIFT"].ToString();
                }
                if (row["C_WE_GROUP"] != null)
                {
                    model.C_WE_GROUP = row["C_WE_GROUP"].ToString();
                }
                if (row["C_WE_EMP_ID"] != null)
                {
                    model.C_WE_EMP_ID = row["C_WE_EMP_ID"].ToString();
                }
                if (row["C_STOCK_STATE"] != null)
                {
                    model.C_STOCK_STATE = row["C_STOCK_STATE"].ToString();
                }
                if (row["C_MAT_TYPE"] != null)
                {
                    model.C_MAT_TYPE = row["C_MAT_TYPE"].ToString();
                }
                if (row["C_QGP_STATE"] != null)
                {
                    model.C_QGP_STATE = row["C_QGP_STATE"].ToString();
                }
                if (row["C_SLABWH_CODE"] != null)
                {
                    model.C_SLABWH_CODE = row["C_SLABWH_CODE"].ToString();
                }
                if (row["C_SLABWH_AREA_CODE"] != null)
                {
                    model.C_SLABWH_AREA_CODE = row["C_SLABWH_AREA_CODE"].ToString();
                }
                if (row["C_SLABWH_LOC_CODE"] != null)
                {
                    model.C_SLABWH_LOC_CODE = row["C_SLABWH_LOC_CODE"].ToString();
                }
                if (row["C_SLABWH_TIER_CODE"] != null)
                {
                    model.C_SLABWH_TIER_CODE = row["C_SLABWH_TIER_CODE"].ToString();
                }
                if (row["C_Q_RESULT"] != null)
                {
                    model.C_Q_RESULT = row["C_Q_RESULT"].ToString();
                }
                if (row["D_Q_DATE"] != null && row["D_Q_DATE"].ToString() != "")
                {
                    model.D_Q_DATE = DateTime.Parse(row["D_Q_DATE"].ToString());
                }
                if (row["C_Q_NOTE"] != null)
                {
                    model.C_Q_NOTE = row["C_Q_NOTE"].ToString();
                }
                if (row["N_WGT_METER"] != null && row["N_WGT_METER"].ToString() != "")
                {
                    model.N_WGT_METER = decimal.Parse(row["N_WGT_METER"].ToString());
                }
                if (row["C_QF_NAME"] != null)
                {
                    model.C_QF_NAME = row["C_QF_NAME"].ToString();
                }
                if (row["C_DESIGN_NO"] != null)
                {
                    model.C_DESIGN_NO = row["C_DESIGN_NO"].ToString();
                }
                if (row["C_ZRBM"] != null)
                {
                    model.C_ZRBM = row["C_ZRBM"].ToString();
                }
                if (row["C_IS_DEPOT"] != null)
                {
                    model.C_IS_DEPOT = row["C_IS_DEPOT"].ToString();
                }
                if (row["C_ISXM"] != null)
                {
                    model.C_ISXM = row["C_ISXM"].ToString();
                }
                if (row["C_XMGX"] != null)
                {
                    model.C_XMGX = row["C_XMGX"].ToString();
                }
                if (row["C_ISFREE"] != null)
                {
                    model.C_ISFREE = row["C_ISFREE"].ToString();
                }
            }
            return(model);
        }
Exemplo n.º 16
0
        /// <summary>
        /// 获取NC正式库数据列表
        /// </summary>
        /// <param name="type">NC正式库/测试</param>
        /// <returns></returns>
        public List <Mod_TSC_SLAB_MAIN> Get_GPKNCZS(string type)
        {
            DataTable dtnc = null;

            if (type == "NC正式库")
            {
                dtnc = bll_slab.GetNCGPK();
            }
            else
            {
                dtnc = bll_slab.GetNCCSGPK();
            }
            List <Mod_TSC_SLAB_MAIN> lst = new List <Mod_TSC_SLAB_MAIN>();

            if (dtnc.Rows.Count > 0)
            {
                for (int i = 0; i < dtnc.Rows.Count; i++)
                {
                    string dd  = dtnc.Rows[i]["辅数量"].ToString();
                    int    num = 0;
                    try
                    {
                        num = Convert.ToInt32(Math.Ceiling(Convert.ToDecimal(dtnc.Rows[i]["辅数量"].ToString())));//支数
                    }
                    catch (Exception)
                    {
                        num = 10;
                    }
                    string lh  = "";
                    string pch = "";
                    if (dtnc.Rows[i]["连铸炉号"].ToString().Trim() != "")
                    {
                        lh  = dtnc.Rows[i]["连铸炉号"].ToString();
                        pch = dtnc.Rows[i]["批次号"].ToString();
                    }
                    else
                    {
                        lh  = dtnc.Rows[i]["批次号"].ToString();
                        pch = "";
                    }
                    decimal           wgt    = Convert.ToDecimal(Convert.ToDouble(dtnc.Rows[i]["数量"].ToString())) / Convert.ToDecimal(dtnc.Rows[i]["辅数量"].ToString()); //单重
                    Mod_TB_MATRL_MAIN motral = bll_matrl.GetModel(dtnc.Rows[i]["INVCODE"].ToString());
                    string            zyx1   = dtnc.Rows[i]["VFREE1"].ToString();                                                                                      //自由项1
                    string            zyx2   = dtnc.Rows[i]["VFREE2"].ToString();                                                                                      //自由项2
                    string            bz     = zyx1.Split('~')[1].Contains("协议") ? zyx2.Split('~')[1] : zyx1.Split('~')[1];                                            //执行标准//
                    string            zyx3   = dtnc.Rows[i]["VFREE3"].ToString();                                                                                      //自由项3
                    DateTime          wedate = Convert.ToDateTime(dtnc.Rows[i]["生产入库日期"].ToString());                                                                  //生产入库时间
                    string            wlid   = dtnc.Rows[i]["INVCODE"].ToString();                                                                                     //物料编码
                    string            wumc   = dtnc.Rows[i]["INVNAME"].ToString();                                                                                     //物料名称
                    string            hw     = dtnc.Rows[i]["STORCODE"].ToString();                                                                                    //仓库
                    Mod_TQB_STD_MAIN  modbz  = bll_bz.GetModel(motral.C_STL_GRD, zyx1, zyx2);
                    for (int j = 0; j < num; j++)
                    {
                        Mod_TSC_SLAB_MAIN mod = new Mod_TSC_SLAB_MAIN();
                        mod.C_PLAN_ID  = type;
                        mod.C_STOVE    = lh;
                        mod.C_ID       = System.Guid.NewGuid().ToString();
                        mod.C_BATCH_NO = pch;

                        if (mod.C_STOVE == "24")
                        {
                            mod.C_STA_ID   = "890EAA2949E743AFB26C06B8D4209B17";
                            mod.C_STA_CODE = "3#CC";
                            mod.C_STA_DESC = "3#铸机";
                        }
                        else if (mod.C_STOVE == "23")
                        {
                            mod.C_STA_ID   = "5263048C90B44B4D9934C513CE028250";
                            mod.C_STA_CODE = "4#CC";
                            mod.C_STA_DESC = "4#铸机";
                        }
                        else if (mod.C_STOVE == "61")
                        {
                            mod.C_STA_ID   = "01C145B259E740F6A258AF313DD9268C";
                            mod.C_STA_CODE = "6#CC";
                            mod.C_STA_DESC = "6#铸机";
                        }
                        else
                        {
                            mod.C_STA_ID   = "77B9FDA79B884D07AA2B3601D1DA11A2";
                            mod.C_STA_CODE = "5#CC";
                            mod.C_STA_DESC = "5#铸机";
                        }
                        mod.D_WE_DATE   = wedate;
                        mod.C_MAT_CODE  = wlid;
                        mod.C_MAT_NAME  = wumc;
                        mod.C_SPEC      = motral.C_SLAB_SIZE;;
                        mod.N_LEN       = motral.N_LTH;
                        mod.C_STL_GRD   = motral.C_STL_GRD;
                        mod.N_WGT       = wgt;
                        mod.C_SCUTCHEON = "白牌";
                        mod.N_QUA       = 1;
                        if (modbz != null)
                        {
                            mod.C_STD_CODE = modbz.C_STD_CODE;
                        }
                        if (mod.C_STD_CODE == "")
                        {
                            mod.C_STD_CODE = bz.Replace(" ", "").Replace("(", "(").Replace(")", ")");
                        }
                        mod.C_MOVE_TYPE    = "M";
                        mod.D_CCM_DATE     = wedate.AddHours(-2);
                        mod.C_STOCK_STATE  = "F";
                        mod.C_MAT_TYPE     = "合格品";
                        mod.C_JUDGE_LEV_ZH = "合格品";
                        //mod.C_ISXM = "N";
                        mod.C_ZYX1        = zyx1;
                        mod.C_ZYX2        = zyx2;
                        mod.C_IS_QR       = "Y";
                        mod.C_SLABWH_CODE = hw;
                        lst.Add(mod);
                    }
                }

                return(lst);
            }
            return(null);
        }
Exemplo n.º 17
0
        /// <summary>
        /// 库检申请
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_KJSQ_Click(object sender, EventArgs e)
        {
            try
            {
                DataRow dr = this.gv_GPSJ.GetDataRow(this.gv_GPSJ.FocusedRowHandle);
                if (dr == null)
                {
                    MessageBox.Show("请选择需要库检的数据!", "提示");
                    return;
                }

                if (imgcbo_YYMC.EditValue == null)
                {
                    MessageBox.Show("库检原因不能为空!", "提示");
                    return;
                }
                if (imgcbo_ZRBM.EditValue == null)
                {
                    MessageBox.Show("责任单位不能为空!", "提示");
                    return;
                }
                if (imgcbo_CZYJ.EditValue == null)
                {
                    MessageBox.Show("处置意见不能为空!", "提示");
                    return;
                }
                Mod_TQC_WAREHOUSE_CHECK_SLAB mod = new Mod_TQC_WAREHOUSE_CHECK_SLAB();
                mod.C_SLAB_ID   = dr["C_ID"].ToString();
                mod.C_STOVE     = dr["C_STOVE"].ToString();
                mod.C_STL_GRD   = dr["C_STL_GRD"].ToString();
                mod.N_WGT       = Convert.ToDecimal(dr["N_WGT"]);
                mod.C_STD_CODE  = dr["C_STD_CODE"].ToString();
                mod.C_SLAB_SIZE = dr["C_SPEC"].ToString();
                mod.N_LEN       = Convert.ToDecimal(dr["N_LEN"]);
                mod.C_MAT_CODE  = dr["C_MAT_CODE"].ToString();
                mod.C_MAT_NAME  = dr["C_MAT_NAME"].ToString();
                if (!string.IsNullOrEmpty(dr["D_WE_DATE"].ToString()))
                {
                    mod.D_WAREHOUSE_IN = Convert.ToDateTime(dr["D_WE_DATE"]);
                }

                mod.C_REASON_NAME       = imgcbo_YYMC.Text.Trim();
                mod.C_REASON_CODE       = imgcbo_YYMC.EditValue.ToString();
                mod.C_REASON_DEPMT_ID   = imgcbo_ZRBM.Text;
                mod.C_REASON_DEPMT_DESC = imgcbo_ZRBM.EditValue.ToString();
                mod.C_SUGGESTION        = imgcbo_CZYJ.Text.Trim();
                mod.C_REMARK            = txt_Remark.Text.Trim();
                mod.C_EMP_ID            = RV.UI.UserInfo.UserID;
                mod.D_MOD_DT            = RV.UI.ServerTime.timeNow();
                if (bll_check_slab.Add(mod))
                {
                    MessageBox.Show("申请成功!", "提示");
                }
                Mod_TSC_SLAB_MAIN mod_slab = bll_slab.GetModel(dr["C_ID"].ToString());
                mod_slab.C_IS_DEPOT = "0";
                bll_slab.Update(mod_slab);

                Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "添加钢坯库检信息");//添加操作日志

                btn_Query_Click(null, null);
                txt_Query1_Click(null, null);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Exemplo n.º 18
0
 /// <summary>
 /// 保存
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void btn_Seave_Click(object sender, EventArgs e)
 {
     if (string.IsNullOrEmpty(txt_LH.Text.Trim()))
     {
         MessageBox.Show("炉号不能为空!");
         return;
     }
     if (string.IsNullOrEmpty(txt_Grd.Text.Trim()))
     {
         MessageBox.Show("钢种不能为空!");
         return;
     }
     if (string.IsNullOrEmpty(txt_DM.Text.Trim()))
     {
         MessageBox.Show("断面不能为空!");
         return;
     }
     if (Convert.ToDecimal(txt_DC.Text.Trim()) == 0)
     {
         MessageBox.Show("规格不能为0!");
         return;
     }
     if (Convert.ToDecimal(txt_COU.Text.Trim()) < 0)
     {
         MessageBox.Show("支数不能小于0!");
         return;
     }
     if (string.IsNullOrEmpty(image_Store.Text.Trim()))
     {
         MessageBox.Show("请选择仓库!");
         return;
     }
     try
     {
         for (int i = 0; i < Convert.ToInt16(txt_COU.Text.Trim()); i++)
         {
             Mod_TSC_SLAB_MAIN mod = new Mod_TSC_SLAB_MAIN();
             mod.C_STOVE        = txt_LH.Text.Trim();
             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_Std.Text.Trim();
             mod.C_SPEC         = txt_DM.Text.Trim();
             mod.N_LEN          = Convert.ToDecimal(txt_DC.Text.Trim());
             mod.N_WGT          = Convert.ToDecimal(txt_DZ.Text.Trim());
             mod.C_SLABWH_CODE  = image_Store.EditValue.ToString();
             mod.C_ZYX1         = txt_ZYX1.Text.Trim();
             mod.C_ZYX2         = txt_ZYX2.Text.Trim();
             mod.C_CCM_EMP_ID   = RV.UI.UserInfo.UserID;
             mod.D_CCM_DATE     = RV.UI.ServerTime.timeNow();
             mod.C_SLAB_TYPE    = "R";
             mod.C_MOVE_TYPE    = "M";
             mod.C_STOCK_STATE  = "F";
             mod.C_MAT_TYPE     = "合格品";
             mod.C_JUDGE_LEV_ZH = "合格品";
             mod.C_IS_PD        = "Y";
             mod.C_IS_QR        = "Y";
             mod.C_IS_TB        = "Y";
             mod.C_SLAB_TYPE_R  = "外来钢坯";
             if (bll.Add(mod))
             {
                 Mod_TSC_SLAB_WLGP_LOG mod_LOG = new Mod_TSC_SLAB_WLGP_LOG();
                 mod_LOG.C_STOVE       = txt_LH.Text.Trim();
                 mod_LOG.C_MAT_CODE    = btn_mat_code.Text.Trim();
                 mod_LOG.C_MAT_NAME    = txt_mat_name.Text.Trim();
                 mod_LOG.C_STL_GRD     = txt_Grd.Text.Trim();
                 mod_LOG.C_STD_CODE    = txt_Std.Text.Trim();
                 mod_LOG.C_SPEC        = txt_DM.Text.Trim();
                 mod_LOG.N_LEN         = Convert.ToDecimal(txt_DC.Text.Trim());
                 mod_LOG.N_WGT         = Convert.ToDecimal(txt_DZ.Text.Trim());
                 mod_LOG.C_SLABWH_CODE = image_Store.EditValue.ToString();
                 mod_LOG.C_EMP_ID      = RV.UI.UserInfo.UserID;
                 mod_LOG.D_MOD_DT      = RV.UI.ServerTime.timeNow();
                 mod_LOG.C_REMARK      = "录入";
                 bllWLGP_LOG.Add(mod_LOG);
             }
         }
         MessageBox.Show("保存成功!");
         Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "外来钢坯添加记录");//添加操作日志
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
Exemplo n.º 19
0
        /// <summary>
        /// 下发轧钢计划
        /// </summary>
        /// <returns></returns>
        public string UpdateWgt(DataRow[] rows)
        {
            try
            {
                string result = "1";

                TransactionHelper.BeginTransaction();

                Dal_TSC_SLAB_MAIN dalMain = new Dal_TSC_SLAB_MAIN();

                int a = 0;

                foreach (var item in rows)
                {
                    a++;

                    decimal cou = Convert.ToDecimal(item["NC账存支数"].ToString());
                    decimal wgt = Convert.ToDecimal(item["NC与CAP重量账差"].ToString());

                    if (cou == 0 || wgt == 0)
                    {
                        continue;
                    }

                    decimal wgt_ave = Math.Round(wgt / cou, 3);
                    decimal wgt_sy  = 0;
                    if (cou > 1)
                    {
                        wgt_sy = wgt - wgt_ave * (cou - 1);
                    }

                    DataTable dt = dalMain.Get_List(item["炉号"].ToString(), item["钢种"].ToString(), item["开坯号"].ToString(), item["物料号"].ToString(), item["自由项1"].ToString(), item["自由项2"].ToString(), item["质量等级"].ToString(), item["仓库"].ToString()).Tables[0];

                    if (dt.Rows.Count == cou)
                    {
                        for (int kk = 0; kk < dt.Rows.Count; kk++)
                        {
                            Mod_TSC_SLAB_MAIN model = dalMain.GetModel_Trans(dt.Rows[kk]["C_ID"].ToString());

                            if (kk == dt.Rows.Count - 1)
                            {
                                if (cou == 1)
                                {
                                    model.N_WGT = model.N_WGT + wgt_ave;
                                }
                                else
                                {
                                    model.N_WGT = model.N_WGT + wgt_sy;
                                }
                            }
                            else
                            {
                                model.N_WGT = model.N_WGT + wgt_ave;
                            }

                            if (!dalMain.Update_Trans(model))
                            {
                                TransactionHelper.RollBack();
                                return("重量更新失败!");
                            }
                        }
                    }
                    else
                    {
                        continue;
                    }
                }

                TransactionHelper.Commit();
                return(result);
            }
            catch (Exception ex)
            {
                TransactionHelper.RollBack();
                return(ex.Message);
            }
        }
Exemplo n.º 20
0
        /// <summary>
        /// 判定
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_Decide_Click(object sender, EventArgs e)
        {
            try
            {
                DataRow dr = this.gv_GPSJ.GetDataRow(this.gv_GPSJ.FocusedRowHandle);
                if (dr == null)
                {
                    MessageBox.Show("请选择需要判定的钢坯实绩!");
                    return;
                }
                if (txt_PDZS.Text == "0")
                {
                    MessageBox.Show("判定支数不能为0!");
                    return;
                }
                if (txt_PDZS.Value > Convert.ToInt32(dr["COU"]))
                {
                    MessageBox.Show("判定支数不能大于实绩支数!");
                    return;
                }
                if (imgcbo_PDDJ.EditValue == null)
                {
                    MessageBox.Show("判定等级不能为空!");
                    return;
                }
                if (imgcbo_PDDJ.SelectedItem.ToString() != "合格品")
                {
                    if (imgcbo_BHGLX.EditValue == null)
                    {
                        MessageBox.Show("不合格类型不能为空!");
                        return;
                    }
                    if (imgcbo_BHGYY.EditValue == null)
                    {
                        MessageBox.Show("不合格原因不能为空!");
                        return;
                    }
                    if (string.IsNullOrEmpty(imgcbo_ZRDW.Text.Trim()))
                    {
                        MessageBox.Show("责任部门不能为空!");
                        return;
                    }
                }

                DataSet ds = bll_SLAB.GetList_count(dr["C_STA_ID"].ToString(), dr["C_STOVE"].ToString(), dr["C_STL_GRD"].ToString(), dr["C_SPEC"].ToString(), dr["N_LEN"].ToString(), dr["C_STD_CODE"].ToString(), dr["C_MAT_CODE"].ToString(), dr["C_MAT_NAME"].ToString(), Convert.ToInt32(txt_PDZS.Value));
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    //DataTable dt_SLAB = bll_SLAB.GetList_id(ds.Tables[0].Rows[i]["C_ID"].ToString()).Tables[0];
                    Mod_TSC_SLAB_MAIN mod_tsc = bll_SLAB.GetModel(ds.Tables[0].Rows[i]["C_ID"].ToString());
                    Mod_TQC_FACE_SLAB mod     = new Mod_TQC_FACE_SLAB();
                    mod.C_SLAB_ID           = mod_tsc.C_ID;
                    mod.C_STOVE             = mod_tsc.C_STOVE;
                    mod.C_STA_ID            = mod_tsc.C_STA_ID;
                    mod.C_STL_GRD           = mod_tsc.C_STL_GRD;
                    mod.C_SLAB_SIZE         = mod_tsc.C_SPEC;
                    mod.N_WGT               = Convert.ToInt32(mod_tsc.N_WGT);
                    mod.N_LEN               = Convert.ToInt32(mod_tsc.N_LEN);
                    mod.C_STD_CODE          = mod_tsc.C_STD_CODE;
                    mod.C_MAT_CODE          = mod_tsc.C_MAT_CODE;
                    mod.C_MAT_NAME          = mod_tsc.C_MAT_NAME;
                    mod.C_JUDGE_LEV         = imgcbo_PDDJ.Text.Trim();
                    mod.C_REASON_NAME       = imgcbo_BHGYY.Text.Trim();
                    mod.C_REASON_CODE       = imgcbo_BHGLX.Text.Trim();
                    mod.C_REASON_DEPMT_ID   = imgcbo_ZRDW.EditValue?.ToString();
                    mod.C_REASON_DEPMT_DESC = imgcbo_ZRDW.Text;
                    mod.C_SUGGESTION        = txt_CZYJ.Text.Trim();
                    mod.C_REMARK            = txt_Remark.Text.Trim();
                    mod.C_EMP_ID            = RV.UI.UserInfo.UserID;
                    bll_face_slab.Add(mod);

                    mod_tsc.C_STOCK_STATE = "F";//修改钢坯实绩表 库存状态 F为已判定
                    mod_tsc.C_QF_NAME     = RV.UI.UserInfo.UserID;
                    mod_tsc.C_MAT_TYPE    = imgcbo_PDDJ.Text;
                    bool res = bll_SLAB.Update(mod_tsc);

                    Mod_TQC_FACE_SLAB_LOG mod_log = new Mod_TQC_FACE_SLAB_LOG();
                    mod_log.C_SLAB_ID           = mod_tsc.C_ID;
                    mod_log.C_STOVE             = mod_tsc.C_STOVE;
                    mod_log.C_STA_ID            = mod_tsc.C_STA_ID;
                    mod_log.C_STL_GRD           = mod_tsc.C_STL_GRD;
                    mod_log.C_SLAB_SIZE         = mod_tsc.C_SPEC;
                    mod_log.N_WGT               = Convert.ToDecimal(mod_tsc.N_WGT);
                    mod_log.N_LEN               = Convert.ToDecimal(mod_tsc.N_LEN);
                    mod_log.C_STD_CODE          = mod_tsc.C_STD_CODE;
                    mod_log.C_MAT_CODE          = mod_tsc.C_MAT_CODE;
                    mod_log.C_MAT_NAME          = mod_tsc.C_MAT_NAME;
                    mod_log.C_JUDGE_LEV         = imgcbo_PDDJ.Text.Trim();
                    mod_log.C_REASON_NAME       = imgcbo_BHGYY.Text.Trim();
                    mod_log.C_REASON_CODE       = imgcbo_BHGLX.Text.Trim();
                    mod_log.C_REASON_DEPMT_ID   = imgcbo_ZRDW.EditValue?.ToString();
                    mod_log.C_REASON_DEPMT_DESC = imgcbo_ZRDW.Text;
                    mod_log.C_SUGGESTION        = txt_CZYJ.Text.Trim();
                    mod_log.C_REMARK            = "判定";
                    mod_log.C_EMP_ID            = RV.UI.UserInfo.UserID;
                    bll_face_slab_log.Add(mod_log);

                    Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "添加钢坯表面判定信息");//添加操作日志
                }
                MessageBox.Show("判定成功");
                btn_Query1_Click(null, null);
                btn_Query_Click(null, null);
                btn_Rest_Click(null, null);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Exemplo n.º 21
0
 /// <summary>
 /// 审核通过
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void btn_SHTG_Click(object sender, EventArgs e)
 {
     try
     {
         if (txt_GPYY.Text.Trim() == "")
         {
             MessageBox.Show("请输入改判原因!");
             return;
         }
         if (DialogResult.OK != MessageBox.Show("是否确认改判已选中的数据?", "提示", MessageBoxButtons.OKCancel))
         {
             return;
         }
         DataRow dr = this.gv_GPGP.GetDataRow(this.gv_GPGP.FocusedRowHandle);
         if (dr == null)
         {
             return;
         }
         string    stove       = dr["炉号"].ToString();
         string    strBatchNo  = dr["开坯号"].ToString();
         string    stlgrd      = dr["改判前钢种"].ToString();
         string    stdcode     = dr["改判前标准"].ToString();
         string    matID       = dr["改判前物料编码"].ToString();
         string    strZYX1     = dr["改判前自由项1"].ToString();
         string    strZYX2     = dr["改判前自由项2"].ToString();
         string    strSTD_GPH  = dr["改判后标准"].ToString();
         string    strMat_GPH  = dr["改判后物料编码"].ToString();
         string    strZYX1_GPH = dr["改判后自由项1"].ToString();
         string    strZYX2_GPH = dr["改判后自由项2"].ToString();
         string    strSlabCode = dr["仓库编码"].ToString();
         DataTable dt          = bllTPSlab.GetList_TPGP_COU(stove, strBatchNo, stlgrd, stdcode, matID, strZYX1, strZYX2, strSlabCode, strMat_GPH, strSTD_GPH, strZYX1_GPH, strZYX2_GPH).Tables[0];
         string    strs        = "";
         for (int i = 0; i < dt.Rows.Count; i++)
         {
             strs = strs + dt.Rows[i]["C_SLAB_MAIN_ID"].ToString() + ",";
         }
         string strResult = bll_slab.GP_Slab(strs, dr["改判后钢种"].ToString(), dr["改判后标准"].ToString(), dr["改判后物料编码"].ToString(), dr["改判后物料描述"].ToString(), dr["责任单位代码"].ToString(), dr["责任单位描述"].ToString(), dr["改判后判定等级"].ToString(), "", Application.StartupPath, dr["改判后自由项1"].ToString(), dr["改判后自由项2"].ToString(), txt_GPYY.Text.Trim(), dr["改判后定尺"].ToString());
         if (strResult == "1")
         {
             for (int s = 0; s < dt.Rows.Count; s++)
             {
                 Mod_TQC_TP_SLAB_COMMUTE mod = bllTPSlab.GetModel(dt.Rows[s]["C_ID"].ToString());
                 mod.N_STATUS         = 2;
                 mod.C_COMMUTE_REASON = txt_GPYY.Text.Trim();
                 mod.C_REMARK1        = RV.UI.UserInfo.UserName;
                 mod.D_COMMUTE_DATE   = RV.UI.ServerTime.timeNow();
                 bllTPSlab.Update(mod);
                 Mod_TSC_SLAB_MAIN mod_slab = bll_slab.GetModel(dt.Rows[s]["C_SLAB_MAIN_ID"].ToString());
                 mod_slab.C_MOVE_TYPE = dt.Rows[s]["C_REMARK2"].ToString();
                 bll_slab.Update(mod_slab);
             }
             btn_Query1_Click(null, null);
             MessageBox.Show("改判成功!");
             Common.UserLog.AddLog(strMenuName, this.Name, this.Text, "钢坯挑坯改判");//添加操作日志
         }
         else
         {
             MessageBox.Show(strResult);
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
        /// <summary>
        /// 发送转库单信息给NC
        /// </summary>
        /// <param name="xmlFileName">xml完整路径</param>
        /// <param name="dh">转库单号</param>
        /// <param name="dhid">转库单ID</param>
        /// <returns></returns>
        public string SendXml_GP4I(string xmlFileName, string dh, string dhid, string C_SLABWH_LOC_CODE, string C_SLABWH_AREA_CODE)
        {
            try
            {
                string urlname = "GP4I" + dh + ".XML";//XML名称

                string url = xmlFileName + "\\NCXML";
                if (!Directory.Exists(url))
                {
                    Directory.CreateDirectory(url);
                }

                DataTable dt = dal_TSC_SLAB_MAIN.Get_ZK_List_Trans(dh, dhid).Tables[0];
                DataRow   dr = null;
                if (dt.Rows.Count > 0)
                {
                    dr = dt.Rows[0];
                }

                if (dr == null)
                {
                    return("调拨失败");
                }

                Mod_TB_MATRL_MAIN mod_TB_MATRL_MAIN = dal_TB_MATRL_MAIN.GetModel(dr["C_MAT_CODE"].ToString());
                Mod_TPB_SLABWH    yck         = dal_TPB_SLABWH.GetModel_Interface_Trans(dr["C_STOCK_CODE"].ToString());    //源仓库
                Mod_TPB_SLABWH    mbck        = dal_TPB_SLABWH.GetModel_Interface_Trans(dr["C_STOCK_CODE_TO"].ToString()); //目标仓库
                string            djrq        = DateTime.Now.ToString("yyyy-MM-dd");
                Mod_TS_USER       mod_TS_USER = dal_TS_USER.GetModel(RV.UI.UserInfo.userID);                               //获取操作人
                string            bmid        = dal_TS_DEPT.GetDept(mod_TS_USER.C_ACCOUNT);
                if (bmid == "")
                {
                    return("操作人部门未维护!");
                }
                Mod_TS_DEPT        mod_TS_DEPT        = dal_TS_DEPT.GetModel(bmid);//获取部门
                Mod_TQB_CHECKSTATE mod_TQB_CHECKSTATE = dal_TQB_CHECKSTATE.GetModelByName(dr["ZLDJ"].ToString(), "1001");
                //Mod_TB_STD_CONFIG mod_TB_STD_CONFIG = dal_TB_STD_CONFIG.GetModel_Interface_Trans(dr["C_STD_CODE"].ToString(), dr["C_STL_GRD"].ToString());

                Mod_TSC_SLAB_MAIN modSms = new Mod_TSC_SLAB_MAIN();

                if (dr["C_BATCH_NO"].ToString() != "")
                {
                    modSms = dal_TSC_SLAB_MAIN.GetModel_Batch(dr["C_STD_CODE"].ToString(), dr["C_STL_GRD"].ToString(), dr["C_BATCH_NO"].ToString());
                }
                else
                {
                    modSms = dal_TSC_SLAB_MAIN.GetModel(dr["C_STD_CODE"].ToString(), dr["C_STL_GRD"].ToString(), dr["C_STOVE"].ToString());
                }

                //Mod_TSC_SLAB_MAIN modSms = dal_TSC_SLAB_MAIN.GetModel(dr["C_STD_CODE"].ToString(), dr["C_STL_GRD"].ToString(), dr["C_STOVE"].ToString());

                if (mod_TB_MATRL_MAIN == null)
                {
                    return("调拨失败");
                }
                if (yck == null)
                {
                    return("调拨失败");
                }
                if (mbck == null)
                {
                    return("调拨失败");
                }
                if (mod_TS_USER == null)
                {
                    return("调拨失败");
                }
                if (mod_TQB_CHECKSTATE == null)
                {
                    return("调拨失败,没有找到对应的质量等级");
                }
                if (modSms == null)
                {
                    return("调拨失败,没有找到对应的自由项");
                }

                string C_SLABWH_LOC_NC_ID   = "";
                string C_SLABWH_LOC_NC_CODE = "";
                string C_SLABWH_LOC_NC_NAME = "";

                //if (yck.C_SLABWH_CODE == "132" || yck.C_SLABWH_CODE == "593")
                if (yck.C_SLABWH_CODE == "132")
                {
                    DataTable dtLOC = dal_TPB_SLABWH.GetList_NC_Loc(C_SLABWH_LOC_CODE, yck.C_SLABWH_CODE, C_SLABWH_AREA_CODE).Tables[0];
                    if (dtLOC.Rows.Count > 0)
                    {
                        C_SLABWH_LOC_NC_ID   = dtLOC.Rows[0]["LOC_ID"].ToString();
                        C_SLABWH_LOC_NC_CODE = dtLOC.Rows[0]["C_SLABWH_LOC_CODE"].ToString();
                        C_SLABWH_LOC_NC_NAME = dtLOC.Rows[0]["C_SLABWH_LOC_NAME"].ToString();
                    }
                }

                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", "4K");
                root.SetAttribute("filename", urlname);
                root.SetAttribute("isexchange", "Y");
                root.SetAttribute("operation", "req");
                root.SetAttribute("proc", "add");
                root.SetAttribute("receiver", "101");
                root.SetAttribute("replace", "y");
                root.SetAttribute("roottag", "bill");
                root.SetAttribute("sender", "1107");
                #endregion
                xmlDoc.AppendChild(root);

                //创建子根节点
                XmlElement bill = xmlDoc.CreateElement("bill");
                #region//节点属性
                bill.SetAttribute("id", "GP" + dhid);
                #endregion
                root.AppendChild(bill);

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

                #region //表头_order_head
                CreateNode(xmlDoc, head, "ctjname", "");
                CreateNode(xmlDoc, head, "bz", "");
                CreateNode(xmlDoc, head, "cbilltypecode", "4K");        //库存单据类型编码
                CreateNode(xmlDoc, head, "cinbsrid", "");
                CreateNode(xmlDoc, head, "cinbsrname", "");
                CreateNode(xmlDoc, head, "cindeptid", mod_TS_DEPT.C_ID);          //入库部门ID
                CreateNode(xmlDoc, head, "cindeptname", mod_TS_DEPT.C_NAME);
                CreateNode(xmlDoc, head, "cinwarehouseid", mbck.C_ID);            //入库仓库ID
                CreateNode(xmlDoc, head, "cinwarehousename", mbck.C_SLABWH_NAME); //仓库名称
                CreateNode(xmlDoc, head, "isLocatorMgtIn", "0");
                CreateNode(xmlDoc, head, "isWasteWhIn", "0");
                CreateNode(xmlDoc, head, "whreservedptyin", "");
                CreateNode(xmlDoc, head, "islocatormgtin", "0");
                CreateNode(xmlDoc, head, "iswastewhin", "0");
                CreateNode(xmlDoc, head, "whreservedptyin", "");
                CreateNode(xmlDoc, head, "coutbsor", "");
                CreateNode(xmlDoc, head, "coutbsorname", "");
                CreateNode(xmlDoc, head, "coutdeptid", mod_TS_DEPT.C_ID);         //出库部门ID
                CreateNode(xmlDoc, head, "coutdeptname", mod_TS_DEPT.C_NAME);     //出库部门名称
                CreateNode(xmlDoc, head, "coutwarehouseid", yck.C_ID);            //出库仓库ID
                CreateNode(xmlDoc, head, "coutwarehousename", yck.C_SLABWH_NAME); //仓库名称
                CreateNode(xmlDoc, head, "isLocatorMgtOut", "0");
                CreateNode(xmlDoc, head, "isWasteWhOut", "0");
                CreateNode(xmlDoc, head, "whReservedPtyOut", "");
                CreateNode(xmlDoc, head, "islocatormgtout", "0");
                CreateNode(xmlDoc, head, "iswastewhout", "0");
                CreateNode(xmlDoc, head, "whreservedptyout", "");
                CreateNode(xmlDoc, head, "cshlddiliverdate", djrq); //单据日期
                CreateNode(xmlDoc, head, "ctj", "");
                CreateNode(xmlDoc, head, "dbilldate", djrq);        //单据日期
                CreateNode(xmlDoc, head, "nfixdisassemblymny", ""); //组装拆卸费用
                CreateNode(xmlDoc, head, "pdfs", "");
                CreateNode(xmlDoc, head, "pk_corp", "1001");        //公司ID
                CreateNode(xmlDoc, head, "vbillcode", dh);          //单据号
                CreateNode(xmlDoc, head, "vnote", "");              //备注
                CreateNode(xmlDoc, head, "vshldarrivedate", djrq);  //应到货日期
                CreateNode(xmlDoc, head, "vuserdef1", "");
                CreateNode(xmlDoc, head, "vuserdef2", "");
                CreateNode(xmlDoc, head, "vuserdef3", "");
                CreateNode(xmlDoc, head, "vuserdef4", "");
                CreateNode(xmlDoc, head, "vuserdef5", "");
                CreateNode(xmlDoc, head, "vuserdef6", "");
                CreateNode(xmlDoc, head, "vuserdef7", "");
                CreateNode(xmlDoc, head, "vuserdef8", "");
                CreateNode(xmlDoc, head, "vuserdef9", "");
                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, "vuserdef20", "");
                CreateNode(xmlDoc, head, "vuserdef11h", "");
                CreateNode(xmlDoc, head, "vuserdef12h", "");
                CreateNode(xmlDoc, head, "vuserdef13h", "");
                CreateNode(xmlDoc, head, "vuserdef14h", "");
                CreateNode(xmlDoc, head, "vuserdef15h", "");
                CreateNode(xmlDoc, head, "vuserdef16h", "");
                CreateNode(xmlDoc, head, "vuserdef17h", "");
                CreateNode(xmlDoc, head, "vuserdef18h", "");
                CreateNode(xmlDoc, head, "vuserdef19h", "");
                CreateNode(xmlDoc, head, "vuserdef20h", "");
                CreateNode(xmlDoc, head, "pk_defdoc1", "");
                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_defdoc10", "");
                CreateNode(xmlDoc, head, "pk_defdoc1h", "");
                CreateNode(xmlDoc, head, "pk_defdoc2h", "");
                CreateNode(xmlDoc, head, "pk_defdoc3h", "");
                CreateNode(xmlDoc, head, "pk_defdoc4h", "");
                CreateNode(xmlDoc, head, "pk_defdoc5h", "");
                CreateNode(xmlDoc, head, "pk_defdoc6h", "");
                CreateNode(xmlDoc, head, "pk_defdoc7h", "");
                CreateNode(xmlDoc, head, "pk_defdoc8h", "");
                CreateNode(xmlDoc, head, "pk_defdoc9h", "");
                CreateNode(xmlDoc, head, "pk_defdoc10h", "");
                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_defdoc20", "");
                CreateNode(xmlDoc, head, "pk_defdoc11h", "");
                CreateNode(xmlDoc, head, "pk_defdoc12h", "");
                CreateNode(xmlDoc, head, "pk_defdoc13h", "");
                CreateNode(xmlDoc, head, "pk_defdoc14h", "");
                CreateNode(xmlDoc, head, "pk_defdoc15h", "");
                CreateNode(xmlDoc, head, "pk_defdoc16h", "");
                CreateNode(xmlDoc, head, "pk_defdoc17h", "");
                CreateNode(xmlDoc, head, "pk_defdoc18h", "");
                CreateNode(xmlDoc, head, "pk_defdoc19h", "");
                CreateNode(xmlDoc, head, "pk_defdoc20h", "");
                CreateNode(xmlDoc, head, "vuserdef1h", "");
                CreateNode(xmlDoc, head, "vuserdef2h", "");
                CreateNode(xmlDoc, head, "vuserdef3h", "");
                CreateNode(xmlDoc, head, "vuserdef4h", "");
                CreateNode(xmlDoc, head, "vuserdef5h", "");
                CreateNode(xmlDoc, head, "vuserdef6h", "");
                CreateNode(xmlDoc, head, "vuserdef7h", "");
                CreateNode(xmlDoc, head, "vuserdef8h", "");
                CreateNode(xmlDoc, head, "vuserdef9h", "");
                CreateNode(xmlDoc, head, "vuserdef10h", "");
                CreateNode(xmlDoc, head, "cauditorid", "");
                CreateNode(xmlDoc, head, "cauditorname", "");
                CreateNode(xmlDoc, head, "coperatorid", mod_TS_USER.C_ID);      //制单人
                CreateNode(xmlDoc, head, "coperatorname", mod_TS_USER.C_NAME);  //制单人名称
                CreateNode(xmlDoc, head, "vadjuster", "");
                CreateNode(xmlDoc, head, "vadjustername", "");
                CreateNode(xmlDoc, head, "coperatoridnow", "");
                CreateNode(xmlDoc, head, "ctjname", "");
                CreateNode(xmlDoc, head, "pk_calbody_in", "1001NC10000000000669");
                CreateNode(xmlDoc, head, "pk_calbody_out", "1001NC10000000000669");
                CreateNode(xmlDoc, head, "vcalbody_inname", "邢钢库存组织");
                CreateNode(xmlDoc, head, "vcalbody_outname", "邢钢库存组织");
                CreateNode(xmlDoc, head, "ts", DateTime.Now.ToString());
                CreateNode(xmlDoc, head, "timestamp", "");      //?
                CreateNode(xmlDoc, head, "headts", DateTime.Now.ToString());
                CreateNode(xmlDoc, head, "isforeignstor_in", "N");
                CreateNode(xmlDoc, head, "isgathersettle_in", "N");
                CreateNode(xmlDoc, head, "isforeignstor_out", "N");
                CreateNode(xmlDoc, head, "isgathersettle_out", "N");
                CreateNode(xmlDoc, head, "icheckmode", "");
                CreateNode(xmlDoc, head, "fassistantflag", "N");        //是否计算期间业务量
                CreateNode(xmlDoc, head, "fbillflag", "");
                CreateNode(xmlDoc, head, "vostatus", "");
                CreateNode(xmlDoc, head, "iprintcount", "");
                CreateNode(xmlDoc, head, "clastmodiid", mod_TS_USER.C_ID);          //最后修改人
                CreateNode(xmlDoc, head, "clastmodiname", mod_TS_USER.C_NAME);      //最后修改人名称
                CreateNode(xmlDoc, head, "tlastmoditime", DateTime.Now.ToString()); //最后修改时间
                CreateNode(xmlDoc, head, "cnxtbilltypecode", "4I");
                CreateNode(xmlDoc, head, "cspecialhid", "");

                #endregion
                bill.AppendChild(head);
                XmlElement body = xmlDoc.CreateElement("bill_body");
                bill.AppendChild(body);

                XmlNode item = xmlDoc.CreateNode(XmlNodeType.Element, "item", null);
                #region                                                                  //表体_item
                CreateNode(xmlDoc, item, "csourcetypename", "");
                CreateNode(xmlDoc, item, "cinvbasid", mod_TB_MATRL_MAIN.C_PK_INVBASDOC); //来源单据号
                CreateNode(xmlDoc, item, "pk_invbasdoc", mod_TB_MATRL_MAIN.C_PK_INVBASDOC);
                CreateNode(xmlDoc, item, "fixedflag", "N");
                CreateNode(xmlDoc, item, "bgssl", "");
                CreateNode(xmlDoc, item, "castunitid", mod_TB_MATRL_MAIN.C_FJLDW);      //辅计量单位ID
                CreateNode(xmlDoc, item, "castunitname", mod_TB_MATRL_MAIN.C_FJLDWMC);
                CreateNode(xmlDoc, item, "cinventorycode", mod_TB_MATRL_MAIN.C_MAT_CODE);
                CreateNode(xmlDoc, item, "cinventoryid", mod_TB_MATRL_MAIN.C_PK_INVMANDOC);     //存货ID
                CreateNode(xmlDoc, item, "cinvmanid", mod_TB_MATRL_MAIN.C_PK_INVBASDOC);
                CreateNode(xmlDoc, item, "isLotMgt", "1");
                CreateNode(xmlDoc, item, "isSerialMgt", "0");
                CreateNode(xmlDoc, item, "isValidateMgt", "0");
                CreateNode(xmlDoc, item, "isAstUOMmgt", "1");
                CreateNode(xmlDoc, item, "isFreeItemMgt", "1");
                CreateNode(xmlDoc, item, "isSet", "0");
                CreateNode(xmlDoc, item, "standStoreUOM", "");
                CreateNode(xmlDoc, item, "defaultAstUOM", mod_TB_MATRL_MAIN.C_FJLDW);
                CreateNode(xmlDoc, item, "isSellProxy", "0");
                CreateNode(xmlDoc, item, "qualityDay", "");
                CreateNode(xmlDoc, item, "invReservedPty", "");
                CreateNode(xmlDoc, item, "isSolidConvRate", "0");
                CreateNode(xmlDoc, item, "islotmgt", "1");
                CreateNode(xmlDoc, item, "isserialmgt", "0");
                CreateNode(xmlDoc, item, "isvalidatemgt", "0");
                CreateNode(xmlDoc, item, "isastuommgt", "1");
                CreateNode(xmlDoc, item, "isfreeitemmgt", "1");
                CreateNode(xmlDoc, item, "isset", "0");
                CreateNode(xmlDoc, item, "standstoreuom", "");
                CreateNode(xmlDoc, item, "defaultastuom", mod_TB_MATRL_MAIN.C_FJLDW);
                CreateNode(xmlDoc, item, "issellproxy", "0");
                CreateNode(xmlDoc, item, "qualityday", "");
                CreateNode(xmlDoc, item, "invreservedpty", "");
                CreateNode(xmlDoc, item, "issolidconvrate", "0");
                CreateNode(xmlDoc, item, "csourcebillbid", "");
                CreateNode(xmlDoc, item, "csourcebillhid", "");
                CreateNode(xmlDoc, item, "csourcetype", "");
                CreateNode(xmlDoc, item, "cspaceid", C_SLABWH_LOC_NC_ID);
                CreateNode(xmlDoc, item, "cspacecode", C_SLABWH_LOC_NC_CODE);
                CreateNode(xmlDoc, item, "cspacename", C_SLABWH_LOC_NC_NAME);
                CreateNode(xmlDoc, item, "cspecialhid", "");    //???
                CreateNode(xmlDoc, item, "cwarehouseid", "");
                CreateNode(xmlDoc, item, "cwarehousename", "");
                CreateNode(xmlDoc, item, "isLocatorMgt", "");
                CreateNode(xmlDoc, item, "isWasteWh", "");
                CreateNode(xmlDoc, item, "whreservedpty", "");
                CreateNode(xmlDoc, item, "islocatormgt", "");
                CreateNode(xmlDoc, item, "iswastewh", "");
                CreateNode(xmlDoc, item, "whreservedpty", "");
                CreateNode(xmlDoc, item, "cyfsl", "");
                CreateNode(xmlDoc, item, "cysl", "");
                CreateNode(xmlDoc, item, "desl", "");
                CreateNode(xmlDoc, item, "dshldtransnum", dr["wgt"].ToString());        //应转数量
                CreateNode(xmlDoc, item, "dvalidate", "");
                CreateNode(xmlDoc, item, "fbillrowflag", "");
                CreateNode(xmlDoc, item, "hlzl", "");
                CreateNode(xmlDoc, item, "hsl", Math.Round(Convert.ToDouble(dr["wgt"]) / Convert.ToDouble(dr["qua"]), 6).ToString()); //换算率
                CreateNode(xmlDoc, item, "invname", mod_TB_MATRL_MAIN.C_MAT_NAME);                                                    //物料名称
                CreateNode(xmlDoc, item, "invspec", dr["C_SPEC"].ToString());                                                         //规格
                CreateNode(xmlDoc, item, "invtype", dr["C_STL_GRD"].ToString());                                                      //钢种
                CreateNode(xmlDoc, item, "je", "");
                CreateNode(xmlDoc, item, "jhdj", "");
                CreateNode(xmlDoc, item, "jhje", "");
                CreateNode(xmlDoc, item, "jhpdzq", "");
                CreateNode(xmlDoc, item, "measdocname", mod_TB_MATRL_MAIN.C_ZJLDWMC);   //计量单位名称
                CreateNode(xmlDoc, item, "naccountastnum", "");
                CreateNode(xmlDoc, item, "naccountnum", "");
                CreateNode(xmlDoc, item, "nadjustastnum", "");
                CreateNode(xmlDoc, item, "nadjustnum", "");
                CreateNode(xmlDoc, item, "ncheckastnum", "");
                CreateNode(xmlDoc, item, "nchecknum", "");
                CreateNode(xmlDoc, item, "nprice", "");
                CreateNode(xmlDoc, item, "nmny", "");
                CreateNode(xmlDoc, item, "nplannedmny", "");                            //计划金额
                CreateNode(xmlDoc, item, "nplannedprice", "");                          //计划单价
                CreateNode(xmlDoc, item, "nshldtransastnum", dr["qua"].ToString());     //应转数量
                CreateNode(xmlDoc, item, "pk_measdoc", mod_TB_MATRL_MAIN.C_PK_MEASDOC); //主计量单位
                CreateNode(xmlDoc, item, "scrq", djrq);                                 //生产日期
                CreateNode(xmlDoc, item, "sjpdzq", "");
                string vbatchcode = "";
                if (dr["C_BATCH_NO"].ToString() != "")
                {
                    vbatchcode = dr["C_BATCH_NO"].ToString();
                }
                else
                {
                    vbatchcode = dr["C_STOVE"].ToString();
                }
                CreateNode(xmlDoc, item, "vbatchcode", vbatchcode); //炉号
                CreateNode(xmlDoc, item, "vfree0", "");             //?
                CreateNode(xmlDoc, item, "vfree1", modSms.C_ZYX1);  //自由项1
                CreateNode(xmlDoc, item, "vfree2", modSms.C_ZYX2);  //自由项2
                CreateNode(xmlDoc, item, "vfree3", "");             //包装要求
                CreateNode(xmlDoc, item, "vfree4", "");
                CreateNode(xmlDoc, item, "vfree5", "");
                CreateNode(xmlDoc, item, "vfree6", "");
                CreateNode(xmlDoc, item, "vfree7", "");
                CreateNode(xmlDoc, item, "vfree8", "");
                CreateNode(xmlDoc, item, "vfree9", "");
                CreateNode(xmlDoc, item, "vfree10", "");
                CreateNode(xmlDoc, item, "vfreename1", "");     //?
                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, "vfreename10", "");
                CreateNode(xmlDoc, item, "vsourcebillcode", "");
                CreateNode(xmlDoc, item, "vuserdef1", "");
                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", "");
                CreateNode(xmlDoc, item, "vuserdef10", dhid);   //自定义项
                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, "vuserdef20", "");
                CreateNode(xmlDoc, item, "pk_defdoc1", "");
                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_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_defdoc20", "");
                CreateNode(xmlDoc, item, "yy", "");
                CreateNode(xmlDoc, item, "ztsl", "");
                CreateNode(xmlDoc, item, "bkxcl", "");
                CreateNode(xmlDoc, item, "chzl", "");
                CreateNode(xmlDoc, item, "neconomicnum", "");
                CreateNode(xmlDoc, item, "nmaxstocknum", "");
                CreateNode(xmlDoc, item, "nminstocknum", dr["qua"].ToString());   //?
                CreateNode(xmlDoc, item, "norderpointnum", dr["wgt"].ToString()); //?
                CreateNode(xmlDoc, item, "xczl", "");
                CreateNode(xmlDoc, item, "nsafestocknum", "");
                CreateNode(xmlDoc, item, "fbillflag", "");
                CreateNode(xmlDoc, item, "vfreeid1", "");       //?
                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, "vfreeid10", "");
                CreateNode(xmlDoc, item, "discountflag", "N");
                CreateNode(xmlDoc, item, "laborflag", "N");
                CreateNode(xmlDoc, item, "childsnum", "");
                CreateNode(xmlDoc, item, "invsetparttype", "");
                CreateNode(xmlDoc, item, "partpercent", "");
                CreateNode(xmlDoc, item, "vnote", "");
                CreateNode(xmlDoc, item, "vbodynote", "");
                CreateNode(xmlDoc, item, "ccorrespondtypename", "");
                CreateNode(xmlDoc, item, "cfirstbillbid", "");
                CreateNode(xmlDoc, item, "cfirstbillhid", "");
                CreateNode(xmlDoc, item, "cfirsttypename", "");
                CreateNode(xmlDoc, item, "cfirsttype", "");
                CreateNode(xmlDoc, item, "csourcetypename", "");
                CreateNode(xmlDoc, item, "pk_calbody", "");
                CreateNode(xmlDoc, item, "vcalbodyname", "");
                CreateNode(xmlDoc, item, "ts", DateTime.Now.ToString());     //?
                CreateNode(xmlDoc, item, "timestamp", "");                   //?
                CreateNode(xmlDoc, item, "bodyts", DateTime.Now.ToString()); //?
                CreateNode(xmlDoc, item, "crowno", "1");                     //行号???
                CreateNode(xmlDoc, item, "nperiodastnum", "");               //期间业务辅数量
                CreateNode(xmlDoc, item, "nperiodnum", "");                  //期间业务数量
                CreateNode(xmlDoc, item, "isforeignstor", "N");
                CreateNode(xmlDoc, item, "isgathersettle", "N");
                CreateNode(xmlDoc, item, "csortrowno", "");
                CreateNode(xmlDoc, item, "cvendorid", "");
                CreateNode(xmlDoc, item, "cvendorname", "");
                CreateNode(xmlDoc, item, "pk_cubasdoc", "");
                CreateNode(xmlDoc, item, "pk_corp", "1001");    //公司ID
                CreateNode(xmlDoc, item, "tbatchtime", "");     //组坯时间
                CreateNode(xmlDoc, item, "dproducedate", "");
                CreateNode(xmlDoc, item, "dvalidate", "");
                CreateNode(xmlDoc, item, "vvendbatchcode", "");
                CreateNode(xmlDoc, item, "qualitymanflag", "");
                CreateNode(xmlDoc, item, "qualitydaynum", "");
                CreateNode(xmlDoc, item, "cqualitylevelid", mod_TQB_CHECKSTATE.C_ID); //质量等级主键
                CreateNode(xmlDoc, item, "vnote", "");
                CreateNode(xmlDoc, item, "tchecktime", "");                           //打牌时间
                CreateNode(xmlDoc, item, "vdef1", "");
                CreateNode(xmlDoc, item, "vdef2", "");
                CreateNode(xmlDoc, item, "vdef3", "");
                CreateNode(xmlDoc, item, "vdef4", "");
                CreateNode(xmlDoc, item, "vdef5", "");
                CreateNode(xmlDoc, item, "vdef6", "");
                CreateNode(xmlDoc, item, "vdef7", "");
                CreateNode(xmlDoc, item, "vdef8", "");
                CreateNode(xmlDoc, item, "vdef9", "");
                CreateNode(xmlDoc, item, "vdef10", "");
                CreateNode(xmlDoc, item, "vdef11", "");
                CreateNode(xmlDoc, item, "vdef12", "");
                CreateNode(xmlDoc, item, "vdef13", "");
                CreateNode(xmlDoc, item, "vdef14", "");
                CreateNode(xmlDoc, item, "vdef15", "");
                CreateNode(xmlDoc, item, "vdef16", "");
                CreateNode(xmlDoc, item, "vdef17", "");
                CreateNode(xmlDoc, item, "vdef18", "");
                CreateNode(xmlDoc, item, "vdef19", "");
                CreateNode(xmlDoc, item, "vdef20", "");
                CreateNode(xmlDoc, item, "naccountgrsnum", "");
                CreateNode(xmlDoc, item, "ncheckgrsnum", "");
                CreateNode(xmlDoc, item, "nadjustgrsnum", "");
                CreateNode(xmlDoc, item, "nshldtransgrsnum", "");
                CreateNode(xmlDoc, item, "cspecialbid", "");                                         //?
                CreateNode(xmlDoc, item, "vbatchcode_temp", "");                                     //?
                CreateNode(xmlDoc, item, "cqualitylevelname", mod_TQB_CHECKSTATE.C_CHECKSTATE_NAME); //?
                CreateNode(xmlDoc, item, "vdef1", "");                                               //?
                CreateNode(xmlDoc, item, "vdef2", "");                                               //?
                CreateNode(xmlDoc, item, "vdef3", "");                                               //?
                #endregion
                body.AppendChild(item);


                xmlDoc.Save(url + "\\" + urlname);

                List <string> parem = SendNC.SendXML(url + "\\" + urlname);
                //parem.Add(dayplcode);
                //parem.Add(empID);
                //parem.Add("发运单");

                //日志
                //AddLog(parem);

                if (parem[0] == "1")
                {
                    return("1");
                }
                else
                {
                    return(parem[1].ToString());
                }
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }
        }
Exemplo n.º 23
0
        /// <summary>
        /// 发送入库实绩给NC
        /// </summary>
        /// <param name="xmlFileName">xml完整路径</param>
        /// <param name="c_stove">炉号</param>
        /// <param name="user_id">操作人员</param>
        /// <returns></returns>
        public bool SendXml_SLAB_46(string xmlFileName, string c_stove, string user_id)
        {
            try
            {
                string urlname = "GPRK" + c_stove + ".XML";//XML名称

                string url = xmlFileName + "\\NCXML";
                if (!Directory.Exists(url))
                {
                    Directory.CreateDirectory(url);
                }
                DataTable          dt             = dal_slab_mes.GetList("", "", c_stove, "", "全部").Tables[0];
                Mod_TSC_SLAB_MAIN  mod_slab_main  = dal_slab_main.GetModel_Stove_Trans(c_stove);                                          //钢坯实绩
                Mod_TB_MATRL_MAIN  mod_mater_main = dal_mater_main.GetModel(mod_slab_main.C_MAT_CODE);                                    //物料主表
                Mod_TS_USER        mod_ts_user    = dal_user.GetModel(user_id);                                                           //用户主表
                Mod_TPB_SLABWH     mod_SLABWH     = dal_slabwh.GetModel_Interface(mod_slab_main.C_SLABWH_CODE);                           //库存表
                Mod_TB_STD_CONFIG  mod_std_config = dal_std_config.GetModel_Interface(mod_slab_main.C_STD_CODE, mod_slab_main.C_STL_GRD); // 自由项
                Mod_TMO_ORDER      mod_tmo_order  = dal_tmo_order.GetModelByORDERNO(mod_slab_main.C_ORD_NO);                              //订单池
                Mod_TQB_CHECKSTATE mod_checkstate = dal_checkstate.GetModelByName(mod_slab_main.C_JUDGE_LEV_ZH, mod_tmo_order.C_XGID);    //判定等级
                DateTime           dt_time        = Convert.ToDateTime(mod_slab_main.D_WE_DATE.ToString());
                if (dt == null)
                {
                    return(false);
                }
                if (mod_slab_main == null)
                {
                    return(false);
                }
                if (mod_mater_main == null)
                {
                    return(false);
                }
                if (mod_ts_user == null)
                {
                    return(false);
                }
                if (mod_SLABWH == null)
                {
                    return(false);
                }
                if (mod_std_config == null)
                {
                    return(false);
                }
                if (mod_tmo_order == null)
                {
                    return(false);
                }
                if (mod_checkstate == null)
                {
                    return(false);
                }

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

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

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

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

                #region                                                    //表头_order_head
                CreateNode(xmlDoc, head, "cwarehouseid", mod_SLABWH.C_ID); //仓库ID
                #endregion

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

                XmlNode item = xmlDoc.CreateNode(XmlNodeType.Element, "item", null);
                #region                                                                       //表体_item
                CreateNode(xmlDoc, item, "cwarehouseid", mod_SLABWH.C_ID);                    //仓库ID
                CreateNode(xmlDoc, item, "taccounttime", mod_slab_main.D_WE_DATE.ToString()); //库房签字时间
                CreateNode(xmlDoc, item, "coperatorid", mod_ts_user.C_ID);                    //制单人
                CreateNode(xmlDoc, item, "ccheckstate_bid", mod_checkstate.C_ID);             //质量等级
                CreateNode(xmlDoc, item, "cworkcenterid", dt.Rows[0]["连铸主键"].ToString());     //工作中心主键/连铸机号
                CreateNode(xmlDoc, item, "dbizdate", dt_time.ToString("yyyy-MM-dd"));         //业务日期
                CreateNode(xmlDoc, item, "vbatchcode", mod_slab_main.C_STOVE);                //批次号
                CreateNode(xmlDoc, item, "cinvbasid", mod_mater_main.C_PK_INVBASDOC);         //存货基本ID
                CreateNode(xmlDoc, item, "pk_produce", "");                                   //介质物料PK
                CreateNode(xmlDoc, item, "ninnum", dt.Rows[0]["重量"].ToString());              //实入数量-重量
                CreateNode(xmlDoc, item, "ninassistnum", dt.Rows[0]["支数"].ToString());        //实入辅数量-件数
                CreateNode(xmlDoc, item, "castunitid", mod_mater_main.C_FJLDW);               //辅计量单位ID
                CreateNode(xmlDoc, item, "vfree1", mod_std_config.C_ZYX1);                    //自由项1
                CreateNode(xmlDoc, item, "vfree2", mod_std_config.C_ZYX2);                    //自由项2
                CreateNode(xmlDoc, item, "vfree3", "");                                       //自由项3
                CreateNode(xmlDoc, item, "vfree4", "");                                       //自由项4
                CreateNode(xmlDoc, item, "vfree5", "");                                       //自由项5
                CreateNode(xmlDoc, item, "pk_corp", "");                                      //公司
                CreateNode(xmlDoc, item, "gcbm", "");                                         //工厂

                #endregion

                body.AppendChild(item);


                xmlDoc.Save(url + "\\" + urlname);
                List <string> parem = dalSendNC.SendXML(url + "\\" + urlname);

                if (parem[0] == "1")
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch
            {
                return(false);
            }
        }