|
|
|
// system入口
|
|
|
|
import Vue from "vue";
|
|
|
|
import Element from "element-ui";
|
|
|
|
// import 'lib-flexible/flexible'
|
|
|
|
import App from "./App.vue";
|
|
|
|
import router from "./router";
|
|
|
|
import store from "./store";
|
|
|
|
import http from "./utils/request";
|
|
|
|
import jQuery from "jquery";
|
|
|
|
import "element-ui/lib/theme-chalk/index.css";
|
|
|
|
import "@/icons";
|
|
|
|
import "@/assets/scss/aui.scss";
|
|
|
|
import "@/assets/scss/reset.scss";
|
|
|
|
import i18n from "@/i18n";
|
|
|
|
import * as filters from "@/filters";
|
|
|
|
import renRadioGroup from "@/components/ren-radio-group";
|
|
|
|
import renDeptTree from "@/components/ren-dept-tree";
|
|
|
|
import { hasPermission, getDictLabel } from "@/utils";
|
|
|
|
import cloneDeep from "lodash/cloneDeep";
|
|
|
|
import "xe-utils";
|
|
|
|
import VXETable from "vxe-table";
|
|
|
|
import "vxe-table/lib/index.css";
|
|
|
|
// import echarts from 'echarts'
|
|
|
|
import * as echarts from "echarts";
|
|
|
|
import moment from "moment";
|
|
|
|
import VueChatScroll from "vue-chat-scroll";
|
|
|
|
import "default-passive-events";
|
|
|
|
|
|
|
|
// import jsNSV from '@/utils/js-NSV.js'
|
|
|
|
|
|
|
|
import Base64 from "@/utils/base64.js";
|
|
|
|
Vue.prototype.$Base64 = Base64;
|
|
|
|
|
|
|
|
import Print from "vue-print-nb";
|
|
|
|
Vue.use(Print);
|
|
|
|
|
|
|
|
import { confirm } from "@/utils/confirm";
|
|
|
|
Vue.prototype.$confirmFun = confirm;
|
|
|
|
|
|
|
|
// import VueDragResize from 'vue-drag-resize'
|
|
|
|
// Vue.component('vue-drag-resize', VueDragResize)
|
|
|
|
|
|
|
|
// 裁切工具
|
|
|
|
import VueCropper from "vue-cropper";
|
|
|
|
Vue.use(VueCropper);
|
|
|
|
|
|
|
|
import Recorder from "js-audio-recorder";
|
|
|
|
const recorder = new Recorder({
|
|
|
|
sampleBits: 16, // 采样位数,支持 8 或 16,默认是16
|
|
|
|
sampleRate: 16000, // 采样率,支持 11025、16000、22050、24000、44100、48000,根据浏览器默认值,我的chrome是48000
|
|
|
|
numChannels: 1, // 声道,支持 1 或 2, 默认是1
|
|
|
|
// compiling: false,(0.x版本中生效,1.x增加中) // 是否边录边转换,默认是false
|
|
|
|
});
|
|
|
|
Vue.prototype.$recorder = recorder;
|
|
|
|
|
|
|
|
// 全局监听DOM元素
|
|
|
|
import ElementResizeDetectorMaker from "element-resize-detector";
|
|
|
|
Vue.prototype.$erd = ElementResizeDetectorMaker();
|
|
|
|
|
|
|
|
import animejs from "animejs";
|
|
|
|
Vue.prototype.$anime = animejs;
|
|
|
|
|
|
|
|
moment.locale("zh-cn"); // 设置语言 或 moment.lang('zh-cn');
|
|
|
|
|
|
|
|
Vue.use(Element, {
|
|
|
|
size: "default",
|
|
|
|
i18n: (key, value) => i18n.t(key, value),
|
|
|
|
});
|
|
|
|
|
|
|
|
Object.keys(filters).forEach((key) => {
|
|
|
|
Vue.filter(key, filters[key]);
|
|
|
|
});
|
|
|
|
|
|
|
|
// 全局组件
|
|
|
|
Vue.use(renRadioGroup);
|
|
|
|
Vue.use(renDeptTree);
|
|
|
|
Vue.use(VueChatScroll);
|
|
|
|
Vue.use(VXETable);
|
|
|
|
|
|
|
|
// DICOM
|
|
|
|
import cornerstone from "cornerstone-core";
|
|
|
|
import cornerstoneMath from "cornerstone-math";
|
|
|
|
import cornerstoneTools from "cornerstone-tools";
|
|
|
|
import Hammer from "hammerjs";
|
|
|
|
import dicomParser from "dicom-parser";
|
|
|
|
import cornerstoneWADOImageLoader from "cornerstone-wado-image-loader";
|
|
|
|
import cornerstoneWebImageLoader from "cornerstone-web-image-loader";
|
|
|
|
|
|
|
|
cornerstoneTools.external.cornerstone = cornerstone;
|
|
|
|
cornerstoneTools.external.Hammer = Hammer;
|
|
|
|
cornerstoneTools.external.cornerstoneMath = cornerstoneMath;
|
|
|
|
cornerstoneWADOImageLoader.external.dicomParser = dicomParser;
|
|
|
|
cornerstoneWADOImageLoader.external.cornerstoneMath = cornerstoneMath;
|
|
|
|
cornerstoneWADOImageLoader.external.cornerstone = cornerstone;
|
|
|
|
cornerstoneWebImageLoader.external.cornerstone = cornerstone;
|
|
|
|
cornerstone.registerImageLoader("http", cornerstoneWADOImageLoader.loadImage);
|
|
|
|
cornerstone.registerImageLoader("https", cornerstoneWADOImageLoader.loadImage);
|
|
|
|
cornerstone.registerImageLoader("http", cornerstoneWebImageLoader.loadImage);
|
|
|
|
Vue.prototype.$cornerstone = cornerstone;
|
|
|
|
Vue.prototype.$cornerstoneTools = cornerstoneTools;
|
|
|
|
|
|
|
|
// 挂载全局
|
|
|
|
Vue.prototype.$http = http;
|
|
|
|
Vue.prototype.$ = jQuery;
|
|
|
|
Vue.prototype.$hasPermission = hasPermission;
|
|
|
|
Vue.prototype.$getDictLabel = getDictLabel;
|
|
|
|
Vue.prototype.$moment = moment;
|
|
|
|
Vue.prototype.$echarts = echarts;
|
|
|
|
|
|
|
|
Vue.config.productionTip = false;
|
|
|
|
// 保存整站vuex本地储存初始状态
|
|
|
|
window.SITE_CONFIG.storeState = cloneDeep(store.state);
|
|
|
|
new Vue({
|
|
|
|
i18n,
|
|
|
|
router,
|
|
|
|
store,
|
|
|
|
render: (h) => h(App),
|
|
|
|
}).$mount("#app");
|