📄 selaccount.asp
字号:
<%option explicit%>
<%
Response.Expires = -1
Response.AddHeader "Pragma","no-cache"
Response.AddHeader "Cache-Control","no-cache,must-revalidate"
%>
<!-- #include virtual="DataEnvi.asp" -->
<!-- #include virtual="Page.asp" -->
<%
Dim ObjDB,StrSQL,ObjRS
Dim StrDept,StrName
Dim StrIDs,IsSelOne
StrIDs = Request.QueryString("IDs")
IsSelOne = false
If Request.QueryString("SelOne")="1" Then IsSelOne = true
Set ObjDB = Server.CreateObject("Adodb.Connection")
OpenDB ObjDB
StrSQL = "Select * From t_OA_SYS_Department"
Set ObjRS = ObjDB.Execute(StrSQL)
While Not ObjRS.Eof
StrDept = StrDept & ObjRS("ID") & "," & ObjRS("ParentID") & "," & Chr(34) & ObjRS("DepName") & Chr(34) & ","
ObjRS.MoveNext
Wend
StrDept = StrDept & "99999,0," & Chr(34) & "<未分配用户>" & Chr(34) & ","
If StrDept<>"" Then StrDept = Left(StrDept,Len(StrDept)-1)
StrSQL = "Select DepID,AccountID,TrueName From V_OA_SYS_Department_Account"
Set ObjRS = ObjDB.Execute(StrSQL)
While Not ObjRS.Eof
StrName = StrName & ObjRS("AccountID") & "," & ObjRS("DepID") & "," & Chr(34) & ObjRS("TrueName") & Chr(34) & ","
ObjRS.MoveNext
Wend
StrSQL = "Select AccountID,TrueName From t_OA_SYS_Account_Character Where AccountID NOT In (Select AccountID From V_OA_SYS_Department_Account)"
Set ObjRS = ObjDB.Execute(StrSQL)
While Not ObjRS.Eof
StrName = StrName & ObjRS("AccountID") & ",99999," & Chr(34) & ObjRS("TrueName") & Chr(34) & ","
ObjRS.MoveNext
Wend
If StrName<>"" Then StrName = Left(StrName,Len(StrName)-1)
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>人员选择</title>
<style>
<!--
td { font-size: 12px;}
select { font-size: 12px; width: 200 }
input { font-size: 12px; border-style: ridge; border-width: 1 }
-->
</style>
<script language=javascript>
var arrDept = new Array(<%=StrDept%>)
var arrAllID = new Array(<%=StrName%>)
var arrSelID = new Array(<%=StrIDs%>)
var IsSelSon = false
function GetParentID(ID){
for(var i=0;i<arrDept.length;i+=3){
if(arrDept[i]==ID){
return arrDept[i+1]
}
}
return -1
}
function GetSonDeptIDs(ID){
var arr = new Array()
for(var i=0;i<arrDept.length;i+=3){
if(arrDept[i+1]==ID){
arr[arr.length]=arrDept[i]
}
}
return arr
}
function GetDeptName(ID){
for(var i=0;i<arrDept.length;i+=3){
if(arrDept[i]==ID)return arrDept[i+2]
}
return ""
}
var StrDEPT=""
var IntNullCount = 0
function WriteDeptOption(PID){
if(GetSonDeptIDs(PID).length!=0){
var arrD = GetSonDeptIDs(PID)
for(var i=0;i<arrD.length;i++){
StrDEPT+="<option value=" + arrD[i] + ">" + ReNull(IntNullCount) + GetDeptName(arrD[i]) + "</option>"
IntNullCount ++
WriteDeptOption(arrD[i])
IntNullCount --
}
}
}
var arrSonD = new Array()
function GetAllSonDeptIDs(PID){
if(GetSonDeptIDs(PID).length!=0){
var arrD = GetSonDeptIDs(PID)
for(var i=0;i<arrD.length;i++){
arrSonD[arrSonD.length] = arrD[i]
GetAllSonDeptIDs(arrD[i])
}
}
}
function SetArrSonD(PID){
var d = new Array(PID)
arrSonD = d
GetAllSonDeptIDs(PID)
}
function ReNull(t){
var k = ""
for(var i=1;i<=t;i++){
k +="-"
}
return k
}
function WD(){
var s = '<select size="1" name="DeptID" onchange="ChangeDept(this.value)"><option value=0>请选择部门</option>'
WriteDeptOption(0)
s += StrDEPT
s += "</select>"
tdSel0.innerHTML = s
}
function GetOption(IDs){
var s=""
for(var i=0;i<IDs.length;i++){
if(!GetName(IDs[i])=="")
s += "<option value=" + IDs[i] + ">" + GetName(IDs[i]) + "</option>"
}
return s
}
function GetName(ID){
for(var i=0;i<arrAllID.length;i+=3){
if(arrAllID[i]==ID)return arrAllID[i+2]
}
return ""
}
function GetDeptIDs(DeptID){
var arr = new Array()
for(var i=0;i<arrAllID.length;i+=3){
if(arrAllID[i+1]==DeptID)arr[arr.length]=arrAllID[i]
}
return arr
}
function ChangeDept(ID){
var s = "<select name=Sel1 size=15 <%If Not IsSelOne Then%>multiple<%End If%>>"
if(IsSelSon){
SetArrSonD(ID)
for(var i=0;i<arrSonD.length;i++){
s+= GetOption(GetDeptIDs(arrSonD[i]))
}
}
else{
s+= GetOption(GetDeptIDs(ID))
}
s+= "</select>"
tdSel1.innerHTML = s
}
function AddToSel(ID){
<%If IsSelOne Then%>
arrSelID[0]=ID
return
<%End If%>
for(var i=0;i<arrSelID.length;i++){
if(arrSelID[i]==ID){
return;
}
}
arrSelID[arrSelID.length]=ID
}
function DelFromSel(ID){
for(var i=0;i<arrSelID.length;i++){
if(arrSelID[i]==ID)delete arrSelID[i];
}
}
function doReWriteSel(){
var s = "<select name=Sel2 size=16 <%If Not IsSelOne Then%>multiple<%End If%>>"
s+= GetOption(arrSelID)
s+= "</select>"
tdSel2.innerHTML = s
}
function doAdd(){
f = document.forms[0]
for(var i=0;i<f.Sel1.length;i++){
if(f.Sel1[i].selected)AddToSel(f.Sel1[i].value)
}
doReWriteSel()
}
function doDel(){
f = document.forms[0]
for(var i=0;i<f.Sel2.length;i++){
if(f.Sel2[i].selected)DelFromSel(f.Sel2[i].value)
}
doReWriteSel()
}
function doEnd(){
var k1=k2=""
f = document.forms[0]
for(var i=0;i<f.Sel2.length-1;i++){
k1 += f.Sel2[i].value + ","
k2 += f.Sel2[i].text + ","
}
if(f.Sel2.length>0){
k1 += f.Sel2[i].value
k2 += f.Sel2[i].text
}
var k = new Array()
k[0]=k1
k[1]=k2
window.returnValue=k
window.close()
}
</script>
</head>
<body topmargin="0" leftmargin="10" onload="WD();doReWriteSel()" bgcolor="#dedfde">
<form method="POST" action="SelAccount.asp" webbot-action="--WEBBOT-SELF--">
<br>
<table border="0" cellpadding="0" cellspacing="0" width=98% align=right>
<tr>
<td id=tdSel0><select size="1" name="DeptID" onchange="ChangeDept(this.value)"></select></td>
<td></td>
<td rowspan="2" id=tdSel2><select size="16" name="Sel2">
</select></td>
</tr>
<tr>
<td id=tdSel1><select size="15" name="Sel1">
</select> </td>
<td width="80">
<p align="center">
<input type="button" value="选择->" name="B1" onclick="doAdd()">
<br><br>
<input type="button" value="<-删除" name="B1" onclick="doDel()">
</td>
</tr>
<tr>
<td><input type=checkbox id=checkbox1 name=checkbox1 onclick="IsSelSon=this.checked;ChangeDept(DeptID.value)">包含子部门人员</td>
<td></td>
<td align=right><input type="button" value="确定" onclick="doEnd()" name="B2"> </td>
</tr>
</table>
<p><br>
</p>
<p> </p>
</form>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -