|
@@ -557,7 +557,6 @@ const AddTarget: React.FC<Props> = ({ isBackVal, putInType, value, visible, onCh
|
|
|
rules={[
|
|
|
{
|
|
|
validator: (_, ranges) => {
|
|
|
- console.log('ranges', ranges)
|
|
|
if (hasOverlap(ranges)) {
|
|
|
return Promise.reject('年龄存在区间重叠,请修改');
|
|
|
}
|
|
@@ -575,7 +574,18 @@ const AddTarget: React.FC<Props> = ({ isBackVal, putInType, value, visible, onCh
|
|
|
{...restField}
|
|
|
name={[name, 'min']}
|
|
|
style={{ marginBottom: 0 }}
|
|
|
- rules={[{ required: true, message: '请选择最小年龄!' }]}
|
|
|
+ rules={[
|
|
|
+ { required: true, message: '请选择最小年龄!' },
|
|
|
+ ({ getFieldValue }) => ({
|
|
|
+ validator(_, min) {
|
|
|
+ const max = getFieldValue(['age', name, 'max']);
|
|
|
+ if (min && max && max - min < 4) {
|
|
|
+ return Promise.reject('年龄跨度需≥4岁');
|
|
|
+ }
|
|
|
+ return Promise.resolve();
|
|
|
+ }
|
|
|
+ })
|
|
|
+ ]}
|
|
|
>
|
|
|
<Select style={{ width: 185 }} placeholder="请选择">
|
|
|
{Array(66 - 13).fill('').map((_, i) => i + 14).filter(i => i !== 15 && i !== 16 && i !== 17).map(i => {
|
|
@@ -588,11 +598,22 @@ const AddTarget: React.FC<Props> = ({ isBackVal, putInType, value, visible, onCh
|
|
|
{...restField}
|
|
|
name={[name, 'max']}
|
|
|
style={{ marginBottom: 0 }}
|
|
|
- rules={[{ required: true, message: '请选择最大年龄!' }]}
|
|
|
+ rules={[
|
|
|
+ { required: true, message: '请选择最大年龄!' },
|
|
|
+ ({ getFieldValue }) => ({
|
|
|
+ validator(_, max) {
|
|
|
+ const min = getFieldValue(['age', name, 'min']);
|
|
|
+ if (min && max && max - min < 4) {
|
|
|
+ return Promise.reject('年龄跨度需≥4岁');
|
|
|
+ }
|
|
|
+ return Promise.resolve();
|
|
|
+ }
|
|
|
+ })
|
|
|
+ ]}
|
|
|
>
|
|
|
<Select style={{ width: 185 }} placeholder="请选择">
|
|
|
{Array(66 - 17).fill('').map((_, i) => {
|
|
|
- return <Select.Option disabled={i + 18 < ag?.min} value={i + 18} key={i + 18}>{i + 18 === 66 ? '66 岁及以上' : i + 18 + ' 岁'}</Select.Option>
|
|
|
+ return <Select.Option disabled={i + 18 < ag?.min + 4} value={i + 18} key={i + 18}>{i + 18 === 66 ? '66 岁及以上' : i + 18 + ' 岁'}</Select.Option>
|
|
|
})}
|
|
|
</Select>
|
|
|
</Form.Item>
|