'use strict';

/**
 * @param {Egg.Application} app - egg application
 */

const os = require('os');
function getIPAdress() {
  const interfaces = os.networkInterfaces();
  for (const devName in interfaces) {
    const iface = interfaces[devName];
    for (let i = 0; i < iface.length; i++) {
      const alias = iface[i];
      if (alias.family === 'IPv4' && alias.address !== '127.0.0.1' && !alias.internal) {
        return alias.address;
      }
    }
  }
}
module.exports = app => {
  const { router, controller } = app;
  const { routePrefix, cluster } = app.config;
  const ipAddress = getIPAdress();
  console.log(`前缀:http://${ipAddress}:${cluster.listen.port}${routePrefix}`);
  router.get('/', controller.home.index);
  router.post(`${routePrefix}/login`, controller.home.login);
  require('./z_router/dict')(app); // 字典
  require('./z_router/user/user')(app); // 用户
  require('./z_router/user/coach')(app); // 教练
  require('./z_router/user/school')(app); // 学院
  require('./z_router/user/student')(app); // 学员
  require('./z_router/relation/relationStudentCoach')(app); // 学员与教练关系
  require('./z_router/relation/relationCoachSchool')(app); // 教练与学校关系
  require('./z_router/relation/relationStudentSchool')(app); // 学员与学校关系
  require('./z_router/relation/studentApplyForSchool')(app); // 学员入学申请
  // require('./z_router/business/lessonPrivate')(app); // 私教课
  // require('./z_router/business/lessonPublic')(app); // 公开课
  require('./z_router/business/lesson')(app); // 课程
  require('./z_router/business/lessonCoach')(app); // 课程-教练
  require('./z_router/business/lessonStudent')(app); // 课程-学员
  require('./z_router/business/coachInBill')(app); // 教练费明细
  require('./z_router/business/billApply')(app); // 教练费申请

  require('./z_router/view/student')(app); // 学生视图
};