From 7a45245437de7572a2b32535ce2ad30b2c00c9a5 Mon Sep 17 00:00:00 2001 From: LiaoYijun Date: Wed, 11 Jun 2025 15:42:09 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=E5=A4=9A=E9=80=89?= =?UTF-8?q?=E3=80=81=E5=85=A8=E9=80=89=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/OrderProfile.jsx | 2 +- src/views/orders/components/MailBox.jsx | 42 ++++++++++++++++++++++--- 2 files changed, 39 insertions(+), 5 deletions(-) diff --git a/src/components/OrderProfile.jsx b/src/components/OrderProfile.jsx index dc150fd..54a719f 100644 --- a/src/components/OrderProfile.jsx +++ b/src/components/OrderProfile.jsx @@ -101,7 +101,7 @@ const OrderProfile = ({ coliSN, ...props }) => { - 已下计划 + 已做计划 diff --git a/src/views/orders/components/MailBox.jsx b/src/views/orders/components/MailBox.jsx index 604af1e..4332e48 100644 --- a/src/views/orders/components/MailBox.jsx +++ b/src/views/orders/components/MailBox.jsx @@ -11,7 +11,7 @@ const { RangePicker } = DatePicker const PAGE_SIZE = 50 // 每页显示条数 -const MailBox = ({ mailboxDir, onMailItemClick, ...props }) => { +const MailBox = ({ mailboxDir, onMailItemClick, onSelect, ...props }) => { const DATE_RANGE_PRESETS = [ { label: '本周', @@ -39,8 +39,8 @@ const MailBox = ({ mailboxDir, onMailItemClick, ...props }) => { }, ] const [form] = Form.useForm() - - const { mailList, loading, error, refresh } = useEmailList(mailboxDir); + const [selectedItems, setSelectedItems] = useState([]) + const { mailList, loading, error, refresh } = useEmailList(mailboxDir) const [pagination, setPagination] = useState({ current: 1, @@ -103,6 +103,20 @@ const MailBox = ({ mailboxDir, onMailItemClick, ...props }) => { className={`flex border border-solid border-t-0 border-x-0 border-gray-200 hover:bg-neutral-50 active:bg-gray-200 p-2 ${props.currentActiveMailItem === item.key ? 'bg-gray-200' : ''}`}>
{hasAtta} + className='flex border border-solid border-t-0 border-x-0 border-gray-200 hover:bg-neutral-50 p-2'> +
+ i.MAI_SN === item.MAI_SN)} + onClick={e => { + console.info(item, 'checked: ' + e.target.checked) + const isChecked = e.target.checked; + const updatedSelection = isChecked + ? [...selectedItems, item] + : selectedItems.filter((item) => item.MAI_SN !== item.MAI_SN) + setSelectedItems(updatedSelection) + console.info('selectedItems: ', updatedSelection) + } + }>
{ @@ -169,7 +183,26 @@ const MailBox = ({ mailboxDir, onMailItemClick, ...props }) => { - + 0 && + selectedItems.length < pagination.pagedList.length + } + checked={pagination.pagedList.every((item) => + selectedItems.some((selected) => selected.MAI_SN === item.MAI_SN) + )} + onChange={(e) => { + const isChecked = e.target.checked; + if (isChecked) { + setSelectedItems((prev) => [ + ...prev, + ...pagination.pagedList, + ]); + } else { + setSelectedItems([]); + } + }} + >