1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- # -*- 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 fields, models, api
- from openerp.tools.translate import _
- class WorkshopSetting(models.Model):
- _name = "workshop.config.setting"
- invoice_journal_type = fields.Many2one('account.journal', string="Car Workshop Journal")
- @api.multi
- def execute(self):
- return self.env['ir.values'].sudo().set_default(
- 'workshop.config.setting', 'invoice_journal_type', self.invoice_journal_type.id)
- def cancel(self, cr, uid, ids, context=None):
- act_window = self.pool['ir.actions.act_window']
- action_ids = act_window.search(cr, uid, [('res_model', '=', self._name)])
- if action_ids:
- return act_window.read(cr, uid, action_ids[0], [], context=context)
- return {}
- class WorksheetTags(models.Model):
- _name = "worksheet.tags"
- _description = "Tags of vehicles's tasks, issues..."
- name = fields.Char(string='Name', required=True)
- color = fields.Integer(string='Color Index')
- _sql_constraints = [
- ('name_uniq', 'unique (name)', "Tag name already exists !"),
- ]
- class WorksheetStages(models.Model):
- _name = 'worksheet.stages'
- _description = 'worksheet Stage'
- _order = 'sequence'
- name = fields.Char(string='Stage Name', required=True)
- description = fields.Text(string='Description', translate=True)
- sequence = fields.Integer(string='Sequence')
- vehicle_ids = fields.Many2many('car.car', 'worksheet_type_rel', 'type_id', 'vehicle_id', string='Vechicles')
- fold = fields.Boolean('Folded in Tasks Pipeline', help='This stage is folded in the kanban view when'
- 'there are no records in that stage to display.')
- def _get_default_vehicle_ids(self, cr, uid, ctx=None):
- if ctx is None:
- ctx = {}
- default_vehicle_id = ctx.get('default_vehicle_id')
- return [default_vehicle_id] if default_vehicle_id else None
- _defaults = {
- 'sequence': 1,
- 'vehicle_ids': _get_default_vehicle_ids,
- }
- _order = 'sequence'
- class Services(models.Model):
- _inherit = 'product.template'
- type = fields.Selection([('consu', _('Consumable')), ('service', _('Service')),
- ('product', _('Stockable Product'))],
- string='Product Type', required=True,
- help="A consumable is a product for which you don't manage stock,"
- " a service is a non-material product provided by a company or an individual.")
- _defaults = {
- 'type': 'service',
- }
|