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

📄 clsemployees.vb

📁 人事管理系统 在使用源程序前
💻 VB
字号:

Class ClsEmployees
    '1 Emp_Id  Int 员工编号
    '2 Emp_Name  Varchar 50  姓名
    '3 Photo Image 照片
    '4 Sex Char 2  性别
    '5 Nationality Varchar 40  民族
    Public Emp_Id As Integer
    Public Emp_Name As String
    Public Sex As String
    Public Nationality As String
    '6 Birth Varchar 20  生日
    '7 Political_Party Varchar 40  政治面貌
    '8 Culture_Level Varchar 40  文化程度
    '9 Marital_Condition Varchar 20  婚姻状况
    '10  Family_Place  Varchar 60  籍贯
    Public Birth As String
    Public Political_Party As String
    Public Culture_Level As String
    Public Marital_Condition As String
    Public Family_Place As String
    '11  Id_Card Varchar 20  身份证号
    '12  PcID  Varchar 40  档案电脑号
    '13  BadgeID Varchar 40  工作证号
    '14  Office_phone  Varchar 30  办公电话
    '15  Home_phone  Varchar 30  家庭电话
    Public Id_Card As String
    Public PcId As String
    Public BadgeID As String
    Public Office_phone As String
    Public Home_phone As String
    '16  Bp  Varchar 30  寻呼机号码
    '17  Mobile  Varchar 30  手机号码
    '18  Files_Keep_Org  Varchar 100 档案存放地
    '19  Residence Varchar 100 居住地址
    '20  Hukou Varchar 100 户口所在地
    Public Bp As String
    Public Mobile As String
    Public Files_Keep_Org As String
    Public Residence As String
    Public Hukou As String
    '21  Postcode  Varchar 10  邮政编码
    '22  Police_Post Varchar 50  户口所在地派出所
    '23  Street_Office Varchar 50  户口所在地街道办事处
    '24  HireDate  Varchar 10  本企业工龄起始日
    '25  Working_Years TinyInt 本企业工龄
    Public Postcode As String
    Public Police_Post As String
    Public Street_Office As String
    Public HireDate As String
    Public Working_Years As Short
    '26  Dep_Id  Smallint  所在部门编号
    '27  Position  Varchar 40  工作岗位
    '28  Title Varchar 20  职务
    '29  State TinyInt 员工状态(1 - 正式员工,2 - 兼职员工,3 - 离职员工,4 - 退休员工)
    '30  UpperId Int 上级部门编号
    Public Dep_Id As Short
    Public Position As String
    Public Title As String
    Public State As Short
    Public UpperId As Short
    '31  Contract_Sign_Date  Varchar 10  签订劳动合同日期
    '32  Base_Wage Decimal (10,2)  基本工资
    '33  Base_Prize  Decimal (10,2)  资金基数
    '34  Memo  Varchar 200 备注
    '35  Fillin_Person Smallint  填表人编号
    '36  Fillin_Time Varchar 20  填表时间(日期+时间)
    Public Contract_Sign_Date As String
    Public Base_Wage As Single
    Public Base_Prize As Single
    Public Memo As String
    Public Fillin_Person As String
    Public Fillin_Time As String

    Public Sub Init()
        Emp_Id = 0
        Emp_Name = ""
        Birth = ""
        Sex = ""
        Political_Party = ""
        Culture_Level = ""
        Marital_Condition = ""
        Family_Place = ""
        Id_Card = ""
        PcId = ""
        BadgeID = ""
        Office_phone = ""
        Home_phone = ""
        Bp = ""
        Mobile = ""
        Files_Keep_Org = ""
        Residence = ""
        Hukou = ""
        Postcode = ""
        Police_Post = ""
        Street_Office = ""
        HireDate = ""
        Working_Years = 0
        Dep_Id = -1
        Position = ""
        Title = ""
        State = 0
        UpperId = 0
        Contract_Sign_Date = ""
        Base_Wage = 0
        Base_Prize = 0
        Memo = ""
        Fillin_Person = CStr(-1)
        Fillin_Time = ""
    End Sub

    '删除Employees数据
    Public Sub Delete(ByVal TmpEmpId As Integer)
        Dim SQLString As String
        Dim MSG As String
        SQLString = "Delete FROM Employees WHERE Emp_Id=" & Trim(Str(TmpEmpId))
        ClsOperation.DBOperate(SQLString, MSG)
        MyFam.DeleteByEmpId((TmpEmpId))
        MyExp.DeleteByEmpId((TmpEmpId))
    End Sub

    Public Function GetName(ByVal TmpEmpId As Integer) As String
        Dim SQLString As String
        Dim MSG As String
        If TmpEmpId <= 0 Then
            GetName = ""
            Exit Function
        End If
        SQLString = "SELECT Emp_Name FROM Employees WHERE Emp_Id=" & Trim(Str(TmpEmpId))
        Dim DTable As DataTable = ClsOperation.DBOperate(SQLString, MSG)
        If DTable.Rows.Count < 1 Then
            GetName = ""
            Exit Function
        Else
            GetName = DTable.Rows(0)("Emp_Name")
        End If
    End Function

    Public Function GetInfo(ByVal TmpEmpId As Integer) As Boolean
        Dim SQLString As String
        Dim MSG As String
        If TmpEmpId <= 0 Then
            Init()
            GetInfo = False
            Exit Function
        End If
        Emp_Id = TmpEmpId
        SQLString = "SELECT * FROM Employees WHERE Emp_Id=" & Trim(Str(TmpEmpId))
        Dim DTable As DataTable = ClsOperation.DBOperate(SQLString, MSG)
        If DTable.Rows.Count < 1 Then
            GetInfo = False
            Exit Function
        Else

            Emp_Name = DTable.Rows(0)("Emp_Name")
            Sex = DTable.Rows(0)("Sex")
            Nationality = DTable.Rows(0)("Nationality")
            Birth = DTable.Rows(0)("Birth")
            Political_Party = DTable.Rows(0)("Political_Party")
            Culture_Level = DTable.Rows(0)("Culture_Level")
            Marital_Condition = DTable.Rows(0)("Marital_Condition")
            Family_Place = DTable.Rows(0)("Family_Place")
            Id_Card = DTable.Rows(0)("Id_Card")
            PcId = DTable.Rows(0)("PcId")
            BadgeID = DTable.Rows(0)("BadgeID")
            Office_phone = DTable.Rows(0)("Office_phone")
            Home_phone = DTable.Rows(0)("Home_phone")
            Bp = DTable.Rows(0)("Bp")
            Mobile = DTable.Rows(0)("Mobile")
            Files_Keep_Org = DTable.Rows(0)("Files_Keep_Org")
            Residence = DTable.Rows(0)("Residence")
            Hukou = DTable.Rows(0)("Hukou")
            Postcode = DTable.Rows(0)("Postcode")
            Police_Post = DTable.Rows(0)("Police_Post")
            Street_Office = DTable.Rows(0)("Street_Office")
            HireDate = DTable.Rows(0)("HireDate")
            Working_Years = CShort(DTable.Rows(0)("Working_Years"))
            Dep_Id = DTable.Rows(0)("Dep_Id")
            Position = DTable.Rows(0)("Position")
            Title = DTable.Rows(0)("Title")
            State = DTable.Rows(0)("State")
            UpperId = DTable.Rows(0)("UpperId")
            Contract_Sign_Date = DTable.Rows(0)("Contract_Sign_Date")
            Base_Wage = Val(DTable.Rows(0)("Base_Wage"))
            Base_Prize = Val(DTable.Rows(0)("Base_Wage"))
            Memo = DTable.Rows(0)("Memo")
            Fillin_Person = DTable.Rows(0)("Fillin_Person")
            Fillin_Time = DTable.Rows(0)("Fillin_Time")
        End If
        GetInfo = True

    End Function

    Public Function GetNewId() As Integer
        Dim i As Object
        Dim TmpId As Integer
        Dim SQLString As String
        Dim MSG As String
        SQLString = "SELECT Emp_Id FROM Employees ORDER BY Emp_Id"
        Dim DTable As DataTable = ClsOperation.DBOperate(SQLString, MSG)
        Dim oRow As DataRow
        i = 1
        For Each oRow In DTable.Rows
            TmpId = oRow("Emp_Id")
            If TmpId = i Then
                i = i + 1
            Else
                GetNewId = i
                Exit Function
            End If
        Next
        GetNewId = i
    End Function

    Public Sub Insert()
        Dim SQLString As String
        Dim MSG As String
        Emp_Id = GetNewId()
        SQLString = "INSERT INTO Employees (Emp_Id, Emp_Name, Sex, Nationality," & "Birth, Political_Party, Culture_Level, Marital_Condition," & "Family_Place, Id_Card, PcID, BadgeId, " & "Office_Phone, Home_Phone, Bp, Mobile, " & "Files_Keep_Org, Residence, Hukou, Postcode," & "Police_Post, Street_Office, HireDate, Working_Years," & "Dep_Id, Position,Title,State,UpperId, Contract_Sign_Date, Base_Wage," & "Base_Prize, Memo, Fillin_Person, Fillin_Time)" & " Values(" & Trim(Str(Emp_Id)) & ",'" & Trim(Emp_Name) & "','" & Trim(Sex) & "','" & Trim(Nationality) & "','" & Trim(Birth) & "','" & Trim(Political_Party) & "','" & Trim(Culture_Level) & "','" & Trim(Marital_Condition) & "','" & Trim(Family_Place) & "','" & Trim(Id_Card) & "','" & Trim(PcId) & "','" & Trim(BadgeID) & "','" & Trim(Office_phone) & "','" & Trim(Home_phone) & "','" & Trim(Bp) & "','" & Trim(Mobile) & "','" & Trim(Files_Keep_Org) & "','" & Trim(Residence) & "','" & Trim(Hukou) & "','" & Trim(Postcode) & "','" & Trim(Police_Post) & "','" & Trim(Street_Office) & "','" & Trim(HireDate) & "'," & Trim(CStr(Working_Years)) & "," & Trim(Str(Dep_Id)) & ",'" & Trim(Position) & "','" & Trim(Title) & "'," & Trim(Str(State)) & "," & Trim(Str(UpperId)) & ",'" & Trim(Contract_Sign_Date) & "'," & Trim(Str(Base_Wage)) & "," & Trim(Str(Base_Prize)) & ",'" & Trim(Memo) & "','" & Trim(Fillin_Person) & "','" & Trim(Fillin_Time) & "')"
        ClsOperation.DBOperate(SQLString, MSG)
    End Sub

    Public Sub Load_by_Dep(ByVal TmpDepId As Short)
        Dim i As Short
        '初始化部门数组
        Erase Arr_EmpId
        ReDim Arr_EmpId(0)
        Dim SQLString As String
        Dim MSG As String

        SQLString = "SELECT Emp_Id FROM Employees WHERE Dep_Id=" & Trim(Str(TmpDepId)) & " ORDER BY Emp_Id"
        Dim DTable As DataTable = ClsOperation.DBOperate(SQLString, MSG)
        Dim oRow As DataRow
        i = 0
        For Each oRow In DTable.Rows
            '读取部门编号           
            ReDim Preserve Arr_EmpId(i + 1)
            Arr_EmpId(i) = oRow("Emp_Id")
            i = i + 1
        Next
    End Sub

    Public Sub Update(ByVal OriEmpId As Short)
        Dim SQLString As String
        Dim MSG As String
        SQLString = "Update Employees Set Emp_Name='" & Trim(Emp_Name) & "',Sex='" & Trim(Sex) & "',Nationality='" & Trim(Nationality) & "',Birth='" & Trim(Birth) & "',Political_Party='" & Trim(Political_Party) & "',Culture_Level='" & Trim(Culture_Level) & "',Marital_Condition='" & Trim(Marital_Condition) & "',Family_Place='" & Trim(Family_Place) & "',Id_Card='" & Trim(Id_Card) & "',PcID='" & Trim(PcId) & "',BadgeID='" & Trim(BadgeID) & "',Office_phone='" & Trim(Office_phone) & "',Home_phone='" & Trim(Home_phone) & "',Bp='" & Trim(Bp) & "',Mobile='" & Trim(Mobile) & "',Files_Keep_Org='" & Trim(Files_Keep_Org) & "',Residence='" & Trim(Residence) & "',Hukou='" & Trim(Hukou) & "',Postcode='" & Trim(Postcode) & "',Police_Post='" & Trim(Police_Post) & "',Street_Office='" & Trim(Street_Office) & "',HireDate='" & Trim(HireDate) & "',Working_Years=" & Trim(CStr(Working_Years)) & ",Dep_Id=" & Trim(Str(Dep_Id)) & ",Position='" & Trim(Position) & "',Title='" & Trim(Title) & "',State=" & Trim(Str(State)) & ",UpperId=" & Trim(Str(UpperId)) & ",Contract_Sign_Date='" & Trim(Contract_Sign_Date) & "',Base_Wage=" & Trim(Str(Base_Wage)) & ",Base_Prize=" & Trim(Str(Base_Prize)) & ",Memo='" & Trim(Memo) & "',Fillin_Person='" & Trim(Fillin_Person) & "',Fillin_Time='" & Trim(Fillin_Time) & "' WHERE Emp_Id=" & Trim(Str(OriEmpId))
        ClsOperation.DBOperate(SQLString, MSG)
    End Sub

    '更新部门职务
    Public Sub Update_Transfer(ByVal OriEmpId As Short)
        Dim SQLString As String
        Dim MSG As String
        SQLString = "Update Employees Set Dep_Id=" & Trim(CStr(Dep_Id)) & ",Title='" & Trim(Title) & "' WHERE Emp_id=" & Trim(CStr(OriEmpId))
        ClsOperation.DBOperate(SQLString, MSG)
    End Sub
End Class

⌨️ 快捷键说明

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