Skip to Content
Meniu
Trebuie să fiți înregistrat pentru a interacționa cu comunitatea.
Această întrebare a fost marcată
2 Răspunsuri
2528 Vizualizări

Hello I am make meeting room app so I have query I have six conference room so how to make sure that Two people not book one Conference Room on same Date and time .

Imagine profil
Abandonează
Cel mai bun răspuns

Consider that you have created a model(meeting.room) for meeting room where it has one2many field(booking_ids of room.booking.line) for take bookings for perticular room.So, in room.booking.line you can add constrains on date and time.Check below example:

@api.constrains('booking_date','start_time','end_time')
def check_booking(self):
bookings = self.env['meeting.room'].search([('room_id','=',self.room_id),('id','!=',self.id)])

if bookings:
for booking in bookings:
if booking.booking_date == self.booking_date:
if (booking.start_time <= self.start_time and booking.end_time >= self.start_time) \
or (booking.start_time <= self.end_time and booking.end_time >= self.end_time) :
raise ValidationError('Room is already booked')

Thanks, (Siddharth Tarpada)

Imagine profil
Abandonează
Cel mai bun răspuns

Hello Prince,

You can try the code below to see if it helps you,

Find Code in Comment. 

Please do not hesitate to contact us if you want further customisation !! 

Thanks & Regards,
Email: odoo@aktivsoftware.com
Skype: kalpeshmaheshwari

Imagine profil
Abandonează

def create(self, vals):
# Try with create method, anytime a user tries to reserve a conference room; if the conference room is available, let the user to create; otherwise, raise a warning.
conference_room_ids = self.search([('conference_room_field', '=',vals['conference_room_field'])])
for room_id in conference_room_ids:
room_data = self.browse(room_id)
# If condition to check availability of conference room
if ((vals['start_date']>= room_data.start_date) and (vals['end_date'] <= room_data.start_date)) or (vals['start_date'] >= room_data.end_date):
print(room_data)
# Hence raise warning that conference room is already booked
else:
raise Warning('Conference Room is Already Booked !!')

Related Posts Răspunsuri Vizualizări Activitate
2
sept. 18
7174
9
mar. 16
61103
1
mar. 15
4934
1
mar. 15
5654
2
mar. 15
4670