surfstudio/iOS-Utils

MoneyModel.asString форматирование округляет копейку до 10

NullIsOne opened this issue · 1 comments

пример
"1,01" - MoneyModel(decimal: 1, digit: 1) - asString = "1,10"

Мелочь, а неприятно)

Решил в своем проекте так

/// Если digit == 0 то вернет просто `рубли`
    func asString() -> String {

        let digitPart = self.digit == 0 ? "" : ".\(self.digit)"
        let digitPart: String = {
            guard digit > 0 else {
                return ""
            }
            return digit < 10 ? ".0\(self.digit)" : ".\(self.digit)"
        }()

        return "\(self.decimal)\(digitPart)"
    }

Ну законтрибьють решение)