diff --git a/apps/web-antd/src/views/mes/wm/barcode/config/data.ts b/apps/web-antd/src/views/mes/wm/barcode/config/data.ts index dc715da79..5174336bd 100644 --- a/apps/web-antd/src/views/mes/wm/barcode/config/data.ts +++ b/apps/web-antd/src/views/mes/wm/barcode/config/data.ts @@ -5,14 +5,16 @@ import { getDictOptions } from '@vben/hooks'; import { z } from '#/adapter/form'; -// TODO @AI:这里的代码风格不对; /** 表单 */ export function useFormSchema(): VbenFormSchema[] { return [ { fieldName: 'id', component: 'Input', - dependencies: { triggerFields: [''], show: () => false }, + dependencies: { + triggerFields: [''], + show: () => false, + }, }, { fieldName: 'format', @@ -35,8 +37,7 @@ export function useFormSchema(): VbenFormSchema[] { dependencies: { triggerFields: ['id'], componentProps: (values) => ({ - // 编辑时业务类型不允许变更 TODO @AI:这种简单的注释,可以考虑放到 disabled 后面;写到 style 里; - disabled: !!values.id, + disabled: !!values.id, // 编辑时业务类型不允许变更 }), }, rules: 'required', diff --git a/apps/web-antd/src/views/mes/wm/barcode/data.ts b/apps/web-antd/src/views/mes/wm/barcode/data.ts index 6e20264cc..1d0f41c1d 100644 --- a/apps/web-antd/src/views/mes/wm/barcode/data.ts +++ b/apps/web-antd/src/views/mes/wm/barcode/data.ts @@ -28,7 +28,13 @@ import { } from './../warehouse/components'; /** 业务对象选中后回填业务编码、业务名称、条码内容 */ -async function applyBizSelected(formApi: VbenFormApi, item: any) { +async function syncBizDetail( + formApi: undefined | VbenFormApi, + item: any, +) { + if (!formApi) { + return; + } const values = await formApi.getValues(); const bizType = values.bizType as number | undefined; if (!item) { @@ -61,13 +67,6 @@ async function applyBizSelected(formApi: VbenFormApi, item: any) { /** 新增/修改条码的表单 */ export function useFormSchema(formApi?: VbenFormApi): VbenFormSchema[] { - // TODO @AI:是不是可以去掉 onBizChange,直接搞个 handleBizTypeChange 函数? - const onBizChange = (item: any) => { - if (formApi) { - void applyBizSelected(formApi, item); - } - }; - return [ { fieldName: 'bizType', @@ -96,7 +95,7 @@ export function useFormSchema(formApi?: VbenFormApi): VbenFormSchema[] { label: '仓库', component: markRaw(WmWarehouseSelect), componentProps: { - onChange: onBizChange, + onChange: (item: any) => syncBizDetail(formApi, item), }, dependencies: { triggerFields: ['bizType'], @@ -133,7 +132,7 @@ export function useFormSchema(formApi?: VbenFormApi): VbenFormSchema[] { componentProps: (values) => ({ placeholder: '请选择库区', warehouseId: values.locationWarehouseId, - onChange: onBizChange, + onChange: (item: any) => syncBizDetail(formApi, item), }), }, rules: 'required', @@ -188,7 +187,7 @@ export function useFormSchema(formApi?: VbenFormApi): VbenFormSchema[] { componentProps: (values) => ({ placeholder: '请选择库位', locationId: values.areaLocationId, - onChange: onBizChange, + onChange: (item: any) => syncBizDetail(formApi, item), }), }, rules: 'required', @@ -198,7 +197,7 @@ export function useFormSchema(formApi?: VbenFormApi): VbenFormSchema[] { label: '工单', component: markRaw(ProWorkOrderSelect), componentProps: { - onChange: onBizChange, + onChange: (item: any) => syncBizDetail(formApi, item), }, dependencies: { triggerFields: ['bizType'], @@ -211,7 +210,7 @@ export function useFormSchema(formApi?: VbenFormApi): VbenFormSchema[] { label: '设备', component: markRaw(DvMachinerySelect), componentProps: { - onChange: onBizChange, + onChange: (item: any) => syncBizDetail(formApi, item), }, dependencies: { triggerFields: ['bizType'], @@ -224,7 +223,7 @@ export function useFormSchema(formApi?: VbenFormApi): VbenFormSchema[] { label: '产品物料', component: markRaw(MdItemSelect), componentProps: { - onChange: onBizChange, + onChange: (item: any) => syncBizDetail(formApi, item), }, dependencies: { triggerFields: ['bizType'], @@ -237,7 +236,7 @@ export function useFormSchema(formApi?: VbenFormApi): VbenFormSchema[] { label: '供应商', component: markRaw(MdVendorSelect), componentProps: { - onChange: onBizChange, + onChange: (item: any) => syncBizDetail(formApi, item), }, dependencies: { triggerFields: ['bizType'], @@ -250,7 +249,7 @@ export function useFormSchema(formApi?: VbenFormApi): VbenFormSchema[] { label: '工作站', component: markRaw(MdWorkstationSelect), componentProps: { - onChange: onBizChange, + onChange: (item: any) => syncBizDetail(formApi, item), }, dependencies: { triggerFields: ['bizType'], @@ -263,7 +262,7 @@ export function useFormSchema(formApi?: VbenFormApi): VbenFormSchema[] { label: '车间', component: markRaw(MdWorkshopSelect), componentProps: { - onChange: onBizChange, + onChange: (item: any) => syncBizDetail(formApi, item), }, dependencies: { triggerFields: ['bizType'], @@ -276,7 +275,7 @@ export function useFormSchema(formApi?: VbenFormApi): VbenFormSchema[] { label: '客户', component: markRaw(MdClientSelect), componentProps: { - onChange: onBizChange, + onChange: (item: any) => syncBizDetail(formApi, item), }, dependencies: { triggerFields: ['bizType'], @@ -289,7 +288,7 @@ export function useFormSchema(formApi?: VbenFormApi): VbenFormSchema[] { label: '工具', component: markRaw(TmToolSelect), componentProps: { - onChange: onBizChange, + onChange: (item: any) => syncBizDetail(formApi, item), }, dependencies: { triggerFields: ['bizType'], @@ -302,7 +301,7 @@ export function useFormSchema(formApi?: VbenFormApi): VbenFormSchema[] { label: '库存', component: markRaw(WmMaterialStockSelect), componentProps: { - onChange: onBizChange, + onChange: (item: any) => syncBizDetail(formApi, item), }, dependencies: { triggerFields: ['bizType'], diff --git a/apps/web-antd/src/views/mes/wm/barcode/index.vue b/apps/web-antd/src/views/mes/wm/barcode/index.vue index 0e64bb09f..1e1b9d34d 100644 --- a/apps/web-antd/src/views/mes/wm/barcode/index.vue +++ b/apps/web-antd/src/views/mes/wm/barcode/index.vue @@ -31,18 +31,14 @@ const [FormModal, formModalApi] = useVbenModal({ const barcodeDetailRef = ref>(); -// TODO @AI:这里的 checkedIds,是不是拿到 handleRowCheckboxChange 代码块里?更简洁一点? -// TODO @AI:这里的代码风格,要和 system user index 保持一致,批量选择; -/** 已选条码 ID */ -const checkedIds = ref([]); - /** 处理勾选变化 */ +const checkedIds = ref([]); function handleRowCheckboxChange({ records, }: { records: MesWmBarcodeApi.Barcode[]; }) { - checkedIds.value = records.map((row) => row.id!).filter(Boolean); + checkedIds.value = records.map((item) => item.id!); } /** 刷新表格 */ diff --git a/apps/web-antd/src/views/mes/wm/materialstock/index.vue b/apps/web-antd/src/views/mes/wm/materialstock/index.vue index ad87860a1..d24ecaf3e 100644 --- a/apps/web-antd/src/views/mes/wm/materialstock/index.vue +++ b/apps/web-antd/src/views/mes/wm/materialstock/index.vue @@ -1,5 +1,4 @@