|
|
|
import Vue from 'vue'
|
|
|
|
|
|
|
|
import Element from 'element-ui'
|
|
|
|
import './assets/styles/element-variables.scss'
|
|
|
|
|
|
|
|
import '@/assets/styles/index.scss' // global css
|
|
|
|
import '@/assets/styles/ruoyi.scss' // ruoyi css
|
|
|
|
import App from './App'
|
|
|
|
import store from './store'
|
|
|
|
import router from './router'
|
|
|
|
import directive from './directive' // directive
|
|
|
|
import plugins from './plugins' // plugins
|
|
|
|
|
|
|
|
import './assets/icons' // icon
|
|
|
|
import './permission' // permission control
|
|
|
|
import './tongji' // 百度统计
|
|
|
|
import { getDicts } from "@/api/system/dict/data";
|
|
|
|
import { getConfigKey } from "@/api/infra/config";
|
|
|
|
import { parseTime,parseTime2, resetForm, handleTree, addBeginAndEndTime, divide } from "@/utils/ruoyi";
|
|
|
|
import Pagination from "@/components/Pagination";
|
|
|
|
|
|
|
|
// 自定义表格工具扩展
|
|
|
|
import RightToolbar from "@/components/RightToolbar"
|
|
|
|
// 代码高亮插件
|
|
|
|
// import hljs from 'highlight.js'
|
|
|
|
// import 'highlight.js/styles/github-gist.css'
|
|
|
|
import { DICT_TYPE, getDictDataLabel, getDictDatas, getDictDatas2 } from "@/utils/dict";
|
|
|
|
|
|
|
|
// 全局方法挂载
|
|
|
|
Vue.prototype.getDicts = getDicts
|
|
|
|
Vue.prototype.getConfigKey = getConfigKey
|
|
|
|
Vue.prototype.parseTime = parseTime
|
|
|
|
Vue.prototype.parseTime2 = parseTime2
|
|
|
|
Vue.prototype.resetForm = resetForm
|
|
|
|
Vue.prototype.getDictDatas = getDictDatas
|
|
|
|
Vue.prototype.getDictDatas2 = getDictDatas2
|
|
|
|
Vue.prototype.getDictDataLabel = getDictDataLabel
|
|
|
|
Vue.prototype.DICT_TYPE = DICT_TYPE
|
|
|
|
Vue.prototype.handleTree = handleTree
|
|
|
|
Vue.prototype.addBeginAndEndTime = addBeginAndEndTime
|
|
|
|
Vue.prototype.divide = divide
|
|
|
|
|
|
|
|
|
|
|
|
// 全局组件挂载
|
|
|
|
Vue.component('DictTag', DictTag)
|
|
|
|
Vue.component('DocAlert', DocAlert)
|
|
|
|
Vue.component('Pagination', Pagination)
|
|
|
|
Vue.component('RightToolbar', RightToolbar)
|
|
|
|
// 字典标签组件
|
|
|
|
import DictTag from '@/components/DictTag'
|
|
|
|
import DocAlert from '@/components/DocAlert'
|
|
|
|
// 头部标签插件
|
|
|
|
import VueMeta from 'vue-meta'
|
|
|
|
|
|
|
|
Vue.use(directive)
|
|
|
|
Vue.use(plugins)
|
|
|
|
Vue.use(VueMeta)
|
|
|
|
// Vue.use(hljs.vuePlugin);
|
|
|
|
|
|
|
|
// bpmnProcessDesigner 需要引入
|
|
|
|
import MyPD from "@/components/bpmnProcessDesigner/package/index.js";
|
|
|
|
Vue.use(MyPD);
|
|
|
|
import "@/components/bpmnProcessDesigner/package/theme/index.scss";
|
|
|
|
import "bpmn-js/dist/assets/diagram-js.css";
|
|
|
|
import "bpmn-js/dist/assets/bpmn-font/css/bpmn.css";
|
|
|
|
import "bpmn-js/dist/assets/bpmn-font/css/bpmn-codes.css";
|
|
|
|
import "bpmn-js/dist/assets/bpmn-font/css/bpmn-embedded.css";
|
|
|
|
|
|
|
|
// Form Generator 组件需要使用到 tinymce
|
|
|
|
import Tinymce from '@/components/tinymce/index.vue'
|
|
|
|
Vue.component('tinymce', Tinymce)
|
|
|
|
import '@/assets/icons'
|
|
|
|
import request from "@/utils/request" // 实现 form generator 使用自己定义的 axios request 对象
|
|
|
|
Vue.prototype.$axios = request
|
|
|
|
import '@/styles/index.scss'
|
|
|
|
|
|
|
|
// 默认点击背景不关闭弹窗
|
|
|
|
import ElementUI from 'element-ui'
|
|
|
|
ElementUI.Dialog.props.closeOnClickModal.default = false
|
|
|
|
|
|
|
|
/**
|
|
|
|
* If you don't want to use mock-server
|
|
|
|
* you want to use MockJs for mock api
|
|
|
|
* you can execute: mockXHR()
|
|
|
|
*
|
|
|
|
* Currently MockJs will be used in the production environment,
|
|
|
|
* please remove it before going online! ! !
|
|
|
|
*/
|
|
|
|
|
|
|
|
Vue.use(Element, {
|
|
|
|
size: localStorage.getItem("size") || "medium", // set element-ui default size
|
|
|
|
});
|
|
|
|
|
|
|
|
Vue.config.productionTip = false
|
|
|
|
|
|
|
|
new Vue({
|
|
|
|
el: '#app',
|
|
|
|
router,
|
|
|
|
store,
|
|
|
|
render: h => h(App)
|
|
|
|
})
|
|
|
|
|
|
|
|
// 定义全局方法
|
|
|
|
Vue.prototype.base64Encode = function(str) {
|
|
|
|
const base64EncodeChars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
|
|
|
|
let out = '', i = 0, len = str.length;
|
|
|
|
let c1, c2, c3;
|
|
|
|
|
|
|
|
while (i < len) {
|
|
|
|
c1 = str.charCodeAt(i++) & 0xff;
|
|
|
|
if (i == len) {
|
|
|
|
out += base64EncodeChars.charAt(c1 >> 2);
|
|
|
|
out += base64EncodeChars.charAt((c1 & 0x3) << 4);
|
|
|
|
out += '==';
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
c2 = str.charCodeAt(i++);
|
|
|
|
if (i == len) {
|
|
|
|
out += base64EncodeChars.charAt(c1 >> 2);
|
|
|
|
out += base64EncodeChars.charAt(((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4));
|
|
|
|
out += base64EncodeChars.charAt((c2 & 0xF) << 2);
|
|
|
|
out += '=';
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
c3 = str.charCodeAt(i++);
|
|
|
|
out += base64EncodeChars.charAt(c1 >> 2);
|
|
|
|
out += base64EncodeChars.charAt(((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4));
|
|
|
|
out += base64EncodeChars.charAt(((c2 & 0xF) << 2) | ((c3 & 0xC0) >>6));
|
|
|
|
out += base64EncodeChars.charAt(c3 & 0x3F);
|
|
|
|
}
|
|
|
|
return out;
|
|
|
|
}
|
|
|
|
|