📄 yngc_frmadduser.frm
字号:
'用户的开户时间
Private strUserOpenDate As String
'部门代码
Private strRepId As String
'SQL字符串
Private strSql As String
'数据集
Private objOraDyn As OraDynaset
Private objResponse
'从数据库提取已有用户列表
Private Sub Form_Load()
yngc_txtRepId.AddItem "中心主任(馆长)室"
yngc_txtRepId.AddItem "中心书记室"
yngc_txtRepId.AddItem "中心副主任(副馆长)室"
yngc_txtRepId.AddItem "中心总工办"
yngc_txtRepId.AddItem "软件开发部"
yngc_txtRepId.AddItem "数据工程部"
yngc_txtRepId.AddItem "地图供应部"
yngc_txtRepId.AddItem "中心办公室"
Dim t_strUsrname As String
t_strUsrname = g_clsConnect.GetLogUserId
strSql = "select user_id from yngc_sys_userlist where user_delflag='0' and user_id <> '" & t_strUsrname & "'"
'建立OraDynaset对象
Set objOraDyn = g_clsConnect.ObjectOraDb.CreateDynaset(strSql, 0&)
'开始一个事务
g_clsConnect.ObjectOraDb.BeginTrans
Do Until objOraDyn.EOF
yngc_lstUserOwed.AddItem (objOraDyn.Fields("USER_ID").Value)
objOraDyn.DbMoveNext
Loop
g_clsConnect.ObjectOraDb.CommitTrans
strUserOpenDate = Now
End Sub
Private Sub yngc_btnCancal_Click()
Unload Me
End Sub
'用户修改口令
Private Sub yngc_btnConfirm_Click()
strUserName = g_clsConnect.GetLogUserId
strUserPwd = Trim(yngc_txtUserPwd.Text)
'***********************************************************
'判断用户输入口令是否与原有口令相同
strSql = "select user_password from yngc_sys_userlist where user_id='" & strUserName & "'"
'建立OraDynaset对象
Set objOraDyn = g_clsConnect.ObjectOraDb.CreateDynaset(strSql, 0&)
'开始一个事务
g_clsConnect.ObjectOraDb.BeginTrans
'改动(金宝轩)
If MD5(yngc_txtFirstPwd.Text) <> objOraDyn.Fields("USER_PASSWORD").Value Then 'Decipher
MsgBox "原密码输入错误,请重新输入!"
g_clsConnect.ObjectOraDb.CommitTrans
Exit Sub
End If
g_clsConnect.ObjectOraDb.CommitTrans
'***********************************************************
If yngc_txtUserPwd.Text = "" Then
MsgBox "请输入密码!", vbInformation, "提示"
'strUserPwd = g_clsConnect.Cipher("1")
Exit Sub
End If
'***********************************************************
'更新用户口令
strUserPwd = MD5(Trim(yngc_txtUserPwd.Text))
strSql = "update yngc_sys_userlist set user_password='" & strUserPwd & "' where user_id='" & strUserName & "'"
If yngc_txtUserPwd.Text = yngc_txtConfirmPwd.Text Then
objResponse = MsgBox("确定修改口令!", vbYesNo + vbInformation, "提示")
If objResponse = vbYes Then
g_clsConnect.ObjectOraDb.ExecuteSQL (strSql)
g_clsConnect.ObjectOraDb.CommitTrans
'记录用户的操作
Call g_clsConnect.yngc_subUpdateUserOperation(g_clsConnect.ObjectOraDb, "修改用户" & strUserName & "口令")
End If
Else
MsgBox "密码输入不同,请重新输入!", vbInformation, "提示"
Exit Sub
End If
'***********************************************************
'将输入框设置为空
yngc_txtFirstPwd.Text = ""
yngc_txtUserPwd.Text = ""
yngc_txtConfirmPwd.Text = ""
yngc_txtRepId.Text = ""
yngc_txtFirstPwd.SetFocus
End Sub
'创建用户
Private Sub yngc_btnCreateUser_Click()
'调用函数,获得用户唯一ID
'Call g_clsConnect.yngc_fnUniqueId(strUserId)
'取得用户登录Id
Call g_clsConnect.yngc_subReadFile
strUserId = Trim(yngc_txtUserId.Text)
strUserName = Trim(yngc_txtUserName.Text)
strUserPwd = Trim(yngc_txtUserPwd.Text)
'定义和设置初始化用户角色和功能权限 '金宝轩改
Dim strUser_roleid As String
Dim strPre As String
strUser_roleid = "10;"
strPre = "9;10;20;"
'加密
strUserPwd = MD5(strUserPwd)
strRepId = Trim(yngc_txtRepId.Text)
If Trim(yngc_txtUserId.Text) = "" Then
MsgBox "请输入用户ID!", vbInformation, "提示"
yngc_txtUserId.SetFocus
Exit Sub
End If
If InStr(1, Trim(yngc_txtUserId.Text), "'", vbTextCompare) > 0 Then
MsgBox "输入的用户ID包含非法字符,请重新输入!", vbCritical, "错误"
Exit Sub
End If
If Trim(yngc_txtUserName.Text) = "" Then
MsgBox "请输入用户姓名!", vbInformation, "提示"
Exit Sub
End If
If InStr(1, Trim(yngc_txtUserName.Text), "'", vbTextCompare) > 0 Then
MsgBox "输入的用户姓名中包含非法字符,请重新输入!", vbCritical, "错误"
Exit Sub
End If
If yngc_txtUserPwd.Text = "" Then
MsgBox "请输入密码!", vbInformation, "提示"
Exit Sub
End If
If yngc_txtRepId.Text = "" Then
MsgBox "请选择用户部门!", vbInformation, "提示"
Exit Sub
End If
strSql = "insert into yngc_sys_userlist(user_id,user_name,user_password,user_opendate,user_repid,user_delflag,USER_ROLEID,USER_PREVILEGEID) values('" & Trim(strUserId) & "','" & Trim(strUserName) & "','" & strUserPwd & "','" & strUserOpenDate & "','" & strRepId & "',0, '" & strUser_roleid & "','" & strPre & "' )"
If yngc_txtUserPwd.Text = yngc_txtConfirmPwd.Text Then
g_clsConnect.ObjectOraDb.ExecuteSQL (strSql)
g_clsConnect.ObjectOraDb.CommitTrans
yngc_lstUserOwed.AddItem (strUserId)
'记录用户的操作
Call g_clsConnect.yngc_subUpdateUserOperation(g_clsConnect.ObjectOraDb, "创建用户" & strUserName)
Else
MsgBox "密码输入不同,请重新输入!", vbInformation, "提示"
Exit Sub
End If
'清空所填内容
yngc_txtUserId.Text = ""
yngc_txtUserName.Text = ""
yngc_txtUserPwd.Text = ""
yngc_txtConfirmPwd.Text = ""
yngc_txtRepId.Text = ""
yngc_txtUserId.SetFocus
End Sub
'删除用户
Private Sub yngc_btnDelUser_Click()
'获得用户名称
strUserName = yngc_lstUserOwed.List(intListIndex)
strSql = "update yngc_sys_userlist set user_delflag='1' where user_id='" & strUserName & "'"
objResponse = MsgBox("确定删除用户!", vbYesNo + vbInformation, "提示")
If objResponse = vbYes Then
g_clsConnect.ObjectOraDb.ExecuteSQL (strSql)
g_clsConnect.ObjectOraDb.CommitTrans
'记录用户的操作
Call g_clsConnect.yngc_subUpdateUserOperation(g_clsConnect.ObjectOraDb, "删除用户" & strUserName)
'将删除的用户从已有用户的列表中删除
yngc_lstUserOwed.RemoveItem (intListIndex)
End If
End Sub
Private Sub yngc_lstUserOwed_Click()
intListIndex = yngc_lstUserOwed.ListIndex
End Sub
Private Sub yngc_txtRepId_Click()
If yngc_txtRepId.Text = "中心主任(馆长)室" Then
yngc_txtRepId.Text = "0001"
ElseIf yngc_txtRepId.Text = "中心书记室" Then
yngc_txtRepId.Text = "0002"
ElseIf yngc_txtRepId.Text = "中心副主任(副馆长)室" Then
yngc_txtRepId.Text = "0003"
ElseIf yngc_txtRepId.Text = "中心总工办" Then
yngc_txtRepId.Text = "0004"
ElseIf yngc_txtRepId.Text = "软件开发部" Then
yngc_txtRepId.Text = "0005"
ElseIf yngc_txtRepId.Text = "数据工程部" Then
yngc_txtRepId.Text = "0006"
ElseIf yngc_txtRepId.Text = "地图供应部" Then
yngc_txtRepId.Text = "0007"
Else
yngc_txtRepId.Text = "0008"
End If
End Sub
Private Sub yngc_txtUserId_LostFocus()
'判断用户是否已经存在
strUserId = Trim(yngc_txtUserId.Text)
If InStr(1, strUserId, "'", vbTextCompare) > 0 Then
MsgBox "输入的用户ID包含非法字符,请重新输入!", vbCritical, "错误"
Exit Sub
End If
strSql = "select user_id from yngc_sys_userlist where user_id='" & strUserId & "'"
'建立OraDynaset对象
Set objOraDyn = g_clsConnect.ObjectOraDb.CreateDynaset(strSql, 0&)
'开始一个事务
g_clsConnect.ObjectOraDb.BeginTrans
If objOraDyn.RecordCount <> 0 Then
MsgBox "此用户已存在,请输入其它名称!", vbInformation, "提示"
yngc_txtUserId.Text = ""
yngc_txtUserId.SetFocus
Else
g_clsConnect.ObjectOraDb.CommitTrans
Exit Sub
End If
'结束事务
g_clsConnect.ObjectOraDb.CommitTrans
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -