zhoulisen преди 5 години
родител
ревизия
e50c582524

+ 22
- 6
src/pages/activity/drainage/components/RedPacket.jsx Целия файл

@@ -91,19 +91,29 @@ function RedPacket(props) {
91 91
                         initialValue: data.budget / 100,
92 92
                         rules: [
93 93
 
94
-                            { required: true, message: '请设置本次红包预算' },
95
-
94
+                            { required: true, message: '请设置合适的红包预算金额', pattern: new RegExp('^[0-9]{1,5}([.][0-9]{1,2})?$') },
95
+                            {
96
+                                validator: (rule, value, callback) => {
97
+                                    callback(value > (data.availableBalance + data.sendTotalAmount) / 100 ? '预算超支' : value < data.sendTotalAmount / 100 ? '红包预算不能小于已发送红包金额' : undefined)
98
+                                }
99
+                            }
96 100
                         ],
97 101
                     },
98 102
                     )(
99
-                        <Input type="number" min={0} max={99999} />,
103
+                        <Input type="number"
104
+                            // formatter={value => `$ ${value}`.replace(/\B(?=(\d{3})+(?!\d))/g, ',')}
105
+                            // parser={value => value.replace(/\$\s?|(,*)/g, '')}
106
+                            min={0}
107
+                            max={99999}
108
+                            step={0.01}
109
+                        />,
100 110
                     )}
101 111
                 </Form.Item>
102 112
                 <Form.Item label="单个红包金额范围/元">
103 113
                     {getFieldDecorator('minPacket', {
104 114
                         initialValue: data.minPacket / 100 || 3,
105 115
                         rules: [
106
-                            { required: true, message: '请设置最小红包值' },
116
+                            { required: true, message: '请设置合适的最小红包值', pattern: new RegExp('^[0-9]{1,5}([.][0-9]{1,2})?$') },
107 117
                         ],
108 118
                     })(
109 119
                         <InputNumber min={1} max={199} />,
@@ -111,7 +121,7 @@ function RedPacket(props) {
111 121
                      {getFieldDecorator('maxPacket', {
112 122
                         initialValue: data.maxPacket / 100 || 3,
113 123
                         rules: [
114
-                            { required: true, message: '请设置最大红包值' },
124
+                            { required: true, message: '请设置合适的最大红包值', pattern: new RegExp('^[0-9]{1,5}([.][0-9]{1,2})?$') },
115 125
                         ],
116 126
                     })(
117 127
                         <InputNumber min={1} max={199} />,
@@ -121,7 +131,12 @@ function RedPacket(props) {
121 131
                     {getFieldDecorator('limitPacketNum', {
122 132
                         initialValue: data.limitPacketNum === -1 ? 0 : data.limitPacketNum,
123 133
                         rules: [
124
-                            { required: true, message: '请设置发放红包个数上限' },
134
+                            { required: true, message: '请设置合适的发放红包个数上限', pattern: new RegExp('^[1-9]\d*$') },
135
+                            {
136
+                                validator: (rule, value, callback) => {
137
+                                    callback(value < data.sendNum ? '不能小于已发送个数' : undefined)
138
+                                }
139
+                            }
125 140
                         ],
126 141
                     })(
127 142
                         <Input type="number" />,
@@ -149,6 +164,7 @@ color:rgba(102,102,102,1); */}
149 164
                         initialValue: data.mchName,
150 165
                         rules: [
151 166
                             { required: true, message: '请设置商户名称' },
167
+                            { max: 10, message: '标商户名称长度不能超过10个字符' }
152 168
                         ],
153 169
                     })(
154 170
                         <Input placeholder="{小程序名}" />,

+ 4
- 0
src/pages/funds/accountfunds/components/Basic.jsx Целия файл

@@ -32,6 +32,10 @@ function Basic(props) {
32 32
 
33 33
     const handleOkRecharge = e => {
34 34
         console.log(e, '123123')
35
+        if (e == 0) {
36
+            message.error('充值金额不能为0')
37
+            return
38
+        }
35 39
         if (e) {
36 40
 
37 41
             request({ ...apis.funds.saveOrder, data: { amount: e * 100 } }).then(data => {

+ 2
- 1
src/pages/funds/accountfunds/components/ConsumerOrder.jsx Целия файл

@@ -85,7 +85,8 @@ function RechargeOrder(props) {
85 85
             dataIndex: 'itemType',
86 86
             key: 'itemType',
87 87
             align: 'center',
88
-            render: (x, row) => <><span>{`${row.itemType == 'RedPacket' ? '红包' : ''}`}</span></>,
88
+            // render: () => <>红包</>,
89
+            render: (x, row) => <><span>{`${row.consumeType === 'RedPacket' ? '红包' : ''}`}</span></>,
89 90
         },
90 91
         {
91 92
             title: '活动名称',

+ 3
- 1
src/pages/funds/accountfunds/components/Recharge.jsx Целия файл

@@ -7,9 +7,11 @@ import ContactText from './contactText'
7 7
 const Recharge = props => {
8 8
 
9 9
     const [value, setValue] = useState()
10
-
10
+    // /^1[3456789]\d{9}$/
11 11
     function onChange(e) {
12
+        if (e.target.value == 0) { setValue(0); return }
12 13
         if (e.target.value <= 0) return
14
+        if (!(/^[0-9]{1,5}([.][0-9]{1,2})?$/.test(e.target.value))) return
13 15
         if (e.target.value > 99999.99) { setValue(99999.99); return }
14 16
         console.log('changed', e.target.value);
15 17
         setValue(e.target.value)

+ 9
- 0
src/pages/funds/accountfunds/components/Refund.jsx Целия файл

@@ -6,10 +6,19 @@ import ContactText from './contactText'
6 6
 const Recharge = props => {
7 7
     const { balance } = props
8 8
 
9
+    // if (e.target.value == 0) { setValue(0); return }
10
+    // if (e.target.value <= 0) return
11
+    // if (!(/^[0-9]{1,5}([.][0-9]{1,2})?$/.test(e.target.value))) return
12
+    // if (e.target.value > 99999.99) { setValue(99999.99); return }
13
+    // console.log('changed', e.target.value);
14
+    // setValue(e.target.value)
15
+
9 16
     const [value, setValue] = useState()
10 17
 
11 18
     function onChange(e) {
19
+        if (e.target.value == 0) { setValue(0); return }
12 20
         if (e.target.value <= 0) return
21
+        if (!(/^[0-9]{1,5}([.][0-9]{1,2})?$/.test(e.target.value))) return
13 22
         if (e.target.value > balance) { setValue(balance); return }
14 23
         // console.log('changed', e.target.value);
15 24
         setValue(e.target.value)

+ 2
- 9
src/pages/funds/accountfunds/components/RefundOrder.jsx Целия файл

@@ -187,18 +187,11 @@ function RechargeOrder(props) {
187 187
                         <Select style={{ width: '180px' }} placeholder="退款状态">
188 188
                             <Option value="">全部</Option>
189 189
                             <Option value="checking">已申请</Option>
190
-                            <Option value="agree">已驳回</Option>
191
-                            <Option value="unagree">已退款</Option>
190
+                            <Option value="unagree">已驳回</Option>
191
+                            <Option value="agree">已退款</Option>
192 192
                         </Select>,
193 193
                     )}
194 194
                 </Form.Item>
195
-                <Form.Item>
196
-                    {getFieldDecorator('phone')(
197
-                        <Input
198
-                            placeholder="接收人手机号"
199
-                        />,
200
-                    )}
201
-                </Form.Item>
202 195
                 <Form.Item>
203 196
                     <Button type="primary" htmlType="submit"> 搜索</Button>
204 197
                     <Button style={{ marginLeft: 8 }} onClick={handleReset}>重置</Button>