summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2023-12-14 14:13:32 +0700
committerstephanchrst <stephanchrst@gmail.com>2023-12-14 14:13:32 +0700
commiteabbbadc5114f6c1edb9ec6bb74a296477f02b5a (patch)
treeee182a8121e3e66b4c78e28c028ff860914d279e /indoteknik_custom/models
parentbb2a3647ac1f5885bc6481ce10bfcd91813bfe81 (diff)
initial commit purchasing job
Diffstat (limited to 'indoteknik_custom/models')
-rwxr-xr-xindoteknik_custom/models/__init__.py2
-rw-r--r--indoteknik_custom/models/purchasing_job.py42
-rw-r--r--indoteknik_custom/models/purchasing_job_multi_update.py22
3 files changed, 66 insertions, 0 deletions
diff --git a/indoteknik_custom/models/__init__.py b/indoteknik_custom/models/__init__.py
index 35f06f03..7a6b4251 100755
--- a/indoteknik_custom/models/__init__.py
+++ b/indoteknik_custom/models/__init__.py
@@ -93,3 +93,5 @@ from . import product_monitoring
from . import account_bank_statement
from . import stock_warehouse_orderpoint
from . import commision
+from . import purchasing_job
+from . import purchasing_job_multi_update
diff --git a/indoteknik_custom/models/purchasing_job.py b/indoteknik_custom/models/purchasing_job.py
new file mode 100644
index 00000000..c660b937
--- /dev/null
+++ b/indoteknik_custom/models/purchasing_job.py
@@ -0,0 +1,42 @@
+from odoo import fields, models, api, tools
+import logging
+
+_logger = logging.getLogger(__name__)
+
+
+class PurchasingJob(models.Model):
+ _name = 'v.purchasing.job'
+ _auto = False
+ _rec_name = 'product_id'
+
+ id = fields.Integer()
+ product_id = fields.Many2one('product.product', string="Product")
+ brand = fields.Char(string='Brand')
+ item_code = fields.Char(string='Item Code')
+ product = fields.Char(string='Product Name')
+ onhand = fields.Float(string='OnHand')
+ incoming = fields.Float(string="Incoming")
+ outgoing = fields.Float(string="Outgoing")
+ action = fields.Char(string="Status")
+
+ def init(self):
+ tools.drop_view_if_exists(self.env.cr, self._table)
+ self.env.cr.execute("""
+ CREATE OR REPLACE VIEW %s AS (
+ select product_id as id, product_id, brand, item_code, product, onhand, incoming, outgoing, action
+ from v_procurement_monitoring_by_product
+ where action = 'kurang beli'
+ )
+ """ % self._table)
+
+ def open_form_multi_generate_request_po(self):
+ action = self.env['ir.actions.act_window']._for_xml_id('indoteknik_custom.action_generate_request_po')
+ action['context'] = {
+ 'product_ids': [x.id for x in self]
+ }
+ return action
+
+ def generate_request_po(self):
+ # print(1)
+ for product in self:
+ print(product)
diff --git a/indoteknik_custom/models/purchasing_job_multi_update.py b/indoteknik_custom/models/purchasing_job_multi_update.py
new file mode 100644
index 00000000..e455c5a4
--- /dev/null
+++ b/indoteknik_custom/models/purchasing_job_multi_update.py
@@ -0,0 +1,22 @@
+from odoo import models, fields
+import logging
+
+_logger = logging.getLogger(__name__)
+
+
+class PurchasingJobMultiUpdate(models.TransientModel):
+ _name = 'purchasing.job.multi.update'
+
+ def save_multi_update_purchasing_job(self):
+ product_ids = self._context['product_ids']
+ product = self.env['product.product'].browse(product_ids)
+ product.action_multi_update_invoice_status()
+ return {
+ 'type': 'ir.actions.client',
+ 'tag': 'display_notification',
+ 'params': {
+ 'title': 'Notification',
+ 'message': 'Invoice Status berhasil diubah',
+ 'next': {'type': 'ir.actions.act_window_close'},
+ }
+ } \ No newline at end of file