Bläddra i källkod

🐛 fix(opportunities): 修复预计金额输入和显示问题

- 使用InputNumber替代Input组件以提供更好的数字输入体验
- 添加Number()包装确保金额显示时正确转换为数字类型
- 增加min={0}限制防止输入负数金额
- 设置precision={2}和step={0.01}确保金额精确到分
yourname 4 månader sedan
förälder
incheckning
f6d09d3979
1 ändrade filer med 7 tillägg och 9 borttagningar
  1. 7 9
      src/client/admin/pages/Opportunities.tsx

+ 7 - 9
src/client/admin/pages/Opportunities.tsx

@@ -1,6 +1,6 @@
 import React, { useState } from 'react';
 import {
-  Button, Table, Space, Form, Input, Select, Modal, Card, Typography, Popconfirm, Tag,
+  Button, Table, Space, Form, Input, InputNumber, Select, Modal, Card, Typography, Popconfirm, Tag,
   App
 } from 'antd';
 import { useQuery } from '@tanstack/react-query';
@@ -215,7 +215,7 @@ export const OpportunitiesPage = () => {
       title: '预计金额',
       dataIndex: 'amount',
       key: 'amount',
-      render: (amount: number) => `¥${amount.toFixed(2)}`
+      render: (amount: number) => `¥${Number(amount).toFixed(2)}`
     },
     {
       title: '销售阶段',
@@ -364,15 +364,13 @@ export const OpportunitiesPage = () => {
             required
             rules={[
               { required: true, message: '请输入预计金额' },
-              { type: 'number', message: '请输入有效的数字' },
-              { min: 0, message: '金额不能为负数' }
             ]}
           >
-            <Input 
-              type="number" 
-              placeholder="请输入预计金额" 
-              formatter={value => `¥ ${value}`.replace(/\B(?=(\d{3})+(?!\d))/g, ',')}
-              parser={value => value!.replace(/\¥\s?|(,*)/g, '')}
+            <InputNumber
+              min={0}
+              precision={2}
+              step={0.01}
+              placeholder="请输入预计金额"
             />
           </Form.Item>