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

📄 crepair.cls

📁 一个vb编的计算机机房管理系统
💻 CLS
字号:
VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "CRepair"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Option Explicit

Private m_sEid As String
Private m_dEtime As Date                '设备出问题的时间
Private m_sCause As String              '原因
Private m_sRepairman As String          '维修人员
Private m_dRtime As Date                '修好时间
Private m_sRepairResult As String       '维修结果
Private m_iRid As Integer               '维修次数

Public Property Get Eid() As String
Eid = m_sEid
End Property

Public Property Let Eid(ByVal vEid As String)
m_sEid = vEid
End Property
Public Property Get Etime() As Date
Etime = m_dEtime
End Property

Public Property Let Etime(ByVal vEtime As Date)
m_dEtime = vEtime
End Property
Public Property Get Cause() As String
Cause = m_sCause
End Property

Public Property Let Cause(ByVal vCause As String)
m_sCause = vCause
End Property
Public Property Get Repairman() As String
Repairman = m_sRepairman
End Property

Public Property Let Repairman(ByVal vRepairman As String)
m_sRepairman = vRepairman
End Property
Public Property Get rtime() As Date
rtime = m_dRtime
End Property

Public Property Let rtime(ByVal vRtime As Date)
m_dRtime = vRtime
End Property
Public Property Get repairresult() As String
repairresult = m_sRepairResult
End Property

Public Property Let repairresult(ByVal vRepairResult As String)
m_sRepairResult = vRepairResult
End Property
Public Property Get Rid() As Integer
Rid = m_iRid
End Property
Public Property Let Rid(ByVal vRid As Integer)
m_iRid = vRid
End Property
Public Sub Insert()                ' 增加纪录
    Connect "w"
    sqlstr = "select * from Equipment where Eid='" & Eid & "'"
    rs.Open sqlstr
    If rs.EOF Then
      MsgBox "在设备表中未找到设备名为: " & Eid & " 的相关信息!请检查后在添加纪录!"
      Disconnect
      Exit Sub
    Else: rs.Close
    End If
    sqlstr = "select * from Repair where Eid='" & Eid & "'"
    rs.Open sqlstr
   ' con.BeginTrans
    MsgBox ("这是设备ID为:" & Eid & " 的第" & (rs.RecordCount + 1) & "次维修!")
      If Cause = "" Then
         MsgBox "维修原因不能为空!"
        ' con.RollbackTrans
         Disconnect
         Exit Sub
      End If
'      Disconnect
'      Connect "w"
       Dim sqlstrTemp As String
'      Dim EConfigId As Integer
'      Dim EState As String
'      Dim EStatTime As Date
'      Dim EUseTimeDay As Integer
'      Dim EUseTime As Double
'      Dim EPlace As String
      'con.RollbackTrans
      'Disconnect
      rs.Close
      EquipmentModify "R"
     ' rs.Close
     ' con.CommitTrans
      'con.BeginTrans
      Connect "w"
      sqlstr = "select * from Repair where Eid='" & Eid & "'"
      rs.Open sqlstr
      rs.AddNew
      rs.Fields("Eid") = Eid
      rs.Fields("Cause") = Cause
      rs.Fields("Repairman") = Repairman
      rs.Fields("etime") = Etime
      rs.Fields("rtime") = rtime
      rs.Fields("RepairResult") = repairresult
      rs.Update
      
      MsgBox "新维修单:" & Eid & " 添加成功!"
   '   con.CommitTrans
      Disconnect
End Sub
Public Sub Modify()                                                '修改纪录
    Connect "w"
    sqlstr = "select * from Repair where Eid = '" & Eid & "' and  Rid = " & Rid
    rs.Open sqlstr
    con.BeginTrans
    If rs.EOF Then
       MsgBox "未找到设备名为: " & Eid & " 的相关维修信息!"
       con.RollbackTrans
       Disconnect
       Exit Sub
    ElseIf Cause = "" Then
       MsgBox "故障原因不能为空!"
       con.RollbackTrans
       Disconnect
       Exit Sub
    Else
      Dim RepairState As String
      If repairresult = "修理中" Then
         RepairState = "R"
      ElseIf repairresult = "修好了" Then
         RepairState = "E"
      ElseIf repairresult = "报废" Then
         Dim Useless As CUseless
         Set Useless = New CUseless
         con.RollbackTrans
         Useless.EquipmentDelete Eid
         Exit Sub
      End If
      con.RollbackTrans
      EquipmentModify RepairState
      Connect "w"
      sqlstr = "select * from Repair where Eid='" & Eid & "'"
      rs.Open sqlstr
      con.BeginTrans
      'rs.Fields("Eid") = Eid
      rs.Fields("etime") = Etime
      rs.Fields("Cause") = Cause
      rs.Fields("Repairman") = Repairman
      rs.Fields("rtime") = rtime
      rs.Fields("RepairResult") = repairresult
      rs.Update
      MsgBox "设备ID为:" & Eid & " 的第" & (rs.RecordCount + 1) & "次维修信息更新成功!"
      con.CommitTrans
      Disconnect
      Exit Sub
    End If
End Sub
'Public Sub Delete()                              '删除纪录,但由于没有删除纪录功能,该方法暂时关闭
'  Connect "w"
'  sqlstr = "select * from Repair where Eid= '" & Eid & "'"
'  rs.Open sqlstr
'  con.BeginTrans
'  If rs.EOF Then
'     MsgBox ("未找到设备ID为:" & Eid & "的相关信息!请检查后再继续!")
'     con.RollbackTrans
'     Disconnect
'     Exit Sub
'  Else
'     rs.Delete
'     rs.UpdateBatch
'     con.CommitTrans
'     MsgBox ("设备ID为:" & Eid & " 的维修信息成功被删除!")
'     Disconnect
'     Exit Sub
'  End If
'End Sub
Public Sub DeleteAll()                                '清空所有记录
   Dim m_iMsgbox As Integer
   Connect "w"
    m_iMsgbox = MsgBox("确定要清空所有维修信息吗?", vbYesNo + vbExclamation + vbDefaultButton2, "提示")
    If m_iMsgbox = vbYes Then
       con.Execute "Truncate Table Repair"              '清空所有记录
       MsgBox "清空维修信息成功!"
    End If
    Disconnect
End Sub
Public Function GetEids() As String()
   Dim GetEid As CPublic
   Set GetEid = New CPublic
   GetEids = GetEid.GetListIDs("Equipment", "Eid")
End Function
Public Sub Query(ByVal str As String)                    '查询纪录
   Connect "r"
   If str = "" Then
     sqlstr = "select rid as 维修标识,Eid as 设备ID,Etime as 损坏时间,Cause as 损坏原因,Repairman as 维修人员,Rtime as 修好时间,RepairResult as 维修结果 from Repair"
   Else
     sqlstr = "select rid as 维修标识, Eid as 设备ID,Etime as 损坏时间,Cause as 损坏原因,Repairman as 维修人员,Rtime as 修好时间,RepairResult as 维修结果 from Repair where Eid ='" & Eid & "'"
   End If
     rs.Open sqlstr
   If Eid = "" Then
      Disconnect
      Exit Sub
   End If
   Disconnect
End Sub
 Public Sub EquipmentModify(ByVal ModifyMode As String)
 
     '该方法用以改变设备的使用状态
     
      Disconnect
      Dim Equipment As CEquipment
      Set Equipment = New CEquipment
          sqlstr = "select * from Equipment where Eid='" & Eid & "'"
          Connect "r"
          rs.Open sqlstr
          Equipment.Eid = Eid
          Equipment.ConfigID = rs.Fields("ConfigID")
          Equipment.State = ModifyMode
          Equipment.StartTime = rs.Fields("StartTime")
          Equipment.UseTimeDay = rs.Fields("UseTimeDay")
          Equipment.UseTime = rs.Fields("UseTime")
          If IsNull(rs.Fields("Place")) Then
             Equipment.Place = "A"
          Else
             Equipment.Place = rs.Fields("Place")
          End If
          Disconnect
          Equipment.Modify
 End Sub

⌨️ 快捷键说明

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