diff --git a/src/pages/pms/partPlan/PlanManage/subpages/Apply/components/PartModal.tsx b/src/pages/pms/partPlan/PlanManage/subpages/Apply/components/PartModal.tsx index 22d5363..85aad72 100644 --- a/src/pages/pms/partPlan/PlanManage/subpages/Apply/components/PartModal.tsx +++ b/src/pages/pms/partPlan/PlanManage/subpages/Apply/components/PartModal.tsx @@ -13,12 +13,15 @@ interface Props { parts: any[] onOk: (parts: any[]) => any setParams: Function + _supplierId: number | undefined } const {Option} = Select; -export default function Index({ onCancel, visible, parts=[], onOk, setParams }: Props) { +export default function Index({ onCancel, visible, parts = [], onOk, setParams, _supplierId }: Props) { const [selectedParts, setSelectedParts] = useState([]); const [dfParam, setDfParam] = useState({keywords: ''}); const [partList, setPartList] = useState(parts); + const [info, setInfo] = useState<{open: boolean, partName: string, poolId?: number}>({open: false, partName: '', poolId: undefined}); + const [partArr, setPartArr] = useState([]); const shopNames = useMemo(() => { return Array.from(new Set(parts.map(it => it.shopName || '').filter(it => !!it))); @@ -37,6 +40,7 @@ export default function Index({ onCancel, visible, parts=[], onOk, setParams }: useEffect(() => { if (!visible) { setSelectedParts([]); + setPartArr([]); setPartList(parts); } }, [visible, parts]); @@ -46,6 +50,14 @@ export default function Index({ onCancel, visible, parts=[], onOk, setParams }: message.error("请选择配件"); return; } + if (partArr.some(it => !!it.supplierId)) { + for (const item of partArr) { + if (!!item.supplierId && item.supplierId != _supplierId) { + setInfo({ open: true, partName: item.partName, poolId: item.poolId }); + return; + } + } + } onOk && onOk(selectedParts); onCancel && onCancel(); } @@ -81,6 +93,7 @@ export default function Index({ onCancel, visible, parts=[], onOk, setParams }: visible={visible} title="配件采购明细" onCancel={onCancel} + maskClosable={false} footer={[ , ] : []} > - `${v.partId}`} scroll={{y: 500, x: 1200}} dataSource={data || []} pagination={false}> + + {data.brandName} + {data.supplierName} + {data.storageName} + {data.settleShopName} + +
`${v.partId}`} scroll={{y: 500, x: 1200}} dataSource={data.list || []} pagination={false}> - ((_.price || 0) * (_.partCount || 0) || '--')} /> + ((_.price || 0) * (_.partCount || 0) || '--')} /> {!confirm && (t || '--')} />} {!confirm && (t || '--')} />} {!confirm && (t || '--')} />} diff --git a/src/pages/pms/partPlan/PlanShipping/components/UploadExcel.tsx b/src/pages/pms/partPlan/PlanShipping/components/UploadExcel.tsx index d17a18a..6b62254 100644 --- a/src/pages/pms/partPlan/PlanShipping/components/UploadExcel.tsx +++ b/src/pages/pms/partPlan/PlanShipping/components/UploadExcel.tsx @@ -107,7 +107,7 @@ export default function UploadExcel({ getList, importVisible, setImportVisible, onChange={supplierId => setParam({ ...param, supplierId })} /> setParam({ ...param, storageId })} /> ({}); const { data: shops } = useInitial(api.getShopApi, [], {}); + const menu = ( + 通用模板, + key: '0', + }, + { + label: 长安模板, + key: '1', + }, + ] + } + /> +); + return ( @@ -56,13 +74,10 @@ export default function PartPriceCoefficient() { />