package huayi.xt.tree;
import java.sql.*;
import javax.servlet.*;
public class tree {
huayi.gg.dbConn.dbConn DBbean=new huayi.gg.dbConn.dbConn();
huayi.gg.checkhtml.checkhtml checkhtml=new huayi.gg.checkhtml.checkhtml();
String BMMC;
public void init(javax.servlet.jsp.JspWriter out,javax.servlet.http.HttpServletRequest request,javax.servlet.http.HttpServletResponse response,int lc[]) throws Exception {
out.println("<title>用jsp种树</title>");
dowith(out,request,response);
buildTree(out,0,0,lc);//初始调用
}
private void dowith(javax.servlet.jsp.JspWriter out,javax.servlet.http.HttpServletRequest request,javax.servlet.http.HttpServletResponse response) throws Exception
{
int id;
//String pBMBH="";
String ID="",BMBH="";
String PID=request.getParameter("PID");
if(PID==null||PID.equals(""))return; //如果没有当前部门,返回
String action=new String(request.getParameter("action").getBytes("ISO-8859-1"));
String BMMC=new String(request.getParameter("BMMC").getBytes("ISO-8859-1"));
if(action.equals("添加部门"))
if(BMMC.equals("")) //新添加部门名称为空则不操作
return;
else{
BMMC=checkhtml.toHTMLString(BMMC);
boolean ok=true;
String BB="";
String sql1="select BMMC from T_QYJGSB where PID="+PID; //新添加部门不允许与兄弟部门同名
ResultSet rs1=DBbean.executeQuery(sql1);
while (rs1.next())
{BB=rs1.getString("BMMC");
if (BB.equals(BMMC)) {ok=false;break;}
}
if (!ok) { response.sendRedirect("XT_JGSZ_tjcfts.jsp");}
else //符合条件的部门添加入表T_QYJGSB及T_BMXXB
{
/* int parentid=Integer.parseInt(PID);
String sql3="select BMBH from T_QYJGSB where id="+parentid;
ResultSet rs3=DBbean.executeQuery(sql3);
while (rs3.next())
{
pBMBH=rs3.getString("BMBH");
} */
BMBH= DBbean.executeProcedure("BM"); //BMBH=create(pBMBH);
DBbean.executeUpdate("insert into T_QYJGSB(PID,BMMC,BMBH) values('"+PID+"','"+BMMC+"','"+BMBH+"')");
String CLSJ=getCurrentDate();
DBbean.executeUpdate("insert into T_BMXXB(BMBH,BMMC,CLSJ) values('"+BMBH+"','"+BMMC+"','"+CLSJ +"')");
}
}
else if(action.equals("删除部门"))
{
id=Integer.parseInt(PID);
delete(id);
}
}
private void delete(int id) throws Exception
{
String sql3="select BMBH from T_QYJGSB where id="+id;
ResultSet rs3=DBbean.executeQuery(sql3);
while(rs3.next())
{
String BMBH=rs3.getString("BMBH");
int n=DBbean.executeUpdate("delete from T_BMXXB where BMBH='"+BMBH+"'");
}
DBbean.executeUpdate("delete from T_QYJGSB where id="+id);
String sql="select * from T_QYJGSB where PID="+id; //删除id的所有子部门
ResultSet rs=DBbean.executeQuery(sql);
while(rs.next())
delete(rs.getInt("id"));
}
private void buildTree(javax.servlet.jsp.JspWriter out,int PID,int level,int lc[]) throws Exception
{ // 注:PID为0表示根结点
level++;
ResultSet rs1=DBbean.executeQuery("select * from T_QYJGSB where PID="+PID+" order by id");
int count=0; //count记录当前节点兄弟总数;
while(rs1.next()){count++;}
//out.print(count);
ResultSet rs=DBbean.executeQuery("select * from T_QYJGSB where PID="+PID+" order by id");
int turn=0; //turn记录当前节点排行;
while(rs.next()) {
turn++;
if (turn==count) { lc[level]=1; } else { lc[level]=0; } //lc数组作用:记录每个节点回溯到其起始祖先是否最后一个孩子,以决定画verline.gif或blank.gif或branch-end.gif
out.println("<nobr><div>");
for (int k=level+1;k<=14;k++) lc[k]=2;
for (int i=2;i<=level;i++)
{if (lc[i]==0) { out.print("<img src=\"image/verline.gif\"> ");}
else {if(lc[i-1]==0) { out.print("<img src=\"image/verline.gif\"> ");}
else if ((lc[i+1]!=1)&&(lc[i+1]!=0)) { out.print("<img src=\"image/branch-end.gif\"> "); }
else {out.print("<img src=\"image/blank.gif\"> ");}
}}
int a=rs.getInt("id");
String b=rs.getString("BMMC");
if(has_child(a)) { //非叶子节点情况
if(level==1) //根结点
{out.print("<img alt=\"展开\" style=\"cursor:hand;\" onclick=\"myClick3('"+a+"');\" id=\"img"+a+"\" src=\"image/minus-begin.gif\"> ");}
else if(lc[level]==1) //最后一个孩子
{out.print("<img alt=\"展开\" style=\"cursor:hand;\" onclick=\"myClick2('"+a+"');\" id=\"img"+a+"\" src=\"image/plus-end.gif\"> ");}
else //非最后一个孩子
{out.print("<img alt=\"展开\" style=\"cursor:hand;\" onclick=\"myClick('"+a+"');\" id=\"img"+a+"\" src=\"image/plus.gif\"> ");}
out.print("<img id=\"im"+a+"\" src=\"image/closedfold.gif\"> <span onclick=\"myClick1('"+a+"');\" style=\"cursor:default;\" id=\"span"+a+"\"><a href='XT_JGSZ_xx.jsp?id=" +a+"' target=iframe>"+b+"</a></span>");
if (level>=2) //初始页面时,2层以上部门隐藏
out.println("<div style=\"display:none;\" id=\"div"+a+"\">");
else out.println("<div style=\"display:block;\" id=\"div"+a+"\">");
buildTree(out,a,level,lc); //递归调用
out.println("</div>");
} else //叶子节点情况
{ResultSet rs2=DBbean.executeQuery("select BMBH from T_QYJGSB where id="+a);
while(rs2.next()){String BMBH=rs2.getString("BMBH");
if(level==1) //根结点
{out.print("<img src=\"image/minus-begin-only.gif\"> ");}
else if(lc[level]==1) //最后一个孩子
{out.print("<img src=\"image/minus-end.gif\"> ");}
else //非最后一个孩子
{out.print("<img src=\"image/minus.gif\"> ");}
out.print("<img src=\"image/globe.gif\"> <span onclick=\"myClick1('"+a+"');\" style=\"cursor:default;\" id=\"span"+a+"\"><a href='XT_JGSZ_xx.jsp?id=" +a+"' target=iframe>"+b+"</a></span>");}
}
out.println("</div></nobr>");
}
rs.close();
rs=null;
}
private boolean has_child(int PID) throws Exception { //判断PID节点是否有孩子
ResultSet rs=DBbean.executeQuery("select * from T_QYJGSB where PID="+PID+" order by id");
return rs.next();
}
public String getOption() throws Exception { // 得到下拉部门列表
String option="";
ResultSet rs=DBbean.executeQuery("select * from T_QYJGSB order by id");
while(rs.next())
option+="<option value="+rs.getInt("id")+">"+rs.getString("BMMC")+"</option>\n";
return option;
}
private String getCurrentDate()//得到当前系统时间
{
return (new java.text.SimpleDateFormat ("yyyy-MM-dd")).format(new java.util.Date());
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
td.rar_TD_td-scdma_土地
共881个文件
gif:424个
css:86个
class:78个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 137 浏览量
2022-09-21
05:19:17
上传
评论
收藏 2.05MB RAR 举报
温馨提示
这个是我们做土地局的一个项目。感觉不错。欢迎下载
资源详情
资源评论
资源推荐
收起资源包目录
td.rar_TD_td-scdma_土地 (881个子文件)
page.java.bak 3KB
common.css.bak 1KB
SmSendSampleRun.bat 93B
SmartUpload.class 13KB
EditWebhelper.class 6KB
tree.class 6KB
Utility.class 5KB
dbConn.class 5KB
dbConn.class 5KB
dbConn.class 5KB
File.class 5KB
zjh.class 5KB
dbConn.class 5KB
dbConn_bak.class 5KB
dbConn.class 5KB
dbConn.class 5KB
dbConn.class 5KB
dbConn.class 5KB
zjh.class 4KB
EditBean.class 4KB
AboutURL.class 4KB
staticTree.class 4KB
jmXX.class 4KB
DataServerImpl_Stub.class 3KB
page.class 3KB
UploadWebHelper.class 3KB
dbConndb.class 3KB
dbConn.class 3KB
dbConn.class 3KB
Sender.class 3KB
dbConn.class 3KB
TimeStamp.class 3KB
UploadBean.class 3KB
GetMacAddress.class 3KB
SmSendSampl1e.class 2KB
Base64.class 2KB
Base64.class 2KB
Base64.class 2KB
SmSendSample.class 2KB
RemotePic.class 2KB
personalmessage.class 2KB
personalmessage041110.class 2KB
personalmessage.class 2KB
cao.class 2KB
personalmessage.class 2KB
TimeDate.class 2KB
zhuceKL.class 2KB
Crypt.class 2KB
publicmessage.class 2KB
tdComp.class 2KB
Show.class 2KB
Show.class 2KB
xtrz.class 2KB
YanZ.class 2KB
Files.class 2KB
xtrz.class 1KB
counter.class 1KB
Request.class 1KB
publicmessage.class 1KB
publicmessage.class 1KB
getHZ.class 1KB
getHZ.class 1KB
nowtime.class 1KB
FileReadWriteTest.class 1KB
getip.class 1KB
checkhtml.class 1KB
getdate.class 1KB
leafBM.class 1KB
change.class 1KB
change.class 1KB
change.class 1KB
counter.class 811B
contraststr.class 691B
Show.class 648B
Constants.class 501B
SmInfo.class 481B
getFHZ.class 480B
getHZ.class 479B
random.class 383B
EwingSmInterface.class 364B
SmartUploadException.class 260B
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
Editor.css 3KB
共 881 条
- 1
- 2
- 3
- 4
- 5
- 6
- 9
weixin_42653672
- 粉丝: 93
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 封装swagger组件,提供全新UI以及无状态登录接口调用解决方案
- 小龙坎支局2024年4月渠道积分核对数据.xlam
- onlyoffice搭建及与alist使用的view.html
- Quadcopter-UAV-attitude-estimation-linux常用命令大全demo
- Quadcopter-UAV-attitude-estimation-based-on-数据库课程设计
- pbdlib-python-master.zip
- 43904245495352013_base.apk
- 基于springboot+vue + redis的工作流审批系统
- 【qt基础语法及实际案例解析】qt基础语法及实际案例解析
- 结课作业.psd
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0