Browse Source

阶梯、循环活动

tags/小炒逻辑变更前
yangwenhua 2 years ago
parent
commit
be1200df63
8 changed files with 712 additions and 31 deletions
  1. +2
    -2
      src/pages/activity/activityStart/components/CouponDelivery/index.jsx
  2. +4
    -4
      src/pages/activity/activityStart/components/FreeCouponMoney/index.jsx
  3. +2
    -2
      src/pages/activity/activityStart/components/FreeGoodsMoney/index.jsx
  4. +2
    -2
      src/pages/activity/activityStart/components/FullDecrement/index.jsx
  5. +685
    -12
      src/pages/activity/activityStart/components/LadderExchange/index.jsx
  6. +2
    -2
      src/pages/activity/activityStart/components/PriceIncrease/index.jsx
  7. +7
    -0
      src/pages/activity/activityStart/components/SpecialOffer/index.jsx
  8. +8
    -7
      src/pages/activity/activityStart/index.jsx

+ 2
- 2
src/pages/activity/activityStart/components/CouponDelivery/index.jsx View File

@@ -434,8 +434,8 @@ const CouponDelivery = () => {

<Form.Item name="isAutoSend" label="参与方式" rules={[{ required: true }]}>
<Select placeholder="请选择参与方式">
<Select.Option value="0">点击参与(需要用户主动点击)</Select.Option>
<Select.Option value="1">自动参与(满足特定条件自动参与)</Select.Option>
<Select.Option value={0}>点击参与(需要用户主动点击)</Select.Option>
<Select.Option value={1}>自动参与(满足特定条件自动参与)</Select.Option>
</Select>
</Form.Item>



+ 4
- 4
src/pages/activity/activityStart/components/FreeCouponMoney/index.jsx View File

@@ -415,8 +415,8 @@ const FreeCouponMoney = () => {

<Form.Item
{...restField}
name={[name, 'rewardValue']}
fieldKey={[fieldKey, 'rewardValue']}
name={[name, 'value']}
fieldKey={[fieldKey, 'value']}
rules={[{ required: true, message: '请选择优惠券' }]}
>
<Select
@@ -494,8 +494,8 @@ const FreeCouponMoney = () => {

<Form.Item name="isAutoSend" label="参与方式" rules={[{ required: true }]}>
<Select placeholder="请选择参与方式">
<Select.Option value="0">点击参与(需要用户主动点击)</Select.Option>
<Select.Option value="1">自动参与(满足特定条件自动参与)</Select.Option>
<Select.Option value={0}>点击参与(需要用户主动点击)</Select.Option>
<Select.Option value={1}>自动参与(满足特定条件自动参与)</Select.Option>
</Select>
</Form.Item>



+ 2
- 2
src/pages/activity/activityStart/components/FreeGoodsMoney/index.jsx View File

@@ -404,8 +404,8 @@ const FreeGoodsMoney = () => {

<Form.Item name="isAutoSend" label="参与方式" rules={[{ required: true }]}>
<Select placeholder="请选择参与方式">
<Select.Option value="0">点击参与(需要用户主动点击)</Select.Option>
<Select.Option value="1">自动参与(满足特定条件自动参与)</Select.Option>
<Select.Option value={0}>点击参与(需要用户主动点击)</Select.Option>
<Select.Option value={1}>自动参与(满足特定条件自动参与)</Select.Option>
</Select>
</Form.Item>



+ 2
- 2
src/pages/activity/activityStart/components/FullDecrement/index.jsx View File

@@ -376,8 +376,8 @@ const FullDecrement = () => {

<Form.Item name="isAutoSend" label="参与方式" rules={[{ required: true }]}>
<Select placeholder="请选择参与方式">
<Select.Option value="0">点击参与(需要用户主动点击)</Select.Option>
<Select.Option value="1">自动参与(满足特定条件自动参与)</Select.Option>
<Select.Option value={0}>点击参与(需要用户主动点击)</Select.Option>
<Select.Option value={1}>自动参与(满足特定条件自动参与)</Select.Option>
</Select>
</Form.Item>



+ 685
- 12
src/pages/activity/activityStart/components/LadderExchange/index.jsx View File

@@ -1,19 +1,193 @@
import React, { useState } from "react";
import { Form, Button, Input, Image, Select, DatePicker, Upload, InputNumber } from 'antd';
import React, { useState, useEffect } from "react";
import { Form, Button, Input, Image, Select, DatePicker, Upload, InputNumber, Modal, message, Checkbox, Row, Col } from 'antd';
import styles from "../../index.less";
import { MinusCircleOutlined, PlusOutlined, UploadOutlined } from '@ant-design/icons';
import { MinusCircleOutlined, PlusOutlined, UploadOutlined, PlusCircleOutlined } from '@ant-design/icons';
import startAPI from "../../service";
import axios from 'axios';
const key = 'coupon';
import moment from "moment";

const activityConfigArray = [
{
"configId": null,
"operator": null,
"value1": [],
"value2": null,
"activity_Id": null,
"configuration_Id": "2B0F88D6-EDA0-4AAC-BB0B-DD34F3245C17",
"configurationName": "日参与次数限制",
"configurationRule": "每日参与次数",
"valueType": 1,
"configurationValueCount": 1
},
{
"configId": null,
"operator": null,
"value1": [],
"value2": null,
"activity_Id": null,
"configuration_Id": "8AC2A2BA-BB6E-4566-B147-ACF798146BBD",
"configurationName": "星期限制",
"configurationRule": "包含的星期",
"valueType": 2,
"configurationValueCount": 1
},
{
"configId": null,
"operator": null,
"value1": [],
"value2": null,
"activity_Id": null,
"configuration_Id": "9620CCF9-679E-44B1-B8FF-9B6F511208FA",
"configurationName": "消费金额",
"configurationRule": "单笔订单消费金额",
"valueType": 1,
"configurationValueCount": 1
},
{
"configId": null,
"operator": null,
"value1": [],
"value2": null,
"activity_Id": null,
"configuration_Id": "AF62B336-15A6-453B-AD4A-61EB7D43B99B",
"configurationName": "商品种类限制",
"configurationRule": "包含的商品种类",
"valueType": 2,
"configurationValueCount": 1
},
{
"configId": null,
"operator": null,
"value1": [],
"value2": null,
"activity_Id": null,
"configuration_Id": "ECBACC1C-6BA8-498E-BDE4-6A012881E0E7",
"configurationName": "门店限制",
"configurationRule": "包含的门店",
"valueType": 2,
"configurationValueCount": 1
},
{
"configId": null,
"operator": null,
"value1": [],
"value2": null,
"activity_Id": null,
"configuration_Id": "F06DEAD8-DDB8-4B27-94E9-389DE9AC155D",
"configurationName": "总参与次数限制",
"configurationRule": "总参与次数",
"valueType": 1,
"configurationValueCount": 1
}
]

const formItemLayout = {
labelCol: {
sm: { span: 4 },
},
wrapperCol: {},
};

const tailFormItemLayout = {
wrapperCol: {
sm: {
span: 500,
offset: 1,
},
},
};

/**
* 阶梯消费换购
* @returns
*/
const LadderExchange = () => {
const LadderExchange = (props) => {

const [couponInfo, SetCouponInfo] = useState([]);
/**
* 获取优惠券列表
*/
const onFetchCouponList = async () => {
const response = await startAPI.GetCouponCanUseCountAndLimit();
if (response.succeeded) {
SetCouponInfo(response.data);
}
}
const [couponForm] = Form.useForm();
const [imgurl, setimgUrl] = useState(null);

/** 新建/更新窗口的弹窗 */
const [createModalVisible, handleModalVisible] = useState(false);
const [form] = Form.useForm();

/** 优惠券类型 */
const [couponType, setcouponType] = useState([]);

/** 适用商品范围 */
const [applyGood, setApplyGood] = useState([]);

/**
* 获取商品
*/
const onFetchGoods = async (goodsType = -1) => {
const response = await startAPI.GetGoodsById(goodsType);
if (response.statusCode === 200) {
const array = [];
Object.keys(response.data).forEach(item => {
array.push({
id: item,
name: response.data[item]
})
});
setApplyGood(array)
}
}

/**
* 获取适用店铺
*/
const GetStores = async () => {
const response = await startAPI.GetStores();
if (response.statusCode === 200) {
setApplicableStore(response.data);
}
}

/**
* 获取消费券类型
*/
const GetCouponStatusOrType = async () => {
await startAPI.GetCouponStatusOrType(2).then((r) => {
if (r.succeeded) {
setcouponType(r.data);
}
});
}

/** 适用门店范围 */
const [applicableStore, setApplicableStore] = useState([]);

/** 适用商品类型范围 */
const [applyGoodType, setApplyGoodType] = useState([]);

/**
* 适用商品范围
*/
const onFetchGoodsType = async () => {
const response = await startAPI.GetGoodsType();
if (response.statusCode === 200) {
const array = [];
Object.keys(response.data).forEach(item => {
array.push({
id: item,
name: response.data[item]
})
})
setApplyGoodType(array);
}
}

const uploadProp = {
name: 'file',
showUploadList: false,
@@ -73,6 +247,122 @@ const LadderExchange = () => {
},
};

//新增
const handleAddCoupon = async (fields) => {
fields.RangeType = 1;
message.loading('正在添加...', key);
try {
if (fields.validEndTime < fields.validStartTime) {
message.error('开始时间不能大于结束时间');
}
await startAPI.Addcoupon(JSON.stringify(fields)).then((r) => {
message.destroy(key);
if (r.data) {
message.success('添加成功');
onFetchCouponList();
handleModalVisible(false);
} else {
message.error('添加失败请重试!');
}
});
} catch (error) {
message.destroy(key);
message.error('添加失败请重试!');
}
};

const hander = async (value) => {
var res = (await startAPI.GetSelectedConfig(value)).data;
var arr = [];
for (let k in res) {
arr.push({
id: k.toString(),
name: res[k.toString()],
});
}
setApplicableStore(data);
form.setFieldsValue({ Relation: [] });
};

/**
* 提交
* @param {*} values
*/
const onSubmitActivity = async (values) => {
values.activityType = props.currentActivityType;
values.activityRewards.forEach(item => {
item.id = "";
item.activityInfo_Id = "";
})
values.activityStartTime = moment(values.activityStartAndEndTime[0]).format('YYYY-MM-DD');
values.activityEndTime = moment(values.activityStartAndEndTime[1]).format('YYYY-MM-DD');
values.status = 0;
values.isShow = 1;
values.isDeleted = 0;
values.activityConfiguration = [];
values.activityConfig.forEach(config => {
const findConfig = activityConfigArray.find(item => item.configuration_Id === config);
if (findConfig) {
findConfig.configId = [findConfig.configuration_Id];
if (findConfig.configurationName === '日参与次数限制') {
findConfig.operator = values.dayOperator;
findConfig.value1 = values.dayValue;
} else if (findConfig.configurationName === '星期限制') {
findConfig.operator = values.weekOperator;
findConfig.value1 = values.weekValue;
} else if (findConfig.configurationName === '消费金额') {
findConfig.operator = values.amountOperator;
findConfig.value1 = values.amountValue;
} else if (findConfig.configurationName === '商品种类限制') {
findConfig.operator = values.goodsTypeOperator;
findConfig.value1 = values.goodsTypeValue;
} else if (findConfig.configurationName === '门店限制') {
findConfig.operator = values.storeOperator;
findConfig.value1 = values.storeValue;
} else if (findConfig.configurationName === '总参与次数限制') {
findConfig.operator = values.totalOperator;
findConfig.value1 = values.totalValue;
}
values.activityConfiguration.push(findConfig);
}
});
delete values.activityConfig;
delete values.activityStartAndEndTime;

delete values.amountOperator;
delete values.amountValue;

delete values.dayOperator;
delete values.dayValue;

delete values.goodsTypeOperator;
delete values.goodsTypeValue;

delete values.storeOperator;
delete values.storeValue;

delete values.totalOperator;
delete values.totalValue;

delete values.weekOperator;
delete values.weekValue;
const response = await startAPI.FastAddActivity(values);
if (response.statusCode === 200) {
message.success('新建活动成功!');
couponForm.resetFields();
} else {
message.error(response.errors || '创建失败 请重试!');
}
}

useEffect(() => {
GetCouponStatusOrType();
onFetchCouponList();
onFetchGoodsType();
GetStores();
onFetchGoods();
}, []);

return <div className={styles.activity_form_container} >
<Form
form={couponForm}
@@ -84,7 +374,7 @@ const LadderExchange = () => {
remember: true,
}}
onFinish={(values) => {
console.log('values', values);
onSubmitActivity(values);
}}
layout="vertical"
autoComplete="off"
@@ -169,15 +459,15 @@ const LadderExchange = () => {
fieldKey={[fieldKey, 'rewardValue']}
rules={[{ required: true, message: '请输入消费次数' }]}
>
<InputNumber style={{ width: '200px' }} placeholder="请输入消费次数" />
<InputNumber style={{ width: '150px' }} placeholder="请输入消费次数" />
</Form.Item>

<div style={{ margin: '0 10px 24px 20px' }}>赠送优惠券:</div>

<Form.Item
{...restField}
name={[name, 'rewardValue']}
fieldKey={[fieldKey, 'rewardValue']}
name={[name, 'value']}
fieldKey={[fieldKey, 'value']}
rules={[{ required: true, message: '请选择优惠券' }]}
>
<Select
@@ -187,17 +477,32 @@ const LadderExchange = () => {
}}

>
<Option value="jack">优惠券1</Option>
{couponInfo.map((item, index) => {
return (
<Select.Option
index={index}
value={item.couponId}
key={item.couponId}
>
{item.couponName}
</Select.Option>
);
})}
</Select>
</Form.Item>

<PlusCircleOutlined onClick={() => handleModalVisible(true)} style={{ margin: '0 10px', flexShrink: 0, marginBottom: '24px', fontSize: '25px', color: '#F84352' }} />

<MinusCircleOutlined style={{ fontSize: '25px', marginLeft: '20px', marginBottom: '24px' }} onClick={() => remove(name)} />
</div>
))}
<Form.Item>
<Button
type="dashed"
onClick={() => add()}
onClick={() => {
if (props.currentActivityType === 7 && fields.length > 0) return;
add();
}}
style={{
width: '100%',
}}
@@ -213,7 +518,7 @@ const LadderExchange = () => {
</Form.Item>

<Form.Item
name="activityStartTime"
name="activityStartAndEndTime"
label="起止时间"
rules={[{ required: true }]}
>
@@ -242,6 +547,179 @@ const LadderExchange = () => {
</Upload>
</Form.Item>

<Form.Item name="isAutoSend" label="参与方式" rules={[{ required: true }]}>
<Select placeholder="请选择参与方式">
<Select.Option value={0}>点击参与(需要用户主动点击)</Select.Option>
<Select.Option value={1}>自动参与(满足特定条件自动参与)</Select.Option>
</Select>
</Form.Item>

<Form.Item name="activityConfig" label="活动配置" rules={[{ required: true, message: '请至少选择一个活动配置!' }]}>
<Checkbox.Group style={{
width: '100%',
}}>
<Row>
{
activityConfigArray.map((config, index) => {
return <Col key={index} span={24} style={{ marginBottom: '10px', display: 'flex', alignItems: 'center' }}>
<Checkbox style={{ minWidth: '230px' }} value={config.configuration_Id}>{config.configurationName}:{config.configurationRule}</Checkbox>
{index === 0 && (
<>
<Form.Item
name="dayOperator"
noStyle
>
<Select style={{ width: 80, margin: '0 20px' }} size='Small' placeholder="条件">
<Select.Option value=">">大于</Select.Option>
<Select.Option value="<">小于</Select.Option>
<Select.Option value="==">等于</Select.Option>
<Select.Option value=">=and<=">包含</Select.Option>
</Select>
</Form.Item>
<Form.Item
name="dayValue"
noStyle
>
<Input style={{ width: 280 }} placeholder="每日参与次数" />
</Form.Item>
</>
)}
{index === 1 && (
<>
<Form.Item
name="weekOperator"
noStyle
>
<Select style={{ width: 80, margin: '0 20px' }} size='Small' placeholder="条件">
<Select.Option value=">">大于</Select.Option>
<Select.Option value="<">小于</Select.Option>
<Select.Option value="==">等于</Select.Option>
<Select.Option value=">=and<=">包含</Select.Option>
</Select>
</Form.Item>
<Form.Item
name="weekValue"
noStyle
>
<Select style={{ width: 280 }} size='Small' mode="multiple" placeholder="星期">
<Select.Option value="1">星期一</Select.Option>
<Select.Option value="2">星期二</Select.Option>
<Select.Option value="3">星期三</Select.Option>
<Select.Option value="4">星期四</Select.Option>
<Select.Option value="5">星期五</Select.Option>
<Select.Option value="6">星期六</Select.Option>
<Select.Option value="0">星期日</Select.Option>
</Select>
</Form.Item>
</>
)}
{index === 2 && (
<>
<Form.Item
name="amountOperator"
noStyle
>
<Select style={{ width: 80, margin: '0 20px' }} size='Small' placeholder="条件">
<Select.Option value=">">大于</Select.Option>
<Select.Option value="<">小于</Select.Option>
<Select.Option value="==">等于</Select.Option>
<Select.Option value=">=and<=">包含</Select.Option>
</Select>
</Form.Item>
<Form.Item
name="amountValue"
noStyle
>
<Input style={{ width: 280 }} placeholder="消费金额" />
</Form.Item>
</>
)}
{index === 3 && (
<>
<Form.Item
name="goodsTypeOperator"
noStyle
>
<Select style={{ width: 80, margin: '0 20px' }} size='Small' placeholder="条件">
<Select.Option value=">">大于</Select.Option>
<Select.Option value="<">小于</Select.Option>
<Select.Option value="==">等于</Select.Option>
<Select.Option value=">=and<=">包含</Select.Option>
</Select>
</Form.Item>
<Form.Item
name="goodsTypeValue"
noStyle
>
<Select style={{ width: 280 }} size='Small' placeholder="商品种类" mode="multiple">
{
applyGoodType.map(item => {
return <Select.Option value={item.id} key={item.id}>
{item.name}
</Select.Option>
})
}
</Select>
</Form.Item>
</>
)}
{index === 4 && (
<>
<Form.Item
name="storeOperator"
noStyle
>
<Select style={{ width: 80, margin: '0 20px' }} size='Small' placeholder="条件">
<Select.Option value=">">大于</Select.Option>
<Select.Option value="<">小于</Select.Option>
<Select.Option value="==">等于</Select.Option>
<Select.Option value=">=and<=">包含</Select.Option>
</Select>
</Form.Item>
<Form.Item
name="storeValue"
noStyle
>
<Select style={{ width: 280 }} size='Small' mode="multiple" placeholder="门店">
{
applicableStore.map(item => {
return <Select.Option value={item.id} key={item.id}>
{item.name}
</Select.Option>
})
}
</Select>
</Form.Item>
</>
)}
{index === 5 && (
<>
<Form.Item
name="totalOperator"
noStyle
>
<Select style={{ width: 80, margin: '0 20px' }} size='Small' placeholder="条件">
<Select.Option value=">">大于</Select.Option>
<Select.Option value="<">小于</Select.Option>
<Select.Option value="==">等于</Select.Option>
<Select.Option value=">=and<=">包含</Select.Option>
</Select>
</Form.Item>
<Form.Item
name="totalValue"
noStyle
>
<Input style={{ width: 280 }} placeholder="总次数" />
</Form.Item>
</>
)}
</Col>
})
}
</Row>
</Checkbox.Group>
</Form.Item>

<Form.Item>
<Button type="primary" htmlType="submit">
提交
@@ -253,8 +731,203 @@ const LadderExchange = () => {
重置
</Button>
</Form.Item>

</Form>

<Modal
maskClosable={false}
title="新建优惠卷"
width={700}
visible={createModalVisible}
footer={null} //底部内容
//取消
onCancel={() => {
handleModalVisible(false);
}}
//关闭时销毁 Modal 里的子元素
destroyOnClose
>
<Form
form={form}
{...formItemLayout}
layout="Horizontal"
preserve={false}
onFinish={(values) => {
handleAddCoupon(values)
}}
>
<Form.Item name="id" hidden={true}>
<Input />
</Form.Item>
<Form.Item name="couponTitle" label="优惠卷标题" rules={[{ required: true, max: 200 }]}>
<Input placeholder="请输入优惠卷标题" />
</Form.Item>
<Form.Item
name="couponType"
label="优惠卷类型"
rules={[{ required: true }]}
>
<Select placeholder="请选择优惠卷类型">
{
couponType.map(item => {
return <Select.Option key={item.key} value={item.key} >
{item.value}
</Select.Option>
})
}
</Select>
</Form.Item>
<Form.Item {...tailFormItemLayout} style={{ height: 32 }}>
<Form.Item label="优惠金额" style={{ float: 'left' }} rules={[{ required: true }]}>
<Form.Item name="couponValue" noStyle>
<InputNumber placeholder="金额" min={0} precision={2} />
</Form.Item>
</Form.Item>
<Form.Item
label="使用条件"
style={{ float: 'left', marginLeft: 10 }}
rules={[{ required: true }]}
>
<Form.Item name="condition" noStyle>
<InputNumber placeholder="使用条件" min={0} precision={2} />
</Form.Item>
</Form.Item>
<Form.Item
label="每人可领数量"
style={{ float: 'left', marginLeft: 10 }}
rules={[{ required: true }]}
>
<Form.Item name="getLimit" noStyle>
<InputNumber placeholder="可领数量" min={0} precision={0} />
</Form.Item>
<span style={{ color: '#FFCC52' }}> 0 为不限制</span>
</Form.Item>
</Form.Item>
<Form.Item name="timeType" label="时间类型" rules={[{ required: true }]}>
<Select>
<Select.Option value={1}>时间段</Select.Option>
<Select.Option value={2}>固定期限</Select.Option>
</Select>
</Form.Item>
<Form.Item
noStyle
shouldUpdate={(prevValues, currentValues) =>
prevValues.timeType !== currentValues.timeType
}
>
{({ getFieldValue }) =>
getFieldValue('timeType') == '2' ? (
<Form.Item label="固定时间" rules={[{ required: true }]}>
<Form.Item name="validFixedTerm" noStyle>
<InputNumber placeholder="" precision={0} min={0} />
</Form.Item>
</Form.Item>
) : (
<Form.Item {...tailFormItemLayout} style={{ height: 32 }}>
<Form.Item
name="validStartTime"
label="开始时间"
style={{ float: 'left' }}
rules={[{ required: true }]}
>
<DatePicker placeholder="开始时间" />
</Form.Item>
<Form.Item
name="validEndTime"
label="结束时间"
style={{ float: 'left', marginLeft: 20 }}
rules={[{ required: true }]}
>
<DatePicker placeholder="结束时间" />
</Form.Item>
</Form.Item>
)
}
</Form.Item>
<Form.Item name="validStatus" label="状态" rules={[{ required: true }]}>
<Select placeholder="状态">
<Option value={1}>生效</Option>
<Option value={2}>失效</Option>
<Option value={3}>作废</Option>
</Select>
</Form.Item>

<Form.Item noStyle>
<Form.Item name="remarks" label="备注" rules={[{ max: 500 }]}>
<Input placeholder="备注" />
</Form.Item>
<span style={{ color: '#FFCC52', marginLeft: 70 }}>
注: 多条规则请用 &nbsp;;&nbsp; 隔开。 &nbsp;&nbsp; 如:1.xxxxxx; 2.xxxxxx
</span>
</Form.Item>

<Form.Item name="Coupon_Id" hidden={true}>
<Input />
</Form.Item>
<Form.Item name="SendNum" label="发放数量" rules={[{ required: true }]}>
<InputNumber placeholder="发放数量" min={0} style={{ width: '510px' }} />
</Form.Item>

<Form.Item name="RangeType" label="适用范围类型" hidden={true} defaultValue={1}>
<Select placeholder="发放范围" onSelect={hander} defaultValue={1}>
<Select.Option value="1">店铺</Select.Option>
{/* <Select.Option value="2">供应商</Select.Option> */}
<Select.Option value="3">区域</Select.Option>
</Select>
</Form.Item>

<Form.Item name="Relation" label="适用范围" rules={[{ required: true }]} defaultValue="1">
<Select placeholder="适用范围" filterOption={false} mode="multiple">
{
applicableStore.map(item => {
return <Select.Option value={item.id} key={item.id}>
{item.name}
</Select.Option>
})
}
</Select>
</Form.Item>
<Form.Item name="applyGoodType" label="适用商品类型">
<Select placeholder="适用商品类型" filterOption={false} onChange={(value) => {
onFetchGoods(value);
}}>
{
applyGoodType.map(item => {
return <Select.Option value={item.id} key={item.id}>
{item.name}
</Select.Option>
})
}
</Select>
</Form.Item>
<Form.Item name="goodsRelation" label="适用商品范围">
<Select placeholder="适用商品范围" filterOption={false} mode="multiple">
{
applyGood.map(item => {
return <Select.Option value={item.id} key={item.id}>
{item.name}
</Select.Option>
})
}
</Select>
</Form.Item>
<Form.Item name="Status" label="状态" rules={[{ required: true }]} defaultValue="1">
<Select placeholder="请选择状态">
<Select.Option value="1">启用</Select.Option>
<Select.Option value="0">禁用</Select.Option>
</Select>
</Form.Item>

<Form.Item name="Remark" label="备注">
<Input placeholder="备注" />
</Form.Item>

<Form.Item>
<Button type="primary" htmlType="submit" style={{ float: 'right' }}>
保存
</Button>
</Form.Item>
</Form>
</Modal>
</div>
}


+ 2
- 2
src/pages/activity/activityStart/components/PriceIncrease/index.jsx View File

@@ -398,8 +398,8 @@ const PriceIncrease = () => {

<Form.Item name="isAutoSend" label="参与方式" rules={[{ required: true }]}>
<Select placeholder="请选择参与方式">
<Select.Option value="0">点击参与(需要用户主动点击)</Select.Option>
<Select.Option value="1">自动参与(满足特定条件自动参与)</Select.Option>
<Select.Option value={0}>点击参与(需要用户主动点击)</Select.Option>
<Select.Option value={1}>自动参与(满足特定条件自动参与)</Select.Option>
</Select>
</Form.Item>



+ 7
- 0
src/pages/activity/activityStart/components/SpecialOffer/index.jsx View File

@@ -297,6 +297,13 @@ const SpecialOffer = () => {
</Upload>
</Form.Item>

<Form.Item name="isAutoSend" label="参与方式" rules={[{ required: true }]}>
<Select placeholder="请选择参与方式">
<Select.Option value={0}>点击参与(需要用户主动点击)</Select.Option>
<Select.Option value={1}>自动参与(满足特定条件自动参与)</Select.Option>
</Select>
</Form.Item>

<Form.Item name="activityConfig" label="活动配置" rules={[{ required: true, message: '请至少选择一个活动配置!' }]}>
<Checkbox.Group style={{
width: '100%',


+ 8
- 7
src/pages/activity/activityStart/index.jsx View File

@@ -66,13 +66,14 @@ const ActivityStart = () => {
</Option>
</Select>
</div>
{ currentActivityType === 1 && <CouponDelivery></CouponDelivery> }
{ currentActivityType === 2 && <FullDecrement></FullDecrement> }
{ currentActivityType === 3 && <SpecialOffer></SpecialOffer> }
{ currentActivityType === 4 && <FreeCouponMoney></FreeCouponMoney> }
{ currentActivityType === 5 && <FreeGoodsMoney></FreeGoodsMoney>}
{ (currentActivityType === 6 || currentActivityType === 7) && <LadderExchange></LadderExchange>}
{ currentActivityType === 8 && <PriceIncrease></PriceIncrease>}
{currentActivityType === 1 && <CouponDelivery></CouponDelivery>}
{currentActivityType === 2 && <FullDecrement></FullDecrement>}
{currentActivityType === 3 && <SpecialOffer></SpecialOffer>}
{currentActivityType === 4 && <FreeCouponMoney></FreeCouponMoney>}
{currentActivityType === 5 && <FreeGoodsMoney></FreeGoodsMoney>}
{currentActivityType === 6 && <LadderExchange currentActivityType={currentActivityType}></LadderExchange>}
{currentActivityType === 7 && <LadderExchange currentActivityType={currentActivityType}></LadderExchange>}
{currentActivityType === 8 && <PriceIncrease></PriceIncrease>}
</Card>
</PageContainer >
}


Loading…
Cancel
Save