import req from '@/request.js' import i18n from '@/lang/index.js' import utils from '@/hotent-ui-util.js' import tenant from '@/store/tenant'; const portal = window.context.portal const bpmRunTime = window.context.bpmRunTime const bpmModel = window.context.bpmModel const uc = window.context.uc const form = window.context.form const _menus = [{ id: '0', name: i18n.t('menus.home'), alias: 'home', sn: -1 } /*{ "id": 1, "name": i18n.t('menus.flow'), "alias": "flow" }, { "id": 2, "name": i18n.t('menus.mail'), "alias": "mail" }, { "id": 3, "name": i18n.t('menus.personal'), "alias": "personal" }*/ ] const headersUrlencoded = { 'Content-type': 'application/x-www-form-urlencoded' } export default { getMenuTree() { let ignoreAlias = ""; if (tenant.state.tenantId) { ignoreAlias = "?ignoreAlias=tenant" } return new Promise((resolve, reject) => { req.get(`${portal}/sys/sysMenu/v1/getTree${ignoreAlias}`).then( response => { resolve(response.data); }, error => { reject(error); } ); }); }, //获取字典数据 getSysDict() { return new Promise((resolve, reject) => { req.post(portal + "/sys/sysDictionary/v1/queryAllDictItems").then( response => { resolve(response.data); }, error => { reject(error); } ); }); }, getMenus() { return new Promise((resolve, reject) => { req .get( `${portal}/sys/sysMenu/v1/getCurrentUserMenu?menuAlias=manage_menu` ) .then( response => { resolve(response.data.value) }, error => { reject(error) } ) }) }, getSysMenus() { return new Promise((resolve, reject) => { req .get( `${portal}/sys/sysMenu/v1/getCurrentUserMenu?menuAlias=manage_menu` ) .then( response => { resolve(response.data.value); }, error => { reject(error); } ); }); }, getFrontMenus() { return new Promise((resolve, reject) => { req .get(`${portal}/sys/sysMenu/v1/getCurrentUserMenu?menuAlias=front_menu`) .then( response => { resolve(response.data.value) }, error => { reject(error) } ) }) }, //获取用户头像 downuserloadImg(fileId, cb) { req .get(window.context.portal + '/file/v1/preview?fileId=' + fileId, 'blob') .then( response => { if (response.data.size > 0) { var blob = response.data var reader = new FileReader() reader.readAsDataURL(blob) reader.onload = function(e) { cb(e.target.result) } } else { cb('') } }, function errorCallback() { cb('') } ) }, //获取指定菜单的下级菜单 getSubMenus(menuAlias, cb) { req .get(`${portal}/sys/sysMenu/v1/getCurrentUserMenu?menuAlias=${menuAlias}`) .then(reponse => { cb(reponse) }) }, //获取当前用户所有接口权限 getCurrentUserMethodAuth(cb) { req .get(`${portal}/sys/sysMenu/v1/getCurrentUserMethodAuth`) .then(reponse => { cb(reponse) }) }, //获取布局管理列表 getLayoutManageDesignData(id, layoutType) { return new Promise((resolve, reject) => { req .get( portal + `/portal/sysIndexMyLayout/v1/designMyLayout?id=${id}&layoutType=2` ) .then( response => { resolve(response.data) }, error => { reject(error) } ) }) }, //获取新闻公告列表 getNewsPagination(pagination, cb) { req .post(portal + '/portal/messageNews/v1/list?isPublic=true', pagination) .then(response => { cb(response) }) }, //根据分类获取轮播图 getNewsPaginations(type, cb) { req .get(portal + '/portal/pressRelease/v1/getByType?FLbtssfl=' + type) .then(response => { cb(response) }) }, //获取新闻公告列表 getNewsPaginationList(pagination, cb) { req .post(portal + '/portalNewsNotice/v1/query', pagination) .then(response => { cb(response) }) }, //获取发文公告列表 getNoticePagination(pagination, cb) { req .post( portal + '/portal/messageNews/v1/listNotice?isPublic=true', pagination ) .then(response => { cb(response) }) }, //根据ID获取新闻公告详情 getNewsById(id, cb) { /*req.get(portal + '/portal/messageNews/v1/getById?id=' + id).then(response => { cb(response); });*/ req.get(portal + '/portalNewsNotice/v1/getNewsById?id=' + id).then(resp => { cb(resp) }) }, //附件在线预览 onlinePreview(id, cb) { req .get( portal + '/file/onlinePreviewController/v1/onlinePreview?fileId=' + id ) .then(response => { cb(response) }) }, //附件下载 downloadFile(id) { req.download(portal + '/system/file/v1/downloadFile?fileId=' + id) }, //下载信息文件 downloadFileLic() { let data = { url: `${portal}/uc/AuthorizationModel/v1/downloadFileLic`, method: 'post', responseType: 'blob', } return new Promise((resolve, reject) => { req.request(data).then(resp => { resolve(resp); }, error => { reject(error); }) }); }, // downloadImg(fileId, cb) { // req // .get( // window.context.portal + '/system/file/v1/preview?fileId=' + fileId, // 'blob' // ) // .then( // response => { // if (response.data.size > 0) { // var blob = response.data // var reader = new FileReader() // reader.readAsDataURL(blob) // reader.onload = function (e) { // cb(e.target.result) // } // } else { // cb('') // } // }, // function errorCallback(response) { // cb('') // } // ) // }, //获取要参加的会议列表 getMeetingPagination(pagination, cb) { req .post( bpmRunTime + '/portal/meetingRoomAppointment/v1/pendingJson', pagination ) .then(response => { cb(response) }) }, getByTypeKeyForComBo(dicKey, cb) { req .post(portal + '/sys/dataDict/v1/getByTypeKeyForComBo?typeKey=' + dicKey) .then(response => { cb(response.data) }) }, getNextIdByAlias(alias, cb) { req .get(portal + '/sys/identity/v1/getNextIdByAlias?alias=' + alias) .then(response => { cb(response.data) }) }, vueFrontHome(cb) { req.get(portal + '/portal/main/v1/vueFrontHome').then(response => { cb(response.data) }) }, getColumnByAlias(alias, cb) { req .get( portal + '/portal/sysIndexColumn/sysIndexColumn/v1/getByAlias?alias=' + alias ) .then(response => { cb(response.data) }) }, batchGetColumnByAliases(aliases, cb) { req .post( portal + '/portal/sysIndexColumn/sysIndexColumn/v1/getDatasByAlias', aliases ) .then(response => { cb(response.data) }) }, getColumnData(column, cb) { const reqUrl = column.dataFrom .replace('${bpmModel}', bpmModel) .replace('${bpmRunTime}', bpmRunTime) .replace('${portal}', portal) .replace('${uc}', uc) .replace('${form}', form) const requestType = column.requestType var reqParam = column.dataParam if (reqParam) { reqParam = eval('(' + reqParam + ')') var isMany = reqParam.length > 1 for (var i = 0; i < reqParam.length; i++) { var value = reqParam[i]['value'] var name = reqParam[i]['name'] if (requestType == 'POST') { try { value = JSON.parse(value) } catch (e) {} if (isMany) { reqParam[name] = value } else { reqParam = value } } else { reqUrl = i > 0 ? reqUrl + '&' + name + '=' + value : '?' + name + '=' + value } } } if (requestType == 'POST') { req.post(reqUrl, reqParam).then(response => { cb(response.data) }) } else { req.get(reqUrl).then(response => { cb(response.data) }) } }, //更新附件的属性(包含扩展属性、流程实例ID、节点名称、流程标题、附件来源、所属分类) updateFileExtraProp(data, cb) { req .post(portal + '/system/file/v1/updateFileExtraProp', data) .then(response => { cb(response.data) }) }, getSysTypeByCatId(catId) { // return sysType.getSysTypeByCatId(); return new Promise(resolve => { req .request({ url: `${portal}/sys/sysType/v1/getByParentId?catId=${catId}` }) .then(response => { resolve(utils.tile2nest(response.data)) }) }) }, //获取系统属性解密后参数值 getSysPropertyByAlias(alias) { return new Promise((resolve, reject) => { req .get(`${portal}/sys/sysProperties/v1/getDecryptByAlias?alias=${alias}`) .then( resp => { resolve(resp.data) }, error => { reject(error) } ) }) }, getTagList(param) { return new Promise((resolve, reject) => { req.post(portal + `/portal/sysTag/v1/query`, param).then( resp => { resolve(resp.data) }, error => { reject(error) } ) }) }, saveTag(param) { return new Promise((resolve, reject) => { req.post(portal + `/portal/sysTag/v1/save`, param).then( resp => { resolve(resp.data) }, error => { reject(error) } ) }) }, getSysAppList(param) { return new Promise((resolve, reject) => { req.post(`${portal}/portal/sysApp/v1/authList`, param).then( resp => { resolve(resp.data) }, error => { reject(error) } ) }) }, getSysAppTree(id) { return new Promise((resolve, reject) => { req.get(`${portal}/portal/sysAppMenu/v1/getTree?appId=${id}`).then( resp => { resolve(resp.data) }, error => { reject(error) } ) }) }, fileUpload(param, fileId) { return req.post(`${portal}/system/file/v1/upload?fileId=${fileId}`, param) }, getFile(id) { return req.get(`${portal}/system/file/v1/fileGet?id=${id}`) }, //获取应用标签分类列表 getAppTagTypes() { return req.get(`${portal}/sys/sysType/v1/getTreeDateByTypeKey?typeKey=yybq`) }, getMsgbadge() { return req.get(`${portal}/innermsg/messageReceiver/v1/getMsgbadge`) }, // 所有可导入字段查询 getAllImportFields(data) { let param = { url: portal + `/config/excel/v1/getDataBaseField`, data, method: "post", headers: headersUrlencoded } return new Promise((resolve, reject) => { req.request(param).then(resp => { resolve(resp.data); }, error => { reject(error); }) }) }, getAllExportFields(params) { let param = { url: window.context[params.originAPIOptions.moduleRoot] + params.originAPIOptions.url + '?export=field&tempId=' + params.bizCode, method: params.originAPIOptions.method, responseType: 'text' } return new Promise((resolve, reject) => { req.request(param).then(resp => { resolve(resp.data); }, error => { reject(error); }) }) }, // 保存导入导出模板 saveTemplate(data) { let param = { url: portal + `/config/excel/v1/save`, data, method: "post" } return new Promise((resolve, reject) => { req.request(param).then(resp => { resolve(resp.data); }, error => { reject(error); }) }) }, // 查询模板数据 loadTempData(id) { return new Promise((resolve, reject) => { req .get(portal + `/config/excel/v1/getJson?id=` + id) .then( response => { resolve(response.data); }, error => { reject(error); } ); }); }, // 下载导入模板 downloadTemp(params) { let param = { url: window.context[params.originAPIOptions.moduleRoot] + params.originAPIOptions.url + '?export=template&tempId=' + params.bizCode, method: params.originAPIOptions.method, responseType: 'blob' } return new Promise((resolve, reject) => { req.request(param).then(resp => { resolve(resp.data); }, error => { reject(error); }) }) }, // 导出数据 ExportData(params) { let param = { url: window.context[params.originAPIOptions.moduleRoot] + params.originAPIOptions.url + '?export=export&tempId=' + params.bizCode, method: params.originAPIOptions.method, data: params.exportQuery, responseType: 'blob' } return new Promise((resolve, reject) => { req.request(param).then(resp => { resolve(resp.data); }, error => { reject(error); }) }) }, // 导入数据 DeleteExportFields(id) { let param = { url: portal + `/config/excel/v1/removeField?id=${id}`, method: 'delete' } return new Promise((resolve, reject) => { req.request(param).then(resp => { resolve(resp.data); }, error => { reject(error); }) }) }, // 模板是否存在 checkTemp(data) { let param = { url: portal + `/config/excel/v1/checkTemp`, data, method: "post", headers: headersUrlencoded } return new Promise((resolve, reject) => { req.request(param).then(resp => { resolve(resp.data); }, error => { reject(error); }) }) }, //系统缓存获取: getAllCache(param) { let data = { url: portal + `/monitor/actuator/v1/redis/getAllCache`, data: param, method: "post", headers: headersUrlencoded } return new Promise((resolve, reject) => { req.request(data).then(resp => { resolve(resp.data); }, error => { reject(error); }) }) }, //redis缓存清除 deleteCache(cacheKeys) { return new Promise((resolve, reject) => { req.post(`${portal}/monitor/actuator/v1/redis/deleteCache?cacheKey=${cacheKeys}`).then(resp => { resolve(resp.data); }, error => { reject(error); }) }) }, //redis根据key值查询 getKeyCache(cacheKeys) { return new Promise((resolve, reject) => { req.post(`${portal}/monitor/actuator/v1/redis/getAllCache?cacheKey=${cacheKeys}`).then(resp => { resolve(resp.data); }, error => { reject(error); }) }) }, //redis表格信息查询 getRedis() { return new Promise((resolve, reject) => { req.get(portal + '/monitor/actuator/v1/redis/info').then(resp => { resolve(resp.data); }, error => { reject(error) }) }) }, //redis图表查询 getAction(url) { return new Promise((resolve, reject) => { req.get(portal + url).then(resp => { resolve(resp.data); }, error => { reject(error) }) }) }, //服务器信息 getCPU() { return new Promise((resolve, reject) => { req.get(portal + '/monitor/actuatorSystem/v1/cpu').then(resp => { resolve(resp.data); }, error => { reject(error) }) }) }, //JVM监控 getJVM() { return new Promise((resolve, reject) => { req.get(portal + '/monitor/actuatorSystem/v1/jvm').then(resp => { resolve(resp.data); }, error => { reject(error) }) }) }, //Tomact监控 getTomact() { return new Promise((resolve, reject) => { req.get(portal + '/monitor/actuatorSystem/v1/tomcat').then(resp => { resolve(resp.data); }, error => { reject(error) }) }) }, //请求追踪 getRequest() { return new Promise((resolve, reject) => { req.get(portal + '/monitor/actuatorSystem/v1/httpTrace').then(resp => { resolve(resp.data); }, error => { reject(error) }) }) }, //硬盘监控 getHD() { return new Promise((resolve, reject) => { req.get(portal + '/monitor/actuator/v1/redis/queryDiskInfo').then(resp => { resolve(resp.data); }, error => { reject(error) }) }) }, loadSysMsg(param) { return new Promise((resolve, reject) => { req.post(`${portal}/portal/commonBasic/v1/query`, param).then(resp => { resolve(resp.data); }, error => { reject(error); }) }); }, //查询授权信息 querySystemAuthorization(param) { return new Promise((resolve, reject) => { req.post(`${portal}/uc/AuthorizationModel/v1/querySystemAuthorization`, param).then(resp => { resolve(resp.data); }, error => { reject(error); }) }); }, //定时计划列表 getschedulerPageJson(param) { return new Promise((resolve, reject) => { req.post(portal + "/job/scheduler/v1/jobList", param).then( response => { resolve(response.data); }, error => { reject(error); } ); }); }, }