feat(client): 购买模型/仓库切 pay v2 契约(render_type 多态 + 分金额 + 订单列表)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
/// 分转元字符串,千分位分组 + 两位小数,纯整数运算(金额禁 float)。
|
||||
///
|
||||
/// 例:299900 → "2,999.00";100 → "1.00";0 → "0.00";负数保留符号。
|
||||
String yuanFromMinor(int minor) {
|
||||
final negative = minor < 0;
|
||||
final abs = negative ? -minor : minor;
|
||||
final yuan = abs ~/ 100;
|
||||
final cents = abs % 100;
|
||||
|
||||
final yuanDigits = yuan.toString();
|
||||
final len = yuanDigits.length;
|
||||
final buffer = StringBuffer();
|
||||
for (var i = 0; i < len; i++) {
|
||||
if (i > 0 && (len - i) % 3 == 0) buffer.write(',');
|
||||
buffer.write(yuanDigits[i]);
|
||||
}
|
||||
|
||||
final centsStr = cents.toString().padLeft(2, '0');
|
||||
return '${negative ? '-' : ''}$buffer.$centsStr';
|
||||
}
|
||||
Reference in New Issue
Block a user