Browse Source

initial commit

pull/81/head
SHEREEF PT 8 years ago
parent
commit
bb64b57c51
  1. 33
      cab_booking_management/README.rst
  2. 24
      cab_booking_management/__init__.py
  3. 47
      cab_booking_management/__openerp__.py
  4. 31
      cab_booking_management/models/__init__.py
  5. 50
      cab_booking_management/models/cab_booking.py
  6. 31
      cab_booking_management/models/cab_conf.py
  7. 64
      cab_booking_management/models/cab_creation.py
  8. 34
      cab_booking_management/models/cab_location.py
  9. 150
      cab_booking_management/models/cab_log.py
  10. 55
      cab_booking_management/models/cab_maintanence.py
  11. 55
      cab_booking_management/models/cab_timing.py
  12. 16
      cab_booking_management/security/ir.model.access.csv
  13. BIN
      cab_booking_management/static/description/banner.jpg
  14. BIN
      cab_booking_management/static/description/booking.png
  15. BIN
      cab_booking_management/static/description/cab_activity.png
  16. BIN
      cab_booking_management/static/description/cab_booking.png
  17. BIN
      cab_booking_management/static/description/cab_cancel.png
  18. BIN
      cab_booking_management/static/description/cab_conf.png
  19. BIN
      cab_booking_management/static/description/cab_creation.png
  20. BIN
      cab_booking_management/static/description/cab_details.png
  21. BIN
      cab_booking_management/static/description/config.png
  22. BIN
      cab_booking_management/static/description/cybro_logo.png
  23. BIN
      cab_booking_management/static/description/icon.png
  24. 180
      cab_booking_management/static/description/index.html
  25. BIN
      cab_booking_management/static/description/log_details.png
  26. BIN
      cab_booking_management/static/description/mail.png
  27. 64
      cab_booking_management/views/cab_booking_view.xml
  28. 55
      cab_booking_management/views/cab_conf_view.xml
  29. 146
      cab_booking_management/views/cab_creation_view.xml
  30. 57
      cab_booking_management/views/cab_location_view.xml
  31. 109
      cab_booking_management/views/cab_log_view.xml
  32. 68
      cab_booking_management/views/cab_maintanence_view.xml
  33. 61
      cab_booking_management/views/cab_timing_view.xml
  34. 23
      cab_booking_management/views/templates.xml

33
cab_booking_management/README.rst

@ -0,0 +1,33 @@
Cab Booking Management System v9
================================
This module was developed to manage the cab system. It helps booking the cab, maintains logs
and record every activity related to the cab management.
Installation
============
Just select it from available modules to install it, there is no need to extra installations.
Configuration
=============
Nothing to configure.
Usage
=====
To use this functionality, you need to:
#.First create cabs(Cab Management > Cabs)
#.Then,you need to set timing for each cabs( Cab management > Timing)
#.On clicking Booking menu( Cab management > Booking) ,you have option to select cabs based on your time and location
#. Email is sent,once your booking is confirmed
#.To get total expense,first you need to set maintenance form ( Cab management > Maintenance).In this form ,you can
select cab and date, and all total activity of that cab on that day is fetched here.
#.To get data's on maintenance form ,first you must book one cab.
Credits
=======
Developer: Saritha @ cybrosys
Guidance: Nilmar Shereef @ cybrosys, shereef@cybrosys.in

24
cab_booking_management/__init__.py

@ -0,0 +1,24 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2008-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
# Author: Nilmar Shereef(<http://www.cybrosys.com>)
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from . import models

47
cab_booking_management/__openerp__.py

@ -0,0 +1,47 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2008-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
# Author: Nilmar Shereef(<http://www.cybrosys.com>)
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
{
'name': "Cab Booking Management System",
'summary': """Complete Cab Booking Management and its Related Records""",
'author': "Cybrosys Techno Solution",
'website': "http://www.cybrosys.com",
'category': 'Tools',
'version': '0.1',
'depends': ['base', 'mail'],
'data': [
'views/templates.xml',
'views/cab_log_view.xml',
'views/cab_conf_view.xml',
'views/cab_location_view.xml',
'views/cab_timing_view.xml',
'views/cab_booking_view.xml',
'views/cab_creation_view.xml',
'views/cab_maintanence_view.xml',
'security/ir.model.access.csv'
],
'images': ['static/description/banner.jpg'],
'license': 'AGPL-3',
'installable': True,
'auto_install': False,
'application': True,
}

31
cab_booking_management/models/__init__.py

@ -0,0 +1,31 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
#
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from . import cab_creation
from . import cab_log
from . import cab_conf
from . import cab_booking
from . import cab_location
from . import cab_timing
from. import cab_maintanence

50
cab_booking_management/models/cab_booking.py

@ -0,0 +1,50 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
#
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from openerp import models, fields, api
class CabBooking(models.Model):
_name = 'cab.booking'
_rec_name = 'booking_date'
booking_date = fields.Date(string="Booking Date", required=True)
cab_timing = fields.Many2one('cab.time', string="Timing", required=True)
cab_routes = fields.Many2one('cab.location', string="Route", required=True)
seat_available = fields.One2many('cab.timing', compute="scheduled_details")
@api.onchange('cab_routes', 'cab_timing')
def scheduled_details(self):
data = self.env['cab.timing'].search([('cab_route.name', '=', self.cab_routes.name),
('cab_time.name', '=', self.cab_timing.name)])
self.seat_available = data

31
cab_booking_management/models/cab_conf.py

@ -0,0 +1,31 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
#
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from openerp import models, fields
class CabConfiguration(models.Model):
_name = 'cab.configuration'
_rec_name = 'cab_manager'
auto_approve = fields.Boolean(string="Auto Approve")
cab_manager = fields.Many2one('res.users', string='Manager', required=True)

64
cab_booking_management/models/cab_creation.py

@ -0,0 +1,64 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
#
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from openerp import models, fields, api
class CabManagement(models.Model):
_name = 'cab.management'
name = fields.Char(string="Cab Name", required=True)
cab_image = fields.Binary(string='Image', store=True, attachment=True)
licence_plate = fields.Char(string="Licence Plate", required=True)
activity_period_from = fields.Date(string="Activity Period")
activity_period_to = fields.Date(string="To")
driver_plot = fields.Char(string="Driver Ploted")
cab_value = fields.Float(string="Cab Value")
cab_model = fields.Char(string="Cab Model")
cab_color = fields.Char(string="Cab Color")
aq_date = fields.Date(string="Aquisition Date")
chas_no = fields.Char(string="Chasis No")
odo_reading = fields.Float(string="Odometre Reading")
seating_capacity = fields.Integer(string="Seating Capacity", required=True)
fuel_type = fields.Char(string="Fuel Type")
related_log_details = fields.One2many('cab.log', string="Log Details", compute="auto_fetch_log_details")
total_log_details = fields.One2many('cab.maintanence', string='Total Expenses', compute="auto_fetch_total_details")
location_log_details = fields.One2many('cab.log', string="Location", compute="auto_fetch_location_details")
@api.onchange('activity_period_from', 'activity_period_to')
def auto_fetch_log_details(self):
data = self.env['cab.log'].search([("cab_log_date", ">=", self.activity_period_from),
("cab_log_date", "<=", self.activity_period_to)])
self.related_log_details = data
@api.onchange('activity_period_from', 'activity_period_to')
def auto_fetch_total_details(self):
data = self.env['cab.maintanence'].search([("cab_log_date", ">=", self.activity_period_from),
("cab_log_date", "<=", self.activity_period_to)])
self.total_log_details = data
@api.onchange('activity_period_from', 'activity_period_to')
def auto_fetch_location_details(self):
data = self.env['cab.log'].search([("cab_log_date", ">=", self.activity_period_from),
("cab_log_date", "<=", self.activity_period_to)])
self.location_log_details = data

34
cab_booking_management/models/cab_location.py

@ -0,0 +1,34 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2008-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
# Author: Nilmar Shereef(<http://www.cybrosys.com>)
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from openerp import models, fields
class CabLocation(models.Model):
_name = 'cab.location'
name = fields.Char(string='City', required=True)
cab_zip = fields.Char(string='ZIP')
cab_code = fields.Char(string='City Code', size=64, help="The official code for the city")
state_id = fields.Many2one('res.country.state', string='State', required=True)
country_id = fields.Many2one('res.country', string='Country', required=True)

150
cab_booking_management/models/cab_log.py

@ -0,0 +1,150 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
#
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from openerp import models, fields, api
from openerp.tools.translate import _
from openerp.exceptions import UserError
class CabLog(models.Model):
_name = 'cab.log'
_inherit = ['mail.thread', 'ir.needaction_mixin']
_description = 'Cab'
name = fields.Many2one('cab.management', string="Name", required=True)
cab_log_date = fields.Date(string="Date", required=True)
fuel_used = fields.Float(string="Fuel Used", required=True)
seat_capacity = fields.Integer(string="Seat Capacity", related="name.seating_capacity")
seat_available = fields.Integer(string="Seat Available")
cab_location = fields.Many2one('cab.location', string="Location", required=True)
seat_booked = fields.Integer(string="Seat Booked", required=True)
odo_metre = fields.Float(string="OdoMetre Reading", required=True)
cab_expense = fields.Float(string="Expense", required=True)
cab_log_timing = fields.Many2one('cab.time', string="Timing", required=True)
total_passenger = fields.Integer(string="Total Passenger", required=True)
partner_id = fields.Many2one('res.users', string="User Name", required=True)
cab_image = fields.Binary(string='Image', store=True, attachment=True)
seat_check = fields.Integer(string='Seat Condition Check')
state = fields.Selection([
('draft', 'Draft'),
('approved', 'Approved'),
('discard', 'Discard'),
('cancel', 'Cancelled'),
('done', 'Done')
], default='draft')
@api.onchange('seat_booked')
def auto_fill_passenger_field(self):
if self.seat_available < self.seat_booked:
self.seat_check = 1
@api.onchange('total_passenger')
def error_message(self):
if self.seat_check == 1:
raise UserError("Sorry,No Available Seats")
elif self.seat_booked != self.total_passenger:
raise UserError("Sorry, No of seat requested for booking and total passenger must be equal")
@api.one
def action_approve(self):
self.state = "approved"
@api.one
def action_cancel(self):
self.state = "cancel"
@api.one
def action_discard(self):
self.state = "discard"
@api.onchange('cab_log_date', 'state')
def auto_cabs_approve(self):
for data in self.env['cab.configuration'].search([]):
if data.auto_approve != False:
user_obj = self.env.user
if user_obj == data.cab_manager:
self.state = 'approved'
@api.onchange('cab_log_date', 'name', 'seat_booked')
def change_available_seat(self):
for data in self.env['cab.management'].search([]):
if self.name.name == data.name:
flag = 0
total_seat_booked = 0
for records in self.env['cab.log'].search([]):
if self.cab_log_date == records.cab_log_date:
total_seat_booked = total_seat_booked+records.seat_booked
flag += 1
if flag > 0:
test_val = self.seat_capacity - total_seat_booked
self.seat_available = test_val
else:
self.seat_available = self.seat_capacity
@api.multi
def action_sent(self):
self.ensure_one()
ir_model_data = self.env['ir.model.data']
try:
template_id = ir_model_data.get_object_reference('cab_booking_management', 'email_template_edi_cab')[1]
except ValueError:
template_id = False
try:
compose_form_id = ir_model_data.get_object_reference('mail', 'email_compose_message_wizard_form')[1]
except ValueError:
compose_form_id = False
ctx = dict()
print self.ids[0]
ctx.update({
'default_model': 'cab.log',
'default_res_id': self.ids[0],
'default_use_template': bool(template_id),
'default_template_id': template_id,
'default_composition_mode': 'comment',
})
return {
'type': 'ir.actions.act_window',
'view_type': 'form',
'view_mode': 'form',
'res_model': 'mail.compose.message',
'views': [(compose_form_id, 'form')],
'view_id': compose_form_id,
'target': 'new',
'context': ctx,
}
class MailComposeMessage(models.TransientModel):
_inherit = 'mail.compose.message'
@api.multi
def send_mail(self, auto_commit=False):
if self._context.get('default_model') == 'cab.log' and self._context.get('default_res_id'):
order = self.env['cab.log'].browse([self._context['default_res_id']])
if order.state == 'approved':
order.state = 'done'
order.sent = True
self = self.with_context(mail_post_autofollow=True)
return super(MailComposeMessage, self).send_mail(auto_commit=auto_commit)

55
cab_booking_management/models/cab_maintanence.py

@ -0,0 +1,55 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
#
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from openerp import models, fields, api
class CabMaintanence(models.Model):
_name = 'cab.maintanence'
name = fields.Many2one('cab.management', string="Name", required=True)
cab_log_date = fields.Date(string="Date", required=True)
fuel_used = fields.Float(string="Fuel Used")
odo_metre = fields.Float(string="OdoMetre Reading")
cab_expense = fields.Float(string="Expense")
total_passenger = fields.Integer(string="Total Passenger")
@api.onchange('cab_log_date')
def total_log_details(self):
total_fuel = 0
odo_metres = 0
expense = 0
passenger = 0
for data in self.env['cab.log'].search([]):
if data.cab_log_date == self.cab_log_date:
total_fuel += data.fuel_used
odo_metres += data.odo_metre
expense += data.cab_expense
passenger += data.total_passenger
self.fuel_used = total_fuel
self.odo_metre = odo_metres
self.cab_expense = expense
self.total_passenger = passenger

55
cab_booking_management/models/cab_timing.py

@ -0,0 +1,55 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2008-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
# Author: Nilmar Shereef(<http://www.cybrosys.com>)
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from openerp import models, fields, api
class CabTiming(models.Model):
_name = 'cab.timing'
name = fields.Many2one('cab.management', string="Cab Name", required=True)
cab_time = fields.Many2many('cab.time', 'cab_name_rel', string="Time", required=True,
help="Use this format 00:00,ex: 01:15")
cab_route = fields.Many2one('cab.location', string='Route', required=True)
seat = fields.Integer(string="Seating Capacity", related='name.seating_capacity', required=True)
@api.multi
def action_log_form_view(self):
return {
'name': 'CabLog',
'view_type': 'form',
'view_mode': 'form',
'res_model': 'cab.log',
'type': 'ir.actions.act_window',
'target': 'current'
}
class Time(models.Model):
_name = 'cab.time'
name = fields.Char(string="Name", required=True, help="Use this format 00:00,ex: 01:15")

16
cab_booking_management/security/ir.model.access.csv

@ -0,0 +1,16 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_cab_management,cab.management,model_cab_management,base.group_user,1,1,1,1
access_cab_maintenanace,cab.maintanence,model_cab_maintanence,base.group_user,1,1,1,1
access_cab_log,cab.log,model_cab_log,base.group_user,1,1,1,1
access_cab_timing,cab.timing,model_cab_timing,base.group_user,1,1,1,1
access_cab_location,cab.location,model_cab_location,base.group_user,1,1,1,1
access_cab_booking,cab.booking,model_cab_booking,base.group_user,1,1,1,1
access_cab_conf,cab.configuration,model_cab_configuration,base.group_user,1,1,1,1
access_cab_time,cab.time,model_cab_time,base.group_user,1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_cab_management cab.management model_cab_management base.group_user 1 1 1 1
3 access_cab_maintenanace cab.maintanence model_cab_maintanence base.group_user 1 1 1 1
4 access_cab_log cab.log model_cab_log base.group_user 1 1 1 1
5 access_cab_timing cab.timing model_cab_timing base.group_user 1 1 1 1
6 access_cab_location cab.location model_cab_location base.group_user 1 1 1 1
7 access_cab_booking cab.booking model_cab_booking base.group_user 1 1 1 1
8 access_cab_conf cab.configuration model_cab_configuration base.group_user 1 1 1 1
9 access_cab_time cab.time model_cab_time base.group_user 1 1 1 1

BIN
cab_booking_management/static/description/banner.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 293 KiB

BIN
cab_booking_management/static/description/booking.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

BIN
cab_booking_management/static/description/cab_activity.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

BIN
cab_booking_management/static/description/cab_booking.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

BIN
cab_booking_management/static/description/cab_cancel.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

BIN
cab_booking_management/static/description/cab_conf.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
cab_booking_management/static/description/cab_creation.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

BIN
cab_booking_management/static/description/cab_details.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

BIN
cab_booking_management/static/description/config.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

BIN
cab_booking_management/static/description/cybro_logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

BIN
cab_booking_management/static/description/icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

180
cab_booking_management/static/description/index.html

@ -0,0 +1,180 @@
<section class="oe_container">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan">Cab Booking Management System (CBMS)</h2>
<h3 class="oe_slogan">Manage the cabs with ease</h3>
<h4 class="oe_slogan">Cybrosys Technologies , www.cybrosys.com</h4>
<div>
<h4><p>Major Features:</p></h4>
<ul>
<li style="list-style:none !important;"><span style="color:green;"> &#9745;</span>&nbsp;&nbsp;Booking the Cab.</li>
<li style="list-style:none !important;"><span style="color:green;"> &#9745;</span>&nbsp;&nbsp;Auto approval Settings in Configuration.</li>
<li style="list-style:none !important;"><span style="color:green;"> &#9745;</span>&nbsp;&nbsp;Cab Logs for Every Trip.</li>
<li style="list-style:none !important;"><span style="color:green;"> &#9745;</span>&nbsp;&nbsp;Record Every Activity Related to CBMS.</li>
<li style="list-style:none !important;"><span style="color:green;"> &#9745;</span>&nbsp;&nbsp;Email Notification for Successful Booking.</li>
<li style="list-style:none !important;"><span style="color:green;"> &#9745;</span>&nbsp;&nbsp;Booking Status.</li>
<li style="list-style:none !important;"><span style="color:green;"> &#9745;</span>&nbsp;&nbsp;View All Cab Activities with Advanced Filttrations.</li>
</ul>
</div>
</div>
</section>
<section class="oe_container">
<div class="oe_row oe_spaced">
<div class="oe_span12">
<div class="oe_demo oe_picture oe_screenshot">
<img src="cab_creation.png">
</div>
</div>
<div class="oe_span12">
<p class='oe_mt32'><center>
Odoo's Cab booking management has a very simple interface for managing the cab system.
It helps booking the cab, maintains logs and record every activity related to the cab management.
</center></p>
</div>
</div>
</section>
<section class="oe_container">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan">Amazing & Outstanding Features</h2>
<h3 class="oe_slogan">A friendly interface, time saving</h3>
<div class="oe_span6">
<div class="oe_demo oe_picture oe_screenshot">
<img src="cab_conf.png">
</div>
<h3 class="oe_slogan">Auto approve</h3>
<p><center>Approve or discard the cab booking automatically.</center></p>
</div>
<div class="oe_span6">
<div class="oe_demo oe_picture oe_screenshot">
<img src="cab_cancel.png">
</div>
<h3 class="oe_slogan">Cancel booking</h3>
<p><center>
Now cancelling the cab booking is faster
</center></p>
</div>
</div>
</section>
<section class="oe_container oe_dark">
<div class="oe_row">
<h2 class="oe_slogan">Cab Creation </h2>
<h3 class="oe_slogan">create a cab</h3>
<div class="oe_span12">
<div class="oe_demo oe_picture oe_screenshot">
<img src="cab_details.png">
</div>
</div>
<div class="oe_span12">
<p class="oe_mt32"><center>
Odoo's cab booking management system provides a very easy way to create a new cab and store the related details of cab.
It also specifies which cab operates in which location and at what time.
</center></p>
</div>
</div>
</section>
<section class="oe_container oe_dark">
<div class="oe_row">
<h2 class="oe_slogan">Cab Log </h2>
<h3 class="oe_slogan">Mantains the log of the cab</h3>
<div class="oe_span6">
<p class='oe_mt32'>
Odoo's cab booking management system provides a very easy way to maintain the log of the cabs.
It maintains the details of the expenses of all trips of the cab.
</p>
</div>
<div class="oe_span6">
<div class="oe_demo oe_picture oe_screenshot">
<img src="log_details.png">
</div>
</div>
</div>
</section>
<section class="oe_container oe_dark">
<div class="oe_row">
<h2 class="oe_slogan">Cab Activity </h2>
<h3 class="oe_slogan">Mantain activity of cab</h3>
<div class="oe_span6">
<div class="oe_demo oe_picture oe_screenshot">
<img src="cab_activity.png">
</div>
</div>
<div class="oe_span6">
<p class='oe_mt32'><center>
With Odoo's cab booking management system you can maintain the total activity of the cabs on timely basis.
It shows the total expenses for a cab, on daily basis.</center>
</p>
</div>
</div>
</section>
<section class="oe_container oe_dark">
<div class="oe_row">
<h2 class="oe_slogan">Book the Cab </h2>
<h3 class="oe_slogan">Book the cab in easy way</h3>
<div class="oe_span6">
<p class='oe_mt32'>
Odoo's cab booking management system provides a very easy way to book a cab.
It provides a choice to book a cab from a list of cabs operating in your area.
</p>
</div>
<div class="oe_span6">
<div class="oe_demo oe_picture oe_screenshot">
<img src="cab_booking.png">
</div>
</div>
</div>
</section>
<section class="oe_container">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan">Booking Features</h2>
<h3 class="oe_slogan">Book cabs</h3>
<div class="oe_span6">
<div class="oe_demo oe_picture oe_screenshot">
<img src="booking.png">
</div>
<h3 class="oe_slogan">List of Cabs</h3>
<p><center>Here you can select a cab from a list of cabs operating in a particular location at particular time.</center></p>
</div>
<div class="oe_span6">
<div class="oe_demo oe_picture oe_screenshot">
<img src="mail.png">
</div>
<h3 class="oe_slogan"> Email</h3>
<p><center>
Email is sent on the successful booking of a particular cab to the user.
</center></p>
</div>
</div>
</section>
<section class="oe_container oe_dark">
<h2 class="oe_slogan" style="margin-top:20px;" >You Looking for a free Documentation of this Application.?</h2>
<h3 class="oe_slogan">Give a Request Mail to:&nbsp;&nbsp;<i class="fa fa-envelope" aria-hidden="true"></i>&nbsp;&nbsp;<a href="#" style="color:blue;">oddo@cybrosys.com</a></h3>
</section>
<section class="oe_container oe_dark">
<h2 class="oe_slogan" style="margin-top:20px;" >Need Any Help?</h2>
<div class="oe_slogan" style="margin-top:10px !important;">
<a class="btn btn-primary btn-lg mt8"
style="color: #FFFFFF !important;" href="http://www.cybrosys.com"><i
class="fa fa-envelope"></i> Email </a> <a
class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;"
href="http://www.cybrosys.com/contact/"><i
class="fa fa-phone"></i> Contact Us </a> <a
class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;"
href="http://www.cybrosys.com/odoo-customization-and-installation/"><i
class="fa fa-check-square"></i> Request Customization </a>
</div>
<img src="cybro_logo.png" style="width: 190px; margin-bottom: 20px;" class="center-block">
</section>

BIN
cab_booking_management/static/description/log_details.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

BIN
cab_booking_management/static/description/mail.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

64
cab_booking_management/views/cab_booking_view.xml

@ -0,0 +1,64 @@
<openerp>
<data>
<record model="ir.ui.view" id="cab_booking_form_view">
<field name="name">Cab Booking</field>
<field name="model">cab.booking</field>
<field name="arch" type="xml">
<form string="Cab Management">
<header>
<html>
<div style="text-align: center;">
<h1><centre>BOOK YOUR CAB</centre> </h1>
</div>
</html>
</header>
<sheet>
<group>
<group>
<field name="booking_date"/>
<field name="cab_routes"/>
</group>
<group>
<field name="cab_timing"/>
</group>
</group>
<field name="seat_available">
<tree name="Cab InformationTree" editable="bottom">
<field name="name"/>
<field name="seat" style="text-align: center;"/>
<button name="action_log_form_view" type="object" icon="gtk-go-forward"/>
</tree>
</field>
</sheet>
</form>
</field>
</record>
<record model="ir.ui.view" id="cab_booking_tree_view">
<field name="name">Cab Booking</field>
<field name="model">cab.booking</field>
<field name="arch" type="xml">
<tree string="Cab Booking">
<field name="booking_date"/>
<field name="cab_routes"/>
<field name="cab_timing"/>
</tree>
</field>
</record>
<record model="ir.actions.act_window" id="cab_booking_action">
<field name="name">Cab Booking</field>
<field name="res_model">cab.booking</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form,calender</field>
<field name="help" type="html">
<p class="oe_view_nocontent_create">Create Your First Booking
</p>
</field>
</record>
<menuitem id="cab_booking_menu" name="Booking" parent="cab_management_menu" action="cab_booking_action"
groups="base.group_user" sequence="60"/>
</data>
</openerp>

55
cab_booking_management/views/cab_conf_view.xml

@ -0,0 +1,55 @@
<openerp>
<data>
<record id="cab_management_group" model="res.groups">
<field name="name">Cab Management</field>
<field name="category_id" ref="base.module_category_extra"/>
</record>
<record model="ir.ui.view" id="cab_configuration_form_view">
<field name="name">Cab Config</field>
<field name="model">cab.configuration</field>
<field name="arch" type="xml">
<form string="Cab Configuration">
<sheet>
<group string="Cab Configuration">
<group>
<field name="auto_approve"/>
</group>
<group>
<field name="cab_manager"/>
</group>
</group>
</sheet>
</form>
</field>
</record>
<record model="ir.ui.view" id="cab_conf_tree_view">
<field name="name">Cab Config</field>
<field name="model">cab.configuration</field>
<field name="arch" type="xml">
<tree string="Cab Conf">
<field name="auto_approve"/>
<field name="cab_manager"/>
</tree>
</field>
</record>
<record model="ir.actions.act_window" id="cab_configuration_action">
<field name="name">Cab Configuration</field>
<field name="res_model">cab.configuration</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="help" type="html">
<p class="oe_view_nocontent_create">Create the Conf
</p>
</field>
</record>
<menuitem id="main_cab_configuration_menu" name="Configuration" parent="main_cab_management_menu"/>
<menuitem id="cab_configuration_menu" name="Cab Configuration" parent="main_cab_configuration_menu"
action="cab_configuration_action" groups="base.group_user"/>
</data>
</openerp>

146
cab_booking_management/views/cab_creation_view.xml

@ -0,0 +1,146 @@
<openerp>
<data>
<record model="ir.ui.view" id="cab_management_form_view">
<field name="name">Cab Details</field>
<field name="model">cab.management</field>
<field name="arch" type="xml">
<form string="Cab Management">
<sheet>
<field name="cab_image" widget="image" class="oe_avatar"/>
<div class="oe_title">
<label for="name"/>
<h1>
<field name="name" placeholder=" Vehicle Name" style="width:50%%"/>
</h1>
<label for="licence_plate"/>
<h2>
<field name="licence_plate" style="width:25%%"/>
</h2>
</div>
<div class="oe_title">
<group >
<label for="activity_period_from" class="oe_inline"/>
<div >
<field name="activity_period_from" class="oe_inline"/> to
<field name="activity_period_to" class="oe_inline"/>
</div>
</group>
</div>
<label for="related_log_details"/>
<field name="related_log_details">
<tree name="Cab Log Tree">
<field name="cab_log_date"/>
<field name="cab_log_timing"/>
<field name="odo_metre"/>
<field name="fuel_used"/>
<field name="total_passenger"/>
</tree>
</field>
<notebook>
<page string="Cab Details">
<group>
<group>
<field name="driver_plot"/>
<field name="cab_value"/>
<field name="cab_model"/>
<field name="cab_color"/>
<field name="aq_date"/>
</group>
<group>
<field name="chas_no"/>
<field name="odo_reading"/>
<field name="seating_capacity"/>
<field name="fuel_type"/>
</group>
</group>
</page>
<page string="Location">
<label for="location_log_details"/>
<field name="location_log_details">
<tree>
<field name="cab_log_date"/>
<field name="cab_location"/>
<field name="partner_id"/>
</tree>
</field>
</page>
<page string="Total Activity">
<label for="total_log_details"/>
<field name="total_log_details">
<tree>
<field name="cab_log_date"/>
<field name="fuel_used"/>
<field name="odo_metre"/>
<field name="total_passenger"/>
<field name="cab_expense"/>
</tree>
</field>
</page>
</notebook>
</sheet>
</form>
</field>
</record>
<record id="cab_template_kanban_view" model="ir.ui.view">
<field name="name">cab.management.kanban</field>
<field name="model">cab.management</field>
<field name="arch" type="xml">
<kanban>
<field name="cab_image" modifiers="{}"/>
<templates>
<t t-name="kanban-box">
<div class="oe_kanban_global_click">
<div class="o_kanban_image">
<img t-att-src="kanban_image('cab.management', 'cab_image', record.id.value)"/>
</div>
<div class="oe_kanban_details">
<strong>
<span t-if="record.licence_plate.value">[<field name="licence_plate"/>]</span>
<ul>
<li>Name :<field name="name"/></li>
<li>O.M Reading : 0</li>
</ul>
</strong>
</div>
</div>
</t>
</templates>
</kanban>
</field>
</record>
<record id="cab_template_action" model="ir.actions.act_window">
<field name="name">Cab Details</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">cab.management</field>
<field name="view_mode">kanban,tree,form</field>
<field name="view_type">form</field>
<field name="view_id" ref="cab_template_kanban_view"/>
<field name="help" type="html">
<p class="oe_view_nocontent_create">
Click to define a new Cab.
</p>
</field>
</record>
<record model="ir.actions.act_window" id="cab_management_action">
<field name="name">Cab Details</field>
<field name="res_model">cab.management</field>
<field name="view_type">form</field>
<field name="view_mode">kanban,tree,form,calender</field>
<field name="help" type="html">
<p class="oe_view_nocontent_create">Create Your First Cab
</p>
</field>
</record>
<menuitem id="main_cab_management_menu" name="Cab Management"/>
<menuitem id="cab_management_menu" name="Cab Management" parent="main_cab_management_menu"/>
<menuitem id="cab_menu" name="Cab" parent="cab_management_menu" action="cab_management_action"
groups="base.group_user" sequence="10"/>
</data>
</openerp>

57
cab_booking_management/views/cab_location_view.xml

@ -0,0 +1,57 @@
<openerp>
<data>
<record model="ir.ui.view" id="cab_location_form_view">
<field name="name">Location</field>
<field name="model">cab.location</field>
<field name="arch" type="xml">
<form string="Cab Location">
<sheet>
<group>
<group>
<field name="name"/>
<field name="state_id"/>
<field name="cab_code"/>
</group>
<group>
<field name="cab_zip"/>
<field name="country_id"/>
</group>
</group>
</sheet>
</form>
</field>
</record>
<record model="ir.ui.view" id="cab_location_tree_view">
<field name="name">Location</field>
<field name="model">cab.location</field>
<field name="arch" type="xml">
<tree string="Cab Location">
<field name="name"/>
<field name="state_id"/>
<field name="cab_code"/>
<field name="cab_zip"/>
<field name="country_id"/>
</tree>
</field>
</record>
<record model="ir.actions.act_window" id="cab_location_action">
<field name="name">Location</field>
<field name="res_model">cab.location</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form,calender</field>
<field name="help" type="html">
<p class="oe_view_nocontent_create">Create Your First Location
</p>
</field>
</record>
<menuitem id="main_cab_management_menu" name="Cab Management"/>
<menuitem id="cab_management_menu" name="Cab Management" parent="main_cab_management_menu"/>
<menuitem id="cab_location_menu" name="Location" parent="cab_management_menu" action="cab_location_action"
groups="base.group_user" sequence="40"/>
</data>
</openerp>

109
cab_booking_management/views/cab_log_view.xml

@ -0,0 +1,109 @@
<openerp>
<data>
<record model="ir.ui.view" id="cab_log_form_view">
<field name="name">Cab Details</field>
<field name="model">cab.log</field>
<field name="arch" type="xml">
<form string="Cab Log">
<header>
<button name="action_cancel"
string="Cancel Booking"
type="object"
state="'draft"
class="oe_highlight"
attrs = "{'invisible': [('state', 'in', ('approved','draft','discard','cancel'))]}"/>
<button name="action_approve"
string="Approve"
type="object"
state="'draft"
class="oe_highlight"
attrs = "{'invisible': [('state', 'in', ('discard','approved','cancel','done'))]}"/>
<button name="action_sent"
string="Send Mail"
type="object"
class="oe_highlight"
context="{'send_rfq':True }"
attrs = "{'invisible': [('state', 'in', ('discard','draft','cancel','done'))]}" />
<button name="action_discard"
string="Discard"
type="object"
class="oe_highlight"
attrs = "{'invisible': [('state', 'in', ('approved','discard','cancel','sent','done'))]}" />
<field name="state"
widget="statusbar"
statusbar_visible="draft,approved,sent,discard,cancel"
statusbar_colors='{"approved":"red"}'/>
</header>
<sheet>
<field name="cab_image"
widget="image"
class="oe_avatar"/>
<div class="oe_title">
<label for="name"/>
<h1>
<field name="name" placeholder=" Cab Name" style="width:50%%" />
</h1>
</div>
<group>
<group>
<field name="cab_log_date"/>
<field name="fuel_used"/>
<field name="seat_capacity"/>
<field name="seat_available"/>
<field name="cab_location"/>
<field name="seat_booked" attrs="{'readonly':['|',('seat_available', '==', 0) ] }"/>
<field name="seat_check" invisible="1"/>
</group>
<group>
<field name="odo_metre"/>
<field name="cab_expense"/>
<field name="cab_log_timing"/>
<field name="total_passenger"/>
<field name="partner_id" attrs="{'readonly':['|',('seat_check', '==', 1)]}" />
</group>
</group>
</sheet>
</form>
</field>
</record>
<record model="ir.ui.view" id="cab_log_tree_view">
<field name="name">Log Details</field>
<field name="model">cab.log</field>
<field name="arch" type="xml">
<tree string="Cab Log">
<field name="name"/>
<field name="seat_available"/>
<field name="cab_log_date"/>
<field name="cab_log_timing"/>
<field name="cab_location"/>
<field name="odo_metre"/>
<field name="fuel_used"/>
<field name="cab_expense"/>
<field name="partner_id"/>
<field name="seat_booked"/>
<field name="state"/>
</tree>
</field>
</record>
<record model="ir.actions.act_window" id="cab_log_action">
<field name="name">Log Details</field>
<field name="res_model">cab.log</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form,calender</field>
<field name="help" type="html">
<p class="oe_view_nocontent_create">Create Your First Trip
</p>
</field>
</record>
<menuitem id="main_cab_management_menu" name="Cab Management"/>
<menuitem id="cab_management_menu" name="Cab Management" parent="main_cab_management_menu"/>
<menuitem id="cabs_log_menu" name="Cab Trip" parent="cab_management_menu" action="cab_log_action"
groups="base.group_user" sequence="30"/>
</data>
</openerp>

68
cab_booking_management/views/cab_maintanence_view.xml

@ -0,0 +1,68 @@
<openerp>
<data>
<record model="ir.ui.view" id="cab_maintanence_form_view">
<field name="name">Cab Details</field>
<field name="model">cab.maintanence</field>
<field name="arch" type="xml">
<form string="Cab Log">
<header>
<html>
<div style="text-align: center;">
<h1><centre>Cab Maintanence(Total Expenses)</centre> </h1>
</div>
</html>
</header>
<sheet>
<div class="oe_title">
<label for="name"/>
<h1>
<field name="name" placeholder=" Cab Name" style="width:50%%" />
</h1>
</div>
<group>
<group>
<field name="cab_log_date"/>
<field name="fuel_used"/>
</group>
<group>
<field name="odo_metre"/>
<field name="cab_expense"/>
<field name="total_passenger"/>
</group>
</group>
</sheet>
</form>
</field>
</record>
<record model="ir.ui.view" id="cab_maintanence_tree_view">
<field name="name">Log Details</field>
<field name="model">cab.maintanence</field>
<field name="arch" type="xml">
<tree string="Cab Log">
<field name="name"/>
<field name="odo_metre"/>
<field name="cab_log_date"/>
<field name="fuel_used"/>
<field name="cab_expense"/>
</tree>
</field>
</record>
<record model="ir.actions.act_window" id="cab_maintanence_action">
<field name="name">Log Details</field>
<field name="res_model">cab.maintanence</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form,calender</field>
<field name="help" type="html">
<p class="oe_view_nocontent_create">Create Your First Record
</p>
</field>
</record>
<menuitem id="cab_maintanence_menu" name="Maintenance" parent="cab_management_menu"
action="cab_maintanence_action" groups="base.group_user" sequence="20"/>
</data>
</openerp>

61
cab_booking_management/views/cab_timing_view.xml

@ -0,0 +1,61 @@
<openerp>
<data>
<record model="ir.ui.view" id="cab_timing_form_view">
<field name="name">Cab Timing</field>
<field name="model">cab.timing</field>
<field name="arch" type="xml">
<form string="Cab Timing">
<header>
<html>
<div style="text-align: center;">
<h1><centre>Set Your Cab Time</centre> </h1>
</div>
</html>
</header>
<sheet>
<group>
<group>
<field name="name"/>
<field name="cab_route"/>
</group>
<group>
<field name="cab_time" widget="many2many_tags"/>
<field name="seat"/>
</group>
</group>
</sheet>
</form>
</field>
</record>
<record model="ir.ui.view" id="cab_timing_tree_view">
<field name="name">Cab Timing</field>
<field name="model">cab.timing</field>
<field name="arch" type="xml">
<tree string="Cab Timing">
<field name="name"/>
<field name="cab_route"/>
<field name="cab_time" widget="many2many_tags"/>
<field name="seat"/>
</tree>
</field>
</record>
<record model="ir.actions.act_window" id="cab_timing_action">
<field name="name">Cab Timing</field>
<field name="res_model">cab.timing</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form,calender</field>
<field name="help" type="html">
<p class="oe_view_nocontent_create">Create Your First Record
</p>
</field>
</record>
<menuitem id="cab_timing_menu" name="Timing" parent="cab_management_menu" action="cab_timing_action"
groups="base.group_user" sequence="50"/>
</data>
</openerp>

23
cab_booking_management/views/templates.xml

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record id="email_template_edi_cab" model="mail.template">
<field name="name">Cab Booked</field>
<field name="email_from">${(object.user_id.email}</field>
<field name="email_to">${object.partner_id.id}</field>
<field name="partner_to">${object.partner_id.id}</field>
<field name="subject">Cab Booked</field>
<field name="model_id" ref="cab_booking_management.model_cab_log" />
<field name="auto_delete" eval="True" />
<field name="body_html"><![CDATA[
<div style="font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; ">
<p>Hello ${object.partner_id.name},</p>
<p> This Email is to inform you that your request for cab on ${object.cab_log_date} is approved </p>
</div>
]]>
</field>
</record>
</data>
</openerp>
Loading…
Cancel
Save