From 77d91ab92a3ac9b6cd6698b03032182901aac831 Mon Sep 17 00:00:00 2001 From: mohl Date: Thu, 2 Mar 2023 14:29:44 +0800 Subject: [PATCH] 实物兑换券整合办公用品模块“市场物料物品” --- src/pages/capital/ReceiveRules/component/SelectGoodsTable.tsx | 8 +++++++- src/pages/capital/ReceiveRules/subPages/GoodsDimension/components/RenderSelectGoos.tsx | 30 +++++++++++++++++++++++------- src/pages/coupon/CouponConfig/components/FullReduce.tsx | 7 +++++++ src/pages/coupon/CouponConfig/index.tsx | 2 ++ 4 files changed, 39 insertions(+), 8 deletions(-) diff --git a/src/pages/capital/ReceiveRules/component/SelectGoodsTable.tsx b/src/pages/capital/ReceiveRules/component/SelectGoodsTable.tsx index cd414e0..dd4fed8 100644 --- a/src/pages/capital/ReceiveRules/component/SelectGoodsTable.tsx +++ b/src/pages/capital/ReceiveRules/component/SelectGoodsTable.tsx @@ -74,6 +74,8 @@ const SelectGoodsTable = (props: Props) => { }; function saveDate() { + console.log("🚀 ~ file: SelectGoodsTable.tsx:80 ~ saveDate ~ selectedRow:", selectedRow); + onChange && onChange(selectedRow); onCancel(); } @@ -87,8 +89,12 @@ const SelectGoodsTable = (props: Props) => { selectedRowKeys: selectedRow.map(row => row.code), onSelect: (row: any, _selected: boolean) => { const index = selectedRow.findIndex((_row) => _row.code == row.code); + if (!multiple) { + setSelectedRow([row]); + return; + } if (_selected) { - selectedRow.unshift(row); + selectedRow.unshift(row); } else if (index > -1) { selectedRow.splice(index, 1); } diff --git a/src/pages/capital/ReceiveRules/subPages/GoodsDimension/components/RenderSelectGoos.tsx b/src/pages/capital/ReceiveRules/subPages/GoodsDimension/components/RenderSelectGoos.tsx index fa066dd..bacad01 100644 --- a/src/pages/capital/ReceiveRules/subPages/GoodsDimension/components/RenderSelectGoos.tsx +++ b/src/pages/capital/ReceiveRules/subPages/GoodsDimension/components/RenderSelectGoos.tsx @@ -2,14 +2,17 @@ import SelectGoodsTable from '@/pages/capital/ReceiveRules/component/SelectGoods import { Button, Card, Popconfirm, Row, Table } from 'antd'; import React, { useState } from 'react'; import { PlusOutlined } from '@ant-design/icons'; +import RenderGoodsSpec from '@/pages/capital/components/RenderGoodsSpec'; const Column = Table.Column; interface GoodsProps { onChange?: Function; value?: any; + multiple?: boolean; + disabled?: boolean; } -function RenderSelectGoos({ onChange, value = [] }: GoodsProps) { +function RenderSelectGoos({ onChange, value = [], multiple, disabled }: GoodsProps) { const [goodsModal, setGoodsModal] = useState({ visible: false }); function deleteItem(code: string) { const newData = value.filter((i: any) => i.code !== code); @@ -18,11 +21,14 @@ function RenderSelectGoos({ onChange, value = [] }: GoodsProps) { return ( - - - + {!disabled ? ( + + + + ) : null} text && } + /> + deleteItem(value.code)}> - + {!disabled && ( + + )} ); @@ -48,6 +63,7 @@ function RenderSelectGoos({ onChange, value = [] }: GoodsProps) { />
setGoodsModal({ visible: false })} onChange={(v) => onChange && onChange(v)} diff --git a/src/pages/coupon/CouponConfig/components/FullReduce.tsx b/src/pages/coupon/CouponConfig/components/FullReduce.tsx index 1a90486..08e295e 100644 --- a/src/pages/coupon/CouponConfig/components/FullReduce.tsx +++ b/src/pages/coupon/CouponConfig/components/FullReduce.tsx @@ -8,6 +8,7 @@ import ShopLimit from "./ShopLimit"; import useInitail from "@/hooks/useInitail"; import { PaymentTypeEnum } from '@/pages/coupon/CashChange/api'; import { RightOutlined } from '@ant-design/icons'; +import RenderSelectGoos from '@/pages/capital/ReceiveRules/subPages/GoodsDimension/components/RenderSelectGoos'; const Option = Select.Option; interface Props { @@ -170,6 +171,12 @@ export default function FullReduce({ /> )} + {/* 实物兑换券选择兑换物品 */} + {classifyInfo.code === "dhyhq" && ( + *兑换物品仅限一个} rules={[{ required: true, message: '请选择' }]}> + + + )} ({ value: i.orgId, label: i.orgName })) : undefined, + amsCode: data.amsCode ? [{ code: data.amsCode, name: data.amsName, spec: data.amsSpec }] : undefined, }); setLoading(false); }).catch((e) => { @@ -72,6 +73,7 @@ export default function UpsertCoupon({ visible, onCancel, onSave, remark, disabl exchangeTypeId: fields.exchangeTypeId && fields.exchangeTypeId.value, exchangeTypeName: fields.exchangeTypeId && fields.exchangeTypeId.label, schemeList: fields.schemeList ? fields.schemeList.map((i: MktConponSpace.LimitList) => ({ ...i, externalRely: i.externalRely || false })) : [], + amsCode: fields.amsCode && fields.amsCode.map((i: { code: string; }) => i.code).join(','), remark, }; setSaveLoading(true); -- libgit2 0.22.2