// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue';
import App from '@/components/App.vue';
// include
import '@/config/include.js';

// 通用store
import store from '@/store/index.js';

// router
import router from './router/index.js';

import VueApollo from 'vue-apollo'

import apollo from '@/config/apolloConfig.js'

// 关闭生产模式下给出的提示
Vue.config.productionTip = false;

Vue.use(VueApollo)

// 注册表格的全局组件
import DilCommonUI from "@/components/DilCommonUI";
Vue.use(DilCommonUI);

import vuescroll from "vuescroll";//引入vuescroll
import "vuescroll/dist/vuescroll.css";//引入vuescroll样式
Vue.use(vuescroll);//使用

// 导出Excel全局组件
import tableToExcel from '@/components/exportExcel/exportExcel'
Vue.use(tableToExcel)

const apolloProvider = new VueApollo({
    defaultClient: apollo
})

 //把时间戳改为正常可读的时间
 export function renderTime(date) {
  if(date !== null){
      let dateee = new Date(date).toJSON();
      return new Date(+new Date(dateee) + 8 * 3600 * 1000).toISOString().replace(/T/g, " ").replace(/\.[\d]{3}Z/, "");
  }
  return null;
}
//把毫秒数转换分
export function getDuration(my_time) { 
  if(my_time !== null){
      return Math.floor(my_time / 1000 / 60);
  }
  return null;
}
export function sjTime(orderPlanInTime) {
  var stringTime = renderTime(orderPlanInTime);
  var timestamp1 = stringTime.replace(/-/g, "/");
  return new Date(timestamp1).getTime();
}
//验证电话号码
export function VerifyPhoneNumber(Phone) {
  var myreg=/^(13[0-9]|14[5|7]|15[0|1|2|3|4|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$/;
  if (!myreg.test(Phone)) {
      return false;
  } else {
      return true;
  }
}
export function isNumber(value) {
  //验证是否为数字
  var patrn = /^(-)?\d+(\.\d+)?$/;
  if (patrn.exec(value) == null || value == "") {
    return false;
  } else {
    return true;
  }
}
export function isIntegerNumber(value) {
  //验证是否为整数
  var patrn = /^\+?[1-9][0-9]*$/g;
  if (patrn.exec(value) == null || value == "") {
    return false;
  } else {
    return true;
  }
}
/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,
  store,
  components: { App },
  provide: apolloProvider.provide(),
  template: '<App/>'
});
