You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							93 lines
						
					
					
						
							3.5 KiB
						
					
					
				
			
		
		
		
			
			
			
		
		
	
	
							93 lines
						
					
					
						
							3.5 KiB
						
					
					
				
								# -*- coding: utf-8 -*-
							 | 
						|
								##############################################################################
							 | 
						|
								#
							 | 
						|
								#    Cybrosys Technologies Pvt. Ltd.
							 | 
						|
								#    Copyright (C) 2017-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
							 | 
						|
								#    Author: Nilmar Shereef(<https://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 <https://www.gnu.org/licenses/>.
							 | 
						|
								#
							 | 
						|
								##############################################################################
							 | 
						|
								from odoo.tools.translate import _
							 | 
						|
								from odoo import fields, models, api
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								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('Name', required=True)
							 | 
						|
								    color = fields.Integer('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'))], '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',
							 | 
						|
								
							 | 
						|
								    }
							 | 
						|
								
							 |