You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
# -*- coding: utf-8 -*- from openerp import models, fields, api
class NewMemberCardWizard(models.TransientModel): """
A transient model for the creation of a new card. The user can only define the raison why a new card is needed and the eater/worker that is concerned. """
_name = "membercard.new.wizard"
def _get_default_partner(self): return self.env.context["active_id"]
new_comment = fields.Char("Reason", required=True) partner_id = fields.Many2one("res.partner", default=_get_default_partner) force_barcode = fields.Char( "Force Barcode", groups="beesdoo_base.group_force_barcode" )
@api.one def create_new_card(self): client = self.partner_id.sudo() client._deactivate_active_cards() client._new_card( self.new_comment, self.env.uid, barcode=self.force_barcode ) client.member_card_to_be_printed = True
class RequestMemberCardPrintingWizard(models.TransientModel):
_name = "membercard.requestprinting.wizard"
def _get_selected_partners(self): return self.env.context["active_ids"]
partner_ids = fields.Many2many( "res.partner", default=_get_selected_partners )
@api.one def request_printing(self): self.partner_ids.write({"member_card_to_be_printed": True})
class SetAsPrintedWizard(models.TransientModel):
_name = "membercard.set_as_printed.wizard"
def _get_selected_partners(self): return self.env.context["active_ids"]
partner_ids = fields.Many2many( "res.partner", default=_get_selected_partners )
@api.one def set_as_printed(self): self.partner_ids.write( { "member_card_to_be_printed": False, "last_printed": fields.Datetime.now(), } )
|