From eabbbadc5114f6c1edb9ec6bb74a296477f02b5a Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Thu, 14 Dec 2023 14:13:32 +0700 Subject: initial commit purchasing job --- indoteknik_custom/__manifest__.py | 2 + indoteknik_custom/models/__init__.py | 2 + indoteknik_custom/models/purchasing_job.py | 42 +++++++++++ .../models/purchasing_job_multi_update.py | 22 ++++++ indoteknik_custom/security/ir.model.access.csv | 4 +- indoteknik_custom/views/purchasing_job.xml | 83 ++++++++++++++++++++++ .../views/purchasing_job_multi_update.xml | 31 ++++++++ 7 files changed, 185 insertions(+), 1 deletion(-) create mode 100644 indoteknik_custom/models/purchasing_job.py create mode 100644 indoteknik_custom/models/purchasing_job_multi_update.py create mode 100644 indoteknik_custom/views/purchasing_job.xml create mode 100644 indoteknik_custom/views/purchasing_job_multi_update.xml diff --git a/indoteknik_custom/__manifest__.py b/indoteknik_custom/__manifest__.py index 39e5cdd9..d31ac21a 100755 --- a/indoteknik_custom/__manifest__.py +++ b/indoteknik_custom/__manifest__.py @@ -104,6 +104,8 @@ 'views/stock_warehouse_orderpoint.xml', 'views/customer_commision.xml', 'views/wati_history.xml', + 'views/purchasing_job.xml', + 'views/purchasing_job_multi_update.xml', 'report/report.xml', 'report/report_banner_banner.xml', 'report/report_banner_banner2.xml', 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 diff --git a/indoteknik_custom/security/ir.model.access.csv b/indoteknik_custom/security/ir.model.access.csv index 56d00b3e..6dfa3ee4 100755 --- a/indoteknik_custom/security/ir.model.access.csv +++ b/indoteknik_custom/security/ir.model.access.csv @@ -83,4 +83,6 @@ access_customer_commision,access.customer.commision,model_customer_commision,,1, access_customer_commision_line,access.customer.commision.line,model_customer_commision_line,,1,1,1,1 access_customer_rebate,access.customer.rebate,model_customer_rebate,,1,1,1,1 access_wati_history,access.wati.history,model_wati_history,,1,1,1,1 -access_wati_history_line,access.wati.history.line,model_wati_history_line,,1,1,1,1 \ No newline at end of file +access_wati_history_line,access.wati.history.line,model_wati_history_line,,1,1,1,1 +access_v_purchasing_job,access.v.purchasing.job,model_v_purchasing_job,,1,1,1,1 +access_purchasing_job_multi_update,access.purchasing.job.multi.update,model_purchasing_job_multi_update,,1,1,1,1 \ No newline at end of file diff --git a/indoteknik_custom/views/purchasing_job.xml b/indoteknik_custom/views/purchasing_job.xml new file mode 100644 index 00000000..0af4455d --- /dev/null +++ b/indoteknik_custom/views/purchasing_job.xml @@ -0,0 +1,83 @@ + + + + v.purchasing.job.tree + v.purchasing.job + + + + + + + + + + + + + + + + v.purchasing.job.form + v.purchasing.job + +
+ + + + + + + + + + + + + + + + +
+
+
+ + + v.purchasing.job.list.select + v.purchasing.job + + + + + + + + + + + + Purchasing Job + ir.actions.act_window + v.purchasing.job + + tree,form + + + + Generate Automatic PO + + + form,list + code + action = records.open_form_multi_generate_request_po() + + + + +
\ No newline at end of file diff --git a/indoteknik_custom/views/purchasing_job_multi_update.xml b/indoteknik_custom/views/purchasing_job_multi_update.xml new file mode 100644 index 00000000..422d9e3c --- /dev/null +++ b/indoteknik_custom/views/purchasing_job_multi_update.xml @@ -0,0 +1,31 @@ + + + + + View Purchasing Job Multi Update + purchasing.job.multi.update + +
+ + + Apakah Anda Yakin Ingin Mengubah Invoice Status? + + +
+
+
+
+
+ + + Action Purchasing Job Multi Update + purchasing.job.multi.update + ir.actions.act_window + form + + new + +
+
\ No newline at end of file -- cgit v1.2.3