activiti自定义流程之自定义表单(三):表单列表及预览和删除
来源:互联网 发布:百度站长平台惊雷算法 编辑:程序博客网 时间:2024/05/19 12:13
注:(1)环境配置:activiti自定义流程之自定义表单(一):环境配置
(2)创建表单:activiti自定义流程之自定义表单(二):创建表单
自定义表单创建成功,要拿到activiti中使用,自然需要让创建activiti流程的人能够看到究竟有那些表单可用,各表单的效果是什么,因此就需要一个展示页面并提供预览功能。同时,增删改查四大功能是基础,自然都是需要的,我这里没有做表单修改,只简单的实现了删除。
我下载的ueditor插件中有基本的创建和预览代码,因此我就参考这些再度修改,而后实现简单的表达列表和预览、删除功能。
一、 表单列表页面formList.html:
<!DOCTYPE HTML><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <script type="text/javascript" charset="utf-8" src="../js/jquery-1.7.2.min.js?2023"></script> <link href="../my_css/a.css" rel="stylesheet" type="text/css" /> </head><body style="margin:0"><!-- fixed navbar --><!-- Docs page layout --><script type="text/javascript" charset="utf-8" src="../my_js/formList.js"></script><div style="width:100%;height:60px;background-color:#ccf;border:1px solid blue;text-decoration:none"> <img src="../images/activiti.png" style="width:20%;height:98%;overflow:hidden;float:left"/> <ul style="margin-left:30px;margin-top:10px; padding: 0px; font-size: 32px; width:60%;overflow:hidden;float:left"> <li><a href="#" onclick="toAdd();">新增表单</a></li> <li> | </li> <li><a href="#" onclick="formList();">表单列表</a></li> <li> | </li> <li><a href="#" onclick="createModel();">创建模型</a></li> </ul></div><div id="idv1" style="width:100%;position: absolute;height:auto"> <div id="formDiv" style="width:88%;height:auto;position:relative;float:left;margin-left:10px;margin-top:10px;"> <table id="ta1" style="width:100%;height:auto;text-align:center" border="1" cellpadding="0" cellspacing="0"> <tr style="background-color:#ccc"> <td style="width:100px;height:30px;font-size:25px">表单Id</td> <td style="width:100px;height:30px;font-size:25px">表单标题</td> <td style="font-size:25px">表单代码</td> <td style="width:100px;height:30px;font-size:25px">操作表单</td> </tr> </table> </div></div><div id="div2" style="top:100px;left:20%;width:60%;height:400px;position:absolute;background-color:grey;display:none;"> </div></body></html>
二、 js文件formList.js:
function toAdd(){window.location.href="../"; };function formList(){window.location.href="./formList.html"; };$(document).ready(function(){$.ajax({ type: 'POST', url : '/webFormTest/findForms.do', dataType : 'json', async:false, success : function(data){ //alert("保存成功"); console.log(data); for(var i=0;i<data.length;i++){ var form=data[i]; console.log(form); var tables = document.getElementById("ta1"); var tr = document.createElement("tr"); var td0=document.createElement("td"); var td1=document.createElement("td"); var td2=document.createElement("td"); var td3=document.createElement("td"); td0.innerText=form.formId; td1.innerText=form.formType; td2.innerText=form.form; td2.setAttribute("id",i); var a1=document.createElement("a"); var node1 = document.createTextNode(" 删除 "); a1.appendChild(node1); a1.setAttribute("href","#"); a1.setAttribute("id","a1"+i); a1.onclick=function(){ var id=this.id; var id1=id.substring(2); var formId=data[id1].formId; //console.log(document.getElementById(id).innerText); //console.log(); //先删除,后跳转 $.ajax({ type: 'POST', url : '/webFormTest/deleteForm.do', dataType : 'json', async:false, data:{"formId":formId}, success : function(){ window.location.href="./formList.html"; } }) }; var a2=document.createElement("a"); var node2 = document.createTextNode(" 预览 "); a2.appendChild(node2); a2.setAttribute("href","#"); a2.setAttribute("id","a2"+i); a2.onclick=function(){ //console.log(); //console.log(data); var id=this.id; var formId=id.substring(2); var form=data[formId].form; form.replace("{",""); form.replace("}",""); form.replace("|",""); //console.log(document.getElementById(id).innerText); win_parse=window.open('','','width=800,height=400,alwaysRaised=yes,top=100,left=200'); var str='<div style="width:500px;height:300px;border:1px solid grey">'+form+'</div>'; win_parse.document.write(str); win_parse.focus(); //document.getElementById("div2").write(str); }; td3.appendChild(a1); td3.appendChild(a2); tr.appendChild(td0); tr.appendChild(td1); tr.appendChild(td2); tr.appendChild(td3); tables.appendChild(tr); } }})})
三、 后台代码:
Controller类中相关方法:
@RequestMapping(value = "/findForms.do", method = RequestMethod.POST)@ResponseBodypublic Object findForms() {List<Map<String, String>> list = formService.findForms();return list;}@RequestMapping(value = "/deleteForm.do", method = RequestMethod.POST)@ResponseBodypublic Object deleteForm(HttpServletRequest request) {String formIde = request.getParameter("formId");formService.deleteForm(formIde);return null;}
Service类相关方法:
public Object addForm(String formType, String string);public void deleteForm(String formId);
serviceImp实现:
/** * 查询表单列表 * * @author:tuzongxun * @Title: findForms * @Description: TODO * @param @return * @date Mar 28, 2016 4:29:58 PM * @throws */public List<Map<String, String>> findForms() {Connection connection = this.getDb();Statement statement;List<Map<String, String>> list = new ArrayList<Map<String, String>>();try {statement = connection.createStatement();ResultSet resultSet = statement.executeQuery("select * from formtest");while (resultSet.next()) {Map<String, String> map = new HashMap<String, String>();String formString = resultSet.getString(2);// resultSet.getString(2);System.out.println("formString:" + formString);map.put("formId", resultSet.getString(1));map.put("formType", resultSet.getString(2));map.put("form", resultSet.getString(3));list.add(map);};} catch (Exception e) {e.printStackTrace();}return list;}/** * 删除表单 * * @author:tuzongxun * @Title: addForm * @Description: TODO * @param @param formType * @param @param string * @param @return * @date Mar 28, 2016 4:30:18 PM * @throws */public void deleteForm(String formId) {try {Connection connection = this.getDb();PreparedStatement ps = connection.prepareStatement("delete from formtest where formId=?");ps.setString(1, formId);ps.executeUpdate();connection.close();} catch (Exception e) {e.printStackTrace();}}
列表页面效果如图:
预览效果如图:
0 0
- activiti自定义流程之自定义表单(三):表单列表及预览和删除
- activiti自定义流程之自定义表单(三):表单列表及预览和删除
- activiti自定义流程之自定义表单(二):创建表单
- activiti自定义流程之自定义表单(二):创建表单
- activiti自定义流程之自定义表单(一):环境配置
- activiti自定义流程之自定义表单(一):环境配置
- activiti自定义流程之整合(三):整合自定义表单创建模型
- activiti自定义流程之整合(三):整合自定义表单创建模型
- activiti自定义流程之整合(四):整合自定义表单部署流程定义
- activiti自定义流程之整合(四):整合自定义表单部署流程定义
- activiti自定义流程之整合(五):启动流程时获取自定义表单
- activiti自定义流程之整合(五):启动流程时获取自定义表单
- activiti自定义流程之Spring整合activiti-modeler5.16实例(三):流程模型列表展示
- activiti自定义流程之Spring整合activiti-modeler实例(三):流程模型列表展示
- activiti自定义流程之整合(二):使用angular js整合ueditor创建表单
- activiti自定义流程之整合(二):使用angular js整合ueditor创建表单
- 如何使用activiti 5.18+自定义流程自定义表单
- activiti自定义流程之Spring整合activiti-modeler5.16实例(五):流程定义列表
- 欢迎使用CSDN-markdown编辑器
- 今天开始IOS开发, 三天热度
- mac安装mysql
- Django开发 hello world
- OpenCV杂记01
- activiti自定义流程之自定义表单(三):表单列表及预览和删除
- 虚拟机Ubuntu Server(宿主Win7)更新软件源
- Android4.4的init进程
- C++第二次实验
- Linux nano --比vim简单的文本编译器
- 苹果企业账号打包发布APP流程详解
- iOS学习笔记(十七)——文件操作(NSFileManager)
- VC7 HTML Dialog开发实例讲解
- 关于bootstrap-fileinput