货币字段
货币字段(服务端 Decimal / 前端 Currency)是高精度数值类型,用于金额、价格、汇率等需要精确计算的场景。
概述
货币字段与数字字段的区别在于存储精度:数字字段使用双精度浮点(float8),而货币字段使用 decimal,能避免浮点数误差,适合金额类业务。货币字段不支持评分、滑动条等花哨的渲染形式,仅提供标准数值输入。
配置项
| 配置项 | 说明 |
|---|---|
| 名称 | 字段显示名称,必填 |
| 编码 | 字段唯一编码,必填,创建后不可修改 |
| 描述 | 字段用途说明 |
| 精度 | 小数位数,范围 0–6 |
| 最小值 | 允许的最小数值 |
| 最大值 | 允许的最大数值 |
| 输入框前缀 | 输入框左侧前缀文本(如 ¥、$) |
| 输入框后缀 | 输入框右侧后缀文本(如 元) |
精度选择
金额类字段通常将精度设为 2(分),需要更细粒度时可提升至 4;精度上限为 6。
下一步
属性明细
以下内容面向技术实现与 AI 检索。
货币字段属性表
| 属性名 | 类型 | 含义 | 取值/存储值 |
|---|---|---|---|
FieldType | int | 字段类型 | Decimal = 10(前端 FieldType.Currency 同为 10) |
Precision | int | 小数位数 | 0–6,超过 6 保存时报错 |
Properties.NubmerMinValue | int? | 最小值 | 可空 |
Properties.NubmerMaxValue | int? | 最大值 | 可空 |
Properties.Prefix | string | 输入框前缀 | 如 ¥ |
Properties.Suffix | string | 输入框后缀 | 如 元 |
数值类型对照
| 字段类型 | 枚举名 | 存储值 | 数据库类型 | 适用场景 |
|---|---|---|---|---|
| 数字 | Number | 9 | float8 | 数量、比例等一般数值 |
| 货币数值 | Decimal | 10 | decimal | 金额、价格、汇率等高精度数值 |
存储示例
字段定义:
{
"Code": "unitprice",
"Name": "单价",
"FieldType": 10,
"Precision": 2,
"Properties": {
"NubmerMinValue": 0,
"Prefix": "¥"
}
}
对象数据中的存储值:
{
"Fields": {
"unitprice": { "Code": "unitprice", "Text": "¥ 19.99", "Value": 19.99 }
}
}