Browse Source

feat(): 对车场折扣页面添加增删改查接口

tags/PMS_Frontend_v1.0.6-develop
陈宇航 1 year ago
parent
commit
6bbb860c7f
  1. 7
      src/pages/OperationCenter/OperationSales/YardDiscount/DebounceSelect.jsx
  2. 42
      src/pages/OperationCenter/OperationSales/YardDiscount/loadable.jsx
  3. 7
      src/services/OperationCenter/OperationSales/index.js

7
src/pages/OperationCenter/OperationSales/YardDiscount/DebounceSelect.jsx

@ -22,7 +22,12 @@ const DebounceSelect = ({
const fetchId = fetchRef.current; const fetchId = fetchRef.current;
setOptions([]); setOptions([]);
setFetching(true); 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) { if (fetchId !== fetchRef.current) {
// for fetch callback order // for fetch callback order
return; return;

42
src/pages/OperationCenter/OperationSales/YardDiscount/loadable.jsx

@ -12,6 +12,9 @@ import "./index.scss";
import { use } from "echarts"; import { use } from "echarts";
const { RangePicker } = DatePicker; const { RangePicker } = DatePicker;
const YardDiscount = () => { const YardDiscount = () => {
// message.config({
// maxCount: 1,
// });
// //
const defaultData = { const defaultData = {
activity: [], // activity: [], //
@ -142,6 +145,7 @@ const YardDiscount = () => {
className="hover" className="hover"
onClick={() => { onClick={() => {
setModalData({ setModalData({
id: record?.id || "",
activity: record?.activity_id?.split() || [], activity: record?.activity_id?.split() || [],
road: record?.road_id?.split() || [], road: record?.road_id?.split() || [],
discount: record?.discount || "", discount: record?.discount || "",
@ -252,17 +256,44 @@ const YardDiscount = () => {
message.error(error.message); message.error(error.message);
}); });
}; };
//
const $disabledDate = (current) => { const $disabledDate = (current) => {
// Can not select days before today and today // Can not select days before today and today
return current && current <= moment().subtract(1, 'day'); 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(() => { useEffect(() => {
let _data = {}; let _data = {};
if (sessionData && Object.values(sessionData).length > 0) { if (sessionData && Object.values(sessionData).length > 0) {
_data = { _data = {
activity: sessionData?.activity || [], // activity: sessionData?.activity || [], //
road: sessionData?.road || [], // road: sessionData?.road || [], //
status: sessionData?.status || "0", //
pn: 1, pn: 1,
page_size: dictionary?.pageSizeOptions1[0], page_size: dictionary?.pageSizeOptions1[0],
}; };
@ -274,7 +305,6 @@ const YardDiscount = () => {
useEffect(() => { useEffect(() => {
// setSessionData(formData); // setSessionData(formData);
}, [formData]); }, [formData]);
return ( return (
<div className="yard-discount"> <div className="yard-discount">
<div className="paid-search"> <div className="paid-search">
@ -395,7 +425,7 @@ const YardDiscount = () => {
destroyOnClose={true} destroyOnClose={true}
footer={[ footer={[
modalVisible.title != "查看" ? modalVisible.title != "查看" ?
<Button key="提交" type="primary" onClick={() => {console.log(modalData, "这是确定");}}>提交</Button>
<Button key="提交" type="primary" onClick={() => {$addEditSubmit(modalData, modalVisible.title)}}>提交</Button>
: "", : "",
<Button key="取消" onClick={() => { <Button key="取消" onClick={() => {
setModalVisible({open: false, title: ""}); setModalVisible({open: false, title: ""});
@ -457,13 +487,13 @@ const YardDiscount = () => {
disabled={modalVisible.title == "查看" ? true : false} disabled={modalVisible.title == "查看" ? true : false}
suffix="%" suffix="%"
onChange={(e) =>{ onChange={(e) =>{
let onlyNumber = /^[1-9]\d*$/;
if(onlyNumber.test(e.target.value) || e.target.value.length > 2 ? true : false) {
let onlyNumber = /^[1-9]*$/;
if(!onlyNumber.test(e.target.value) || e.target.value.length > 2) {
return message.error("折扣必须填1-99的整数"); return message.error("折扣必须填1-99的整数");
} }
setFormData({
setModalData({
...modalData, ...modalData,
discount: e.target.value || ""
discount: e.target?.value || ""
}) })
}} }}
/> />

7
src/services/OperationCenter/OperationSales/index.js

@ -118,9 +118,10 @@ const getParkdiscountList = (p) => {
}); });
}; };
// 车场折扣-新增编辑 // 车场折扣-新增编辑
const handleDiscountOperate = (p) => {
const handleYardDiscount = (p, type) => {
let url = type == "编辑" ? "/api/ope/parkdiscount/edit" : "/api/ope/parkdiscount/insert"
return ajax({ return ajax({
url: "/api/ope/coupon/operate",
url,
type: "post", type: "post",
data: p, data: p,
}); });
@ -246,7 +247,7 @@ export default {
handleActivityInsert, handleActivityInsert,
handleActivityView, handleActivityView,
getParkdiscountList, getParkdiscountList,
handleDiscountOperate,
handleYardDiscount,
handleCouponRulesEdit, handleCouponRulesEdit,
getActivityEdit, getActivityEdit,
getActivityDelete, getActivityDelete,

Loading…
Cancel
Save