• LOV组件


    01. 属性说明

    参数 说明 类型 默认值 必输
    code 值集编码 string '' 是
    originTenantId 值集所属租户,该属性将会在查询值集的接口上映射名为tenantId的查询条件 number 无 否
    textField 映射显示字段 string 无 否
    textValue 显示值 string '' 否
    lovOptions 自定义lov组件的显示字段名(displayField),值字段名(valueField) object 无 否
    allowClear 是否显示清除按钮 boolean true 否
    isButton 是否以按钮形式展现 boolean false 否
    isInput 是否同时支持文本输入 boolean false 否
    onOk onOk function 否
    onCancel onCancel function 否
    onClick onClick function 否
    onClear onClear function 否
    onChange onChange function 否

    02. 使用示例

    引入LOV组件

    import Lov from 'components/Lov';
    
    <Form.Item
      label={intl.get('hsdr.concPermission.model.permission.concPragramId').d('请求名称')}
    >
      {getFieldDecorator('concurrentId', {})(
        <Lov
          textField="concurrentName"
          code="HSDR.CONCURRENT"
        />
      )}
    </Form.Item>
    
    

    originTenantId 使用

    <Form.Item
      label={intl.get('hsdr.concPermission.model.permission.concPragramId').d('请求名称')}
    >
      {getFieldDecorator('concurrentId', {})(
        <Lov
          textField="concurrentName"
          code="HSDR.CONCURRENT"
          originTenantId={getCurrentOriginTenantId()}
        />
      )}
    </Form.Item>
    

    接口的请求将会是:

    http://hzeronb.saas.hand-china.com/hpfm/v1/lov-view/info?tenantId=0&viewCode=HCNF.ROUTE_INFORMATION

    textField 使用

    表单回显

    <Form.Item
      label={intl.get('hsdr.concPermission.model.permission.concPragramId').d('请求名称')}
    >
      {getFieldDecorator('concurrentId', {})(
        <Lov
          textField="concurrentName"
          code="HSDR.CONCURRENT"
        />
      )}
    </Form.Item>
    

    lov级联

    <Form.Item
      label={intl.get('hiam.ssoConfig.model.ssoConfig.tenantName').d('租户名称')}
    >
      {getFieldDecorator('tenantId', {
        initialValue: tenantId,
      })(
        <Lov
          code="HPFM.TENANT"
          textValue={tenantId}
          onChange={() => {
            form.setFieldsValue({
              companyId: undefined,
              companyName: undefined,
            });
          }}
          allowClear
        />
           )}
    </Form.Item>
    <Form.Item
      label={intl.get('hiam.ssoConfig.model.ssoConfig.companyName').d('公司名称')}
    >
      {getFieldDecorator('companyId', {
        initialValue: companyId,
      })(
        <Lov
          textValue={companyName}
          textField='companyName'
          queryParams={{
            tenantId: form.getFieldValue('tenantId'),
          }}
          code="HPFM.COMPANY"
          disabled={isNil(form.getFieldValue('tenantId'))}
          allowClear
        />
          )}
      </Form.Item>
    

    textField为映射显示字段,主要用于lov查询表单回显,lov级联的情况下方便自动填充。

    lovOptions使用

    <Form.Item
      label={intl.get('hiam.ssoConfig.model.ssoConfig.tenantId').d('租户id')}
    >
      {getFieldDecorator('tenantId', {})(
        <Lov
          code="HPFM.TENANT"
          lovOptions={
            valueField:'tenantName', // 选择值集后实际使用字段
            displayField:'tenantId'  // 从模态框选取后输入框显示的字段
          }
        />
      )}
    </Form.Item>
    

    03. 使用说明

    textField 是 LOV 获取显示值的字段名,默认会从 Form 中获取,当选中 LOV 中某条数据后,会将显示值回写到 Form 中的 textField 中. textValue 不再建议使用,改为 textField ,使用 textField 的前提是 LOV 必须在某个具体的 Form 中.

    在设定isInput为true后,modal选择绑定到当前表单上面的值都是字段显示值(displayName)