예제 #1
0
 def test_number_multiple_million_should_show_multiple_laan(self):
     self.assertEqual(bahttext(12000000.0), u'สิบสองล้านบาทถ้วน')
     self.assertEqual(bahttext(21000000.0), u'ยี่สิบเอ็ดล้านบาทถ้วน')
     self.assertEqual(
         bahttext(51000000000000.51), u'ห้าสิบเอ็ดล้านล้านบาทห้าสิบเอ็ดสตางค์')
     self.assertEqual(
         bahttext(10000000680000.51), u'สิบล้านล้านหกแสนแปดหมื่นบาทห้าสิบเอ็ดสตางค์')
예제 #2
0
 def test_number_multiple_million_should_show_multiple_laan(self):
     self.assertEqual(bahttext(12000000.0), 'สิบสองล้านบาทถ้วน')
     self.assertEqual(bahttext(21000000.0), 'ยี่สิบเอ็ดล้านบาทถ้วน')
     self.assertEqual(bahttext(51000000000000.51),
                      'ห้าสิบเอ็ดล้านล้านบาทห้าสิบเอ็ดสตางค์')
     self.assertEqual(bahttext(10000000680000.51),
                      'สิบล้านล้านหกแสนแปดหมื่นบาทห้าสิบเอ็ดสตางค์')
예제 #3
0
 def _total_text(self, cr, uid, ids, field_name, arg, context=None):
     res = {}
     for line in self.browse(cr, uid, ids):
         res[line.id] = {
             'bahttext': '-' + bahttext(line.amount_total) + '-',
         }
     return res
예제 #4
0
 def save(self, *args, **kwargs):
     quotation_items     = self.quotation_items.all()
     sub_total           = quotation_items.aggregate(Sum('amount'))['amount__sum'] if quotation_items.exists() else 0.00
     self.sub_total      = Decimal(sub_total)
     self.after_discount = Decimal(sub_total) - Decimal(self.discount)
     self.vat            = Decimal(self.after_discount) * Decimal(0.07)
     self.net_total      = Decimal(self.after_discount) + Decimal(self.vat)
     self.baht_text      = bahttext(self.net_total)
     super().save(*args, **kwargs)
예제 #5
0
파일: wht.py 프로젝트: nitikarnh/bpe_module
 def _compute_tax(self, cr, uid, ids, prop, unknow_none, context=None):
     result = {}
     for id in ids:
         result[id] = {
             'tax': 0.0,
             'base_amount': 0.0,
             'tax_text': False,
         }
         data = self.browse(cr, uid, [id], context=context)[0]
         val = val1 = 0.0
         for line in data.line_ids:
             val1 += line.base_amount
             val += line.tax
         result[id]['tax'] = val
         result[id]['base_amount'] = val1
         result[id]['tax_text'] = '- '+bahttext.bahttext(val)+' -'
     return result
예제 #6
0
 def test_input_is_not_number_then_raise_error(self):
     with self.assertRaises(TypeError) as ex:
         bahttext('text input')
     self.assertIsInstance(ex.exception, TypeError)
예제 #7
0
 def _get_amount_text(self):
     self.amount_text = '-'+bahttext.bahttext(self.amount_total)+'-'
예제 #8
0
 def test_input_is_a_number_then_can_convert_to_string(self):
     self.assertIsInstance(bahttext(1.0), unicode)
예제 #9
0
 def test_number_in_multiple_could_show_sip(self):
     self.assertEqual(bahttext(10.0), 'สิบบาทถ้วน')
     self.assertEqual(bahttext(20.0), 'ยี่สิบบาทถ้วน')
     self.assertEqual(bahttext(50.0), 'ห้าสิบบาทถ้วน')
     self.assertEqual(bahttext(11.0), 'สิบเอ็ดบาทถ้วน')
     self.assertEqual(bahttext(15.0), 'สิบห้าบาทถ้วน')
예제 #10
0
 def test_input_is_not_number_then_raise_error(self):
     with self.assertRaises(TypeError) as ex:
         bahttext('text input')
     self.assertIsInstance(ex.exception, TypeError)
예제 #11
0
 def test_input_one_interger_wth_decimal_can_convert(self):
     self.assertEqual(bahttext(1.10), u'หนึ่งบาทสิบสตางค์')
     self.assertEqual(bahttext(2.50), u'สองบาทห้าสิบสตางค์')
     self.assertEqual(bahttext(3.75), u'สามบาทเจ็ดสิบห้าสตางค์')
예제 #12
0
 def test_number_start_with_two_could_show_yee(self):
     self.assertEqual(bahttext(2.21), u'สองบาทยี่สิบเอ็ดสตางค์')
예제 #13
0
 def test_number_ten_thousand_should_show_muern(self):
     self.assertEqual(bahttext(30000.0), 'สามหมื่นบาทถ้วน')
     self.assertEqual(bahttext(98765.10),
                      'เก้าหมื่นแปดพันเจ็ดร้อยหกสิบห้าบาทสิบสตางค์')
     self.assertEqual(bahttext(30211.21),
                      'สามหมื่นสองร้อยสิบเอ็ดบาทยี่สิบเอ็ดสตางค์')
예제 #14
0
 def test_number_hundred_thousand_should_show_saan(self):
     self.assertEqual(bahttext(800000.0), 'แปดแสนบาทถ้วน')
     self.assertEqual(bahttext(258065.81),
                      'สองแสนห้าหมื่นแปดพันหกสิบห้าบาทแปดสิบเอ็ดสตางค์')
예제 #15
0
 def test_number_hundred_should_show_roi(self):
     self.assertEqual(bahttext(100.0), 'หนึ่งร้อยบาทถ้วน')
     self.assertEqual(bahttext(101.0), 'หนึ่งร้อยเอ็ดบาทถ้วน')
     self.assertEqual(bahttext(200.0), 'สองร้อยบาทถ้วน')
     self.assertEqual(bahttext(201.0), 'สองร้อยเอ็ดบาทถ้วน')
예제 #16
0
 def test_number_thousand_should_show_pan(self):
     self.assertEqual(bahttext(1000.0), 'หนึ่งพันบาทถ้วน')
     self.assertEqual(bahttext(2000.10), 'สองพันบาทสิบสตางค์')
     self.assertEqual(bahttext(3211.51),
                      'สามพันสองร้อยสิบเอ็ดบาทห้าสิบเอ็ดสตางค์')
     self.assertEqual(bahttext(8000.31), 'แปดพันบาทสามสิบเอ็ดสตางค์')
예제 #17
0
 def test_number_start_with_two_could_show_yee(self):
     self.assertEqual(bahttext(2.21), 'สองบาทยี่สิบเอ็ดสตางค์')
예제 #18
0
 def test_number_ending_with_one_could_show_edd(self):
     self.assertEqual(bahttext(4.81), 'สี่บาทแปดสิบเอ็ดสตางค์')
예제 #19
0
 def test_input_one_interger_wth_decimal_can_convert(self):
     self.assertEqual(bahttext(1.10), 'หนึ่งบาทสิบสตางค์')
     self.assertEqual(bahttext(2.50), 'สองบาทห้าสิบสตางค์')
     self.assertEqual(bahttext(3.75), 'สามบาทเจ็ดสิบห้าสตางค์')
예제 #20
0
 def test_input_integer_one_digit_can_convert(self):
     self.assertEqual(bahttext(0.0), u'ศูนย์บาทถ้วน')
     self.assertEqual(bahttext(1.0), u'หนึ่งบาทถ้วน')
     self.assertEqual(bahttext(2.0), u'สองบาทถ้วน')
     self.assertEqual(bahttext(5.0), u'ห้าบาทถ้วน')
예제 #21
0
 def test_number_million_should_show_laan(self):
     self.assertEqual(bahttext(3500000.0), 'สามล้านห้าแสนบาทถ้วน')
예제 #22
0
 def test_number_in_multiple_could_show_sip(self):
     self.assertEqual(bahttext(10.0), u'สิบบาทถ้วน')
     self.assertEqual(bahttext(20.0), u'ยี่สิบบาทถ้วน')
     self.assertEqual(bahttext(50.0), u'ห้าสิบบาทถ้วน')
     self.assertEqual(bahttext(11.0), u'สิบเอ็ดบาทถ้วน')
     self.assertEqual(bahttext(15.0), u'สิบห้าบาทถ้วน')
예제 #23
0
 def test_number_thoundsand_should_show_pan(self):
     self.assertEqual(bahttext(1000.0), u'หนึ่งพันบาทถ้วน')
     self.assertEqual(bahttext(2000.10), u'สองพันบาทสิบสตางค์')
     self.assertEqual(
         bahttext(3211.51), u'สามพันสองร้อยสิบเอ็ดบาทห้าสิบเอ็ดสตางค์')
     self.assertEqual(bahttext(8000.31), u'แปดพันบาทสามสิบเอ็ดสตางค์')
예제 #24
0
 def test_number_ending_with_one_could_show_edd(self):
     self.assertEqual(bahttext(4.81), u'สี่บาทแปดสิบเอ็ดสตางค์')
예제 #25
0
 def test_number_hundred_thoundsand_should_show_saan(self):
     self.assertEqual(bahttext(800000.0), u'แปดแสนบาทถ้วน')
     self.assertEqual(
         bahttext(258065.81), u'สองแสนห้าหมื่นแปดพันหกสิบห้าบาทแปดสิบเอ็ดสตางค์')
예제 #26
0
 def test_number_hundred_should_show_roi(self):
     self.assertEqual(bahttext(100.0), u'หนึ่งร้อยบาทถ้วน')
     self.assertEqual(bahttext(101.0), u'หนึ่งร้อยเอ็ดบาทถ้วน')
     self.assertEqual(bahttext(200.0), u'สองร้อยบาทถ้วน')
     self.assertEqual(bahttext(201.0), u'สองร้อยเอ็ดบาทถ้วน')
예제 #27
0
 def test_input_integer_one_digit_can_convert(self):
     self.assertEqual(bahttext(0.0), 'ศูนย์บาทถ้วน')
     self.assertEqual(bahttext(1.0), 'หนึ่งบาทถ้วน')
     self.assertEqual(bahttext(2.0), 'สองบาทถ้วน')
     self.assertEqual(bahttext(5.0), 'ห้าบาทถ้วน')
예제 #28
0
 def test_number_ten_thoundsand_should_show_muern(self):
     self.assertEqual(bahttext(30000.0), u'สามหมื่นบาทถ้วน')
     self.assertEqual(
         bahttext(98765.10), u'เก้าหมื่นแปดพันเจ็ดร้อยหกสิบห้าบาทสิบสตางค์')
     self.assertEqual(
         bahttext(30211.21), u'สามหมื่นสองร้อยสิบเอ็ดบาทยี่สิบเอ็ดสตางค์')
예제 #29
0
 def test_fraction_number_should_not_have_tuan(self):
     self.assertEqual(bahttext(12000000.0), 'สิบสองล้านบาทถ้วน')
     self.assertNotEqual(bahttext(12000000.0), 'สิบสองล้านบาทสตางค์')
예제 #30
0
 def test_number_million_should_show_laan(self):
     self.assertEqual(bahttext(3500000.0), u'สามล้านห้าแสนบาทถ้วน')
예제 #31
0
 def test_input_is_a_number_then_can_convert_to_string(self):
     self.assertIsInstance(bahttext(1.0), str)
예제 #32
0
 def test_negative_minus_prefix_number_should_print_loob(self):
     self.assertEqual(bahttext(-1.10), u'ลบหนึ่งบาทสิบสตางค์')
     self.assertEqual(bahttext(-1000.0), u'ลบหนึ่งพันบาทถ้วน')
     self.assertEqual(
         bahttext(-258065.81), u'ลบสองแสนห้าหมื่นแปดพันหกสิบห้าบาทแปดสิบเอ็ดสตางค์')
예제 #33
0
 def test_negative_minus_prefix_number_should_print_loob(self):
     self.assertEqual(bahttext(-1.10), 'ลบหนึ่งบาทสิบสตางค์')
     self.assertEqual(bahttext(-1000.0), 'ลบหนึ่งพันบาทถ้วน')
     self.assertEqual(bahttext(-258065.81),
                      'ลบสองแสนห้าหมื่นแปดพันหกสิบห้าบาทแปดสิบเอ็ดสตางค์')