// var http = require('http');
// var server = http.createServer((req,res) => {
//   //设置 HTTP 头部，状态码是 200，文件类型是 html，字符集是 utf-8
//     res.writeHead(200,{"Content-Type":"text/html;charset='utf-8'"});
//     res.write('<h1>Node.js</h1>');
//     res.end('Hello World\\n');
// })
// server.listen(3000);//监听端口号是3000的服务器
// console.log("end");

// var str="sdfd_xxx";
// var ind=str.lastIndexOf("_");
// if(ind>=0){
//   var st2=str.substring(ind+1);
//   if(st2=="N"){
//     var st1=str.substring(0,ind);
//     console.log(st1);
//   }else{
//     console.log(str);
//   }

// }
var excel = require('exceljs');
function getMonth(type,text){
  var qs=["一","二","三","四"];
  var qmap={
    "一":"03","二":"06","三":"09","四":"12"
  };
  //ITQ
  if(type=="ITQ" || type=="ST" || type=="GT"){
    var p1=/\d{4}[-|-]\d{2}[-|-]\d{2}/gm;
    var ms=text.match(p1);
    var lstDate=ms[1];
    var ds=lstDate.split("-");
    var rtnDate=ds[0]+ds[1];
    return rtnDate;
  }else{
    var testbool=false;
    var p2=/(\d{4})|([一|二|三|四])/gm;
    var ms=text.match(p2);
    console.log(ms);
    for(var q of qs){
      var jstr=ms.join(",");
      var re = new RegExp(q);
      if(re.test(jstr)){
        console.log("======");
        testbool=true;
        break;
      }
    }
    if(!testbool){//如果不是季
      var p3=/\d{4}[-|-]\d{2}/gm;
      var ms=text.match(p3);
        return ms[0].split("-").join("");
    }else{//如果是季
        var qstr=ms[1];
        var rtndate=ms[0]+qmap[qstr];
        return rtndate;
    }
  }
}

async function  readxls(path) {
  var promise = new Promise((resv, rej) => {
      var workbook = new excel.Workbook();
      workbook.properties.date1904 = true;
      workbook.xlsx.readFile(path)
          .then(function () {
              return resv(workbook);
          }).catch(function (e) {
              return rej(e);
          });
  });
  return promise;
}

(async ()=>{
  var toparsedate={isparsedate:false,rptDate:'notparse'};
  toparsedate.isparsedate=true;
  var parserByCode=null;
  // NA
  var wb=await readxls("./tmpl/fi/NA3.xlsx");
  parserByCode=require("./rptHandler/NA.js");
  var rows=await parserByCode(wb,toparsedate);
  console.log(toparsedate.rptDate);

  // // NP
  // wb=await readxls("./tmpl/fi/NP.xlsx");
  // parserByCode=require("./rptHandler/NP.js");
  // var rows=await parserByCode(wb,toparsedate);
  // console.log(toparsedate.rptDate);

  //   // NPQ
  //   wb=await readxls("./tmpl/fi/NPQ.xlsx");
  //   parserByCode=require("./rptHandler/NP.js");
  //   var rows=await parserByCode(wb,toparsedate);
  //   console.log(toparsedate.rptDate);

  //     // SA
  //     wb=await readxls("./tmpl/fi/SA.xlsx");
  //     parserByCode=require("./rptHandler/SA.js");
  //     var rows=await parserByCode(wb,toparsedate);
  //     console.log(toparsedate.rptDate);

  //       // SP
  //       wb=await readxls("./tmpl/fi/SP.xlsx");
  //       parserByCode=require("./rptHandler/SP.js");
  //       var rows=await parserByCode(wb,toparsedate);
  //       console.log(toparsedate.rptDate);

  //         // SPQ
  //         wb=await readxls("./tmpl/fi/SPQ.xlsx");
  //         parserByCode=require("./rptHandler/SP.js");
  //         var rows=await parserByCode(wb,toparsedate);
  //         console.log(toparsedate.rptDate);

  //        //ITQ
  //        wb=await readxls("./tmpl/it/q/ITQ.xlsx");
  //        parserByCode=require("./rptHandler/ITQ.js");
  //        var rows=await parserByCode(wb,toparsedate);
  //        console.log(toparsedate.rptDate);

  //       //GT
  //       wb=await readxls("./tmpl/t/GT.xlsx");
  //       parserByCode=require("./rptHandler/GT.js");
  //       var rows=await parserByCode(wb,toparsedate);
  //       console.log(toparsedate.rptDate);

  //         //ST
  //         wb=await readxls("./tmpl/t/ST.xlsx");
  //         parserByCode=require("./rptHandler/ST.js");
  //         var rows=await parserByCode(wb,toparsedate);
  //         console.log(toparsedate.rptDate);

  
})()













// var text=`日期：2019-11（请按照此日期格式填写日期，否则系统无法识别）`;
// var g=getMonth("dd",text);
// console.log(g);
// return;
// //ITQ
// var text=`税款所属期间：2019-06-01至2019-09-30
// 请按照此日期格式填写日期，否则系统无法识别）`;
// var g=getMonth("ITQ",text);
// console.log(g);

// //ST
// text="税款所属期：2019-06-01至2019-09-30（请按照此日期格式填写日期，否则系统无法识别）";
// var g=getMonth("ST",text);
// console.log(g);



