diff --git a/spp_change_request/__manifest__.py b/spp_change_request/__manifest__.py index efd5f70b9..ff9678ae1 100644 --- a/spp_change_request/__manifest__.py +++ b/spp_change_request/__manifest__.py @@ -17,6 +17,7 @@ }, "depends": [ "base", + "spp_change_request_base", "g2p_registry_base", "g2p_registry_individual", "g2p_registry_group", @@ -25,33 +26,17 @@ "spp_area", "spp_scan_id_document", "spp_dms", - # "dms_field", ], "data": [ "security/change_request_security.xml", "security/ir.model.access.csv", - "data/sequences.xml", - "data/mail_activity.xml", "data/dms.xml", - "wizard/confirm_user_assignment_view.xml", - "wizard/reject_change_request_view.xml", - "wizard/cancel_change_request_view.xml", "views/main_view.xml", "views/change_request_view.xml", "views/change_request_validation_sequence_view.xml", - "views/dms_file_view.xml", "views/registrant_view.xml", ], - "assets": { - "web.assets_backend": [ - "spp_change_request/static/src/scss/change_request.scss", - # will be obsolete once the DMS for change request is developed - # "spp_change_request/static/src/js/dms_preview.js", - ], - "web.assets_qweb": { - "/spp_change_request/static/src/xml/dms_preview_widget.xml", - }, - }, + "assets": {}, "demo": [], "images": [], "application": True, diff --git a/spp_change_request/data/mail_activity.xml b/spp_change_request/data/mail_activity.xml deleted file mode 100644 index b4a210f1a..000000000 --- a/spp_change_request/data/mail_activity.xml +++ /dev/null @@ -1,49 +0,0 @@ - - - - - - Change Request Pending Validation - spp.change.request - fa-clock-o - 0 - - - - Change Request For Validation - spp.change.request - fa-list - 0 - - - - Apply Change Request - spp.change.request - fa-floppy-o - 0 - - - - Reject Change Request - spp.change.request - fa-thumbs-down - 0 - - - - Cancel Request - spp.change.request - fa-ban - 0 - - - - Change Request Reset to Draft - spp.change.request - fa-undo - 0 - - - diff --git a/spp_change_request/data/sequences.xml b/spp_change_request/data/sequences.xml deleted file mode 100644 index 8319bda4f..000000000 --- a/spp_change_request/data/sequences.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - Change Request Number - spp.change.request.num - no_gap - 6 - - - CR-%(range_year)s- - - - - diff --git a/spp_change_request/models/__init__.py b/spp_change_request/models/__init__.py index f10f26a87..f93891cc0 100644 --- a/spp_change_request/models/__init__.py +++ b/spp_change_request/models/__init__.py @@ -1,10 +1,6 @@ # Part of OpenSPP. See LICENSE file for full copyright and licensing details. +from . import change_request_targets from . import group_membership from . import change_request -from . import change_request_stage -from . import dms_file -from . import dms_directory -from . import registry from . import mixins -from . import change_request_targets diff --git a/spp_change_request/models/change_request_stage.py b/spp_change_request/models/change_request_stage.py deleted file mode 100644 index eb906bf42..000000000 --- a/spp_change_request/models/change_request_stage.py +++ /dev/null @@ -1,14 +0,0 @@ -# Part of OpenSPP. See LICENSE file for full copyright and licensing details. -import logging - -from odoo import fields, models - -_logger = logging.getLogger(__name__) - - -class ChangeRequestValidationStages(models.Model): - _name = "spp.change.request.validation.stage" - _description = "Change Request Validation Stage" - _order = "id" - - name = fields.Char("Stage") diff --git a/spp_change_request/models/dms_directory.py b/spp_change_request/models/dms_directory.py deleted file mode 100644 index dfac3ae45..000000000 --- a/spp_change_request/models/dms_directory.py +++ /dev/null @@ -1,7 +0,0 @@ -from odoo import fields, models - - -class SPPDMSDirectoryCustom(models.Model): - _inherit = "spp.dms.directory" - - change_request_id = fields.Many2one("spp.change.request", "Change Request") diff --git a/spp_change_request/models/dms_file.py b/spp_change_request/models/dms_file.py deleted file mode 100644 index a262c1849..000000000 --- a/spp_change_request/models/dms_file.py +++ /dev/null @@ -1,40 +0,0 @@ -import logging - -from odoo import _, fields, models - -_logger = logging.getLogger(__name__) - - -class SPPDMSFileCustom(models.Model): - _inherit = "spp.dms.file" - - change_request_id = fields.Many2one("spp.change.request", "Change Request") - - def action_save_and_close(self): - return {"type": "ir.actions.act_window_close"} - - def action_close(self): - return {"type": "ir.actions.act_window_close"} - - def action_attach_documents(self): - for rec in self: - form_id = self.env.ref("spp_change_request.view_dms_file_spp_custom_form").id - action = { - "type": "ir.actions.act_window", - "view_mode": "form", - "view_id": form_id, - "view_type": "form", - "res_model": "spp.dms.file", - "target": "new", - "res_id": rec.id, - } - dms_context = { - "category_readonly": True, - } - action.update( - { - "name": _("Upload Document: %s", rec.category_id.name), - "context": dms_context, - } - ) - return action diff --git a/spp_change_request/models/mixins/__init__.py b/spp_change_request/models/mixins/__init__.py index 31574cc26..96e27f508 100644 --- a/spp_change_request/models/mixins/__init__.py +++ b/spp_change_request/models/mixins/__init__.py @@ -1,4 +1,3 @@ # Part of OpenSPP. See LICENSE file for full copyright and licensing details. from . import source_mixin -from . import validation_sequence_mixin diff --git a/spp_change_request/models/mixins/source_mixin.py b/spp_change_request/models/mixins/source_mixin.py index 8477788df..def8c74c3 100644 --- a/spp_change_request/models/mixins/source_mixin.py +++ b/spp_change_request/models/mixins/source_mixin.py @@ -1,47 +1,16 @@ # Part of OpenSPP. See LICENSE file for full copyright and licensing details. -import logging - -from odoo import Command, _, api, fields, models -from odoo.exceptions import UserError, ValidationError - -_logger = logging.getLogger(__name__) +from odoo import _, fields, models class ChangeRequestSourceMixin(models.AbstractModel): - """ - Change Request Data Source mixin. - --------------------------------- - This mixin is inherited by objects implementing a change Request. - - Example: - - .. code-block:: python - - class ChangeRequestAddChildren(models.Model): - _name = "spp.change.request.demo.add.children" - _inherit = [ - "spp.change.request.source.mixin", - "spp.change.request.validation.sequence.mixin", - ] - _description = "Add Children Change Request Type" - - # Initialize DMS Storage - DMS_STORAGE = "spp_change_request_add_children.attachment_storage_add_children" - VALIDATION_FORM = "spp_change_request_add_children.view_change_request_add_children_validation_form" - REQUIRED_DOCUMENT_TYPE = [ - "change_request.dms_birth_certificate_category", - ] - - """ - - _name = "spp.change.request.source.mixin" - _description = "Change Request Data Source Mixin" - _rec_name = "change_request_id" + _inherit = "spp.change.request.source.mixin" REQUIRED_DOCUMENT_TYPE = [] # List of required document category `spp.dms.category` VALIDATION_FORM = None AUTO_APPLY_CHANGES = True + REGISTRANT_FORM_ID = "g2p_registry_group.view_groups_form" + ADMIN_GROUP_NAME = "spp_change_request.group_spp_change_request_administrator" registrant_id = fields.Many2one("res.partner", "Registrant", domain=[("is_registrant", "=", True)]) applicant_id = fields.Many2one( @@ -50,488 +19,11 @@ class ChangeRequestAddChildren(models.Model): domain=[("is_registrant", "=", True), ("is_group", "=", False)], ) applicant_phone = fields.Char("Applicant's Phone Number", related="change_request_id.applicant_phone") - change_request_id = fields.Many2one("spp.change.request", "Change Request", required=True) - assign_to_id = fields.Many2one("res.users", "Assigned to", related="change_request_id.assign_to_id") - last_validated_by_id = fields.Many2one( - "res.users", "Last Validator", related="change_request_id.last_validated_by_id" - ) - date_validated = fields.Datetime(related="change_request_id.date_validated") - state = fields.Selection( - related="change_request_id.state", - string="Status", - readonly=True, - ) # Target Fields group_address = fields.Text(related="registrant_id.address", readonly=True) group_registration_date = fields.Date(related="registrant_id.registration_date", readonly=True) - # DMS Field - # dms_directory_ids = fields.One2many( - # "spp.dms.directory", - # "change_request_id", - # string="DMS Directories", - # auto_join=True, - # ) - # dms_file_ids = fields.One2many( - # "spp.dms.file", - # "change_request_id", - # string="DMS Files", - # auto_join=True, - # ) - - current_user_assigned = fields.Boolean(compute="_compute_current_user_assigned", default=False) - - def _update_registrant_id(self, res): - for rec in res: - if rec.registrant_id: - rec.change_request_id.update({"registrant_id": rec.registrant_id.id}) - - def get_request_type_view_id(self): - """ - Retrieve form view ID. - - :return: form view ID - :rtype: int - """ - return self.env["ir.ui.view"].sudo().search([("model", "=", self._name), ("type", "=", "form")], limit=1).id - - def update_live_data(self): - """ - This method is meant to be overridden by the child classes to update the data of the registrant. - - """ - raise NotImplementedError() - - def validate_data(self): - """ - This method is meant to be overridden by the child classes to validate the data of the change request - before submitting for review. - - :raise ValidationError: Exception raised when something is not valid. - """ - self.ensure_one() - if self.env.context.get("skip_check_required_documents", False): - return - self.check_required_documents() - - def action_submit(self): - """ - This method is called when the Change Request is requested for validation by a user. - - Usage: - - Add this function in the name of button with type object in XML - - example: -