diff --git a/mo_back_to_draft/__init__.py b/mo_back_to_draft/__init__.py new file mode 100644 index 0000000..0650744 --- /dev/null +++ b/mo_back_to_draft/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/mo_back_to_draft/__manifest__.py b/mo_back_to_draft/__manifest__.py new file mode 100644 index 0000000..9f9461d --- /dev/null +++ b/mo_back_to_draft/__manifest__.py @@ -0,0 +1,33 @@ +# +# Bemade Inc. +# +# Copyright (C) 2023-June Bemade Inc. (). +# Author: Marc Durepos (Contact : marc@bemade.org) +# +# This program is under the terms of the GNU Lesser General Public License, +# version 3. +# +# For full license details, see https://www.gnu.org/licenses/lgpl-3.0.en.html. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +# DEALINGS IN THE SOFTWARE. +# +{ + "name": "MO Back to Draft", + "version": "18.0.1.0.0", + "summary": "Allow putting an MO back to draft state", + "category": "Manufacturing/Manufacturing", + "author": "Bemade Inc.", + "website": "http://www.bemade.org", + "license": "LGPL-3", + "depends": ["mrp"], + "data": ["views/mrp_production_views.xml"], + "assets": {}, + "installable": True, + "auto_install": False, +} diff --git a/mo_back_to_draft/models/__init__.py b/mo_back_to_draft/models/__init__.py new file mode 100644 index 0000000..a9e5f13 --- /dev/null +++ b/mo_back_to_draft/models/__init__.py @@ -0,0 +1 @@ +from . import mrp_production diff --git a/mo_back_to_draft/models/mrp_production.py b/mo_back_to_draft/models/mrp_production.py new file mode 100644 index 0000000..f7d29b0 --- /dev/null +++ b/mo_back_to_draft/models/mrp_production.py @@ -0,0 +1,16 @@ +from odoo import models, fields, _ +from odoo.exceptions import UserError + + +class MrpProduction(models.Model): + _inherit = "mrp.production" + + def action_back_to_draft(self): + self.ensure_one() + if self.state != 'cancel': + raise UserError(_( + 'Only manufacturing orders in canceled' + 'state can be set back to draft.' + )) + self.state = False + return True diff --git a/mo_back_to_draft/views/mrp_production_views.xml b/mo_back_to_draft/views/mrp_production_views.xml new file mode 100644 index 0000000..caf760a --- /dev/null +++ b/mo_back_to_draft/views/mrp_production_views.xml @@ -0,0 +1,16 @@ + + + + mrp.production.view.form.inherit + + mrp.production + +
+
+
+
+
\ No newline at end of file