EasyUI验证扩展
问题描述:
如上所示:当用户添加信息时,必须保证一个队伍一天只能有一条数据。所以在选择了报表日期的时候必须查询数据库里面当前队伍这一天的数据是否存在。如果不存在,即当前日期队伍没有数据,就可以进行数据添加;否则不能再进行添加。
前台页面如上所示,就是一个table,data-option属性里面写了自己的验证:validType:'reportDate'。而这个验证我们写在界面的js里。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | //验证扩展 日报验证(每个队伍一天只有一条日报) $.extend($.fn.validatebox.defaults.rules, { reportDate : { validator : function (value, param) { var response = $.ajax({ url: '/dh/rpt/fa/day/team/getDayTeam' , data: {reportDate:value}, async: false , type: 'get' }).responseText; var obj = JSON.parse(response); if (obj.length==0){ return true ; } else { return false ; } }, message : '该日期的日报已经存在' } }); |
在这个js里面主要是为了获取到我们填写的日期,并把它传到后台的controller的map里。后台进行查询,返回查询到的数据的条数。
1 2 3 4 5 6 7 8 9 10 11 12 | /** * 验证(每个小队每天只能有一个日报) * @param user * @return queryAll */ @RequestMapping (value= "/getDayTeam" ,method= {RequestMethod.GET}) @ResponseBody public List<Map<String, Object>> getDayTeam( @RequestParam Map<String, Object> map, User user) { map.put( "orgCode" , user.getOrg().getOrgCode()); List<Map<String, Object>> queryAll = queryService.queryAll( "DhRptFaDayTeamMapper" , "selectDayTeamByDateAndOrgCode" , map); return queryAll; } |
在后台的controller里面,通过获取到前台传递的日期进行查询queryAll。
<!--验证每个小队每天只能有一条日报 -小队--> <select id="selectDayTeamByDateAndOrgCode" parameterType="hashmap" resultType="hashmap"> <![CDATA[ select * from dh_rpt_fa_day_team dt where dt.bsflag='0' and to_char(dt.report_date,'yyyy-mm-dd') = #{reportDate} and dt.org_code = #{orgCode} ]]> </select>
通过数据库查询数据的条数。
如上左边数据库已经存在了一条2018-02-02日期的数据,当右边添加数据选择这个日期时,文本框提示该日期的日报已经存在,并且不能上报。
满意请支持一下:
yian
分类:
JavaEE
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)