JSP实现树型组织架构(5)--删除部门页面orgDelete.jsp

发表于:2007-07-04来源:作者:点击数: 标签:
//orgDelete.jsp 删除部门页面,由orgManage.jsp 而来 %@ page contentType=text/html;charset=Big5% %@ include file=orgConnInclude.jsp% %@ page import= java x. sql .*% % request.setCharacterEncoding(big5); String depName=request.getParameter(name
//orgDelete.jsp 删除部门页面,由orgManage.jsp 而来

<%@ page contentType="text/html;charset=Big5"%>
<%@ include file="orgConnInclude.jsp"%>
<%@ page import="javax.sql.*"%>
<%
request.setCharacterEncoding("big5");
String depName=request.getParameter("name");
//out.println(depName+"<br>");
String message=null;
boolean autoCommit=conn.getAutoCommit();

String query1=" select total "+
" from ngb_org "+
" where name=''"+depName+"'' ";

String query2=" select * "+
" from ngb_org "+
" where total like ? ";

String delete=" delete from ngb_org "+
" where total like ? ";

String delete1=" delete from ngb_org "+
" where name=? ";

String temp1=null;
String temp1a=null;
String temp1aa=null;
String temp1b=null;
try{
conn.setAutoCommit(false);
PreparedStatement ps=conn.prepareStatement(query1);
ResultSet rs1=ps.executeQuery();

while(rs1.next())
{temp1=rs1.getString("total");}
//out.println(temp1);
temp1a=temp1.substring(0,1);
temp1aa=temp1.substring(0,3);
temp1b=temp1.substring(3,6);
//out.println(temp1b);


/* 刪除部門級:第二層,所屬第三層,每個第三層所屬第四層一起刪除*/
if(temp1a.equals("B"))
{
ps=conn.prepareStatement(delete);
ps.setString(1, temp1);
int resultB1=ps.executeUpdate();
if(resultB1>0){
//out.println("delete B suclearcase/" target="_blank" >ccess!!!!");
ps=conn.prepareStatement(query2);
ps.setString(1, temp1b+"%");
ResultSet resultB2=ps.executeQuery();
while(resultB2.next()){
temp1=resultB2.getString("total");
String namec1=resultB2.getString("name");

temp1a=temp1.substring(0,1);
temp1aa=temp1.substring(0,3);
temp1b=temp1.substring(3,6);
//out.println(namec1);
//刪除子部門
ps=conn.prepareStatement(delete);
ps.setString(1, temp1);
int resultB3=ps.executeUpdate();
if(resultB3>0){
//out.println("delete C success!!!!");

ps=conn.prepareStatement(query2);
ps.setString(1, temp1b+"%");
ResultSet bD3=ps.executeQuery();
while(bD3.next()){

String totalc1=bD3.getString("total");
namec1=bD3.getString("name");
String temp1c=temp1.substring(0,1);
String temp1ca=temp1.substring(0,3);
String temp1cb=temp1.substring(3,6);
ps=conn.prepareStatement(delete);
ps.setString(1, temp1aa+"%");
//out.println(namec1);

ps=conn.prepareStatement(delete1);
ps.setString(1, namec1);
int resultC2=ps.executeUpdate();
if(resultC2>0)
{message=depName;}
}}}}}

/* 刪除部門級:第三層和第四層一起刪除*/

if(temp1a.equals("C")){
//刪除本部門
ps=conn.prepareStatement(delete);
ps.setString(1, temp1);
int resultC1=ps.executeUpdate();
if(resultC1>0){
//out.println("delete C success!!!!");
//刪除子部門
ps=conn.prepareStatement(query2);
ps.setString(1, temp1b+"%");
ResultSet rs2=ps.executeQuery();
while(rs2.next()){
String totalc1=rs2.getString("total");
String namec1=rs2.getString("name");
String temp1c=temp1.substring(0,1);
String temp1ca=temp1.substring(0,3);
String temp1cb=temp1.substring(3,6);
ps=conn.prepareStatement(delete);
ps.setString(1, temp1aa+"%");
//out.println(namec1);

ps=conn.prepareStatement(delete1);
ps.setString(1, namec1);
int resultC2=ps.executeUpdate();
if(resultC2>0)
{message=depName;}

}}}

//只刪除第4層
if(temp1a.equals("D"))
{
ps=conn.prepareStatement(delete);
ps.setString(1, temp1);
int result3=ps.executeUpdate();
if(result3>0)
{message=depName;}
}


%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Big5">
<title>刪除部門</title>
</head>
<body>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>

<table width="38%" border="1" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="17" bgcolor="#0099FF" scope="col"><div align="center" class="style1">信息刪除成功</div></td>
</tr>

<tr>
<td height="160" colspan="2" bgcolor="#E6F0FF" scope="row"><div align="center" class="style2">部門: <%=depName%> &nbsp;刪除成功!</div> <br> <div align="center" class="style2"><a href="orgManage.jsp">繼續刪除</a> &nbsp; &nbsp;&nbsp;<a href="orgView.jsp">返回組織架構</a></div></td>
</tr>
</table>


</body>
<%
conn.commit();
}
catch(SQLException se1)
{se1.printStackTrace();
conn.rollback();
}
finally{
conn.setAutoCommit(autoCommit);
conn.close();
}
%>
</html>



原文转自:http://www.ltesting.net