import Vue from 'vue' import Cookies from 'js-cookie' import 'normalize.css/normalize.css' // a modern alternative to CSS resets import './assets/css/iconfont/iconfont.css' import Element from 'element-ui' import './styles/element-variables.scss' import 'xterm/css/xterm.css' // import enLang from 'element-ui/lib/locale/lang/en'// 如果使用中文语言包请默认支持,无需额外引入,请删除该依赖 // import 'lib-flexible/flexible' import '@/styles/index.scss' // global css import globalMixin from '@/mixin/globalMixin'; // 替换为实际的文件路径 // 全局混入 Vue.mixin(globalMixin); let ploady={ reseller_orgid:'', start_date:'', end_date:'' } // reqSaleMoneyList(ploady) // import {saveApprovalInfo} from "@/api/finance/approvalList"; // saveApprovalInfo(JSON.stringify({ // "flag":"update", // "id": "GUwHSPn7oKC-LZoqFfdJ9", // "user_id": "11", // "orgid": "x", // "send_dd_user_id": "11", // "source": "sssss", // "app_key": "aaa", // "app_secret": "app_secret", // "http_aes_key": "http_aes_key", // "http_token": "http_token", // "process_code": "PROC-B2DAA076-6A9F-4740-80AB-0D5D4410F7AC", // "process_name": "process_name", // "update_time": "2023-08-25 16:15:18" // })) // bpmn 工作流绘图工具的样式 // 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" // import 'bpmn-js-properties-panel/dist/assets/properties-panel.css' // 右边工具栏样式 import App from './App' import store from './store' import router from './router' // import 'default-passive-events' import './icons' // icon import './permission' // permission control // import './utils/error-log' // error log import index from '@/styles/index.css' import { v4 as uuidv4 } from 'uuid';//引入uuid // uuidv4(); sessionStorage.setItem('client_uuid', uuidv4()) // console.log(uuidv4()); // 引入form-create 表单生成器 import formCreate from "@form-create/element-ui" Vue.use(formCreate); import * as filters from './filters' // global filters import HappyScroll from 'vue-happy-scroll' // 引入css import 'vue-happy-scroll/docs/happy-scroll.css' import {reqSaleMoneyList} from "@/api/sales/distributorMangement"; Vue.use(HappyScroll) // Vue.use(axios) // Vue.prototype.axios=axios /** * 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 ! ! ! */ // if (process.env.NODE_ENV === 'production') { // const { mockXHR } = require('../mock') // mockXHR() // } // ==================== 防 F12 和右键检查功能开始 ==================== // 只在生产环境启用防调试功能 if (process.env.NODE_ENV === 'production') { // 禁止右键菜单 document.addEventListener('contextmenu', function(e) { e.preventDefault(); return false; }); // 禁止F12和开发者工具快捷键 document.addEventListener('keydown', function(e) { // 禁止F12 if (e.key === 'F12') { e.preventDefault(); return false; } // 禁止Ctrl+Shift+I (Chrome, Edge) if (e.ctrlKey && e.shiftKey && e.key === 'I') { e.preventDefault(); return false; } // 禁止Ctrl+Shift+J (Chrome) if (e.ctrlKey && e.shiftKey && e.key === 'J') { e.preventDefault(); return false; } // 禁止Ctrl+U (查看源代码) if (e.ctrlKey && e.key === 'u') { e.preventDefault(); return false; } // 禁止Ctrl+Shift+C (开发者工具检查元素) if (e.ctrlKey && e.shiftKey && e.key === 'C') { e.preventDefault(); return false; } // 禁止Ctrl+Shift+J (Firefox) if (e.ctrlKey && e.shiftKey && e.key === 'K') { e.preventDefault(); return false; } }); // 更准确的开发者工具检测 let isDevToolsOpened = false; // 方法1: 检查开发者工具宽度 function checkDevToolsByWidth() { const threshold = 160; // 开发者工具通常至少160px宽 const widthThreshold = window.outerWidth - window.innerWidth > threshold; const heightThreshold = window.outerHeight - window.innerHeight > threshold; return widthThreshold || heightThreshold; } // 方法2: 检查debugger执行时间(更宽松的阈值) function checkDevToolsByDebugger() { return new Promise((resolve) => { const start = performance.now(); debugger; const end = performance.now(); // 使用更宽松的阈值,避免误报 resolve(end - start > 200); }); } // 方法3: 检查控制台是否打开 function checkDevToolsByConsole() { const element = new Image(); Object.defineProperty(element, 'id', { get: function() { isDevToolsOpened = true; } }); console.log(element); console.clear(); // 清除测试日志 } // 方法4: 检查Eruda等移动端调试工具 function checkMobileDevTools() { return !!(window.eruda || window.__eruda || window.vConsole); } // 处理检测到调试器的情况 function handleDebuggerDetected() { if (!isDevToolsOpened) { isDevToolsOpened = true; // 可以选择以下一种或多种处理方式 // 1. 显示警告信息(推荐) alert('检测到开发者工具已打开,为了系统安全,请关闭开发者工具。'); // 2. 跳转到关于页面或其他安全页面 // window.location.href = '/about'; // 3. 清空敏感数据 // sessionStorage.clear(); // localStorage.clear(); // 4. 关闭窗口(慎用) // window.close(); // 5. 禁用页面交互 // document.body.innerHTML = '