summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2023-01-02 15:31:46 +0700
committerstephanchrst <stephanchrst@gmail.com>2023-01-02 15:31:46 +0700
commitddaef3895870403548d032a892a3365de38c016c (patch)
tree1ea51a7e51e23dc971aa591cc979b7660e0404e9 /indoteknik_custom/models
parent0d5114af051fed9575bc0d108a0fa14a13875f1b (diff)
add sales outstanding for monitoring outgoing qty, and add sales person, purchaser
Diffstat (limited to 'indoteknik_custom/models')
-rwxr-xr-xindoteknik_custom/models/__init__.py1
-rw-r--r--indoteknik_custom/models/purchase_outstanding.py3
-rw-r--r--indoteknik_custom/models/sales_outstanding.py33
3 files changed, 36 insertions, 1 deletions
diff --git a/indoteknik_custom/models/__init__.py b/indoteknik_custom/models/__init__.py
index f853b1ed..193fd132 100755
--- a/indoteknik_custom/models/__init__.py
+++ b/indoteknik_custom/models/__init__.py
@@ -38,3 +38,4 @@ from . import website_categories_homepage
from . import sales_target
from . import product_spec
from . import purchase_outstanding
+from . import sales_outstanding
diff --git a/indoteknik_custom/models/purchase_outstanding.py b/indoteknik_custom/models/purchase_outstanding.py
index 0cdd9c39..018ab0ec 100644
--- a/indoteknik_custom/models/purchase_outstanding.py
+++ b/indoteknik_custom/models/purchase_outstanding.py
@@ -9,6 +9,7 @@ class PurchaseOutstanding(models.Model):
id = fields.Integer()
order_id = fields.Many2one('purchase.order', string='Nomor PO')
partner_id = fields.Many2one('res.partner', String='Vendor')
+ user_id = fields.Many2one('res.users', string='Purchaser')
date_order = fields.Datetime(string="Date Order")
po_state = fields.Char(string='State')
po_status = fields.Char(string='PO Status')
@@ -20,7 +21,7 @@ class PurchaseOutstanding(models.Model):
tools.drop_view_if_exists(self.env.cr, self._table)
self.env.cr.execute("""
CREATE OR REPLACE VIEW %s AS(
- select pol.id as id, po.id as order_id, po.partner_id,
+ select pol.id as id, po.id as order_id, po.partner_id, po.user_id,
po.date_order, po.state as po_state, po.po_status,
pol.product_id, pol.product_uom_qty, pol.qty_received
from purchase_order_line pol
diff --git a/indoteknik_custom/models/sales_outstanding.py b/indoteknik_custom/models/sales_outstanding.py
new file mode 100644
index 00000000..645482ff
--- /dev/null
+++ b/indoteknik_custom/models/sales_outstanding.py
@@ -0,0 +1,33 @@
+from odoo import fields, models, api, tools
+
+
+class SalesOutstanding(models.Model):
+ _name = 'sales.outstanding'
+ _auto = False
+ _rec_name = 'product_id'
+
+ id = fields.Integer()
+ order_id = fields.Many2one('sale.order', string='Nomor SO')
+ partner_id = fields.Many2one('res.partner', String='Customer')
+ user_id = fields.Many2one('res.users', string='Salesperson')
+ date_order = fields.Datetime(string="Date Order")
+ so_state = fields.Char(string='State')
+ so_status = fields.Char(string='SO Status')
+ product_id = fields.Many2one('product.product', string='Product')
+ product_uom_qty = fields.Integer(string='Qty SO')
+ qty_delivered = fields.Integer(string='Qty Delivered')
+
+ def init(self):
+ tools.drop_view_if_exists(self.env.cr, self._table)
+ self.env.cr.execute("""
+ CREATE OR REPLACE VIEW %s AS(
+ select sol.id as id, so.id as order_id, so.partner_id, so.user_id,
+ so.date_order, so.state as so_state, so.so_status,
+ sol.product_id, sol.product_uom_qty, sol.qty_delivered
+ from sale_order so
+ join sale_order_line sol on sol.order_id = so.id
+ where 1=1
+ and sol.product_uom_qty <> sol.qty_delivered
+ and so_status in ('sebagian','menunggu')
+ )
+ """ % self._table)