Example #1
0
    //�õ����鹤��ֵ��
    /// <summary>
    /// �õ����鹤��ֵ��
    /// </summary>
    /// <param name="a">�ڼ������� ��1��</param>
    /// <param name="xmlfile">����xml</param>
    /// <returns>���鹤��ֵ��</returns>
    public static S_Gongxu_Jianyan_Value GetGongxu_Jianyan_Value(int a,string xmlfile)
    {
        S_Gongxu_Jianyan_Value s_value = new S_Gongxu_Jianyan_Value();
        s_value.WGJCs = new List<string>(0);
        s_value.CCJCs = new List<S_CCJC>(0);
        s_value.JSTJs = new List<S_JSTJ>(0);
        s_value.FZs = new List<string>(0);
        try
        {

            XmlDocument mydoc = new XmlDocument();
            mydoc.Load(xmlfile);
            string path = "/SYS_3DPPM/Gongyi/Gongxu[" + a.ToString() + "]";
            XmlElement xe = (XmlElement)mydoc.SelectSingleNode(path);
            if (xe.GetAttribute("Type") != E_GongyiNodeType.Gongxu_Jianyan.ToString())
            {
                NXFun.MessageBox("��ѯ������������ʵ���Ͳ�ƥ�䣡");
                return s_value;
            }
            XmlElement infor = xe.SelectSingleNode("Information") as XmlElement;
            //��������
            s_value.gongxuhao = infor.GetAttribute("gongxuhao");
            s_value.gongxumingcheng = infor.GetAttribute("gongxumingcheng");
            s_value.shebei = infor.GetAttribute("shebei");
            s_value.jiamoju = infor.GetAttribute("jiamoju");
            s_value.jizhun = infor.GetAttribute("jizhun");
            s_value.yingdu = infor.GetAttribute("yingdu");
            s_value.lingjianjiaofu = infor.GetAttribute("lingjianjiaofu");
            s_value.zhuangjishiyong = infor.GetAttribute("zhuangjishiyong");
            s_value.guanjiangongxu = NXFun.string2bool(infor.GetAttribute("guanjiangongxu"));
            //��ۼ��
            XmlNodeList wgjc_nodes = infor.SelectNodes("WGJC/wgjc");
            foreach (XmlElement wgjc_node in wgjc_nodes)
            {
                s_value.WGJCs.Add(wgjc_node.GetAttribute("neirong"));
            }
            //�ߴ���
            XmlNodeList ccjc_nodes = infor.SelectNodes("CCJC/ccjc");
            foreach (XmlElement ccjc_node in ccjc_nodes)
            {
                S_CCJC s_ccjc = new S_CCJC();
                s_ccjc.neirong = ccjc_node.GetAttribute("neirong");
                s_ccjc.liangju = ccjc_node.GetAttribute("liangju");
                s_ccjc.beizhu = ccjc_node.GetAttribute("beizhu");
                s_value.CCJCs.Add(s_ccjc);
            }
            //��������
            XmlNodeList jstj_nodes = infor.SelectNodes("JSTJ/jstj");
            foreach (XmlElement jstj_node in jstj_nodes)
            {
                S_JSTJ s_jstj = new S_JSTJ();
                s_jstj.neirong = jstj_node.GetAttribute("neirong");
                s_jstj.liangju = jstj_node.GetAttribute("liangju");
                s_jstj.beizhu = jstj_node.GetAttribute("beizhu");
                s_value.JSTJs.Add(s_jstj);
            }
            //��ע
            XmlNodeList fz_nodes = infor.SelectNodes("FZ/fz");
            foreach (XmlElement fz_node in fz_nodes)
            {
                s_value.FZs.Add(fz_node.GetAttribute("neirong"));
            }
            return s_value;
        }
        catch (System.Exception ex)
        {
            NXFun.MessageBox(ex.Message);
            return s_value;
        }
    }
Example #2
0
 //更新数据
 /// <summary>
 /// 更新数据
 /// </summary>
 /// <param name="isRead">是从xml读还是写入xml</param>
 /// <param name="index_a">第几个工序,从1起</param>
 public void UpdateData(bool isRead, int index_a)
 {
     if (isRead)
     {
         //读xml到控件
         s_value = XML3DPPM.GetGongxu_Jianyan_Value(index_a, XmlFile);
         //工序属性
         dgvGXSX[1, 0].Value = s_value.gongxuhao;
         dgvGXSX[1, 1].Value = s_value.gongxumingcheng;
         dgvGXSX[1, 2].Value = s_value.shebei;
         dgvGXSX[1, 3].Value = s_value.jiamoju;
         dgvGXSX[1, 4].Value = s_value.jizhun;
         dgvGXSX[1, 5].Value = s_value.yingdu;
         dgvGXSX[1, 6].Value = s_value.lingjianjiaofu;
         dgvGXSX[1, 7].Value = s_value.zhuangjishiyong;
         chkGJGX.CheckState = s_value.guanjiangongxu ? CheckState.Checked : CheckState.Unchecked;
         //外观检查
         dgvWGJC.Rows.Clear();
         for (int i = 0; i < s_value.WGJCs.Count; i++)
         {
             dgvWGJC.Rows.Add();
             dgvWGJC[1, i].Value = s_value.WGJCs[i];
         }
         //尺寸检查
         dgvCCJC.Rows.Clear();
         for (int i = 0; i < s_value.CCJCs.Count; i++)
         {
             dgvCCJC.Rows.Add();
             dgvCCJC[1, i].Value = s_value.CCJCs[i].neirong;
             dgvCCJC[2, i].Value = s_value.CCJCs[i].liangju;
             dgvCCJC[3, i].Value = s_value.CCJCs[i].beizhu;
         }
         //技术条件
         dgvJSTJ.Rows.Clear();
         for (int i = 0; i < s_value.JSTJs.Count; i++)
         {
             dgvJSTJ.Rows.Add();
             dgvJSTJ[1, i].Value = s_value.JSTJs[i].neirong;
             dgvJSTJ[2, i].Value = s_value.JSTJs[i].liangju;
             dgvJSTJ[3, i].Value = s_value.JSTJs[i].beizhu;
         }
         //附注
         dgvFZ.Rows.Clear();
         for (int i = 0; i < s_value.FZs.Count; i++)
         {
             dgvFZ.Rows.Add();
             dgvFZ[1, i].Value = s_value.FZs[i];
         }
     }
     else
     {
         //写入xml
         s_value = new S_Gongxu_Jianyan_Value();
         s_value.WGJCs = new List<string>(0);
         s_value.CCJCs = new List<S_CCJC>(0);
         s_value.JSTJs = new List<S_JSTJ>(0);
         s_value.FZs = new List<string>(0);
         //工序属性
         dgvGXSX.EndEdit();
         s_value.gongxuhao = (string)dgvGXSX[1, 0].Value;
         s_value.gongxumingcheng = (string)dgvGXSX[1, 1].Value;
         s_value.shebei = (string)dgvGXSX[1, 2].Value;
         s_value.jiamoju = (string)dgvGXSX[1, 3].Value;
         s_value.jizhun = (string)dgvGXSX[1, 4].Value;
         s_value.yingdu = (string)dgvGXSX[1, 5].Value;
         s_value.lingjianjiaofu = (string)dgvGXSX[1, 6].Value;
         s_value.zhuangjishiyong = (string)dgvGXSX[1, 7].Value;
         s_value.guanjiangongxu = chkGJGX.CheckState == CheckState.Checked;
         //外观检查
         dgvWGJC.EndEdit();
         foreach (DataGridViewRow row in dgvWGJC.Rows)
         {
             if (!row.IsNewRow)
             {
                 s_value.WGJCs.Add((string)row.Cells[1].Value);
             }
         }
         //尺寸检查
         dgvCCJC.EndEdit();
         S_CCJC s_ccjc = new S_CCJC();
         foreach (DataGridViewRow row in dgvCCJC.Rows)
         {
             if (!row.IsNewRow)
             {
                 s_ccjc.neirong = (string)row.Cells[1].Value;
                 s_ccjc.liangju = (string)row.Cells[2].Value;
                 s_ccjc.beizhu = (string)row.Cells[3].Value;
                 s_value.CCJCs.Add(s_ccjc);
             }
         }
         //技术条件
         dgvJSTJ.EndEdit();
         S_JSTJ s_jstj = new S_JSTJ();
         foreach (DataGridViewRow row in dgvJSTJ.Rows)
         {
             if (!row.IsNewRow)
             {
                 s_jstj.neirong = (string)row.Cells[1].Value;
                 s_jstj.liangju = (string)row.Cells[2].Value;
                 s_jstj.beizhu = (string)row.Cells[3].Value;
                 s_value.JSTJs.Add(s_jstj);
             }
         }
         //附注
         dgvFZ.EndEdit();
         foreach (DataGridViewRow row in dgvFZ.Rows)
         {
             if (!row.IsNewRow)
             {
                 s_value.FZs.Add((string)row.Cells[1].Value);
             }
         }
         XML3DPPM.SetGongxu_Jianyan_Value(index_a, s_value, XmlFile);
     }
 }
Example #3
0
 // ���ü��鹤��ֵ��
 /// <summary>
 /// ���ü��鹤��ֵ��
 /// </summary>
 /// <param name="a"></param>
 /// <param name="s_value"></param>
 /// <param name="xmlfile"></param>
 /// <returns></returns>
 public static bool SetGongxu_Jianyan_Value(int a, S_Gongxu_Jianyan_Value s_value, string xmlfile)
 {
     try
     {
         XmlDocument mydoc = new XmlDocument();
         mydoc.Load(xmlfile);
         string path = "/SYS_3DPPM/Gongyi/Gongxu[" + a.ToString() + "]";
         XmlElement xe = (XmlElement)mydoc.SelectSingleNode(path);
         if (xe.GetAttribute("Type") != E_GongyiNodeType.Gongxu_Jianyan.ToString())
         {
             NXFun.MessageBox("�޸Ĺ�����������ʵ���Ͳ�ƥ�䣡");
             return false;
         }
         //��������
         XmlElement infor = xe.SelectSingleNode("Information") as XmlElement;
         infor.SetAttribute("gongxuhao", s_value.gongxuhao);
         infor.SetAttribute("gongxumingcheng", s_value.gongxumingcheng);
         infor.SetAttribute("shebei", s_value.shebei);
         infor.SetAttribute("jiamoju", s_value.jiamoju);
         infor.SetAttribute("jizhun", s_value.jizhun);
         infor.SetAttribute("yingdu", s_value.yingdu);
         infor.SetAttribute("lingjianjiaofu", s_value.lingjianjiaofu);
         infor.SetAttribute("zhuangjishiyong", s_value.zhuangjishiyong);
         infor.SetAttribute("guanjiangongxu", NXFun.bool2string(s_value.guanjiangongxu));
         //��ۼ��
         XmlNode wgjc_node = infor.SelectSingleNode("WGJC");
         if (wgjc_node != null)
         {
             infor.RemoveChild(wgjc_node);
         }
         wgjc_node = mydoc.CreateNode(XmlNodeType.Element, "WGJC", null);
         wgjc_node = infor.AppendChild(wgjc_node);
         foreach (string wgjc in s_value.WGJCs)
         {
             XmlNode wgjc_item = mydoc.CreateNode(XmlNodeType.Element, "wgjc", null);
             xe = wgjc_node.AppendChild(wgjc_item) as XmlElement;
             xe.SetAttribute("neirong", wgjc);
         }
         //�ߴ���
         XmlNode ccjc_node = infor.SelectSingleNode("CCJC");
         if (ccjc_node != null)
         {
             infor.RemoveChild(ccjc_node);
         }
         ccjc_node = mydoc.CreateNode(XmlNodeType.Element, "CCJC", null);
         ccjc_node = infor.AppendChild(ccjc_node);
         foreach (S_CCJC s_ccjc in s_value.CCJCs)
         {
             XmlNode ccjc_item = mydoc.CreateNode(XmlNodeType.Element, "ccjc", null);
             xe = ccjc_node.AppendChild(ccjc_item) as XmlElement;
             xe.SetAttribute("neirong", s_ccjc.neirong);
             xe.SetAttribute("liangju", s_ccjc.liangju);
             xe.SetAttribute("beizhu", s_ccjc.beizhu);
         }
         //��������
         XmlNode jstj_node = infor.SelectSingleNode("JSTJ");
         if (jstj_node != null)
         {
             infor.RemoveChild(jstj_node);
         }
         jstj_node = mydoc.CreateNode(XmlNodeType.Element, "JSTJ", null);
         jstj_node = infor.AppendChild(jstj_node);
         foreach (S_JSTJ s_jstj in s_value.JSTJs)
         {
             XmlNode jstj_item = mydoc.CreateNode(XmlNodeType.Element, "jstj", null);
             xe = jstj_node.AppendChild(jstj_item) as XmlElement;
             xe.SetAttribute("neirong", s_jstj.neirong);
             xe.SetAttribute("liangju", s_jstj.liangju);
             xe.SetAttribute("beizhu", s_jstj.beizhu);
         }
         //��ע
         XmlNode fz_node = infor.SelectSingleNode("FZ");
         if (fz_node != null)
         {
             infor.RemoveChild(fz_node);
         }
         fz_node = mydoc.CreateNode(XmlNodeType.Element, "FZ", null);
         fz_node = infor.AppendChild(fz_node);
         foreach (string fz in s_value.FZs)
         {
             XmlNode fz_item = mydoc.CreateNode(XmlNodeType.Element, "fz", null);
             xe = fz_node.AppendChild(fz_item) as XmlElement;
             xe.SetAttribute("neirong", fz);
         }
         mydoc.Save(xmlfile);
         return true;
     }
     catch (System.Exception ex)
     {
         NXFun.MessageBox(ex.Message);
         return false;
     }
 }