⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmremoveadd.cs

📁 人事管理系统的C#实现.比较完整.难得的代码
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Xml;

namespace HumanManage.HumanManage
{
    public partial class FrmRemoveAdd : Form
    {
        private static XmlDocument EmpMove = new XmlDocument();
        private static XmlDocument EmpInfo = new XmlDocument();
        private static XmlDocument EmpDept = new XmlDocument();
        private static XmlDocument EmpJop = new XmlDocument();
        public static string empSex = "";
        public FrmRemoveAdd()
        {
            InitializeComponent();
        }

        private void FrmRemoveAdd_Load(object sender, EventArgs e)
        {
            EmpInfo.Load("..\\..\\xmlAddEmp.xml");
            EmpDept.Load("..\\..\\xmlDept.xml");
            EmpJop.Load("..\\..\\xmlJop.xml");
            EmpMove.Load("..\\..\\xmlRemove.xml");
            XmlNodeList IdList = EmpInfo.SelectNodes("//新员工");
            foreach (XmlNode ID in IdList)
            {
                this.cmbIDs.Items.Add(ID.Attributes["员工编号"].Value);
            }
            
            //读取部门和职位列表
            XmlNode AllDept = EmpDept.SelectSingleNode("//部门");
            XmlNode AllJop = EmpJop.SelectSingleNode("//职位");
            for (int x = 0; x < AllDept.ChildNodes.Count; x++)
            {
                this.cmbNewDept.Items.Add(AllDept.ChildNodes[x].InnerText);
            }
            for (int y = 0; y < AllJop.ChildNodes.Count; y++)
            {
                this.cmbNewJop.Items.Add(AllJop.ChildNodes[y].InnerText);
            }
        }

        //选择编号后显示其他信息
        private void cmbIDs_SelectedIndexChanged(object sender, EventArgs e)
        {
            XmlNode Name = EmpInfo.SelectSingleNode("//新员工[@员工编号='" + cmbIDs.Text + "']");
            lblEmpName.Text = Name.ChildNodes[0].InnerText;
            empSex = Name.ChildNodes[1].InnerText;
            lblOldDept.Text = Name.ChildNodes[15].InnerText;
            lblOldJop.Text = Name.ChildNodes[18].InnerText;
        }

        /// <summary>
        /// 保存调动
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSave_Click(object sender, EventArgs e)
        {
            //获得具有[员工编号]属性的[员工]节点
            XmlNode MyEmpMove = EmpMove.SelectSingleNode("//员工调动[@员工编号='" + cmbIDs.Text + "']");
            if (MyEmpMove == null)
            {
                XmlDocumentFragment GOGO = EmpMove.CreateDocumentFragment();
                XmlElement GOEmp = EmpMove.CreateElement("员工调动");
                XmlAttribute MyAtt = EmpMove.CreateAttribute("员工编号");
                MyAtt.Value = cmbIDs.Text;
                GOEmp.SetAttributeNode(MyAtt);
                //创建一个<姓名>节点
                XmlElement Name = EmpMove.CreateElement("姓名");
                Name.InnerText = lblEmpName.Text;
                //创建一个<性别>节点
                XmlElement Sex = EmpMove.CreateElement("性别");
                Sex.InnerText = empSex;
                //创建一个<调后部门>节点
                XmlElement NewDept = EmpMove.CreateElement("调后部门");
                NewDept.InnerText = cmbNewDept.Text;
                //创建一个<调后职位>节点
                XmlElement NewJop = EmpMove.CreateElement("调后职位");
                NewJop.InnerText = cmbNewJop.Text;
                //创建一个<调前部门>节点
                XmlElement OldDept = EmpMove.CreateElement("调前部门");
                OldDept.InnerText = lblOldDept.Text;
                //创建一个<调前职位>节点
                XmlElement OldJop = EmpMove.CreateElement("调前职位");
                OldJop.InnerText = lblOldJop.Text;
                //创建一个<调动日期>节点
                XmlElement MoveTime = EmpMove.CreateElement("调动日期");
                MoveTime.InnerText = dateTimeMove.Text;
                //创建一个<调动原因>节点
                XmlElement MoveWhy = EmpMove.CreateElement("调动原因");
                MoveWhy.InnerText = txtMoveWhy.Text;
                //创建一个<备注信息>节点
                XmlElement MoveInfo = EmpMove.CreateElement("备注信息");
                MoveInfo.InnerText = txtInfos.Text;
                GOEmp.AppendChild(Name);
                GOEmp.AppendChild(Sex);
                GOEmp.AppendChild(NewDept);
                GOEmp.AppendChild(NewJop);
                GOEmp.AppendChild(OldDept);
                GOEmp.AppendChild(OldJop);
                GOEmp.AppendChild(MoveTime);
                GOEmp.AppendChild(MoveWhy);
                GOEmp.AppendChild(MoveInfo);
                GOGO.AppendChild(GOEmp);
                XmlNode Manage = EmpMove.SelectSingleNode("//人事管理");
                Manage.AppendChild(GOGO);
            }
            else
            {
                MyEmpMove.ChildNodes[2].InnerText = cmbNewDept.Text;
                MyEmpMove.ChildNodes[3].InnerText = cmbNewJop.Text;
                MyEmpMove.ChildNodes[4].InnerText = lblOldDept.Text;
                MyEmpMove.ChildNodes[5].InnerText = lblOldJop.Text;
                MyEmpMove.ChildNodes[6].InnerText = dateTimeMove.Text;
                MyEmpMove.ChildNodes[7].InnerText = txtMoveWhy.Text;
                MyEmpMove.ChildNodes[8].InnerText = txtInfos.Text;

            }
            
            //修改总信息的部门和职位
            XmlNode Information = EmpInfo.SelectSingleNode("//新员工[@员工编号='" + cmbIDs.Text + "']");
            Information.ChildNodes[15].InnerText = cmbNewDept.Text;
            Information.ChildNodes[18].InnerText = cmbNewJop.Text;
            EmpInfo.Save("..\\..\\xmlAddEmp.xml");
            EmpMove.Save("..\\..\\xmlRemove.xml");
        }

        private void btnAddDept_Click(object sender, EventArgs e)
        {
            FrmAddDept adddept = new FrmAddDept();
            adddept.Show();
        }

        private void btnExit_Click(object sender, EventArgs e)
        {
            this.Close();
        }
        
        /// <summary>
        /// 显示职位增加界面
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnAddJop_Click(object sender, EventArgs e)
        {
            FrmAddJop Jop = new FrmAddJop();
            Jop.Show();
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -