delforms.jsp
4.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="weaver.general.Util" %>
<jsp:useBean id="forminfo" class="weaver.workflow.form.FormManager" scope="page"/>
<jsp:useBean id="FormMainManager" class="weaver.workflow.form.FormMainManager" scope="page"/>
<jsp:useBean id="FormComInfo" class="weaver.workflow.form.FormComInfo" scope="page" />
<jsp:useBean id="RecordSet" class="weaver.conn.RecordSet" scope="page" />
<%
String[] delete_form_id_Array = request.getParameterValues("delete_form_id");
String[] delete_newform_id_Array = request.getParameterValues("delete_newform_id");
String oldformids = Util.null2String(request.getParameter("oldformids"));
String newformids = Util.null2String(request.getParameter("newformids"));
String dialog = Util.null2String(request.getParameter("dialog"));
String isfromformbase = Util.null2String(request.getParameter("isfromformbase"));
if(!"".equals(oldformids) && delete_form_id_Array==null){
delete_form_id_Array = Util.TokenizerString2(oldformids, ",");
}
if(!"".equals(newformids) && delete_newform_id_Array==null){
delete_newform_id_Array = Util.TokenizerString2(newformids, ",");
}
if(delete_newform_id_Array!=null){//新表单删除
for (int i = 0; i < delete_newform_id_Array.length; i++){
int formid = Util.getIntValue(delete_newform_id_Array[i], 0);
RecordSet.executeSql("select isvirtualform from ModeFormExtend where formid="+formid);
int isvirtualform = 0;
if(RecordSet.next()){
isvirtualform = RecordSet.getInt("isvirtualform");
}
if(isvirtualform!=1){
RecordSet.executeSql("select tablename from workflow_bill where id="+formid);
if(RecordSet.next()){//删除主表
String tablename = RecordSet.getString("tablename");
RecordSet.executeSql("drop table "+tablename);
if((RecordSet.getDBType()).equals("oracle")){
//RecordSet.executeSql("drop trigger "+tablename+"_Id_Trigger");
RecordSet.executeSql("select * from user_triggers where upper(trigger_name)=upper('"+tablename+"_Id_Trigger')");
if(RecordSet.next()){
RecordSet.executeSql("drop trigger "+tablename+"_Id_Trigger");
}
RecordSet.executeSql("drop sequence "+tablename+"_Id");
}
}
}
RecordSet.executeSql("delete from workflow_bill where id="+formid);//基本信息删除
RecordSet.executeSql("select id from workflow_billfield where fieldhtmltype=5 and billid="+formid);
while(RecordSet.next()){//选择框字段关联表删除
int fieldid = RecordSet.getInt("id");
RecordSet.executeSql("delete from workflow_SelectItem where fieldid="+fieldid);
}
RecordSet.executeSql("delete from workflow_billfield where billid="+formid);//字段删除
RecordSet.executeSql("select id,tablename from Workflow_billdetailtable where billid="+formid);
while(RecordSet.next()){//删除明细表
if(isvirtualform!=1){
String tablename = RecordSet.getString("tablename");
RecordSet.executeSql("drop table "+tablename);
}
RecordSet.executeSql("delete from Workflow_billdetailtable where id="+RecordSet.getInt("id"));//明细表删除
}
//删除行列规则、表单模板等信息
RecordSet.executeSql("delete from workflow_formdetailinfo where formid="+formid);
RecordSet.executeSql("delete from workflow_nodehtmllayout where formid="+formid+" and isbill=1");
RecordSet.executeSql("delete from workflow_nodeform_form where formid="+formid+" and isbill=1");
RecordSet.executeSql("delete from workflow_nodeformgroup_form where formid="+formid+" and isbill=1");
RecordSet.executeSql("delete from ModeFormExtend where formid="+formid);//虚拟表单删除
RecordSet.executeSql("delete from AppFormInfo where formid="+formid);//删除表单建模和应用的关联
}
}
if(delete_form_id_Array!=null){//旧表单删除
FormMainManager.DeleteForm(delete_form_id_Array);
FormComInfo.removeFormCache();
}
String ajax=Util.null2String(request.getParameter("ajax"));
if(isfromformbase!=null&&isfromformbase.equals("1")){
response.sendRedirect("/formmode/setup/formbase.jsp?isclose=1");
}else{
if("1".equals(dialog)){
response.sendRedirect("/workflow/form/editform.jsp?isclose=1&isValue=1&ajax="+ajax);
}else{
response.sendRedirect("/workflow/form/manageform.jsp?ajax="+ajax);
}
}
%>