Browse Source

Dec 26 [UPDT] Bug Fixed 'fleet_car_workshop'

pull/232/head
AjmalCybro 2 years ago
parent
commit
0a757b1bdf
  1. 11
      fleet_car_workshop/__manifest__.py
  2. 7
      fleet_car_workshop/models/car_workshop.py
  3. 9
      fleet_car_workshop/models/config.py
  4. 25
      fleet_car_workshop/models/dashboard.py
  5. 6
      fleet_car_workshop/models/timesheet.py

11
fleet_car_workshop/__manifest__.py

@ -27,10 +27,11 @@
'website': "https://www.cybrosys.com",
'company': 'Cybrosys Techno Solutions',
'depends': [
'base',
'fleet',
'stock'
],
'base',
'fleet',
'account',
'stock'
],
'data': [
'data/workshop_data.xml',
'views/worksheet_views.xml',
@ -50,5 +51,5 @@
'license': 'AGPL-3',
'installable': True,
'auto_install': False,
'application': False,
'application': True,
}

7
fleet_car_workshop/models/car_workshop.py

@ -17,7 +17,7 @@
# If not, see <https://www.gnu.org/licenses/>.
#
##############################################################################
from datetime import date, datetime
from datetime import date
from dateutil.relativedelta import relativedelta
from psutil import long
@ -43,7 +43,6 @@ class CarWorkshop(models.Model):
tracking=True,
change_default=True)
@api.model
def _default_company_id(self):
car_id = self._context.get('active_id')
@ -65,7 +64,6 @@ class CarWorkshop(models.Model):
return False
return self.stage_find(vehicle_id, [('fold', '=', False)])
@api.model
def _read_group_stage_ids(self, stages, domain, order):
search_domain = [('id', 'in', stages.ids)]
@ -135,7 +133,6 @@ class CarWorkshop(models.Model):
invoice_count = fields.Integer(string="Invoice_count", compute='compute_invoice_count')
@api.depends('planned_works.work_cost', 'materials_used.price')
def amount_total1(self):
for records in self:
@ -160,7 +157,6 @@ class CarWorkshop(models.Model):
_(
'Please select a Customer.'))
invoice_line_ids = []
company_id = self.env['res.users'].browse(1).company_id
currency_value = company_id.currency_id.id
@ -383,7 +379,6 @@ class CarWorkshop(models.Model):
self.partner_id = self.vehicle_id.partner_id
self.stage_id = self.stage_find(self.vehicle_id, [('fold', '=', False)])
def stage_find(self, section_id, domain=[], order='sequence'):
""" Override of the base.stage method
Parameter of the stage search taken from the lead:

9
fleet_car_workshop/models/config.py

@ -17,8 +17,6 @@
# If not, see <https://www.gnu.org/licenses/>.
#
##############################################################################
from odoo.tools.translate import _
from odoo import fields, models, api
from odoo import fields, models
@ -27,7 +25,8 @@ from odoo import fields, models
class WorkshopSetting(models.TransientModel):
_inherit = 'res.config.settings'
invoice_journal_type = fields.Many2one('account.journal', string="Car Workshop Journal", config_parameter='fleet_car_workshop.invoice_journal_type')
invoice_journal_type = fields.Many2one('account.journal', string="Car Workshop Journal",
config_parameter='fleet_car_workshop.invoice_journal_type')
class WorksheetTags(models.Model):
@ -38,7 +37,7 @@ class WorksheetTags(models.Model):
color = fields.Integer('Color Index')
_sql_constraints = [
('name_uniq', 'unique (name)', "Tag name already exists !"),
('name_uniq', 'unique (name)', "Tag name already exists !"),
]
@ -55,7 +54,7 @@ class WorksheetStages(models.Model):
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',
default=_get_default_vehicle_ids)
default=_get_default_vehicle_ids)
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.')

25
fleet_car_workshop/models/dashboard.py

@ -30,8 +30,7 @@ class CarVehicle(osv.osv):
_inherit = ['mail.thread']
_rec_name = 'vehicle_id'
active = fields.Boolean('Active',default=True)
active = fields.Boolean('Active', default=True)
vehicle_id = fields.Many2one('fleet.vehicle', string='Vehicle Name', tracking=True, required=True)
sequence = fields.Integer('Sequence', help="Gives the sequence order when displaying a list of Projects.")
@ -39,20 +38,21 @@ class CarVehicle(osv.osv):
worksheet = fields.One2many('car.workshop', 'vehicle_id', string="Task Activities")
type_ids = fields.Many2many('worksheet.stages', 'car_workshop_type_rel',
'vehicle_id', 'type_id', string='Worksheet Stages',
states={'close': [('readonly', True)], 'cancelled': [('readonly', True)]})
'vehicle_id', 'type_id', string='Worksheet Stages',
states={'close': [('readonly', True)], 'cancelled': [('readonly', True)]})
task_count = fields.Integer(compute='_compute_task_count', type='integer', string="Tasks" )
task_ids = fields.One2many('car.workshop', 'vehicle_id', domain=['|', ('stage_id.fold', '=', False), ('stage_id', '=', False)])
task_count = fields.Integer(compute='_compute_task_count', type='integer', string="Tasks")
task_ids = fields.One2many('car.workshop', 'vehicle_id',
domain=['|', ('stage_id.fold', '=', False), ('stage_id', '=', False)])
doc_count = fields.Integer(compute='_compute_attached_docs_count', string="Number of documents attached")
color = fields.Integer(string='Color Index')
partner_id = fields.Many2one('res.partner', string='Customer')
state = fields.Selection([('draft', 'New'),
('open', 'In Progress'),
('cancelled', 'Cancelled'),
('pending', 'Pending'),
('close', 'Closed')], string='Status', required=True,
track_visibility='onchange',default='open', copy=False)
('open', 'In Progress'),
('cancelled', 'Cancelled'),
('pending', 'Pending'),
('close', 'Closed')], string='Status', required=True,
track_visibility='onchange', default='open', copy=False)
date_start = fields.Date(string='Start Date')
date = fields.Date(string='Expiration Date', select=True, track_visibility='onchange')
@ -104,6 +104,3 @@ class CarVehicle(osv.osv):
'limit': 80,
'context': "{'default_res_model': '%s','default_res_id': %d}" % (self._name, self.id)
}

6
fleet_car_workshop/models/timesheet.py

@ -21,7 +21,7 @@
from odoo import fields, models, api
class PlannedWork (models.Model):
class PlannedWork(models.Model):
_name = 'planned.work'
planned_work = fields.Many2one('product.product', string='Planned work', domain=[('type', '=', 'service')])
@ -39,7 +39,7 @@ class PlannedWork (models.Model):
self.work_cost = self.planned_work.lst_price
class MaterialUsed (models.Model):
class MaterialUsed(models.Model):
_name = 'material.used'
material = fields.Many2one('product.product', string='Products')
@ -47,7 +47,7 @@ class MaterialUsed (models.Model):
price = fields.Float(string='Unit Price')
material_id = fields.Many2one('car.workshop')
_defaults = {
'amount': 1, }
'amount': 1, }
@api.onchange('material')
def get_price(self):

Loading…
Cancel
Save