延长审限功能扩展

来源:互联网 发布:java电商架构 编辑:程序博客网 时间:2024/06/08 15:27

    在延长审限的功能扩展中碰到了一些问题,特此记录

1.对延审数据的状态设置。

    在新建延审申请的时候,当进入input界面时,就需要提前将状态设置好,001  新建状态。 原因是:input.jsp界面承担的功能不仅是新建,还有查看功能。为此,需要在进入

界面之前设置好当前的状态,保证进入后能够分辨清楚显示的格式。并且,在送审之前保持001的新建状态,能够进行对该申请的修改。

    其次,进入input界面时,申请人和申请时间都会默认生成,数据为当前登录用户和当前时间。 在界面上使用${online.userName}来接收当前登录用户的信息,时间就需要自己

使用js的方式去拼接,并且对位数进行处理。但是,界面的显示归显示,数据存储的时候还是需要使用隐藏域的形式去传递参数。

   再次,当保存之后跳转到list界面中。此时List界面中的显示为修改和送审两个按钮。 点击送审时,使用confirm提示,保证良好的用户体验。送审实质上是调用的ajax的方式,

其中最主要的操作还是对状态的改变,当提交之后需要在后台对状态进行处理。 变为002,为在再审状态。

2.在案件审批下的操作。

    进入案件审批的第一步是整个案件审批的关键,当点击连接时,跳转入listTwo.jsp。此时,需要显示的不仅有延审的信息,还有案件的基本信息。所以,此时需要在service接口中声明相应的方法,并最终在dao层中,完成对方法的完善。 此时使用的是连接查询,并规定排序的方式等等。

    在action中调用此方法获取分页后的列表,此时能够正常显示列表吗?答案是否定的,listTwo.jsp源自案件基本信息列表,所以其中的name (案件对象.属性信息)都需要

修改,所以在上一部的操作中还需要对连接查询的东西重新赋表明,使用 select * from (连接查询) t 。 此时,在界面中将案件对象全部修改为t,才能正常接收信息。当然,隐藏域form中的url信息也需要修改。

    让我惊讶的是,原来关于案件信息的查询条件竟然不需要修改。 查看源代码得知: 例:${param['filter_EQS_caseProcedure']}。 在其中filter是查询时的过滤条件,EQS是框架中对信息的处理条件:EQS表示是String的方式 EQ表示equals。  所以,真正处理的字段其实是caseProcedure。 那么在DAO层中的sql语句中已经查询到了这个字段,并且重命名为t。 与框架中对字段处理时,默认使用t一致。   所以,才造成了这里不需要修改的结果。

    此时的查询条件还不够,只有案件信息中原来的查询字段。所以,我需要添加一些关于延审的查询条件。

还有一处错误:在listTwo界面的c:foreach循环中使用了Combox:Combox的循环方式,我没有注意这里的name属性和inputTwo界面中该字段的name是一致的,造成无法正常显示,原因是:此时循环中存储的是数据库中所有满足一定条件的该字段的信息,是一个list。 而name一致的情况下,Struts2默认会调用的是listTwo界面传过去的,是一个list。

所以才无法正常显示,解决方式:只需要改掉其中一个的name就可以了

0 0
原创粉丝点击