[IMP] button_cancel if we done an even every registration will be done except if a registration is already done change message append put body_text and subject and remove bad demos and improve the test

bzr revid: mva@openerp.com-20120224155059-pp2y9g1xrsnewmv5
This commit is contained in:
MVA 2012-02-24 16:50:59 +01:00
parent c530c27c2c
commit 3687f0c241
4 changed files with 55 additions and 21 deletions

View File

@ -54,7 +54,6 @@ Note that:
'demo_xml': ['event_demo.xml'],
'test': ['test/process/event_draft2done.yml'],
'installable': True,
'active': False,
'auto_install': False,
'images': ['images/1_event_type_list.jpeg','images/2_events.jpeg','images/3_registrations.jpeg'],
}

View File

@ -92,6 +92,13 @@ class event_event(osv.osv):
return self.write(cr, uid, ids, {'state': 'draft'}, context=context)
def button_cancel(self, cr, uid, ids, context=None):
registration = self.pool.get('event.registration')
reg_ids = registration.search(cr, uid, [('event_id','in',ids)], context=context)
for event_reg in registration.browse(cr,uid,reg_ids,context=context):
if event_reg.state == 'done':
raise osv.except_osv(_('Error!'),_("You have already done a registration please reset to draft if you want to cancel this event") )
return
registration.write(cr, uid, reg_ids, {'state': 'cancel'}, context=context)
return self.write(cr, uid, ids, {'state': 'cancel'}, context=context)
def button_done(self, cr, uid, ids, context=None):
@ -243,6 +250,7 @@ class event_registration(osv.osv):
}
_order = 'create_date desc'
def do_draft(self, cr, uid, ids, context=None):
return self.write(cr, uid, ids, {'state': 'draft'}, context=context)
@ -251,26 +259,38 @@ class event_registration(osv.osv):
"""
res = self.write(cr, uid, ids, {'state': 'open'}, context=context)
self.mail_user(cr, uid, ids)
self.message_append(cr, uid, ids, _('Open'))
self.message_append(cr, uid, ids,_('Statut'),body_text= _('Open'))
return res
def button_reg_close(self, cr, uid, ids, context=None):
def case_close(self, cr, uid, ids, context=None):
""" Close Registration
"""
if context is None:
context = {}
values = {'state': 'done', 'date_closed': time.strftime('%Y-%m-%d %H:%M:%S')}
msg = _('Done')
res = self.write(cr, uid, ids, values)
self.message_append(cr, uid, ids, msg)
self.message_append(cr, uid, ids,_('Statut'),body_text= _('Done'))
return res
def button_reg_cancel(self, cr, uid, ids, context=None, *args):
# event uses add_note wizard from crm, which expects case_* methods
def case_open(self, cr, uid, ids, context):
return self.registration_open(cr, uid, ids, context)
# event uses add_note wizard from crm, which expects case_* methods
def case_cancel(self, cr, uid, ids, context=None):
""" Cancel Registration
"""
self.message_append(cr, uid, ids, _('Cancel'))
self.message_append(cr, uid, ids,_('Statut'),body_text= _('Cancel'))
return self.write(cr, uid, ids, {'state': 'cancel'})
def button_reg_close(self, cr, uid, ids, context=None):
"""This Function Close Event Registration.
"""
return self.case_close(cr, uid, ids)
def button_reg_cancel(self, cr, uid, ids, context=None, *args):
return self.case_cancel(cr, uid, ids)
def mail_user(self, cr, uid, ids, confirm=False, context=None):
"""
Send email to user with email_template when registration is done

View File

@ -32,9 +32,6 @@
<field name="name">Concert of Bon Jovi</field>
<field eval="time.strftime('%Y-%m-01 19:05:15')" name="date_begin"/>
<field eval="time.strftime('%Y-%m-01 23:05:15')" name="date_end"/>
<field name="unit_price">68.00</field>
<field name="mail_auto_registr">True</field>
<field name="mail_auto_confirm">True</field>
<field name="user_id" ref="base.user_root"/>
<field name="register_max">500</field>
<field name="type" ref="event_type_1"/>
@ -44,7 +41,6 @@
<field name="name">Opera of Verdi</field>
<field eval="time.strftime('%Y-%m-05 18:00:00')" name="date_begin"/>
<field eval="time.strftime('%Y-%m-05 21:00:00')" name="date_end"/>
<field name="unit_price">24.00</field>
<field name="type" ref="event_type_1"/>
<field name="user_id" ref="base.user_root"/>
<field name="register_min">50</field>
@ -54,14 +50,9 @@
<field name="name">Conference on ERP Buisness</field>
<field eval="time.strftime('%Y-%m-05 14:00:00')" name="date_begin"/>
<field eval="time.strftime('%Y-%m-05 16:30:00')" name="date_end"/>
<field name="unit_price">15.50</field>
<field name="type" ref="event_type_2"/>
<field name="register_max">200</field>
<field name="user_id" ref="base.user_root"/>
<field name="mail_auto_registr">True</field>
<field name="mail_auto_confirm">True</field>
<field name="mail_registr">Thanks for registration. We will keep you informed of the modalities.</field>
<field name="mail_confirm">Thanks for registration. The conference will begin at 2 PM and will be given by Mr. Pinckaers.</field>
</record>
<function model="event.event" name="button_confirm" eval="[ref('event_2')]"/>
<function model="event.event" name="button_confirm" eval="[ref('event_2')]"/>
@ -69,20 +60,17 @@
<!-- Demo data for Event Registration-->
<record id="reg_1_1" model="event.registration">
<field name="event_id" ref="event_1"/>
<field name="partner_id_address" ref="base.res_partner_asus"/>
<field name="nb_register">5</field>
</record>
<record id="reg_1_2" model="event.registration">
<field name="event_id" ref="event_1"/>
<field name="partner_id_address" ref="base.res_partner_agrolait"/>
<field name="nb_register">10</field>
</record>
<record id="reg_0_1" model="event.registration">
<field name="event_id" ref="event_0"/>
<field name="partner_id_address" ref="base.res_partner_c2c"/>
<field name="nb_register">6</field>
</record>

View File

@ -9,6 +9,13 @@
name: event
date_begin: 2012-01-01 19:05:15
date_end: 2012-01-01 20:05:15
-
I create a second event
-
!record {model: event.event, id: event_event1}:
name: event_cancel
date_begin: 2012-01-01 19:05:15
date_end: 2012-01-01 20:05:15
-
I create a registration for the event
-
@ -21,6 +28,11 @@
!record {model: event.registration, id: event_registration2}:
event_id: event_event
name: test_cancel
-
I check if the Attended Registrations in the event view is correct normaly I have 2 registration
-
!assert {model: event.event, id: event_event ,string: 'register attended is not correct'}:
- register_attended == 2.00
-
I confirm the registration1
-
@ -31,6 +43,16 @@
-
!assert {model: event.registration, id: event_registration1}:
- state == 'open', "registration should be confirmed."
-
I check if confirmed registration is correct
-
!assert {model: event.event,id: event_event,string: 'the confirmed registration is not correct'}:
- register_current == 1.00
-
I check if attended registration is correct
-
!assert {model: event.event,id: event_event,string: 'the confirmed registration is not correct'}:
- register_attended == 1.00
-
I close the registration
-
@ -41,6 +63,11 @@
-
!assert {model: event.registration, id: event_registration1}:
- state == 'done'
-
I check if attended registration is correct
-
!assert {model: event.event,id: event_event,string: 'the confirmed registration is not correct'}:
- register_attended == 1.00
-
I cancel the second registration
-
@ -80,10 +107,10 @@
Now I cancel this event
-
!python {model: event.event}: |
self.button_cancel(cr, uid, [ref("event_event")])
self.button_cancel(cr, uid, [ref("event_event1")])
-
I check if the event is cancelled
-
!assert {model: event.event, id: event_event}:
!assert {model: event.event, id: event_event1}:
- state == 'cancel', "Event should be cancelled."