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.
88 lines
3.0 KiB
88 lines
3.0 KiB
# -*- coding: utf-8 -*-
|
|
###################################################################################
|
|
#
|
|
# Cybrosys Technologies Pvt. Ltd.
|
|
# Copyright (C) 2021-TODAY Cybrosys Technologies (<https://www.cybrosys.com>).
|
|
#
|
|
# Author: AVINASH NK(<https://www.cybrosys.com>)
|
|
#
|
|
# This program is free software: you can modify
|
|
# it under the terms of the GNU Affero General Public License (AGPL) as
|
|
# published by the Free Software Foundation, either version 3 of the
|
|
# License, or (at your option) any later version.
|
|
#
|
|
# 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 Affero General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU Affero General Public License
|
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
#
|
|
###################################################################################
|
|
|
|
from odoo import api, fields, models
|
|
|
|
|
|
class ResConfigSettings(models.TransientModel):
|
|
_inherit = 'res.config.settings'
|
|
|
|
@api.model
|
|
def booking_chairs(self):
|
|
"""
|
|
return active chairs for booking
|
|
"""
|
|
return self.env['salon.chair'].search(
|
|
[('active_booking_chairs', '=', True)])
|
|
|
|
@api.model
|
|
def holidays(self):
|
|
"""
|
|
return holiday
|
|
"""
|
|
return self.env['salon.holiday'].search([('holiday', '=', True)])
|
|
|
|
salon_booking_chair_ids = fields.Many2many(
|
|
'salon.chair', string="Booking Chairs", default=booking_chairs)
|
|
salon_holiday_ids = fields.Many2many('salon.holiday', string="Holidays",
|
|
default=holidays)
|
|
|
|
def execute(self):
|
|
"""
|
|
update boolean fields of holiday and chair
|
|
"""
|
|
salon_chair_obj = self.env['salon.chair'].search([])
|
|
book_chair = []
|
|
for chairs in self.salon_booking_chair_ids:
|
|
book_chair.append(chairs.id)
|
|
for records in salon_chair_obj:
|
|
if records.id in book_chair:
|
|
records.active_booking_chairs = True
|
|
else:
|
|
records.active_booking_chairs = False
|
|
salon_holiday_obj = self.env['salon.holiday'].search([])
|
|
holiday = []
|
|
for days in self.salon_holiday_ids:
|
|
holiday.append(days.id)
|
|
for records in salon_holiday_obj:
|
|
if records.id in holiday:
|
|
records.holiday = True
|
|
else:
|
|
records.holiday = False
|
|
|
|
|
|
class SalonWorkingHours(models.Model):
|
|
_name = 'salon.working.hours'
|
|
_description = 'Salon Working Hours'
|
|
|
|
name = fields.Char(string="Name")
|
|
from_time = fields.Float(string="Starting Time")
|
|
to_time = fields.Float(string="Closing Time")
|
|
|
|
|
|
class SalonHoliday(models.Model):
|
|
_name = 'salon.holiday'
|
|
_description = 'Salon Holiday'
|
|
|
|
name = fields.Char(string="Name")
|
|
holiday = fields.Boolean(string="Holiday")
|
|
|