UNPKG

w-vue-middle

Version:

统一公共服务组件

312 lines (286 loc) 7.32 kB
/* * @Author: Jason Liu * @Date: 2023-06-02 16:35:51 * @Desc: */ import Vue from 'vue'; //主架构导入 // import Antd from 'ant-design-vue'; // import 'ant-design-vue/dist/antd.css'; // import locale from 'ant-design-vue/es/date-picker/locale/zh_CN'; // Vue.prototype.locale = locale; // Vue.use(Antd); //导入指令 import './directive'; //表格架构导入 // import 'xe-utils'; // import VXETable from 'vxe-table'; // import 'vxe-table/lib/style.css'; // import { i18n } from 'w-vue-basis/interService'; // VXETable.VxeUI.setConfig({ // // 对组件内置的提示语进行国际化翻译 // i18n: (key, args) => i18n.t(key, args), // }); // Vue.use(VXETable); import moment from 'moment'; import 'moment/locale/zh-cn'; moment.locale('zh-cn'); window.moment = Vue.prototype.moment = moment; import './utils'; //加载公共服务; import './components/index'; import './themes/index.less'; // VXETable.interceptor.add('event.clearActived', (params, $event) => { // // 比如点击了某个组件的弹出层面板之后,此时被激活单元格不应该被自动关闭,通过返回 false 可以阻止默认的行为。 // let classname = `${params.$event.srcElement.className}`; // if (classname.indexOf('ant') > -1) { // return false; // } else { // return true; // } // }); Vue.prototype.filterOption = (input, option) => { if (option.componentOptions.children[0].text) { return option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0; } else { return false; } }; export function winMiddle(_Vue, option) { this.$Vue = _Vue || Vue; this._installed = false; this.initApp(option); } /** * @Author: Jason Liu * @description: 服务参数配置 */ const serviceParams = { /** * @Author: Jason Liu * @description: 帮助中心服务地址 */ helpcenter: '/helpcenter', buttUser: { u: 'admin', p: 'Winning@007', h: '01', }, unifiedLogin: 'http://172.16.0.187:8889/home/login?auth=true', //unifiedLogin: "http://localhost:8888/login?auth=true", // // 通用上传 已上传图片服务地址 uploadService: 'http://172.16.0.187:8888', /** * @Author: Jason Liu * @description: 统一门户服务 */ portalService: '/portalService', /** * @Author: Jason Liu * @description: 数据平台基础接口服务地址 */ dataService: '/dataService', /** * @Author: Jason Liu * @description: 数据安全 */ securityService: '/securityService', /** * @Author: Jason Liu * @description: 用户服务地址 */ userService: '/userService', /** * @Author: Jason Liu * @description: 调度中心接口 */ dispatchCenterService: '/dispatchCenterService', /** * @Author: Jason Liu * @description: 数据集成接口 */ dataIntegration: '/dataIntegration', /** * @Author: y_zp * @description: 运维监控 */ operationmonitor: '/operationmonitor', /** * @Author: Jason Liu * @description: 数据质量服务 */ qualityService: '/qualityService', /** * @Author: gaodelong * @description: 数据资产 */ dataAssetsService: '/dataAssetsService', /** * @Author: Jason Liu * @description: 数据开发接口服务 */ dataDevelopmentService: '/dataDevelopmentService', /** * @Author: y_zp * @description: BI对接 */ BIService: '/BIService', /** * @Author: Jason Liu * @description: BI设置页面 */ biPage: 'http://172.16.9.97:9996', /** * @Author: Jason Liu * @description: 任务调度页面 */ schedulePage: 'http://172.16.9.97:8280', /** * @Author: y_zp * @description: 数据质量 */ dataQualityPage: 'http://172.17.0.184:8080', /** * @Author: Jason Liu * @description: 主数据平台 * 联系人:徐龙 * http://172.17.1.205:8400/winningmdm/action/login/welcome */ mainDataPage: 'http://172.17.1.205:8400', /** * @Author: Jason Liu * @description: 主数据平台登录参数 */ mainDataSSOParam: { usercode: 'admin', password: '123456', orgCode: '1.2.156.112604.1.7.2007', }, /** * @Author: y_zp * @description: 数据质量-采集监控(浙江省中) * 联系人:李保森 * http://172.17.1.133:11103/dat/ScheduleLog */ jobMonitorPage: 'http://172.17.1.134:12200', /** * @Author: y_zp * @description: 数据质量-采集监控登录参数(浙江省中) * 账号:sjzl * 密码:zl@dmin * 加密密码:iUt23s0bokNgz40VXCts/A== */ jobMonitorSSOParam: { username: 'sjzl', password: 'iUt23s0bokNgz40VXCts/A==', }, jobMonitorSSO: '/jobMonitorSSO', /** * @Author: Jason Liu * @description: 元数据管理地址 */ metadataManagement: 'http://172.16.0.29:8083/edsm/v/login.html?des=TCvW28fWC0hlvGYD0RCwexkO3YLqicOyOdQCAfr0b8lAzLlnv1m8FisvapWjan1N&token=', /** * @Author: Xiao Xiao * @description: 元数据相关接口代理 */ metadataPage: '/metaData', /** * 全链路服务 */ edsmService: '/edsm', /** * 科研资产 - 资产编目 */ assetCatalogService: '/assetCatalogService', /** *百度翻译 */ translateService: 'translateService', colors: [ '#2D5AFA', '#00AB44', '#FF8C00', '#0791EF', '#005D97', '#0043B2', '#2DB7A0', '#2996AA', '#1F8970', '#196C35', '#F24F86', '#722ED1', '#8142B0', '#7753BD', '#422AA8', '#B16C3D', '#60493B', '#7B4A36', ], }; winMiddle.prototype.initApp = function (option) { if (!this._installed) { //TODO:用户鉴权 this._installed = true; } //更改系统配置参数 this.$Vue.prototype.$service = window.$service = { uuid: 'dfcontrol', //logo icon logo: 'logo', //平台名称 systemName: $t('公共组件平台'), defaultPage: '/index', version: undefined, login: 'login', loginConfig: { //登录配置 showLogo: true, //是否显示logo logoIcon: require('./static/images/WiNEX_DnA.png'), //标题图片 title: $t('欢迎登录统一组件平台'), //欢迎文案 desc: 'Welcome aboard', //欢迎文案 body: { //系统背景 background: `url('${require('./static/images/bg_dna.jpg')}') no-repeat `, backgroundSize: '100% 100%', }, }, goLogin: () => { this.$Vue.$router.push({ name: 'login', }); }, ...serviceParams, ...option, }; if (!window.__POWERED_BY_QIANKUN__) { document.title = $service.systemName; } }; /** * @Author: Jason Liu * @description: 主端注册服务 */ export function appRegister(option = { el: '' }) { this._option = option; this.appInstance = undefined; // window.__POWERED_BY_QIANKUN__可用于判断当前项目是否由qiankun驱动 if (!window.__POWERED_BY_QIANKUN__) { this.init(); } } /** * @Author: Jason Liu * @description: 主端初始化 */ appRegister.prototype.init = function () { this.appInstance = new Vue({ ...this._option, el: container ? container.querySelector(this._option.el) : this._option.el, }); window.parentRouter = Vue.prototype.parentRouter = this.appInstance.parentRouter = this.appInstance.$router; window.$router = this.appInstance.$router; };