问题描述:

如上所示:当用户添加信息时,必须保证一个队伍一天只能有一条数据。所以在选择了报表日期的时候必须查询数据库里面当前队伍这一天的数据是否存在。如果不存在,即当前日期队伍没有数据,就可以进行数据添加;否则不能再进行添加。

前台页面如上所示,就是一个table,data-option属性里面写了自己的验证:validType:'reportDate'。而这个验证我们写在界面的js里。

//验证扩展  日报验证(每个队伍一天只有一条日报)
$.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里。后台进行查询,返回查询到的数据的条数。

/**
* 验证(每个小队每天只能有一个日报)
* @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日期的数据,当右边添加数据选择这个日期时,文本框提示该日期的日报已经存在,并且不能上报。

满意请支持一下:

  

easyui验证扩展的更多相关文章

  1. Jquery Easyui验证扩展,Easyui验证,Easyui校验,js正则表达式

    Jquery Easyui验证扩展,Easyui验证,Easyui校验,js正则表达式 >>>>>>>>>>>>>> ...

  2. easyui 表单和自定义验证扩展和js自定义返回值

    ================jsp==========================<form  method="post" id="regfrminp&qu ...

  3. 基于easyui的验证扩展

    基于easyui的验证扩展 ##前言 自己做项目也有好几年的时间了,一直没有时间整理自己的代码,趁春节比较闲,把自己以前的代码整理了一篇.这是基于easyui1.2.6的一些验证扩展,2012年就开始 ...

  4. easyUI 验证控件应用、自己定义、扩展验证 手机号码或电话话码格式

    easyUI 验证控件应用.自己定义.扩展验证 手机号码或电话话码格式 在API中   发现给的demo 中没有这个验证,所以就研究了下. 相关介绍省略,直接上代码吧! watermark/2/tex ...

  5. 【开发】Form Validate 表单验证 扩展应用

    目录: ★.文本输入框(easyui-textbox) ★.数字框(easyui-numberbox) ★.时间(easyui-datebox) ★.文本域(easyui-textbox easyui ...

  6. Util应用程序框架公共操作类(六):验证扩展

    前面介绍了仓储的基本操作,下面准备开始扩展查询,在扩展查询之前,首先要增加两个公共操作类,一个是经常要用到的验证方法,另一个是Lambda表达式的操作类. 很多时候,我们会判断一个对象是否为null, ...

  7. EasyUI 验证框使用方法

    使用过程中的一积累,备查. EasyUI 验证框使用方法://***************************missingMessage:未填写时显示的信息validType:验证类型见下示例 ...

  8. JQUERY EASYUI 验证框(VALIDATEBOX)用法

    Query EasyUI 验证框(ValidateBox)在表单的验证方面给我们提供了很方便的方法,下面来介绍一下验证框(ValidateBox)的详细用法(查看演示):HTML 代码 <inp ...

  9. Spring MVC 项目搭建 -6- spring security 使用自定义Filter实现验证扩展资源验证,使用数据库进行配置

    Spring MVC 项目搭建 -6- spring security使用自定义Filter实现验证扩展url验证,使用数据库进行配置 实现的主要流程 1.创建一个Filter 继承 Abstract ...

随机推荐

  1. asp.net -mvc框架复习(4)-ASP.NET MVC中的约定规则

    1.路由规则 using System;using System.Collections.Generic;using System.Linq;using System.Web;using System ...

  2. 关于mybatis 注解sql sum(参数)传参写法

    新手出道 验证了很久sum()里面带参数方式 #{参数}一直不行日志显示参数已经传进 但就是加不上去 返回的始终是0 后面换成$(参数)之后就行了 @Select("select sum($ ...

  3. 程序员之殇 —— One program, One king (血月)

    Are we living in the time of the end? (程序员的时代是否已经终结了?) 最近,我时常问自己这个问题. 刚读完了一个美国博士的论文,UDT (UDP-based D ...

  4. mybatis传参的几种方式

    1,@Param @参考文章 @Select("select s_id id,s_name name,class_id classid from student where  s_name= ...

  5. Linkin大话Java和internet概念

    整理电脑,无意中翻到不知道哪里来的文章,觉得里面写的很好,仔细看过一遍后,整理了下贴了出来,其中的好多概念我觉得讲的很透彻. 既然Java不过另一种类型的程序设计语言,为什么还有这么多的人认为它是计算 ...

  6. __call PHP伪重载方法

    为了避免当调用的方法不存在时产生错误,可以使用 __call() 方法来避免.该方法在调用的方法不存在时会自动调用,程序仍会继续执行下去 该方法有两个参数,第一个参数 $function_name 会 ...

  7. RMQ的st表算法

    此算法可用来处理区间最值问题,预处理时间为O(nlogn),查询时间为O(1) 此算法主要基于倍增思想,用以数组st[i][j]表示从第i个元素开始向后搜2的j次方的最值 可用递推的方式求得:st[i ...

  8. cat写入数据

    1.cat可以利用两个>>把内容追加到文件中 cat >>oldboy.txt<<EOF >1 >2 >EOF 会在文件中加入EOF中间的数据.E ...

  9. 高通ASOC中的machine驱动

    ASoC被分为Machine.Platform和Codec三大部分,其中的Machine驱动负责Platform和Codec之间的耦合以及部分和设备或板子特定的代码,再次引用上一节的内容:Machin ...

  10. elasticsearch-5.x JAVA API(001)

    Elasticsearch JAVA API 极其广泛,把所有的方法意义介绍出来显然不太现实.从1.x到2.x,在到5.x,最后到6.0,也不过短短两三年的时间,我挑选了5.4.0版本分三部分把平时常 ...