diff --git a/addons/event_sale/event_sale.py b/addons/event_sale/event_sale.py index df115c0eef4..0208714b083 100644 --- a/addons/event_sale/event_sale.py +++ b/addons/event_sale/event_sale.py @@ -92,4 +92,32 @@ class sale_order_line(osv.osv): message = _("The registration %s has been created from the Sale Order %s.") % (registration_id, order_line.order_id.name) registration_obj.log(cr, uid, registration_id, message) return super(sale_order_line, self).button_confirm(cr, uid, ids, context=context) - + +class event_event(osv.osv): + _inherit = 'event.event' + _columns = { + 'event_item_ids': fields.one2many('event.items','event_id', 'Event Items'), + } + +class event_items(osv.osv): + _name = "event.items" + _columns = { + 'product_id': fields.many2one('product.product', 'Product', required=True), + 'qty': fields.integer('Quantity'), + 'price': fields.integer('Price'), + 'uom_id': fields.many2one('product.uom', 'Unit of Measure'), + 'discount': fields.integer('Discount'), + 'event_id': fields.many2one('event.event', 'Event'), + 'sales_end_date': fields.date('Sales End') + } + + def onchange_product_id(self, cr, uid, ids, product, context=None): + product_obj = self.pool.get('product.product') + data = {} + if not product: + return {'value': data} + price = product_obj.browse(cr, uid, product).list_price + uom = product_obj.browse(cr, uid, product).uom_id.id + data['price'] = price + data['uom_id'] = uom + return {'value': data} diff --git a/addons/event_sale/event_sale_view.xml b/addons/event_sale/event_sale_view.xml index 4387e3a725a..1eb15e944a9 100644 --- a/addons/event_sale/event_sale_view.xml +++ b/addons/event_sale/event_sale_view.xml @@ -29,5 +29,50 @@ + + + Events Inherit + event.event + form + + + + + + + + + + + + Event Items Tree + event.items + tree + + + + + + + + + + + + + Event Items Form + event.items + form + +
+ + + + + + + +
+