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

📄 employee.vb

📁 人事管理系统(VB.NET2005+SQL Server2005)
💻 VB
字号:
Imports System
Imports System.Data
Imports System.Text
Imports CommonDB
Imports CommonSystem

Public Class Employee
    Inherits Person

#Region "Members"
    Public sInnerNumber As String
    Public HireDate As String
    Public Status As String
    Public FireDate As String
    Public WorkEmail As String
    Public WorkPhone As String
    Public WorkAge As String
    Public BankAccount As String
    Public Photo As String
    Protected iDepartmentId As Integer
    Protected iBusinessId As Integer
    Protected iLevelId As Integer
    Private m_iId As Integer
#End Region

#Region "Properties"
    Public Property Department() As Department
        Get
            If iDepartmentId = 0 Then
                Department = New Department
            Else
                Department = New Department(CStr(DbBase.DataInterface().Execute4Object("select number from department where id = " & iDepartmentId)))
            End If
        End Get
        Set(ByVal Value As Department)
            If Value Is Nothing Or Value.Name = "" Then
                iDepartmentId = 0
            Else
                iDepartmentId = DbBase.DataInterface().Execute4Object("select id from department where number = '" & Value.Number & "'")
            End If
        End Set
    End Property

    Public Property Bussiness() As String
        Get
            If iBusinessId = 0 Then
                Bussiness = ""
            Else
                Bussiness = CStr(DbBase.DataInterface().Execute4Object("select name from bussiness where id =" & iBusinessId))
            End If
        End Get
        Set(ByVal Value As String)
            If Value = "" Then
                iBusinessId = 0
            Else
                iBusinessId = DbBase.DataInterface().Execute4Value("select id from bussiness where name = '" & Value & "'")
            End If
        End Set
    End Property

    Public Property EmployeeLevel() As String
        Get
            If iLevelId = 0 Then
                EmployeeLevel = ""
            Else
                EmployeeLevel = CStr(DbBase.DataInterface().Execute4Object("select role from payroll_level where level =" & iLevelId))
            End If
        End Get
        Set(ByVal Value As String)
            If Value = "" Then
                iLevelId = 0
            Else
                iLevelId = DbBase.DataInterface().Execute4Value("select level from payroll_level where role = '" & Value & "'")
            End If
        End Set
    End Property

    Public Property Number() As String
        Get
            Number = Me.Department.Number & sInnerNumber
        End Get
        Set(ByVal Value As String)
            If Value.Length = 5 Then
                sInnerNumber = Microsoft.VisualBasic.Right(Value, 3)
            ElseIf Value.Length = 3 Then
                sInnerNumber = Value
            Else
                sInnerNumber = ""
            End If
        End Set
    End Property

    Public ReadOnly Property Id() As Integer
        Get
            Return m_iId
        End Get
    End Property
#End Region

#Region "Constructions"
    Public Sub New()
        m_iId = 0
    End Sub

    Public Sub New(ByVal iId As Integer)
        Dim dsPerson As DataSet
        dsPerson = DbBase.DataInterface().Execute4DS("select * from employee where id = " & iId)
        If dsPerson.Tables(0).Rows.Count = 0 Then
            Throw New Exception("Employee of id " & iId & " doesn't exists when new Employee!")
        Else
            'initialize Person
            m_iId = dsPerson.Tables(0).Rows(0).Item("id")
            Name = dsPerson.Tables(0).Rows(0).Item("name")
            Sex = dsPerson.Tables(0).Rows(0).Item("sex")
            IDCard = dsPerson.Tables(0).Rows(0).Item("idcard")
            Birthday = dsPerson.Tables(0).Rows(0).Item("birthday")
            NativePlace = dsPerson.Tables(0).Rows(0).Item("native_place")
            HomePhone = dsPerson.Tables(0).Rows(0).Item("home_phone")
            Address = dsPerson.Tables(0).Rows(0).Item("address")
            Postalcode = dsPerson.Tables(0).Rows(0).Item("postalcode")
            PersonalEmail = dsPerson.Tables(0).Rows(0).Item("personal_email")
            Intro = dsPerson.Tables(0).Rows(0).Item("intro")
            Marry = dsPerson.Tables(0).Rows(0).Item("marry")
            Mobile = dsPerson.Tables(0).Rows(0).Item("mobile")
            iNationId = dsPerson.Tables(0).Rows(0).Item("nation_id")
            iEducationId = dsPerson.Tables(0).Rows(0).Item("education_id")
            iPostId = dsPerson.Tables(0).Rows(0).Item("post_id")
            'initialize Employee
            sInnerNumber = dsPerson.Tables(0).Rows(0).Item("inner_number")
            Status = dsPerson.Tables(0).Rows(0).Item("status")
            HireDate = dsPerson.Tables(0).Rows(0).Item("hire_date")
            FireDate = dsPerson.Tables(0).Rows(0).Item("fire_date")
            WorkEmail = dsPerson.Tables(0).Rows(0).Item("work_email")
            WorkPhone = dsPerson.Tables(0).Rows(0).Item("work_phone")
            BankAccount = dsPerson.Tables(0).Rows(0).Item("bank_account")
            WorkAge = dsPerson.Tables(0).Rows(0).Item("work_age")
            iDepartmentId = dsPerson.Tables(0).Rows(0).Item("department_id")
            iBusinessId = dsPerson.Tables(0).Rows(0).Item("business_id")
            iLevelId = dsPerson.Tables(0).Rows(0).Item("employee_level")
        End If
    End Sub

    Public Sub New(ByVal sNumber As String)
        Me.New(DbBase.DataInterface().Execute4Value("select id from v_employee where number = '" & sNumber & "'"))
    End Sub
#End Region

#Region "Opertaions"
    Public Function Hire() As Boolean
        Dim sbSql As StringBuilder = New StringBuilder
        sbSql.Append("insert into employee (name,sex,birthday,nation_id,idcard,marry,education_id,home_phone,mobile,post_id,address,postalcode,native_place,photo,intro,personal_email,inner_number,department_id,hire_date,fire_date,business_id,bank_account,status,employee_level,work_email,work_phone,work_age) values (")
        sbSql.Append("'" & Me.Name & "',")
        sbSql.Append("'" & Me.Sex & "',")
        sbSql.Append("'" & Me.Birthday & "',")
        sbSql.Append("" & Me.iNationId & ",")
        sbSql.Append("'" & Me.IDCard & "',")
        sbSql.Append("'" & Me.Marry & "',")
        sbSql.Append("" & Me.iEducationId & ",")
        sbSql.Append("'" & Me.HomePhone & "',")
        sbSql.Append("'" & Me.Mobile & "',")
        sbSql.Append("" & Me.iPostId & ",")
        sbSql.Append("'" & Me.Address & "',")
        sbSql.Append("'" & Me.Postalcode & "',")
        sbSql.Append("'" & Me.NativePlace & "',")
        sbSql.Append("'" & Me.Photo & "',")
        sbSql.Append("'" & Me.Intro & "',")
        sbSql.Append("'" & Me.PersonalEmail & "',")
        sbSql.Append("'" & Me.sInnerNumber & "',")
        sbSql.Append("" & Me.iDepartmentId & ",")
        sbSql.Append("'" & Me.HireDate & "',")
        sbSql.Append("'" & Me.FireDate & "',")
        sbSql.Append("" & Me.iBusinessId & ",")
        sbSql.Append("'" & Me.BankAccount & "',")
        sbSql.Append("'" & Me.Status & "',")
        sbSql.Append("" & Me.iLevelId & ",")
        sbSql.Append("'" & Me.WorkEmail & "',")
        sbSql.Append("'" & Me.WorkPhone & "',")
        sbSql.Append("'" & Me.WorkAge & "')")
        'MessageBox.Show(sbSql.ToString)
        If DbBase.DataInterface().ExecuteSql(sbSql.ToString) = 0 Then
            Return True
        Else
            Return False
        End If
    End Function

    Public Function Fire(ByVal sDate As String) As Boolean
        Dim sSql As String
        sSql = "update employee set inner_number = '000', status = '解聘', fire_date = '" & Me.FireDate & "' where id = '" & Me.m_iId & "'"
        If DbBase.DataInterface().ExecuteSql(sSql) = 0 Then
            Return True
        Else
            Return False
        End If
    End Function

    Public Function Retire() As Boolean
        Dim sSql As String
        sSql = "update employee set status = '退休',inner_number = '000' where id = '" & Me.m_iId & "'"
        If DbBase.DataInterface().ExecuteSql(sSql) = 0 Then
            Return True
        Else
            Return False
        End If
    End Function

    Public Function Transfer(ByVal oDepartment As Department) As Boolean
        Dim sSql As String
        sSql = "update employee set department_id = '" & oDepartment.DepartmentId & "',inner_number = '" & Me.sInnerNumber & "' where id = '" & Me.m_iId & "'"
        If DbBase.DataInterface().ExecuteSql(sSql) = 0 Then
            Return True
        Else
            Return False
        End If
    End Function

    Public Function Update() As Object
        Dim sbSql As StringBuilder = New StringBuilder
        sbSql.Append("update employee set ")
        sbSql.Append("name = '" & Me.Name & "',")
        sbSql.Append("sex = '" & Me.Sex & "',")
        sbSql.Append("birthday = '" & Me.Birthday & "',")
        sbSql.Append("nation_id = " & Me.iNationId & ",")
        sbSql.Append("idcard = '" & Me.IDCard & "',")
        sbSql.Append("marry = '" & Me.Marry & "',")
        sbSql.Append("education_id = " & Me.iEducationId & ",")
        sbSql.Append("home_phone = '" & Me.HomePhone & "',")
        sbSql.Append("mobile = '" & Me.Mobile & "',")
        sbSql.Append("post_id = " & Me.iPostId & ",")
        sbSql.Append("address = '" & Me.Address & "',")
        sbSql.Append("postalcode = '" & Me.Postalcode & "',")
        sbSql.Append("native_place = '" & Me.NativePlace & "',")
        sbSql.Append("photo = '" & Me.Photo & "',")
        sbSql.Append("intro = '" & Me.Intro & "',")
        sbSql.Append("personal_email = '" & Me.PersonalEmail & "',")
        sbSql.Append("inner_number = '" & Me.sInnerNumber & "',")
        sbSql.Append("department_id = " & Me.iDepartmentId & ",")
        sbSql.Append("hire_date = '" & Me.HireDate & "',")
        sbSql.Append("fire_date = '" & Me.FireDate & "',")
        sbSql.Append("business_id = " & Me.iBusinessId & ",")
        sbSql.Append("bank_account = '" & Me.BankAccount & "',")
        sbSql.Append("status = '" & Me.Status & "',")
        sbSql.Append("employee_level = '" & Me.iLevelId & "',")
        sbSql.Append("work_email = '" & Me.WorkEmail & "',")
        sbSql.Append("work_phone = '" & Me.WorkPhone & "',")
        sbSql.Append("work_age = '" & Me.WorkAge & "'")
        sbSql.Append(" where id = " & Me.m_iId)
        'MessageBox.Show(sbSql.ToString)
        If DbBase.DataInterface().ExecuteSql(sbSql.ToString) = 0 Then
            Return True
        Else
            Return False
        End If
    End Function
#End Region
End Class

⌨️ 快捷键说明

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