main.js 6.67 KB
// 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 './assets/js/common'
import './assets/js/api'
import './assets/js/plugins/layer/layer'
import './util/enum'
import 'lodash'
import Vue from 'vue'
import app from './app'
import router from './router'
import moment from 'moment'

import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'

Vue.use(ElementUI)

// 定义layerjs的皮肤
layer.config({
  path: '../assets/js/plugins/layer'
})
Vue.filter('parseImageSrc', function (value) {
  var result = ''
  if (value) {
    var image = JSON.parse(value)[0]
    result = image.file
  }
  return result
})
Vue.filter('parseImageList', function (value) {
  var result = ''
  if (value) {
    result = JSON.parse(value)
  }
  return result
})
Vue.filter('enumToDescription', function (value, enumList) {
  if (!value) return ''
  return _.get(enumList, value)
})
Vue.filter('formatDate', function (value, format) {
  if (!value) return ''
  if (!format) format = 'YYYY-MM-DD HH:mm:ss'
  value = parseInt(value)
  return moment(value).format(format)
})

function ajaxFunction(url, type, data, callback) {
  $.ajax({
    url: url,
    type: type,
    data: data,
    success: callback,
    statusCode: {
      401: function () {
        router.push('/passport/login')
      }
    }
  })
}

Vue.prototype.turnDate = function (time) {
  if (time != '' && time != null) {
    var d = new Date(time);
    var dateTime = d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate() + ' ' + d.getHours() + ':' + d.getMinutes() + ':' + d.getSeconds();
    return dateTime;
  } else {
    return '';
  }
}
//时间控件  选择范围时间
Vue.prototype.formatDate = function (value, format) {
  if (!value) return ''
  if (!format) format = 'YYYY-MM-DD HH:mm:ss';
  return moment(value).format(format);
}
Vue.prototype.ajax = function (obj) {
  obj.data = getData(obj.data)
  ajaxFunction(obj.url, obj.type, obj.data, obj.success)
}
Vue.prototype.get = function (url, data, callback) {
  if (typeof data == 'function') {
    callback = data
  }
  data = getData(data)
  ajaxFunction(url, 'GET', data, callback)
}
Vue.prototype.getJSON = function (url, data, callback) {
  if (typeof data == 'function') {
    callback = data
  }
  data = getData(data)
  ajaxFunction(url, 'GET', data, callback)
}
Vue.prototype.post = function (url, data, callback) {
  if (typeof data == 'function') {
    callback = data
  }
  data = getData(data)
  ajaxFunction(url, 'POST', data, callback)
}

function getData(data) {
  if (window.localStorage.userContext == undefined) return data;
  var userContext = JSON.parse(window.localStorage.userContext)
  if (data == undefined) {
    data = {}
  }
  if (typeof data == 'string') {
    data = data + '&token=' + userContext.token + '&username=' + userContext.adminModel.userName
  } else {
    data.token = userContext.token
    data.username = userContext.adminModel.userName
  }
  return data
}

//日期
global.weekList = [{
  value: 1,
  label: '周一'
}, {
  value: 2,
  label: '周二'
}, {
  value: 3,
  label: '周三'
}, {
  value: 4,
  label: '周四'
}, {
  value: 5,
  label: '周五'
}, {
  value: 6,
  label: '周六'
}, {
  value: 7,
  label: '周日'
}],
  //设施
  global.installationList = [
    {
      value: 1,
      label: '塑胶地板'
    }, {
      value: 2,
      label: '木地板'
    }, {
      value: 3,
      label: '真草皮'
    }, {
      value: 4,
      label: '人工草皮'
    }, {
      value: 5,
      label: '夜间有灯光'
    }, {
      value: 6,
      label: '停车场'
    }],
  //服务
  global.servicesList = [{
    value: 1,
    label: 'WIFI'
  }, {
    value: 2,
    label: '小卖部'
  }, {
    value: 3,
    label: '租球'
  }, {
    value: 4,
    label: '开发票'
  }, {
    value: 5,
    label: '停车场'
  }],
  //运动类型
  global.sportsTypeList = [{
    value: 1,
    label: '篮球'
  }, {
    value: 2,
    label: '羽毛球'
  }, {
    value: 3,
    label: '足球'
  }, {
    value: 4,
    label: '网球'
  }, {
    value: 5,
    label: '排球'
  }]
//是否有空调
global.hasAirConditioningList = [{
  value: 1,
  label: '是'
}, {
  value: 0,
  label: '否'
}],
  //场馆状态
  global.statusList = [{
    value: 0,
    label: '营业中'
  }, {
    value: 1,
    label: '停业'
  }, {
    value: 2,
    label: '未营业'
  }],
  //会员状态
  global.vipStatusList = [{
    value: true,
    label: '是'
  }, {
    value: false,
    label: '否'
  }],
  //会员有效状态
  global.isValid = [{
    value: 1,
    label: '有效'
  }, {
    value: 0,
    label: '无效'
  }],
  //结算周期
  global.storeCycle = [{
    value: '年',
    label: '年'
  }, {
    value: '月',
    label: '月'
  }, {
    value: '周',
    label: '周'
  }, {
    value: '日',
    label: '日'
  },
  ],
  //场地类型
  global.groundTypeList = [{
    value: 1,
    label: '常温半场'
  }, {
    value: 2,
    label: '常温全场'
  }
    , {
      value: 3,
      label: '空调半场'
    }
    , {
      value: 4,
      label: '空调全场'
    }
    , {
      value: 5,
      label: '室外半场'
    }
    , {
      value: 6,
      label: '室外全场'
    }
  ],
  //场地状态
  global.groundStatusList = [{
    value: 1,
    label: '可用'
  }, {
    value: 0,
    label: '已停用'
  }
  ],
  //闸机类型
  global.doorTypeList = [{
    value: 1,
    label: '室内进门'
  }, {
    value: 2,
    label: '室内出门'
  }
    , {
      value: 3,
      label: '室外进门'
    }
    , {
      value: 4,
      label: '室外出门'
    }

  ],
  //订单状态
  global.tradeStatusList = [
    {
      value: 0,
      label: '异常'
    }, {
      value: 1,
      label: '待支付'
    }, {
      value: 2,
      label: '已支付'
    }
  ],
  //是否有室外
  global.hasOutdoorList = [{
    value: 1,
    label: '是'
  }, {
    value: 0,
    label: '否'
  }
  ],
  global.packageTypes = [
    {
      value: 1,
      label: '时效套餐'
    }, {
      value: 2,
      label: '教练套餐'
    },
  ],
  global.typeList = [
    {
      value: 1,
      label: '满减'
    }, {
      value: 2,
      label: '折扣'
    }
  ],
  global.isHalfList = [{
    value: true,
    label: '半场'
  }, {
    value: false,
    label: '全场'
  }
  ],
  global.couponStatusList = [
    {
      value: 1,
      label: '可用'
    }, {
      value: 2,
      label: '不可用'
    }
  ],
  /* eslint-disable no-new */
  new Vue({
    el: '#dk-app',
    router,
    template: '<app/>',
    components: {
      app
    }
  })
import './assets/css/dookayui.min.css'
import 'bootstrap'
import './assets/iconfont/iconfont.css'
import './assets/css/common.css'
import './assets/css/module.css'