perubahan denomuretor on pos sale
This commit is contained in:
@@ -4,6 +4,7 @@ import 'package:intl/intl.dart';
|
||||
import 'package:pdf/widgets.dart' as pw;
|
||||
|
||||
import 'generated/l10n.dart' as lang;
|
||||
import 'currency.dart';
|
||||
|
||||
const kMainColor = Color(0xffC52127);
|
||||
const kMainColor100 = Color(0xffFDE7F2);
|
||||
@@ -49,7 +50,7 @@ const String onboard3 = 'images/onbord3.png';
|
||||
const String logo = 'images/logokulakpos.png';
|
||||
const String appsName = 'KULAKPOS';
|
||||
const String companyWebsite = 'https://kulakpos.id';
|
||||
const String companyName = 'KULAKPOS';
|
||||
const String companyName = 'ONE TEKNOLOGI';
|
||||
|
||||
bool connected = false;
|
||||
|
||||
@@ -202,19 +203,41 @@ Map<String, String> languageMap = {
|
||||
'Chinese': 'zh',
|
||||
};
|
||||
|
||||
String getLocaleFromCurrency() {
|
||||
final loweredName = currencyName.toLowerCase();
|
||||
if (loweredName.contains('rupiah') || currency.toLowerCase() == 'rp' || currency == 'IDR') {
|
||||
return 'id_ID';
|
||||
} else if (loweredName.contains('rupee') || currency == '₹' || currency.toLowerCase() == 'rs' || currency == 'INR') {
|
||||
return 'en_IN';
|
||||
} else if (loweredName.contains('euro') || currency == '€' || currency == 'EUR') {
|
||||
return 'de_DE';
|
||||
}
|
||||
return 'en_US';
|
||||
}
|
||||
|
||||
String formatPointNumber(num value, {bool addComma = false}) {
|
||||
String formatted;
|
||||
|
||||
if (value % 1 == 0) {
|
||||
formatted = value.toInt().toString();
|
||||
} else {
|
||||
formatted = value.toStringAsFixed(2);
|
||||
}
|
||||
// Always use 2 decimal places for consistent display
|
||||
formatted = value.toStringAsFixed(2);
|
||||
|
||||
if (addComma) {
|
||||
// NumberFormat from intl package is used here
|
||||
final formatter = NumberFormat.decimalPattern();
|
||||
formatted = formatter.format(num.parse(formatted));
|
||||
try {
|
||||
final formatter = NumberFormat.currency(locale: getLocaleFromCurrency(), symbol: '', decimalDigits: 2);
|
||||
formatted = formatter.format(value).trim();
|
||||
} catch (e) {
|
||||
final fallback = NumberFormat.decimalPattern(getLocaleFromCurrency());
|
||||
fallback.minimumFractionDigits = 2;
|
||||
fallback.maximumFractionDigits = 2;
|
||||
try {
|
||||
formatted = fallback.format(value);
|
||||
} catch (e2) {
|
||||
final fallbackUs = NumberFormat.decimalPattern();
|
||||
fallbackUs.minimumFractionDigits = 2;
|
||||
fallbackUs.maximumFractionDigits = 2;
|
||||
formatted = fallbackUs.format(value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return formatted;
|
||||
|
||||
Reference in New Issue
Block a user