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

简介: 该函数用于校验子表单中指定字段是否存在重复值。通过传入子表单唯一标识和需校验的字段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;
  }
}
相关文章
基于宜搭的“企业报销流程”实践案例
报销是一个企业的典型场景,本案例着重讲述一个典型的财务报销流程的搭建,已介绍宜搭流程相关的核心功能。报销由员工发起申请,填写报销项以及对应的详情信息,发起审批流程。审批流程计划设置为:当前提交人主管,审批人所在部门对应的财务接口人,财务总监(如果金额大于10000元,则需要加入该角色)
基于宜搭的“企业报销流程”实践案例
|
6月前
|
前端开发
关于宜搭轻享版产品调整及升级优惠活动的通知
钉钉宜搭拟于2026年起逐步退出轻享版业务,1月1日起停止新购,4月1日起停止续约。老用户可享专业版升级优惠,仅需补差价40%,应用数据无缝迁移,无功能损失,助力低代码能力升级。
3346 3
|
人工智能 前端开发 JavaScript
纯干货!如何用Cursor+宜搭,3天完成三周开发量(附超详细视频教学)
Cursor是热门代码编辑器之一,通过与宜搭(Yida)结合,提供了强大的低代码页面和自定义组件生成能力。方案利用Claude模型的代码生成能力及MCP支持,大幅提升开发效率。开发者可通过Cursor连接宜搭表单设计器或自定义组件设计器,实现React源码的生成与同步,并支持二次编辑。现有功能涵盖文本、数字、图片、链接等多种字段类型,以及属性面板配置、JS代码生成等。
2782 85
宜搭子表单内数据提交时如何与历史数据进行去重效验?
宜搭子表单内数据提交时如何与历史数据进行去重效验?不是仅仅在当前提交页面内的子表单数据进行重复效验。
宜搭子表单内数据提交时如何与历史数据进行去重效验?
|
10月前
|
传感器 编解码 算法
ASTER 全球发射率数据集,每月,0.05 度,HDF5
ASTER全球发射率数据集(AG5KMMOH V4)提供0.05度月度分辨率的全球地表发射率信息,覆盖2000至2015年。该数据集基于ASTER传感器与MODIS产品,结合TES算法和MODTRAN模型进行大气校正,由NASA JPL开发。2016年12月起停止更新。
263 0
|
缓存 监控 前端开发
大量数据如何做分页处理
【8月更文挑战第13天】面对大量数据分页,可从数据库与应用两方面着手:数据库端利用内置分页功能如MySQL的`LIMIT`与`OFFSET`,及SQL Server的`ROW_NUMBER()`;优化查询,精选字段并为常用排序字段加索引。应用端采用缓存已分页数据、异步加载新页及前端懒加载技术。同时限制最大页数并持续监控优化性能,确保高效查询与良好用户体验。
660 0
|
JavaScript API
「宜搭」如何在选择部门组件后,自动带出该部门下的成员,并查询该成员当月考勤天数
本文档只做参考使用,请结合具体需求修改,如有问题,概不负责!!!! 因本章涉及页面代码,请确保宜搭使用版本可使用页面JS 该篇只会获取当前部门下的成员,不包含下级部门; 注意:涉及到钉钉接口,请严格按照钉钉开放接口文档要求操作; 若此文章对您有帮助,记得点下赞同哦~
1208 4
「宜搭」如何在选择部门组件后,自动带出该部门下的成员,并查询该成员当月考勤天数
【宜搭】如何获取子表单当前操作行的值
在子表单onChange事件中,如何获取当前操作行的值
801 0
|
JavaScript
【分享】在宜搭JS面板写了死循环如何解决(方法二)
简介: 日常开发中,不小心在js面板中写了死循环,造成页面和浏览器卡死,无法修改代码,该如何解决。
1576 2
【分享】在宜搭JS面板写了死循环如何解决(方法二)