107 lines
3.2 KiB
Python
Executable File
107 lines
3.2 KiB
Python
Executable File
import Vue from "vue";
|
|
|
|
import Cookies from "js-cookie";
|
|
|
|
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 permission from "./directive/permission";
|
|
|
|
import "./assets/icons"; // icon
|
|
import "./permission"; // permission control
|
|
import { getDicts } from "@/api/vadmin/system/dict/data";
|
|
import { getConfigKey } from "@/api/vadmin/system/config";
|
|
import {
|
|
addDateRange,
|
|
download,
|
|
handleTree,
|
|
parseTime,
|
|
resetForm,
|
|
selectDictLabel,
|
|
selectDictDefault,
|
|
selectDictLabels
|
|
} from "@/utils/ruoyi";
|
|
import Pagination from "@/components/Pagination";
|
|
// 自定义表格工具扩展
|
|
import RightToolbar from "@/components/RightToolbar";
|
|
import SmallDialog from "@/components/SmallDialog";
|
|
import DeptTree from "@/components/DeptTree";
|
|
import UsersTree from "@/components/UsersTree";
|
|
import ModelDisplay from "@/components/ModelDisplay";
|
|
import CommonIcon from "@/components/CommonIcon";
|
|
import CommonStaticTable from "@/components/CommonStaticTable";
|
|
import { getCrontabData, getIntervalData } from "./utils/validate"; // 通用图标组件
|
|
import { getModelSelect } from "@/utils/modelSelect";
|
|
|
|
// 全局方法挂载
|
|
Vue.prototype.getDicts = getDicts;
|
|
Vue.prototype.getConfigKey = getConfigKey;
|
|
Vue.prototype.getModelSelect = getModelSelect;
|
|
Vue.prototype.parseTime = parseTime;
|
|
Vue.prototype.resetForm = resetForm;
|
|
Vue.prototype.addDateRange = addDateRange;
|
|
Vue.prototype.selectDictLabel = selectDictLabel;
|
|
Vue.prototype.selectDictDefault = selectDictDefault;
|
|
Vue.prototype.selectDictLabels = selectDictLabels;
|
|
Vue.prototype.getCrontabData = getCrontabData;
|
|
Vue.prototype.getIntervalData = getIntervalData;
|
|
Vue.prototype.download = download;
|
|
Vue.prototype.handleTree = handleTree;
|
|
Vue.prototype.hasPermi = function(values) {
|
|
const permissions = store.getters && store.getters.permissions;
|
|
return permissions.some(permission => {
|
|
return permission === "*:*:*" || values.includes(permission);
|
|
});
|
|
};
|
|
|
|
Vue.prototype.msgSuccess = function(msg) {
|
|
this.$message({ showClose: true, message: msg, type: "success" });
|
|
};
|
|
|
|
Vue.prototype.msgError = function(msg) {
|
|
this.$message({ showClose: true, message: msg, type: "error" });
|
|
};
|
|
|
|
Vue.prototype.msgInfo = function(msg) {
|
|
this.$message.info(msg);
|
|
};
|
|
// 自定义组件
|
|
Vue.component("SmallDialog", SmallDialog);
|
|
Vue.component("DeptTree", DeptTree);
|
|
Vue.component("UsersTree", UsersTree);
|
|
Vue.component("ModelDisplay", ModelDisplay);
|
|
// 全局组件挂载
|
|
Vue.component("Pagination", Pagination);
|
|
Vue.component("RightToolbar", RightToolbar);
|
|
Vue.component("CommonIcon", CommonIcon);
|
|
Vue.component("CommonStaticTable", CommonStaticTable);
|
|
|
|
Vue.use(permission);
|
|
|
|
/**
|
|
* 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: Cookies.get("size") || "medium" // set element-ui default size
|
|
});
|
|
|
|
Vue.config.productionTip = false;
|
|
|
|
new Vue({
|
|
el: "#app",
|
|
router,
|
|
store,
|
|
render: h => h(App)
|
|
});
|