Skip to content
On this page

评标条例

业务模板

填写类型 inputType

json
{
  "groupCode": "baseForm",
  "fieldType": "select",
  "fieldLabel": "填写类型",
  "fieldName": "inputType",
  "dictCode": "regulationFillInType",
  "required": "1"
}
js
/**
 * @param {Object} ctx 组件实例
 * @param {String} value 当前所选值
 * @param {Array} data selectModal, remoteSelect 已选行数据 (如有)
 * @param {boolean} _isFill 填充、粘贴操作判断标识
 * @param {Object} row 表行数据 (如有)
 * @param {number} idx 表行索引值 (如有)
 * @param {Object} pageData 页面所有数据
 * @param {Object} layoutConfig 模板配置
 * @param {Object} userInfo 当前登录人信息
 * @param {(groupCode: string, fieldName: string, fn: (item: FormFieldsItem | ColumnItem) => void) => void}
 * customFormatItem 遍历模板分组配置,自定义格式化查询到的字段
 * @param {(groupCode: string, fieldName: string, flag: boolean) => void}
 * setItemRequired 自定义设置字段必填
 * @param {(groupCode: string, fieldName: string, flag: boolean) => void}
 * setItemDisabled 自定义设置字段置灰
 * @param {(groupCode: string, fieldName: string, flag: boolean) => void}
 * setItemRequiredOrDisabled 自定义设置字段必填/置灰
 * @param {() => void} topEmit 用于处理复杂绑定函数需求
 * @param {Constructor} Decimal构造函数, 适用于js小数位数精度计算
 * https://github.com/MikeMcl/decimal.js
 */
function callback(
  ctx,
  {
    value,
    data,
    _isFill,
    row,
    idx,
    pageData,
    layoutConfig,
    userInfo,
    customFormatItem,
    setItemRequired,
    setItemDisabled,
    setItemRequiredOrDisabled,
    topEmit,
    Decimal,
  },
) {
  // 填写类型 inputType;
  // 数据字典 regulationFillInType (1: 手输, 2: 单选, 3: 多选);

  // 手输题参考答案 inputValue;
  // 满分 fullMark;

  /**
   * @description: 业务规则
   * 填写类型为单选、多选时,手输题参考答案置灰,满分不必填
   */
  const flag = value === "2" || value === "3";
  setItemDisabled("baseForm", "inputValue", flag);
  if (flag) {
    pageData.inputValue = "";
    console.warn("单选/多选,清空手输题参考答案");
  }

  setItemRequiredOrDisabled("baseForm", "fullMark", value === "1");
}