//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 success!!!!");
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> </p>
<p> </p>
<p> </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%> 刪除成功!</div> <br> <div align="center" class="style2"><a href="orgManage.jsp">繼續刪除</a> <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>