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

📄 f_manfile.cs

📁 根据企业对人事管理的要求
💻 CS
📖 第 1 页 / 共 4 页
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Data.OleDb;
using System.Data.SqlClient;


namespace PWMS.PerForm
{
    public partial class F_ManFile : Form
    {
        public F_ManFile()
        {
            InitializeComponent();
        }

        #region  当前窗体的所有共公变量
            DataClass.MyMeans MyDataClass = new PWMS.DataClass.MyMeans();
            ModuleClass.MyModule MyMC = new PWMS.ModuleClass.MyModule();
            public static DataSet MyDS_Grid;
            public static string tem_Field = "";
            public static string tem_Value = "";
            public static string tem_ID = "";
            public static int hold_n = 0;
            public static byte[] imgBytesIn;  //用来存储图片的二进制数
            public static int Ima_n = 0;  //判断是否对图片进行了操作
            public static string Part_ID = "";  //存储数据表的ID信息
        #endregion

        public void ShowData_Image(byte[] DI, PictureBox Ima)  //显示数据库图片
        {
            byte[] buffer = DI;
            MemoryStream ms = new MemoryStream(buffer);
            Ima.Image = Image.FromStream(ms);
        }

        #region  显示“职工基本信息”表中的指定记录
        /// <summary>
        /// 动态读取指定的记录行,并进行显示.
        /// </summary>
        /// <param name="DGrid">DataGridView控件</param>
        /// <returns>返回string对象</returns> 
        public string Grid_Inof(DataGridView DGrid)
        {
            byte[] pic; //定义一个字节数组
            //当DataGridView控件的记录>1时,将当前行中信息显示在相应的控件上
            if (DGrid.RowCount > 1) 
            {
                S_0.Text = DGrid[0, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_1.Text = DGrid[1, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_2.Text = Convert.ToString(DGrid[2, DGrid.CurrentCell.RowIndex].Value).Trim();
                S_3.Text = MyMC.Date_Format(Convert.ToString(DGrid[3, DGrid.CurrentCell.RowIndex].Value).Trim());
                S_4.Text = Convert.ToString(DGrid[4, DGrid.CurrentCell.RowIndex].Value).Trim();
                S_5.Text = DGrid[5, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_6.Text = DGrid[6, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_7.Text = DGrid[7, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_8.Text = DGrid[8, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_9.Text = DGrid[9, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_10.Text = MyMC.Date_Format(Convert.ToString(DGrid[10, DGrid.CurrentCell.RowIndex].Value).Trim());
                S_11.Text = Convert.ToString(DGrid[11, DGrid.CurrentCell.RowIndex].Value).Trim();
                S_12.Text = DGrid[12, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_13.Text = DGrid[13, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_14.Text = DGrid[14, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_15.Text = DGrid[15, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_16.Text = DGrid[16, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_17.Text = DGrid[17, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_18.Text = DGrid[18, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_19.Text = DGrid[19, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_20.Text = DGrid[20, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_21.Text = MyMC.Date_Format(Convert.ToString(DGrid[21, DGrid.CurrentCell.RowIndex].Value).Trim());
                S_22.Text = DGrid[22, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_23.Text = DGrid[24, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_24.Text = DGrid[25, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_25.Text = Convert.ToString(DGrid[26, DGrid.CurrentCell.RowIndex].Value).Trim();
                S_26.Text = DGrid[27, DGrid.CurrentCell.RowIndex].Value.ToString();
                S_27.Text = MyMC.Date_Format(Convert.ToString(DGrid[28, DGrid.CurrentCell.RowIndex].Value).Trim());
                S_28.Text = MyMC.Date_Format(Convert.ToString(DGrid[29, DGrid.CurrentCell.RowIndex].Value).Trim());
                S_29.Text = Convert.ToString(DGrid[30, DGrid.CurrentCell.RowIndex].Value).Trim();
                try
                {
                    //将数据库中的图片存入到字节数组中
                    pic = (byte[])(MyDS_Grid.Tables[0].Rows[DGrid.CurrentCell.RowIndex][23]);
                    MemoryStream ms = new MemoryStream(pic);			//将字节数组存入到二进制流中
                    S_Photo.Image = Image.FromStream(ms);   //二进制流Image控件中显示
                }
                catch { S_Photo.Image = null; } //当出现错误时,将Image控件清空
                tem_ID = S_0.Text.Trim();   //获取当前职伯编号
                return DGrid[1, DGrid.CurrentCell.RowIndex].Value.ToString();   //返回当前职工的姓名
            }
            else
            {
                //使用MyMeans公共类中的Clear_Control()方法清空指定控件集中的相应控件
                MyMC.Clear_Control(tabControl1.TabPages[0].Controls); 
                tem_ID = "";
                return "";
            }
        }
        #endregion

        #region  按条件显示“职工基本信息”表的内容
        /// <summary>
        /// 通过公共变量动态进行查询.
        /// </summary>
        /// <param name="C_Value">条件值</param>
        public void Condition_Lookup(string C_Value)
        {
            MyDS_Grid = MyDataClass.getDataSet("Select * from tb_Stuffbusic where " + tem_Field + "='" + tem_Value + "'", "tb_Stuffbusic");
            dataGridView1.DataSource = MyDS_Grid.Tables[0];
            textBox1.Text = Grid_Inof(dataGridView1);  //显示职工信息表的当前记录            
        }
        #endregion

        #region  将图片转换成字节数组
        public void Read_Image(OpenFileDialog openF, PictureBox MyImage)  //
        {
            openF.Filter = "*.jpg|*.jpg|*.bmp|*.bmp";   //指定OpenFileDialog控件打开的文件格式
            if (openF.ShowDialog(this) == DialogResult.OK)  //如果打开了图片文件
            {
                try
                {
                    MyImage.Image = System.Drawing.Image.FromFile(openF.FileName);  //将图片文件存入到PictureBox控件中
                    string strimg = openF.FileName.ToString();  //记录图片的所在路径
                    FileStream fs = new FileStream(strimg, FileMode.Open, FileAccess.Read); //将图片以文件流的形式进行保存
                    BinaryReader br = new BinaryReader(fs);
                    imgBytesIn = br.ReadBytes((int)fs.Length);  //将流读入到字节数组中
                }
                catch
                {
                    MessageBox.Show("您选择的图片不能被读取或文件类型不对!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    S_Photo.Image = null;
                }
            }
        }
        #endregion

        private void F_ManFile_Load(object sender, EventArgs e)
        {
            //用dataGridView1控件显示职工的名称
            MyDS_Grid = MyDataClass.getDataSet(DataClass.MyMeans.AllSql, "tb_Stuffbusic");
            dataGridView1.DataSource = MyDS_Grid.Tables[0];
            dataGridView1.AutoGenerateColumns = true;  //是否自动创建列
            dataGridView1.Columns[0].Width = 60;
            dataGridView1.Columns[1].Width = 80;
 
            for (int i = 2; i < dataGridView1.ColumnCount; i++)  //隐藏dataGridView1控件中不需要的列字段
            {
                dataGridView1.Columns[i].Visible = false;
            }

            MyMC.MaskedTextBox_Format(S_3);  //指定MaskedTextBox控件的格式
            MyMC.MaskedTextBox_Format(S_10);
            MyMC.MaskedTextBox_Format(S_21);
            MyMC.MaskedTextBox_Format(S_27);
            MyMC.MaskedTextBox_Format(S_28);

            MyMC.CoPassData(S_2, "tb_Folk");  //向“民族类别”列表框中添加信息
            MyMC.CoPassData(S_5, "tb_Kultur");  //向"文化程度”列表框中添加信息
            MyMC.CoPassData(S_8, "tb_Visage");  //向"正治面貌”列表框中添加信息
            MyMC.CoPassData(S_12, "tb_EmployeeGenre");  //向"职工类别”列表框中添加信息
            MyMC.CoPassData(S_13, "tb_Business");  //向"职务类别”列表框中添加信息
            MyMC.CoPassData(S_14, "tb_Laborage");  //向"工资类别”列表框中添加信息
            MyMC.CoPassData(S_15, "tb_Branch");  //向"部门类别”列表框中添加信息
            MyMC.CoPassData(S_16, "tb_Duthcall");  //向"职称类别”列表框中添加信息
            MyMC.CityInfo(S_23, "select distinct beaware from tb_City", 0);

            S_23.AutoCompleteMode = AutoCompleteMode.SuggestAppend;  //使S_BeAware控件具有查询功能
            S_23.AutoCompleteSource = AutoCompleteSource.ListItems;

            textBox1.Text = Grid_Inof(dataGridView1);  //显示职工信息表的首记录
            DataClass.MyMeans.AllSql = "Select * from tb_Stuffbusic";

        }

        private void Sut_Add_Click(object sender, EventArgs e)
        {
            MyMC.Clear_Control(tabControl1.TabPages[0].Controls);   //清空职工基本信息的相应文本框
            S_0.Text = MyMC.GetAutocoding("tb_Stuffbusic", "ID");  //自动添加编号
            hold_n = 1;  //用于记录添加操作的标识
            MyMC.Ena_Button(Sut_Add, Sut_Amend, Sut_Cancel, Sut_Save, 0, 0, 1, 1);
            groupBox5.Text = "当前正在添加信息";
            Img_Clear.Enabled = true;   //使图片选择按钮为可用状态
            Img_Save.Enabled = true;
        }

        private void S_BeAware_TextChanged(object sender, EventArgs e)
        {
            S_24.Items.Clear();
            MyMC.CityInfo(S_24, "select beaware,city from tb_City where beaware='" + S_23.Text.Trim() + "'", 1);
        }

        private void tabControl1_Click(object sender, EventArgs e)
        {
            groupBox5.Enabled = true;
            Sut_Delete.Enabled = true;
            MyMC.Ena_Button(Sut_Add, Sut_Amend, Sut_Cancel, Sut_Save, 1, 1, 0, 0);
            if (tabControl1.SelectedTab.Name == "tabPage1") //如果选择的是“职工基本信息”选项卡
            {
                hold_n = 0;  //恢复原始标识
                MyMC.Ena_Button(Sut_Add, Sut_Amend, Sut_Cancel, Sut_Save, 1, 1, 0, 0);  //
                groupBox5.Text = "";
                Ima_n = 0;//标识是否选择了职工照片
                Img_Clear.Enabled = false;  //使按钮为不可用状态
                Img_Save.Enabled = false;
                Sub_Table.Enabled = true;
            }
            //如果选择的是“工作简历”、“家庭关系”、“培训记录”和“奖惩记录”选项卡
            if (tabControl1.SelectedTab.Name == "tabPage2" | tabControl1.SelectedTab.Name == "tabPage3" | tabControl1.SelectedTab.Name == "tabPage4" | tabControl1.SelectedTab.Name == "tabPage5")
            {
                groupBox5.Enabled = false;  //使窗体中的操作按钮为不可用状态
                Sub_Table.Enabled = false;
                if (tabControl1.SelectedTab.Name == "tabPage2") //“工作简历”选项卡
                {
                    groupBox6.Parent = (TabPage)tabPage2;
                    MyMC.MaskedTextBox_Format(Word_2);  //指定MaskedTextBox控件的格式
                    MyMC.MaskedTextBox_Format(Word_3);
                }
                if (tabControl1.SelectedTab.Name == "tabPage3") //“家庭关系”选项卡
                {
                    groupBox6.Parent = (TabPage)tabPage3;
                    MyMC.MaskedTextBox_Format(Famity_4);
                    
                }
                if (tabControl1.SelectedTab.Name == "tabPage4") //“培训记录”选项卡
                {
                    groupBox6.Parent = (TabPage)tabPage4;
                    MyMC.MaskedTextBox_Format(TrainNote_3);
                    MyMC.MaskedTextBox_Format(TrainNote_4);
                }
                if (tabControl1.SelectedTab.Name == "tabPage5") //“奖惩记录”选项卡
                {
                    groupBox6.Parent = (TabPage)tabPage5;
                    MyMC.MaskedTextBox_Format(RANDP_3);
                    MyMC.MaskedTextBox_Format(RANDP_5);
                    MyMC.CoPassData(RANDP_2, "tb_RPKind");  //向“奖惩类别”列表框中添加信息
                }
                MyMC.Ena_Button(Part_Add, Part_Amend, Part_Cancel, Part_Save, 1, 1, 0, 0);
            }
            if (tabControl1.SelectedTab.Name == "tabPage6") //“个人简历”选项卡
            {
                MyMC.Ena_Button(Sut_Add, Sut_Amend, Sut_Cancel, Sut_Delete, 0, 0, 0, 0);    //使窗体中的操作按钮为不可用
                Sut_Save.Enabled = true;    //将窗体中的“保存”按钮设为可用状态
            }

        }

        private void comboBox1_TextChanged(object sender, EventArgs e)
        {
            switch (comboBox1.SelectedIndex)  //向comboBox2控件中添加相应的查询条件
            {
                case 0:
                    {

⌨️ 快捷键说明

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