庭审管理中动态显示今天起7日内的数据,动态查询,并根据已有数据判断新增和修改时的时间冲突问题
来源:互联网 发布:mysql.tar.gz 编辑:程序博客网 时间:2024/04/29 07:23
拿到这个模块,有点慌神。因为技术比较浅薄。
仔细分析模块的结构,确定出几个技术难点:
1.动态查询法庭列表,完成动态列表的第一列。需要使用到c:foreach,并且需要从后台传入数据。
2.表头的生成,表头是根据当前的时间,查询到从今天起一周内的所有日期进行拼装,此时用到在网上查询的FORMAT函数,将时间转换成需要的格式。
3.动态给左、上两个条件确定的表格的每一个td,动态拼接一个ID。
4.设置按钮上周、下周、本周,进行对日期的动态查询。
分析到这里,顿时感觉一个头两个大。因为如果使用双层的<c:foreach>循环,必定造成id的动态分配有问题。于是,对一周的日期采用固定格式的方式,毕竟一周有7天这个是
固定的。并且如果需要给td动态id,那么最好的方式就是根据查询出的法庭的id以及日期td的id进行动态分配,所以给每个表头写id。
所以动态表格的建立成功,在生成动态表格的时候采用c:foreach中的begin和end属性,设置为1和7,varStatus设为k。 动态id=${houseId_td${k.index}}。拼接成功。在设置这个id的时候走入了一个误区:认为在进行对星期的跳转的时候,
每个动态id都必须与其他的不同。其实不必如此麻烦,只需要在进行星期跳转的时候,对td设置class属性,调用jquery中的$(".class").text("");方法,将值全部清空即可。
由于在点击上周、下周、本周按钮的时候需要进行对数据的查询,需要使用ajax的异步查询功能。所以单独设定一个方法命名为Click方法。 在其中定义了URL地址:设定action中的方法,以及传入的参数。值得注意的是,在参数传入周由于
是String格式的,所以需要将其转换成相应的格式,此时的格式是Date。 并且根据参数拼接相应的方法来完成对hql语句的动态拼接。在这里需要设定在传入的两个时间参数之间。使用filters.add(new PropertyFilter("GED_openTime", d1))及
filters.add(new PropertyFilter("LED_openTime", d2)),将查询到的数据返回到界面中。此时最重要的是根据houseId和循环次数J去动态拼接动态td中的显示内容。使用jquery的append函数进行拼接。将每一条数据拼接成为一个链接(实际就是
append里面使用a标签进行拼接)。添加onclick给a标签。
接下来继续分析需求:
5.根据连接查询数据库,并可以将每个标签对应的内容显示在一个view.jsp界面上。
6.查看流程:需要先预定法庭,编辑开庭排期之后,才能进行对笔录、预定人、预定单位的填写。
根据没一个连接去查询数据,显然是要使用ajax的异步查询操作。由于在上文写到的异步查询中已经查询到了全部的数据,内容全部存放在data.message中,所以此时最简便的操作是:给onlick="showList(id)"方法写参数,内容就是
data.message[i].id,就很轻松的找到了每一条数据的id,当点击的时候使用jquery easyui中的dialog方法,将view.jsp界面的内容显示在一个弹出框上,显示必要的信息。
由于流程的关系,预定法庭时我们只需要输入法庭用途、是否可公用、开庭日期、所在法庭、开始、结束时间。而在正式开庭的时候进行记录数据。 如果只是用一个界面,虽然能实现功能,但是需要使用很多c:if标签来完成不同时候对界面
的显示效果,这样并不好。所以我使用了两个界面。 相应的就需要在action中添加对应的方法,并且在list.jsp界面上添加相应的按钮。此时aciton方法就会有所不同,因为一个是新建,另一个是修改,这个功能的实现不难,暂且跳过。
7.开始时间和结束时间都是以开庭日期为标准的,在界面上只显示hh:mm:ss的格式,传递入后台的数据不全,需要去后台进行处理。
因为开始时间和结束时间的关系,所以我们需要进行后台拼接数据。 最开始的时候我是在实体类中进行的拼接,发现并没有成功,仔细想想发现如果在实体类中修改了方法,那么其他模块调用的时候会出现问题,并且修改了实体类的方法后
会造成数据插入失败。此时,采用的办法是修改jsp界面开始和结束时间的name属性(调用get和set方法的桥梁),在实体类中设置一个新的属性,例如beginTimes,添加get和set方法,并使用@TRANSIENT注解。于是在action的save方法中进行的操作:
拼接日期和时分秒,使之能够正确插入数据库。获取数据的时候使用的是beginTimes的get方法,但是将数据插入数据库时,使用的是beginTime的set方法,于是就需要对String进行转换,变成date类型。
- 庭审管理中动态显示今天起7日内的数据,动态查询,并根据已有数据判断新增和修改时的时间冲突问题
- 庭审管理中动态显示今天起7日内的数据,动态查询,并根据已有数据判断新增和修改时的时间冲突问题(2)
- 根据用户查询选择动态显示表的数据列
- 今天遇到的combox问题和动态显示时间问题
- 在已有数据的listbox中新增一行listitem
- 根据数据动态显示列及数据的SQL语句
- mybatis中修改数据库单一数据时,连带清空其他数据的问题【动态sql】
- DropDownList绑定动态数据并显示已经选中的数据
- Android 根据Edittext内容动态改变Listview显示的数据
- 关于QT4数据动态显示的问题
- ALV根据显示列动态修改行汇总列数据
- 数据网格中显示动态的信息
- ajax根据ID查询数据库并返回Json格式数据返回js,使用append显示到页面。判断json值为[]或者[[]]的问题。
- 使用该JavaBean可以将数据在JSP页面中以表格的形式显示出来,并具有动态排序、动态生成查询、自动分页功能
- sqlserver中根据时间类型查询这类型的数据
- PB对数据窗口的查询语句进行动态修改
- 关于jquery实现动态创建表格和动态显示数据的问题?
- 根据Gridview中选择的项 动态改变数据
- [Android] TextView的垂直滚动效果
- dinic模板 邻接矩阵
- 黑马程序员-----匿名内部类(黑马视频)
- 字符设备与块设备的区别
- HttpClient 实现跳转请求
- 庭审管理中动态显示今天起7日内的数据,动态查询,并根据已有数据判断新增和修改时的时间冲突问题
- NGUI-基础用法
- 爱情的记忆
- 第3章 表、栈、和队列 课后练习
- 【Android】android ndk r8 r9环境配置
- 奇数-幻方的程序设计
- [Android] ListView (普通列表控件) 的基本使用方法
- 关于python解析消息
- SharpZLib 使用方法