summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAzka Nathan <darizkyfaz@gmail.com>2024-09-23 16:03:38 +0700
committerAzka Nathan <darizkyfaz@gmail.com>2024-09-23 16:03:38 +0700
commit649f3037e4357dab42d1a8d799e5f2a2f1fd2e52 (patch)
tree1989e47741d6126dc3d97743cbd4f956d78645fd
parentfb3ed255759edcbe8dfbdcedf0fb1f803aae2e4f (diff)
add tracking
-rwxr-xr-xindoteknik_custom/models/sale_order.py24
1 files changed, 21 insertions, 3 deletions
diff --git a/indoteknik_custom/models/sale_order.py b/indoteknik_custom/models/sale_order.py
index 610d5126..3a28bc54 100755
--- a/indoteknik_custom/models/sale_order.py
+++ b/indoteknik_custom/models/sale_order.py
@@ -38,14 +38,14 @@ class SaleOrder(models.Model):
have_outstanding_po = fields.Boolean('Have Outstanding PO', compute='_have_outstanding_po')
purchase_ids = fields.Many2many('purchase.order', string='Purchases', compute='_get_purchases')
real_shipping_id = fields.Many2one(
- 'res.partner', string='Real Delivery Address', readonly=True, required=True,
+ 'res.partner', string='Real Delivery Address', readonly=True,
states={'draft': [('readonly', False)], 'sent': [('readonly', False)], 'sale': [('readonly', False)]},
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]",
- help="Dipakai untuk alamat tempel")
+ help="Dipakai untuk alamat tempel", tracking=True)
real_invoice_id = fields.Many2one(
'res.partner', string='Delivery Invoice Address', required=True,
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]",
- help="Dipakai untuk alamat tempel")
+ help="Dipakai untuk alamat tempel", tracking=True)
fee_third_party = fields.Float('Fee Pihak Ketiga')
so_status = fields.Selection([
('terproses', 'Terproses'),
@@ -116,6 +116,21 @@ class SaleOrder(models.Model):
percent_margin_after_delivery_purchase = fields.Float(string='% Margin After Delivery Purchase', compute='_compute_margin_after_delivery_purchase')
purchase_delivery_amt = fields.Float(string='Purchase Delivery Amount', compute='_compute_purchase_delivery_amount')
type_promotion = fields.Char(string='Type Promotion', compute='_compute_type_promotion')
+ partner_invoice_id = fields.Many2one(
+ 'res.partner', string='Invoice Address',
+ readonly=True, required=True,
+ states={'draft': [('readonly', False)], 'sent': [('readonly', False)], 'sale': [('readonly', False)]},
+ domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]",
+ tracking=True, # Menambahkan tracking=True
+ )
+ partner_shipping_id = fields.Many2one(
+ 'res.partner', string='Delivery Address', readonly=True, required=True,
+ states={'draft': [('readonly', False)], 'sent': [('readonly', False)], 'sale': [('readonly', False)]},
+ domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]", tracking=True)
+
+ payment_term_id = fields.Many2one(
+ 'account.payment.term', string='Payment Terms', check_company=True, # Unrequired company
+ domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]", tracking=True)
def _compute_type_promotion(self):
for rec in self:
@@ -687,6 +702,9 @@ class SaleOrder(models.Model):
if not order.commitment_date and order.create_date > datetime(2024, 9, 12):
raise UserError("Expected Delivery Date kosong, wajib diisi")
+ if not order.real_shipping_id:
+ UserError('Real Delivery Address harus di isi')
+
if order.validate_partner_invoice_due():
return self._create_notification_action('Notification', 'Terdapat invoice yang telah melewati batas waktu, mohon perbarui pada dokumen Due Extension')