const xlsx = require('xlsx')
async function readExcel (filepath) {
  //读取内容
  const workbook = xlsx.readFile(filepath);
  const sheet_1 = workbook.Sheets['筛查监控-血清学检查']; //通过表名得到表对象
  const data_1 = xlsx.utils.sheet_to_json(sheet_1); //通过工具将表对象的数据读出来并转成json

  const sheet_2 = workbook.Sheets['筛查监控-胃镜检查']; //通过表名得到表对象
  const data_2 = xlsx.utils.sheet_to_json(sheet_2); //通过工具将表对象的数据读出来并转成json

  // 应精查人数
  let scrutinizing_total_data = data_2[1]['数量']

  // 实际精查人数
  let scrutinizing_data = data_2[0]['数量']

  const sheet_3 = workbook.Sheets['筛查监控-诊断结果']; //通过表名得到表对象
  const data_3 = xlsx.utils.sheet_to_json(sheet_3); //通过工具将表对象的数据读出来并转成json

  // 筛查数
  let patient_count = data_3[data_3.length-1]['__EMPTY']
  // 早期胃癌
  let garstric_data = parseInt(data_3[0]['__EMPTY_1'].split("胃")[1]) + data_3[2]['数量']
  // 早期食管癌
  let esophagus_data = parseInt(data_3[0]['__EMPTY_1'].split("食管")[1].split("+")[0]) + data_3[3]['数量']
  // 进展期胃癌
  let more_garstric_data = parseInt(data_3[2]['__EMPTY_1'].split("胃癌")[1])
  // 进展期食管癌
  let more_esophagus_data =  parseInt(data_3[3]['__EMPTY_1'].split("食管癌")[1])
  // 胃癌检出率
  let garstric_rate = parseFloat(((garstric_data + more_garstric_data) / scrutinizing_data * 100).toFixed(4)) 
  // 食管癌检出率
  let esophagus_rate =  parseFloat(((esophagus_data + more_esophagus_data) / scrutinizing_data * 100).toFixed(4))
  // 萎缩性胃炎
  let atrophic_gastritis = data_3[4]["数量"]
  // 胃溃疡
  let gastric_ulcer = data_3[5]["数量"]
  // 胃息肉
  let gastric_polyps = data_3[6]["数量"]

  const sheet_8 = workbook.Sheets['筛查排名-按血检人数排名']; //通过表名得到表对象
  const data_8 = xlsx.utils.sheet_to_json(sheet_8); //通过工具将表对象的数据读出来并转成json

  // 医院数
  let hospital_count =data_8[data_8.length-2]['排名']

  // 超过1000例筛查
  let more_1000 = 0
  for (let i = 0; i < data_8.length; i++) {
    if(data_8[i]['血检人数'] < 1000){
      more_1000 = data_8[i-1]['排名']
      break
    }
  }

  // 超过500例筛查
  let more_500 = 0
  for (let i = 0; i < data_8.length; i++) {
    if(data_8[i]['血检人数'] < 500){
      more_500 = data_8[i-1]['排名']
      break
    }
  }

  let rate = ((data_3[2]['数量'] + data_3[3]['数量'] +more_garstric_data + more_esophagus_data) /(garstric_data + esophagus_data + more_garstric_data + more_esophagus_data) * 100 ).toFixed(2)
  
  let garstric_early_rate = ( (data_3[2]['数量'] + more_garstric_data) /  (garstric_data + more_garstric_data) *100).toFixed(2)

  let str = `
    截至2021年1月31日，GECA运营数据及筛查数据如下：
    运营数据分析: 
    ${hospital_count}家医院开始填报数据，${more_500}家医院超过500例筛查，${more_1000}家医院超过1000例筛查

    筛查数据分析：
    1️、筛查人数${patient_count}人，高危${data_3[8]['数量']}、中危${data_3[9]['数量']}、低危${data_3[10]['数量']}；Hp抗体阳性${data_1[1]['数量']}人，阳性率${data_1[1]['__EMPTY']}      
    2️、应精查人数${scrutinizing_total_data}人，实际精查人数${scrutinizing_data}人（${data_2[0]['__EMPTY']}内镜应答率）
    3️、发现了${garstric_data}例早期胃癌，${esophagus_data}例早期食管癌，${more_garstric_data}例进展期胃癌，${more_esophagus_data}例进展期食管癌，总计${garstric_data + esophagus_data}例早癌数
    4️、上消化道肿瘤检出率${garstric_rate+esophagus_rate}%（其中胃癌检出率${garstric_rate}%、食道癌检出率${esophagus_rate}%），早诊率高达${rate}%，胃癌早诊率高达${garstric_early_rate}%
    5️、胃溃疡${gastric_ulcer}例，萎缩性胃炎${atrophic_gastritis}例，胃息肉${gastric_polyps}例
    6️、筛查例数排名前五名为 1）${data_8[0]['医院名称']}、2）${data_8[1]['医院名称']}、3）${data_8[2]['医院名称']}、4）${data_8[3]['医院名称']}、5）${data_8[4]['医院名称']}
  `
  console.log(str);
}

readExcel('./test.xls')