diff options
| author | stephanchrst <stephanchrst@gmail.com> | 2023-01-12 14:20:13 +0700 |
|---|---|---|
| committer | stephanchrst <stephanchrst@gmail.com> | 2023-01-12 14:20:13 +0700 |
| commit | eca50fa062424b6a7aa9b3d00649dd3db29b3ab6 (patch) | |
| tree | 9ce1da22bcdfb8c85c4b11a7b8f27eac4a3cf82c /indoteknik_custom/models | |
| parent | e74ac27eb94a05c569f9789b1f875f7c85b6dc02 (diff) | |
| parent | 0f8fbe56e89ec285c6fbcdd2bed5a67f62bcfe59 (diff) | |
Merge branch 'release' into staging
Diffstat (limited to 'indoteknik_custom/models')
| -rwxr-xr-x | indoteknik_custom/models/__init__.py | 2 | ||||
| -rw-r--r-- | indoteknik_custom/models/custom_mail_marketing.py | 16 | ||||
| -rw-r--r-- | indoteknik_custom/models/invoice_reklas.py | 89 | ||||
| -rw-r--r-- | indoteknik_custom/models/product_pricelist.py | 2 | ||||
| -rwxr-xr-x | indoteknik_custom/models/sale_order.py | 2 |
5 files changed, 111 insertions, 0 deletions
diff --git a/indoteknik_custom/models/__init__.py b/indoteknik_custom/models/__init__.py index d7d3e03c..3d4d646b 100755 --- a/indoteknik_custom/models/__init__.py +++ b/indoteknik_custom/models/__init__.py @@ -41,3 +41,5 @@ from . import purchase_outstanding from . import sales_outstanding from . import customer_review from . import website_content +from . import invoice_reklas +from . import custom_mail_marketing diff --git a/indoteknik_custom/models/custom_mail_marketing.py b/indoteknik_custom/models/custom_mail_marketing.py new file mode 100644 index 00000000..8a81974f --- /dev/null +++ b/indoteknik_custom/models/custom_mail_marketing.py @@ -0,0 +1,16 @@ +from odoo import fields, models, api, _ + + +class CustomMailMarketing(models.Model): + _name = 'custom.mail.marketing' + + col1_string = fields.Char(string='col1_string') + col2_string = fields.Char(string='col2_string') + col3_string = fields.Char(string='col3_string') + col4_string = fields.Char(string='col4_string') + col5_string = fields.Char(string='col5_string') + col6_string = fields.Char(string='col6_string') + col7_string = fields.Char(string='col7_string') + col8_string = fields.Char(string='col8_string') + col9_string = fields.Char(string='col9_string') + col10_string = fields.Char(string='col10_string') diff --git a/indoteknik_custom/models/invoice_reklas.py b/indoteknik_custom/models/invoice_reklas.py new file mode 100644 index 00000000..43736059 --- /dev/null +++ b/indoteknik_custom/models/invoice_reklas.py @@ -0,0 +1,89 @@ +from odoo import api, fields, models, _ +from odoo.exceptions import UserError +from datetime import datetime +from odoo.http import request + +import logging + +_logger = logging.getLogger(__name__) + + +class InvoiceReklas(models.TransientModel): + _name = 'invoice.reklas' + _description = "digunakan untuk reklas Uang Muka Penjualan" + reklas_id = fields.Many2one('account.move', string='Nomor CAB') + pay_amt = fields.Float(string='Yang dibayarkan') + reklas_type = fields.Selection([ + ('penjualan', 'Penjualan'), + ('pembelian', 'Pembelian'), + ], string='Reklas Tipe') + + def create_reklas(self): + if not self.reklas_type: + raise UserError('Reklas Tipe harus diisi') + if not self.reklas_id: + raise UserError('Nomor CAB harus diisi') + invoices = self.env['account.move'].browse(self._context.get('active_ids', [])) + current_time = datetime.now() + for invoice in invoices: + + if self.reklas_type == 'penjualan': + parameters_header = { + 'ref': 'REKLAS '+self.reklas_id.name+" UANG MUKA PENJUALAN "+invoice.name+" "+invoice.partner_id.name, + 'date': current_time, + 'journal_id': 13 + } + else: + parameters_header = { + 'ref': 'REKLAS ' + self.reklas_id.name + " UANG MUKA PEMBELIAN " + invoice.name + " " + invoice.partner_id.name, + 'date': current_time, + 'journal_id': 13 + } + + account_move = request.env['account.move'].create([parameters_header]) + _logger.info('Success Reklas with %s' % account_move.name) + + if self.reklas_type == 'penjualan': + parameter_debit = { + 'move_id': account_move.id, + 'account_id': 449, + 'partner_id': invoice.partner_id.id, + 'currency_id': 12, + 'debit': self.pay_amt, + 'credit': 0 + } + parameter_credit = { + 'move_id': account_move.id, + 'account_id': 395, + 'partner_id': invoice.partner_id.id, + 'currency_id': 12, + 'debit': 0, + 'credit': self.pay_amt + } + else: + parameter_debit = { + 'move_id': account_move.id, + 'account_id': 438, + 'partner_id': invoice.partner_id.id, + 'currency_id': 12, + 'debit': self.pay_amt, + 'credit': 0 + } + parameter_credit = { + 'move_id': account_move.id, + 'account_id': 401, + 'partner_id': invoice.partner_id.id, + 'currency_id': 12, + 'debit': 0, + 'credit': self.pay_amt + } + request.env['account.move.line'].create([parameter_debit, parameter_credit]) + return { + 'name': _('Journal Entries'), + 'view_mode': 'form', + 'res_model': 'account.move', + 'target': 'current', + 'view_id': False, + 'type': 'ir.actions.act_window', + 'res_id': account_move.id + } diff --git a/indoteknik_custom/models/product_pricelist.py b/indoteknik_custom/models/product_pricelist.py index 7b850d57..190887cf 100644 --- a/indoteknik_custom/models/product_pricelist.py +++ b/indoteknik_custom/models/product_pricelist.py @@ -15,6 +15,8 @@ class ProductPricelist(models.Model): class ProductPricelistItem(models.Model): _inherit = 'product.pricelist.item' + manufacture_id = fields.Many2one('x_manufactures', string='Manufacture') + @api.onchange('fixed_price','price_discount') def update_solr_flag(self): for item in self: diff --git a/indoteknik_custom/models/sale_order.py b/indoteknik_custom/models/sale_order.py index e7b28c6d..c8937ca4 100755 --- a/indoteknik_custom/models/sale_order.py +++ b/indoteknik_custom/models/sale_order.py @@ -235,6 +235,8 @@ class SaleOrder(models.Model): def action_confirm(self): res = super(SaleOrder, self).action_confirm() for order in self: + if order.warehouse_id.id != 8: #GD Bandengan + raise UserError('Gudang harus Bandengan') if not order.sales_tax_id: raise UserError("Tax di Header harus diisi") if not order.carrier_id: |
