Skip to content

Commit

Permalink
[16.0][IMP] mrp_cleaning_database_operations: Cleaning all the MRP op…
Browse files Browse the repository at this point in the history
…erations: MRP Production and MRP Workorder.
  • Loading branch information
Berezi committed Nov 28, 2024
1 parent cc1bb49 commit bd57b0c
Show file tree
Hide file tree
Showing 12 changed files with 217 additions and 0 deletions.
28 changes: 28 additions & 0 deletions mrp_cleaning_database_operations/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3

================================
MRP Cleaning Database Operations
================================

Cleaning all the MRP operations: MRP Production and MRP Workorder.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues
<https://github.com/avanzosc/mrp-addons/issues>`_. In case of trouble,
please check there if your issue has already been reported. If you spotted
it first, help us smash it by providing detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Contributors
------------

* Berezi Amubieta <bereziamubieta@avanzosc.es>
* Ana Juaristi <anajuaristi@avanzosc.es>
2 changes: 2 additions & 0 deletions mrp_cleaning_database_operations/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from . import models
from . import wizards
19 changes: 19 additions & 0 deletions mrp_cleaning_database_operations/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Copyright 2024 Berezi Amubieta - AvanzOSC
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
{
"name": "MRP Cleaning Database Operations",
"version": "16.0.1.0.0",
"category": "Manufacture",
"license": "AGPL-3",
"author": "AvanzOSC",
"website": "https://github.com/avanzosc/mrp-addons",
"depends": [
"cleaning_database_operations",
"mrp",
],
"data": [
"views/cleaning_database_view.xml",
],
"installable": True,
"auto_install": True,
}
46 changes: 46 additions & 0 deletions mrp_cleaning_database_operations/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mrp_cleaning_database_operations
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-11-28 14:27+0000\n"
"PO-Revision-Date: 2024-11-28 14:27+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: mrp_cleaning_database_operations
#: model:ir.model,name:mrp_cleaning_database_operations.model_cleaning_database
msgid "Cleaning Database Operations"
msgstr "Limpieza de operaciones en base de datos"

#. module: mrp_cleaning_database_operations
#: model_terms:ir.ui.view,arch_db:mrp_cleaning_database_operations.cleaning_database_form_view
msgid "Cleaning MRP Operations"
msgstr "Limpieza de operaciones de fabricación"

#. module: mrp_cleaning_database_operations
#: model:ir.model.fields.selection,name:mrp_cleaning_database_operations.selection__cleaning_database_warning_wizard__object_to_delete__mrp
msgid "MRP"
msgstr ""

#. module: mrp_cleaning_database_operations
#: model_terms:ir.ui.view,arch_db:mrp_cleaning_database_operations.cleaning_database_form_view
msgid "Manufacturing: MRP Workorder, MRP Production."
msgstr "Fabricación: Orden de tranbajo, orden de producción."

#. module: mrp_cleaning_database_operations
#: model:ir.model.fields,field_description:mrp_cleaning_database_operations.field_cleaning_database_warning_wizard__object_to_delete
msgid "Object To Delete"
msgstr "Estado"

#. module: mrp_cleaning_database_operations
#: model:ir.model,name:mrp_cleaning_database_operations.model_cleaning_database_warning_wizard
msgid "Wizard for warning when cleaning database operations"
msgstr "Asistente para alertar al limpiar las operaciones de la base de datos"
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mrp_cleaning_database_operations
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-11-28 14:26+0000\n"
"PO-Revision-Date: 2024-11-28 14:26+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: mrp_cleaning_database_operations
#: model:ir.model,name:mrp_cleaning_database_operations.model_cleaning_database
msgid "Cleaning Database Operations"
msgstr ""

#. module: mrp_cleaning_database_operations
#: model_terms:ir.ui.view,arch_db:mrp_cleaning_database_operations.cleaning_database_form_view
msgid "Cleaning MRP Operations"
msgstr ""

#. module: mrp_cleaning_database_operations
#: model:ir.model.fields.selection,name:mrp_cleaning_database_operations.selection__cleaning_database_warning_wizard__object_to_delete__mrp
msgid "MRP"
msgstr ""

#. module: mrp_cleaning_database_operations
#: model_terms:ir.ui.view,arch_db:mrp_cleaning_database_operations.cleaning_database_form_view
msgid "Manufacturing: MRP Workorder, MRP Production."
msgstr ""

#. module: mrp_cleaning_database_operations
#: model:ir.model.fields,field_description:mrp_cleaning_database_operations.field_cleaning_database_warning_wizard__object_to_delete
msgid "Object To Delete"
msgstr ""

#. module: mrp_cleaning_database_operations
#: model:ir.model,name:mrp_cleaning_database_operations.model_cleaning_database_warning_wizard
msgid "Wizard for warning when cleaning database operations"
msgstr ""
1 change: 1 addition & 0 deletions mrp_cleaning_database_operations/models/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import cleaning_database
21 changes: 21 additions & 0 deletions mrp_cleaning_database_operations/models/cleaning_database.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Copyright 2024 Berezi Amubieta - AvanzOSC
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
from odoo import models


class CleaningDatabase(models.Model):
_inherit = "cleaning.database"

def action_delete_mrp_operations(self):
self.env.cr.execute(
"DELETE FROM mrp_workorder "
"WHERE production_id in (select p.id "
" from mrp_production as p "
" where p.id = mrp_workorder.production_id "
" and p.company_id in %s)",
[tuple(self.company_ids.ids)],
)
self.env.cr.execute(
"DELETE FROM mrp_production WHERE company_id in %s",
[tuple(self.company_ids.ids)],
)
24 changes: 24 additions & 0 deletions mrp_cleaning_database_operations/views/cleaning_database_view.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="cleaning_database_form_view" model="ir.ui.view">
<field name="model">cleaning.database</field>
<field
name="inherit_id"
ref="cleaning_database_operations.cleaning_database_form_view"
/>
<field name="arch" type="xml">
<div position="inside">
<p>Manufacturing: MRP Workorder, MRP Production.</p>
<p>
<button
name="action_open_delete_warning"
type="object"
string="Cleaning MRP Operations"
class="oe_highlight"
context="{'default_object_to_delete':'mrp'}"
/>
</p>
</div>
</field>
</record>
</odoo>
1 change: 1 addition & 0 deletions mrp_cleaning_database_operations/wizards/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import cleaning_database_warning_wizard
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Copyright 2023 Berezi Amubieta - AvanzOSC
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
from odoo import fields, models


class CleaningDatabaseWarningWizard(models.TransientModel):
_inherit = "cleaning.database.warning.wizard"

object_to_delete = fields.Selection(
selection_add=[
("mrp", "MRP"),
],
ondelete={"mrp": "cascade"},
)

def continue_with_cleaning_database(self):
super().continue_with_cleaning_database()
cleaning_database = self.env["cleaning.database"].browse(
self.env.context.get("active_id")
)
if self.object_to_delete == "mrp":
return cleaning_database.action_delete_mrp_operations()
6 changes: 6 additions & 0 deletions setup/mrp_cleaning_database_operations/setup.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
import setuptools

setuptools.setup(
setup_requires=['setuptools-odoo'],
odoo_addon=True,
)

0 comments on commit bd57b0c

Please sign in to comment.