All files / platform/modules/booking/src/Services SalonService.js

93.33% Statements 14/15
75% Branches 3/4
100% Functions 5/5
93.33% Lines 14/15

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39  1x       95x       95x 95x       27x 27x 1x     26x       7x 7x       11x 11x       11x       1x  
'use strict';
const CE = use('C2C/Exceptions');
 
class SalonService {
  static get inject() {
    return ['C2C/Repositories/SalonRepo', `C2C/Repositories/SettingRepo`];
  }
 
  constructor(salonRepo, settingRepo) {
    this.salonRepo = salonRepo;
    this.settingRepo = settingRepo;
  }
 
  async findOrFail(id) {
    const salon = await this.salonRepo.findOne({ id });
    if (!salon) {
      throw CE.NotFoundException.raise('errors.notFound');
    }
 
    return salon;
  }
 
  async getCancellationPolicy(salon) {
    const policy = await this.settingRepo.getCancellationByName(salon.cancellationPolicy);
    return policy;
  }
 
  async findByOrFail(conditions) {
    const salon = await this.salonRepo.findOne(conditions);
    Iif (!salon) {
      throw CE.NotFoundException.raise('errors.notFound');
    }
 
    return salon;
  }
}
 
module.exports = SalonService;