| @ -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 | |||
| 
 | |||
| @ -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 | |||
| @ -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, | |||
| } | |||
| @ -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 | |||
| 
 | |||
| 
 | |||
| @ -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 | |||
| 
 | |||
| 
 | |||
| 
 | |||
| 
 | |||
| 
 | |||
| 
 | |||
| 
 | |||
| 
 | |||
| 
 | |||
| 
 | |||
| 
 | |||
| @ -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) | |||
| @ -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 | |||
| @ -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) | |||
| @ -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) | |||
| @ -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 | |||
| 
 | |||
| 
 | |||
| 
 | |||
| @ -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") | |||
| 
 | |||
| 
 | |||
| 
 | |||
| 
 | |||
| 
 | |||
| 
 | 
| After Width: | Height: | Size: 293 KiB | 
| After Width: | Height: | Size: 33 KiB | 
| After Width: | Height: | Size: 48 KiB | 
| After Width: | Height: | Size: 34 KiB | 
| After Width: | Height: | Size: 39 KiB | 
| After Width: | Height: | Size: 28 KiB | 
| After Width: | Height: | Size: 68 KiB | 
| After Width: | Height: | Size: 81 KiB | 
| After Width: | Height: | Size: 60 KiB | 
| After Width: | Height: | Size: 50 KiB | 
| After Width: | Height: | Size: 12 KiB | 
| @ -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;"> ☑</span>  Booking the Cab.</li> | |||
|                 <li style="list-style:none !important;"><span style="color:green;"> ☑</span>  Auto approval Settings in Configuration.</li> | |||
|                 <li style="list-style:none !important;"><span style="color:green;"> ☑</span>  Cab Logs for Every Trip.</li> | |||
|                 <li style="list-style:none !important;"><span style="color:green;"> ☑</span>  Record Every Activity Related to CBMS.</li> | |||
|                 <li style="list-style:none !important;"><span style="color:green;"> ☑</span>  Email Notification for Successful Booking.</li> | |||
|                 <li style="list-style:none !important;"><span style="color:green;"> ☑</span>  Booking Status.</li> | |||
|                 <li style="list-style:none !important;"><span style="color:green;"> ☑</span>  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:  <i class="fa fa-envelope" aria-hidden="true"></i>  <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> | |||
| 
 | |||
| 
 | |||
| 
 | |||
| 
 | |||
| After Width: | Height: | Size: 67 KiB | 
| After Width: | Height: | Size: 25 KiB | 
| @ -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> | |||
| @ -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> | |||
| @ -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> | |||
| @ -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> | |||
| @ -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> | |||
| @ -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> | |||
| @ -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> | |||
| @ -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> | |||