宜搭子表单重复校验通用函数,多字段唯一

简介: 该函数用于校验子表单中指定字段是否存在重复值。通过传入子表单唯一标识和需校验的字段ID列表,判断表单中是否存在重复记录,返回布尔值。

image.png

/**
* 子表单字段重复校验
* @param tableFieldId {String} 子表单唯一标识
* @param validateFieldIdList {Array} 需要校验的子表单组件唯一标识集合
*/
export function validateTableField(tableFieldId = '', validateFieldIdList = []) {
  if (tableFieldId && validateFieldIdList.length) {
    const tableValue = this.$(tableFieldId).getValue();
    const rowValues = this.item.values;
    const validateResult = tableValue.filter((item) => {
      var filterRule = '';
      validateFieldIdList.forEach((_item, _index) => {
        filterRule += `item['${_item}'] && item['${_item}'] === rowValues['${_item}'] ${(_index + 1) < validateFieldIdList.length ? '&&' : ''}`;
      });
      return eval(filterRule);
    });
    return validateResult.length <= 1;
  } else {
    return true;
  }
}
相关文章
|
5月前
|
传感器 自然语言处理 前端开发
体验通义灵码 2.5 版编程智能体
在当今快速发展的技术环境中,软件开发正经历着前所未有的变革。传统的编程方式往往需要开发者具备深厚的技术背景和丰富的实践经验,但随着人工智能技术的进步,这种局面正在被打破。通义灵码 2.5 版作为阿里云推出的一款先进的编程智能体,凭借其强大的自主决策、环境感知和工具使用能力,为开发者提供了一种全新的编程体验,使得从零开始构建应用程序变得更加简单高效。
|
JavaScript API
「宜搭」如何在选择部门组件后,自动带出该部门下的成员,并查询该成员当月考勤天数
本文档只做参考使用,请结合具体需求修改,如有问题,概不负责!!!! 因本章涉及页面代码,请确保宜搭使用版本可使用页面JS 该篇只会获取当前部门下的成员,不包含下级部门; 注意:涉及到钉钉接口,请严格按照钉钉开放接口文档要求操作; 若此文章对您有帮助,记得点下赞同哦~
883 4
「宜搭」如何在选择部门组件后,自动带出该部门下的成员,并查询该成员当月考勤天数
宜搭子表单内数据提交时如何与历史数据进行去重效验?
宜搭子表单内数据提交时如何与历史数据进行去重效验?不是仅仅在当前提交页面内的子表单数据进行重复效验。
宜搭子表单内数据提交时如何与历史数据进行去重效验?
|
人工智能 自然语言处理 数据挖掘
产品更新|宜搭AI 新增「智能数据分析」「智能表单」两项功能!
「宜搭AI」开放新一期功能:智能数据分析、智能表单,已支持在宜搭网页端使用体验。
802 0
产品更新|宜搭AI 新增「智能数据分析」「智能表单」两项功能!
|
JavaScript
【分享】在宜搭JS面板写了死循环如何解决(方法二)
简介: 日常开发中,不小心在js面板中写了死循环,造成页面和浏览器卡死,无法修改代码,该如何解决。
1158 2
【分享】在宜搭JS面板写了死循环如何解决(方法二)
|
缓存 监控 前端开发
大量数据如何做分页处理
【8月更文挑战第13天】面对大量数据分页,可从数据库与应用两方面着手:数据库端利用内置分页功能如MySQL的`LIMIT`与`OFFSET`,及SQL Server的`ROW_NUMBER()`;优化查询,精选字段并为常用排序字段加索引。应用端采用缓存已分页数据、异步加载新页及前端懒加载技术。同时限制最大页数并持续监控优化性能,确保高效查询与良好用户体验。
423 0
|
Oracle 安全 Java
JAVA用Mail发送API的方法步骤教程
使用Java和Mail发送API实现自动化邮件发送,提高效率。步骤包括:1. 安装JDK并配置JAVA_HOME,2. 添加JavaMail库(可通过Maven或官网下载)。配置邮件发送涉及邮件服务器地址、端口和认证信息。创建邮件会话、邮件消息对象,然后使用Transport发送。示例代码展示完整流程。注意处理认证失败、连接问题和邮件发送失败等常见问题。
|
应用服务中间件 nginx Docker
3.docker创建容器 (docker容器命令)
3.docker创建容器 (docker容器命令)
2785 0
3.docker创建容器 (docker容器命令)
|
持续交付 Python
使用Python实现自动化Web内容巡检
使用Python实现自动化Web内容巡检
576 1