Vben Admin

import SpecRender from '#/components/ProductSpecRender/index.vue';

组件联动

    {
  ...useFormItemSpan(3),
  ...useFormBoolSelect(),
  fieldName: 'IsUnifiedDelivery',
  label: '是否统一交货',
},
{
  ...useFormItemSpan(3),
  ...useFormDatePicker(),
  dependencies: {
    show(values) {
      return !!values.IsUnifiedDelivery;
    },
    trigger(value) {
      if (value.IsUnifiedDelivery && value.UnifiedDeliveryDate) {
        value.SalesDetailList.forEach((item: any) => {
          item.DeliveryDate = value.UnifiedDeliveryDate;
        });
      }
    },
    triggerFields: ['IsUnifiedDelivery', 'UnifiedDeliveryDate'],
  },
  fieldName: 'UnifiedDeliveryDate',
  label: '统一交货日期',
},</code></pre><pre><code>    {
  ...useFormItemSpan(3),
  ...useFormInput('请输入快递备注'),
  dependencies: {
    if(values) {
      return [5201, 5202].includes(values.OutboundMethodId * 1);
    },
    triggerFields: ['OutboundMethodId'],
  },
  fieldName: 'CourierRemark',
  label: '快递备注',
},</code></pre><pre><code>    {
  ...useFormItemSpan(6),
  component: 'Select',
  componentProps: {
    allowClear: true,
    placeholder: '请选择税率',
    options: [
      { label: '不含税', value: 0 },
      { label: '1%', value: 0.01 },
      { label: '2%', value: 0.02 },
      { label: '3%', value: 0.03 },
      { label: '4%', value: 0.04 },
      { label: '5%', value: 0.05 },
      { label: '6%', value: 0.06 },
      { label: '7%', value: 0.07 },
      { label: '8%', value: 0.08 },
      { label: '9%', value: 0.09 },
      { label: '10%', value: 0.1 },
      { label: '11%', value: 0.11 },
      { label: '12%', value: 0.12 },
      { label: '13%', value: 0.13 },
      { label: '14%', value: 0.14 },
      { label: '15%', value: 0.15 },
      { label: '16%', value: 0.16 },
    ],

  },
  fieldName: 'TaxRate',
  label: '税率',
},</code></pre><pre><code>    {
  ...useFormItemSpan(6),
  ...useFormInput('税额将自动计算'),
  fieldName: 'TaxAmount',
  label: '税额',
  componentProps: {
    placeholder: '税额将自动计算',
    readonly: true,
    disabled: true,
  },
  dependencies: {
    trigger: (values: any, formApi: any) =&gt; {
      const receivedAmount = parseFloat(values.ReceivedAmount) || 0;
      const taxRate = parseFloat(values.TaxRate) || 0;
      const taxAmount = receivedAmount / (1 + taxRate) * taxRate;
      formApi.setFieldValue('TaxAmount', taxAmount.toFixed(2));
    },
    triggerFields: ['ReceivedAmount', 'TaxRate'],
  },
},</code></pre><pre><code>    {
  ...useFormItemSpan(4),
  ...useFormInput('公司编号/公司名称/联系人/联系方式等关键词'),
  fieldName: 'Keyword',
  label: '',
},

{ key: 'Keyword', type: 'like', value: valueMap.Keyword },</code></pre><pre><code>import { nextTick } from 'vue';  

setTimeout(() => {

nextTick(() =&gt; {
  gridApi.grid?.setAllTreeExpand(true);
});

}, 0);

  const { page } = params;
const body = makeOSharpPage({

filter: [{ key: 'OfficeSupplyRequestId', type: '=', value: props.payload.Id }],
pageIndex: page.currentPage,
pageSize: page.pageSize,
sort: [{ key: 'Id', type: 'desc' }],

} as OSharpPageOption);
let { Data = <any>[] } = await DistributionSummary(body);

编码生成器添加代码:

import { CodeCreate } from '#/api/admin/CodeCreate';

const res = await CodeCreate({ code: 'SalesOrder' });
formApi.setValues({ OrderNumber: res.Data[0] });</code></pre><p style="">加编码器</p><pre><code>import { useFormCodeCreator } from '#/hooks/useAutoOrderNumber';

{
  ...useFormItemSpan(3),
  ...useFormCodeCreator({
    fieldName:'OrderNumber',
    orderType:'ForecastOrder'
  }),
  fieldName: 'OrderNumber',
  label: '编号',
},</code></pre><pre><code>//字典与枚举    

{

  ...useFormItemSpan(3),
  ...useEnumSelect('DeliveryMethodEnum', '出库方式'),
  fieldName: 'outboundMethodId',
  label: '出库方式',
},
{
  ...useFormItemSpan(3),
  ...useDictSelect('CourierCompanyEnum', '快递公司'),
  fieldName: 'courierCompanyId',
  label: '快递公司',
  dependencies: {
    if(values) {
      return [1, 2].includes(values.outboundMethodId * 1);
    },
    triggerFields: ['outboundMethodId'],
  },
},</code></pre><p style=""></p><p style=""></p>

发表评论