From 6bbb860c7fe2ad20773139cdaf693f7be4b0767e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=AE=87=E8=88=AA?= <740464440@qq.com> Date: Wed, 22 Nov 2023 09:49:20 +0800 Subject: [PATCH] =?UTF-8?q?feat():=20=E5=AF=B9=E8=BD=A6=E5=9C=BA=E6=8A=98?= =?UTF-8?q?=E6=89=A3=E9=A1=B5=E9=9D=A2=E6=B7=BB=E5=8A=A0=E5=A2=9E=E5=88=A0?= =?UTF-8?q?=E6=94=B9=E6=9F=A5=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OperationSales/YardDiscount/DebounceSelect.jsx | 7 +++- .../OperationSales/YardDiscount/loadable.jsx | 42 ++++++++++++++++++---- .../OperationCenter/OperationSales/index.js | 7 ++-- 3 files changed, 46 insertions(+), 10 deletions(-) diff --git a/src/pages/OperationCenter/OperationSales/YardDiscount/DebounceSelect.jsx b/src/pages/OperationCenter/OperationSales/YardDiscount/DebounceSelect.jsx index 31893bf..9b70707 100644 --- a/src/pages/OperationCenter/OperationSales/YardDiscount/DebounceSelect.jsx +++ b/src/pages/OperationCenter/OperationSales/YardDiscount/DebounceSelect.jsx @@ -22,7 +22,12 @@ const DebounceSelect = ({ const fetchId = fetchRef.current; setOptions([]); setFetching(true); - fetchOptions({value, type: ajaxType}).then((newOptions) => { + let _id = props?.value?.length ? props?.value?.join() : ""; + let _data = !value ? + {type: ajaxType, id: _id} + : + {value, type: ajaxType}; + fetchOptions(_data).then((newOptions) => { if (fetchId !== fetchRef.current) { // for fetch callback order return; diff --git a/src/pages/OperationCenter/OperationSales/YardDiscount/loadable.jsx b/src/pages/OperationCenter/OperationSales/YardDiscount/loadable.jsx index ff6b2fa..a45ca4c 100644 --- a/src/pages/OperationCenter/OperationSales/YardDiscount/loadable.jsx +++ b/src/pages/OperationCenter/OperationSales/YardDiscount/loadable.jsx @@ -12,6 +12,9 @@ import "./index.scss"; import { use } from "echarts"; const { RangePicker } = DatePicker; const YardDiscount = () => { + // message.config({ + // maxCount: 1, + // }); // 默认数据 const defaultData = { activity: [], // 活动名称 @@ -142,6 +145,7 @@ const YardDiscount = () => { className="hover" onClick={() => { setModalData({ + id: record?.id || "", activity: record?.activity_id?.split() || [], road: record?.road_id?.split() || [], discount: record?.discount || "", @@ -252,17 +256,44 @@ const YardDiscount = () => { message.error(error.message); }); }; + + // 时间限制 const $disabledDate = (current) => { // Can not select days before today and today return current && current <= moment().subtract(1, 'day'); }; + // 新增及编辑 + const $addEditSubmit = (data, type) => { + let activity = data?.activity?.length ? data?.activity?.join() : ""; + let road = data?.road?.length ? data?.road?.join() : ""; + if(!activity) return message.error("请选择活动名称!"); + if(!road) return message.error("请选择停车场名称!"); + if(!data?.discount) return message.error("请输入折扣!"); + if(!data?.start_time) return message.error("请选择开始时间!"); + if(!data?.end_time) return message.error("请选择结束时间!"); + let _data = {...data, activity, road}; + ajax.handleYardDiscount(_data, type).then((res) => { + if (res.status === 20000 || res.status == 0) { + message.success(res.message || `${type}成功`); + setModalData(defaultModal); + setModalVisible({open: false, title: ""}); + $getTableList(); + } else { + message.error(res.message); + } + }).catch((error) => { + message.error(error.message); + }); + }; + useEffect(() => { let _data = {}; if (sessionData && Object.values(sessionData).length > 0) { _data = { activity: sessionData?.activity || [], // 活动名称 road: sessionData?.road || [], // 活动名称 + status: sessionData?.status || "0", // 状态 pn: 1, page_size: dictionary?.pageSizeOptions1[0], }; @@ -274,7 +305,6 @@ const YardDiscount = () => { useEffect(() => { // setSessionData(formData); }, [formData]); - return (