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

📄 selaccount.asp

📁 功能齐全的oa系统
💻 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>
  &nbsp; </p>
  <p> </p>
</form>

</body>

</html>

⌨️ 快捷键说明

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