<%@ page contentType="text/html;charset=Big5"%>
<%@ include file="orgConnInclude.jsp"%>
<%
request.setCharacterEncoding("big5");
PreparedStatement ps=null;
ResultSet rs=null;
String queryCount=" select count(*) "+
" from ngb_org "+
" where total like ? ORDER BY TOTAL ";
String queryName=" select * "+
" from ngb_org "+
" where total like ? ORDER BY TOTAL ";
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Big5">
<title>管理組織架構</title>
<style type="text/css">
<!--
.style1 {color: #FFFFFF}
.style2 {color: #0066FF}
-->
</style>
</head>
<body>
<form action="orgInsert.jsp">
<fieldset>
<legend align="Right">
<span class="style2">新增組織架構</span>
</legend>
<p align="left" class="style2">所 屬 部 門
<select name="fDep">
<optgroup label="總經理室">
<option value="總經理室">總經理室
<%
try{
int i=1;
ps=conn.prepareStatement(queryCount);
ps.setString(1, "A10%");
rs=ps.executeQuery();
int result=1;
while(rs.next())
{ result++;}
//out.println(result);
for( i=1; i<=result; i++){
ps=conn.prepareStatement(queryName) ;
String queryNameCondition="A"+(9+i)+"%";
//out.println(queryNameCondition);
ps.setString(1, queryNameCondition);
ResultSet ors1=ps.executeQuery();
String qa=null;
String qaTemp=null;
String qaTemp1=null;
String obdep=null;
String ocdep=null;
while( ors1.next()){
qa=ors1.getString("total");
qaTemp=qa.substring(3,5);
qaTemp1=qa.substring(3,6);
%>
<%
queryNameCondition=qaTemp1+"%";
//out.println(queryNameCondition);
ps.setString(1, queryNameCondition);
ResultSet ors2=ps.executeQuery();
int oresult1=1;
while(ors2.next())
{ oresult1++;}
//out.println(result1);
for( i=1; i<=oresult1; i++){
ps=conn.prepareStatement(queryName) ;
ps.setString(1, queryNameCondition);
ResultSet ors3=ps.executeQuery();
String qb=null;
String qbTemp=null;
String qbTemp1=null;
while( ors3.next()){
qb=ors3.getString("total");
qbTemp=qb.substring(3,5);
qbTemp1=qb.substring(3,6);
obdep=ors3.getString("name");
%>
<br>
<optgroup label="<%=obdep%>">
<option value="<%=obdep%>"><%=obdep%>
<%
ps=conn.prepareStatement(queryCount);
queryNameCondition=qbTemp1+"%";
//out.println(queryNameCondition);
ps.setString(1, queryNameCondition);
ResultSet ors4=ps.executeQuery();
int oresult2=1;
while(ors4.next())
{ oresult2++;}
//out.println(result);
for( i=1; i<=oresult2; i++){
ps=conn.prepareStatement(queryName) ;
ps.setString(1, queryNameCondition);
ResultSet ors5=ps.executeQuery();
String qc=null;
String qcTemp=null;
String qcTemp1=null;
while( ors5.next()){
qc=ors5.getString("total");
qcTemp=qc.substring(3,5);
qcTemp1=qc.substring(3,6);
ocdep=ors5.getString("name");
%>
<option value=<%=ocdep%>><%=ocdep%>
<br>
<%
ps=conn.prepareStatement(queryCount);
queryNameCondition=qcTemp1+"%";
//out.println(queryNameCondition);
ps.setString(1, queryNameCondition);
ResultSet rs6=ps.executeQuery();
int result3=1;
while(rs6.next())
{ result3++;}
//out.println(result3);
for( i=1; i<result3; i++){
ps=conn.prepareStatement(queryName) ;
ps.setString(1, queryNameCondition);
ResultSet rs7=ps.executeQuery();
while( rs7.next()){}}
}
ps=conn.prepareStatement(queryCount);
queryNameCondition="E"+(i+9)+"%";
//out.println(queryNameCondition);
ps.setString(1, queryNameCondition);
ResultSet rs8=ps.executeQuery();
int result4=1;
while(rs8.next())
{ result4++;}
//out.println(result3);
for( i=1; i<=result4; i++){
ps=conn.prepareStatement(queryName) ;
ps.setString(1, queryNameCondition);
ResultSet rs9=ps.executeQuery();
while(rs9.next()){
}}
%> </optgroup><%
}
}}
}
}
%>
<!--optgroup label="製造處">
<option value="製造處">製造處
<option value="製造一部">製造一部
<option value="製造二部">製造二部
<option value="製造三部">製造三部
</optgroup-->
<%
}
catch(SQLException ose1)
{ose1.printStackTrace();}
%>
</select>
</p>
<p align="left" class="style2">新增部門名稱
<input type="text" name="dep"/>
<input type="submit" id="Submit" value="確認">
</p>
</fieldset>
</form>
<font color="#0099FF" size=4></font>
<center>
<font color="#0099FF" size=4><center>******有限公司組織架構圖</center></font>
<table width="100%" border="1" cellspacing="1" cellpadding="1">
<tr>
<!--th width="7%" rowspan="2" bgcolor="#0099FF" scope="col"> </th-->
<th width="29%" bgcolor="#0099FF" scope="col"><span class="style1">總經理</span></th>
<th width="19%" bgcolor="#0099FF" scope="col"><span class="style1">總經理直屬</span></th>
<th width="19%" bgcolor="#0099FF" scope="col"><span class="style1">處級所屬</span></th>
<th width="19%" bgcolor="#0099FF" scope="col"><span class="style1">部級所屬</span></th>
<th width="19%" bgcolor="#0099FF" scope="col"><span class="style1">刪除部門</span></th>
</tr>
<%
try{
int i=1;
ps=conn.prepareStatement(queryCount);
ps.setString(1, "A10%");
rs=ps.executeQuery();
int result=1;
while(rs.next())
{ result++;}
//out.println(result);
for( i=1; i<=result; i++){
ps=conn.prepareStatement(queryName) ;
String queryNameCondition="A"+(9+i)+"%";
//out.println(queryNameCondition);
ps.setString(1, queryNameCondition);
ResultSet rs1=ps.executeQuery();
String qa=null;
String qaTemp=null;
String qaTemp1=null;
while( rs1.next()){
qa=rs1.getString("total");
qaTemp=qa.substring(3,5);
qaTemp1=qa.substring(3,6);
%>
<tr bgcolor="#F0F8FF">
<td width="29%" height="18"><%=rs1.getString("name")%></td>
<td width="19%" height="18"> </td>
<td width="19%" height="18"> </td>
<td width="19%" height="18"> </td>
<td width="19%" height="18"> <!--a href="orgDelete.jsp?name=<%=rs1.getString("name")%>">刪除部門</a--></td>
</tr>
<%
queryNameCondition=qaTemp1+"%";
//out.println(queryNameCondition);
ps.setString(1, queryNameCondition);
ResultSet rs2=ps.executeQuery();
int result1=1;
while(rs2.next())
{ result1++;}
//out.println(result1);
for( i=1; i<=result1; i++){
ps=conn.prepareStatement(queryName) ;
ps.setString(1, queryNameCondition);
ResultSet rs3=ps.executeQuery();
String qb=null;
String qbTemp=null;
String qbTemp1=null;
while( rs3.next()){
qb=rs3.getString("total");
qbTemp=qb.substring(3,5);
qbTemp1=qb.substring(3,6);
%>
<tr bgcolor="#F0F8FF">
<td width="29%" height="18"> </td>
<td width="19%" height="18"><%=rs3.getString("name")%></td>
<td width="19%" height="18"> </td>
<td width="19%" height="18"> </td>
<td width="19%" height="18"><a href="orgDelete.jsp?name=<%=rs3.getString("name")%>">刪除部門</a></td>
</tr>
<%
ps=conn.prepareStatement(queryCount);
queryNameCondition=qbTemp1+"%";
//out.println(queryNameCondition);
ps.setString(1, queryNameCondition);
ResultSet rs4=ps.executeQuery();
int result2=1;
while(rs4.next())
{ result2++;}
//out.println(result);
for( i=1; i<=result2; i++){
ps=conn.prepareStatement(queryName) ;
ps.setString(1, queryNameCondition);
ResultSet rs5=ps.executeQuery();
String qc=null;
String qcTemp=null;
String qcTemp1=null;
while( rs5.next()){
qc=rs5.getString("total");
qcTemp=qc.substring(3,5);
qcTemp1=qc.substring(3,6);
%>
<tr bgcolor="#F0F8FF">
<td width="29%" height="18"> </td>
<td width="19%" height="18"> </td>
<td width="19%" height="18"><%=rs5.getString("name")%></td>
<td width="19%" height="18"> </td>
<td width="19%" height="18"><a href="orgDelete.jsp?name=<%=rs5.getString("name")%>">刪除部門</a></td>
</tr>
<%
ps=conn.prepareStatement(queryCount);
queryNameCondition=qcTemp1+"%";
//out.println(queryNameCondition);
ps.setString(1, queryNameCondition);
ResultSet rs6=ps.executeQuery();
int result3=1;
while(rs6.next())
{ result3++;}
//out.println(result3);
for( i=1; i<=result3; i++){
ps=conn.prepareStatement(queryName) ;
ps.setString(1, queryNameCondition);
ResultSet rs7=ps.executeQuery();
while( rs7.next()){
%>
<tr bgcolor="#F0F8FF">
<td width="29%" height="18"> </td>
<td width="19%" height="18"> </td>
<td width="19%" height="18"> </td>
<td width="19%" height="18"><%=rs7.getString("name")%></td>
<td width="19%" height="18"><a href="orgDelete.jsp?name=<%=rs7.getString("name")%>">刪除部門</a></td>
</tr>
<%
ps=conn.prepareStatement(queryCount);
queryNameCondition="E"+(i+9)+"%";
//out.println(queryNameCondition);
ps.setString(1, queryNameCondition);
ResultSet rs8=ps.executeQuery();
int result4=1;
while(rs8.next())
{ result4++;}
//out.println(result3);
for( i=1; i<=result4; i++){
ps=conn.prepareStatement(queryName) ;
ps.setString(1, queryNameCondition);
ResultSet rs9=ps.executeQuery();
while(rs9.next()){
rs9.getString("name"); %>
<%}}%>
<%}}%>
<% }}%>
<% }}%>
<%}}%>
</table>
</body>
<%}
catch(SQLException se1)
{se1.printStackTrace();}
finally{conn.close();}%>
</html>
修改后添加的时候可以动态显示父部门了